《量化投资:以MATLAB为工具》

MATLAB技术论坛

 找回密码
 注册账号
查看: 34|回复: 1
收起左侧

[提问] 求助,灰度图像的分段加强处理

[复制链接]

该用户从未签到

发表于 2017-12-6 16:40:49 | 显示全部楼层 |阅读模式
2贝壳
a=imread('df.jpg');
b=rgb2gray(a);
[m,n]=size(b);
d=ones(m,n);
c=double(b);
for i=1:m
for j=1:n
     if c(i,j)>=100 d(i,j)=150
     else if c(i,j)<=40 d(i,j)=30
     else if c(i,j)>=60 && c(i,j)<100
              if c(i,j)-c(i+1,j)>=10||c(i,j)-c(i-1,j)>=10||c(i,j)-c(i,j+1)>=10||c(i,j)-c(i,j-1)>=10 d(i,j)=150
              else if c(i,j)-c(i+1,j)<10||c(i,j)-c(i-1,j)<10||c(i,j)-c(i,j+1)<10||c(i,j)-c(i,j-1)<10 d(i,j)=100
     else if c(i,j)<60 && c(i,j)>40
              if c(i,j)-c(i+1,j)<=-10||c(i,j)-c(i-1,j)<=-10||c(i,j)-c(i,j+1)<=-10||c(i,j)-c(i,j-1)<=-10 d(i,j)=30
              else if c(i,j)-c(i+1,j)>-10||c(i,j)-c(i-1,j)>-10||c(i,j)-c(i,j+1)>-10||c(i,j)-c(i,j-1)>-10 d(i,j)=100
     end
end
end
程序如上,我想实现对图像中不同灰度值进行分段处理,得到一个只有三种灰度值的灰度图像
要求:灰度值分为三段:0-40;40-100;100-255
其中,0-40段赋值为30;100-255段赋值为150;40-100段灰度值按照相邻梯度大小分段,梯度高于10为150,低于-10为30,中间值取为100。
但是程序执行没有响应,有语句错了还是算法问题?

该用户从未签到

 楼主| 发表于 2017-12-6 16:43:45 | 显示全部楼层
这是操作时要用到的图片
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|网站地图|MATLAB技术论坛|Simulink仿真论坛 ( 陕ICP备08102094号  

GMT+8, 2017-12-16 05:44 , Processed in 1.086740 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表