我試圖創建一個使用skikit學習RGB圖像的面具。我想創建一個遮罩,只選擇等於[0,10,0]的像素,即綠色通道上的10。然後只顯示那些像素。這應該是直截了當的,類似於http://scikit-image.org/docs/dev/user_guide/numpy_images.html,但我很掙扎。Numpy/Scipy與面具和RGB圖像
如果圖像是加載JPG,我可以做
mask = image == [0,10,0]
image = image[mask]
viewer = ImageViewer(image)
viewer.show()
不過,我得到:
TypeError: Invalid dimensions for image data
如果我再打印(屏蔽),我才知道的,而不是一系列真實的和虛假的每個像素,我得到:
[[ True False True]
[ True False True]
[ True False True]
...,
[ True False True]
[ True False True]
[ True False True]]
請注意,我的圖像中的第1個像素是黑色的。所以看起來它將[0,0,0]與[0,10,0]進行比較,而不是提高False,而是提高True,False,True。
然後,這看起來失敗了,因爲我對每個像素都有3個蒙版,我想!
有誰知道一個簡單的方法來獲得這種掩膜與RGB圖像工作?
感謝
你的'image'數組的維數是否與(n,3)的形狀相匹配? –
不是(276,274,3) – James
你打算如何使用蒙版來顯示這些特定像素的顯示?因爲遮罩之後,您將不會擁有高度和寬度的2D格式。 – Divakar