返回信息流rt, 实验要用到图片各像素点的RGB,请问怎么弄。以前完全没接触过MATLAB,请各位大牛指教。
这是一条镜像帖。来源:北邮人论坛 / matlab / #1102同步于 2007/5/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
【求助】怎么用MATLAB得到图片的二进制RGB数据
buptxiaoyi
2007/5/29镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
[I,map]=imread('FJ壁纸-070.jpg');
for j=1:10000
i(round(800*rand())+1,round(800*rand())+1,:)=round(256*rand());
end
figure(5)
imshow(I)
[m,map]=imread('zaosheng.jpg');
figure(4)
imshow(m)
for n=1:3
for j=2:619 %620 848
for k=2:847
m1=sort(m(j-1:j+1,k-1:k+1,1));
m2=sort(m(j-1:j+1,k-1:k+1,2));
m3=sort(m(j-1:j+1,k-1:k+1,3));
m(j,k,1)=m1(5);
m(j,k,2)=m2(5);
m(j,k,3)=m3(5);
end
end
figure(n)
imshow(m)
end
这是一个中值滤波的程序,你自己看吧。。
对于bmp格式
X=imread('rgb.bmp');
%把rgb数据三色分离
r=double(X(:,:,1));
g=double(X(:,:,2));
b=double(X(:,:,3));
大哥说的不错,这样可以得到一个图的RGB三个分量的值(整体的)
某点(x,y)的rgb值可以用R=(x,y,1);G=(x,y,2);B=(x,y,3)得到,但得到的是十进制的,二进制自己转吧。欢迎拍砖。