1

我有一个 rgb 图像,我想在 matlab 中将大于 (r:175,g:255,b:55) 的像素值更改为 Nan,我该怎么做。请告诉我

4

1 回答 1

3

查找位置

sel = bsxfun( @eq, I, permute( [175, 255, 55], [1 3 2] ) );

设置为南

I( sel(:,:,[1 1 1]) ) = NaN;

特别注意:
您的图像I应该是浮点类型(doublesingle),否则您将无法使用NaNNaN仅为浮点类型定义)。但是,对于浮点图像,RGB 值通常介于 0 和 1 之间(而不是 255)。
所以,你可能想比较[175 255 55]/255...

于 2013-05-22T13:10:05.283 回答