matlab rgb赋值,数字图像处理matlab,给下面这段代码加注释rgb=imread("1.jpg"); rgb1=double(rgb);r=rgb1(:,:,1); g=rgb1(:,:,...

7d14a2b81882cfe4494b096a84150b2a.png 优质解答

rgb=imread('1.jpg'); %读取rgb图 1.jpg

rgb1=double(rgb); %图像矩阵的数据类型转换为double类型

r=rgb1(:,:,1); %矩阵r存储rgb图中r通道的二维矩阵

g=rgb1(:,:,2); %矩阵g存储rgb图中g通道的二维矩阵

b=rgb1(:,:,3); %矩阵b存储rgb图中b通道的二维矩阵

[m,n]=size(r); %m为矩阵r的行数,n为矩阵r的列数

er=mean(mean(r(:))) %er为矩阵r所有元素的均值

dr1=0.0;sr1=0.0; %令dr1的初始值为0.0,令sr1的初始值为0.0

for i=1:m %外循环

for j=1:n %内循环

dr1=dr1+(r(i,j)-er)^2; %将矩阵r中每个像素值减去所有像素均值的平方值累加到变量dr1;

sr1=sr1+(r(i,j)-er)^3; %将矩阵r中每个像素值减去所有像素均值的三次方值累加到变量sr1;

end

end

dr=sqrt(dr1/(m*n)) %dr1除以矩阵r的大小m*n,然后开平方的值赋值给dr

sr=(sr1/(m*n))^0.3333 %sr1除以矩阵r的大小m*n,然后开三次方的值赋值给sr

eg=mean(mean(g(:))) %该处为矩阵g的处理,与上面矩阵r的方法和步骤一样

dg1=0.0;sg1=0.0;

for i=1:m

for j=1:n

dg1=dg1+(g(i,j)-eg)^2;

sg1=sg1+(g(i,j)-eg)^3;

end

end

dg=sqrt(dg1/(m*n))

sg=(sg1/(m*n))^0.3333

eb=mean(mean(b(:))) %该处为矩阵b的处理,与上面矩阵r的方法和步骤一样

db1=0.0;sb1=0.0;

for i=1:m

for j=1:n

db1=db1+(b(i,j)-eb)^2;

sb1=sb1+(b(i,j)-eb)^3;

end

end

db=sqrt(db1/(m*n))

sb=(sb1/(m*n))^0.3333

有什么问题可以继续讨论,

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值