所以我重新创建了他们去年做的一个Matlab项目,其中一部分涉及到创建一个可以拉出RGB波段的遮罩。 他们是通过一个逻辑零数组来实现的。你知道吗
GMask_Whole = false(ROWS,COLS);
我把它重建成一个小数组。你知道吗
self.green_mask_whole=np.zeros((self.rows, self.columns), dtype=bool)
下一部分我一辈子都想不出如何处理numpy:
GMask_Whole(1:2:end,2:2:end) = true;
我还没有找到一个与numpy相当的动作。有什么想法吗?你知道吗
顺便说一句,如果你想知道这是怎么回事: https://en.wikipedia.org/wiki/Bayer_filter
编辑: 我尝试过的事情:
wut(1:3:end, 1:2:end) = true
wut([1:3:end], [1:2:end]) = true
wut([1:3], [1:2]) = true
wut([1:3], [1:2]) = True
wut(slice(1:3), slice(1:2)) = True
你可以翻译Matlab的
到python的方法
(假设
green_mask_whole
是numpy数组)numpy
可以像Matlab那样或多或少地进行切片,但是synax有点不同。在numpy
中,顺序是[begin:end:step]
,可以将begin
、end
和step
保留为空,这将分别为它们提供默认值第一个元素、最后一个元素和步长1。你知道吗此外,“numpy”还有一个很好的“宽泛转换”系统,它允许重复单个值(或行/列)以生成与另一个相同大小的新数组。这样就可以将单个值赋给整个数组。你知道吗
因此,在目前的情况下,这样做是可能的
相关问题 更多 >
编程相关推荐