image=double(imread('ooutput.jpg'));
[M, N]=size(image);
masked=zeros(M,N);
masked(1:100,1:90)=255;
masked(175:300,1:90)=255;
imshow(masked);
new=uint8( masked&image);
imshow(new);
我使用了逻辑并获得了图像的一部分。这里创建了一个掩模并且逻辑上它与图像一起。我无法获得该部分。而不是获得完整的黑色像素。任何人都可以指出错误是什么在上面的代码中?
答案 0 :(得分:2)
'masked& image'为1或0.使用uint8,两者都接近黑色。除此之外,除了灰度uint 8之外,所有图像类型的代码都会失败。
要修复遮罩问题,请使用:
image=imread('ooutput.jpg');
masked=false(M,N);
masked(1:100,1:90)=true;
masked(175:300,1:90)=true;
image(~masked)=0
imshow(image);