登录论坛

查看完整版本 : [MATLAB图像处理] 求助。读入图像后处理过程中矩阵为负数时无法处理。


纽纽和瓜瓜
2009-04-16, 15:15
在做图像处理时,我想用一个值减去图像的灰度值,但是当该值小于灰度值是就不能进行运算。怎么处理这个问题。还有一个问题,就是我想算一个值的和,但是超出255后就不能相加。灰度值的范围是0~255

纽纽和瓜瓜
2009-04-16, 15:16
当我直接进行相加时,会出现错误提示
??? Subscript indices must either be real positive integers or logicals.

silas_xue
2009-04-17, 20:01
lz 个人意见
1 请注意图像保存的数据类型 uint8的含义即 unsigned integer (8 bit) 所以是不允许存在负数的 故出现类似2楼的错误提示 改用其它数据类型可以杜绝这样的问题 可以参考MatlAB的数据定义
2 不知道你操作的具体实现目的是什么 一般有两种处理方式 针对大于255的情况
a 大于255时 mod 255 及取余
b 大于255时 认为和为255
具体使用哪种处理方式根据处理目的看 如在进行直方图均衡时 映射溢区 使用b

Thx for reading.
PS:若还算满意,直接点击“Thanks”,再次登陆时亦便于查看回答是否真的帮到你了。
个人观点 仅供参考 多多交流 相互学习