我有一个rgb图像,我想在matlab中将像素值大于(r:175,g:255,b:55)更改为Nan,我该怎么做。请让我知道
答案 0 :(得分:3)
找到位置
sel = bsxfun( @eq, I, permute( [175, 255, 55], [1 3 2] ) );
设为Nan
I( sel(:,:,[1 1 1]) ) = NaN;
特别护理:
您的图片I
应为浮点类型(double
或single
),否则您将无法使用NaN
(NaN
仅定义为浮动点类型)。然而,通常情况下,对于浮点图像,RGB值的范围在0和1之间(而不是255)
因此,您可能希望与[175 255 55]/255
进行比较......