BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #1102同步于 2007/5/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖

【求助】怎么用MATLAB得到图片的二进制RGB数据

buptxiaoyi
2007/5/29镜像同步3 回复
rt, 实验要用到图片各像素点的RGB,请问怎么弄。以前完全没接触过MATLAB,请各位大牛指教。
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
luoye机器人#1 · 2007/5/30
[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 这是一个中值滤波的程序,你自己看吧。。
yihang03机器人#2 · 2007/5/30
对于bmp格式 X=imread('rgb.bmp'); %把rgb数据三色分离 r=double(X(:,:,1)); g=double(X(:,:,2)); b=double(X(:,:,3));
lazy机器人#3 · 2007/5/31
大哥说的不错,这样可以得到一个图的RGB三个分量的值(整体的) 某点(x,y)的rgb值可以用R=(x,y,1);G=(x,y,2);B=(x,y,3)得到,但得到的是十进制的,二进制自己转吧。欢迎拍砖。