matlab处理RGB图像问题

将RGB图像每层单独分开,并将像素值改为0、1。为什么显示每层图像时是正确的,但是查看每层图的值时均为255(逻辑化后均为1)
这是原RGB图

img


这是3层分开后各自的图和代码

img

img

img


这是R层的矩阵数值和原图的矩阵数值

img

img


为什么明明是黑白图但是矩阵值均为1呀?
或者有什么其他方法获得正常的值为0或1的图?
这个是要用DCT方法在MATLAB实现数字水印,大家有什么更好的方法吗

你的图片比较大,1280行1280列,所以你看到那个角落全是1很正常,你可以试试 min(min(mark1)) 来看看是否有0

你的问题出在:赋值给mark1,2,3后没有用到啊,后面imshow查看的时候还是看的mark