Matlab图像处理预处理
来源:互联网 发布:网络销售如何做 编辑:程序博客网 时间:2024/04/28 12:35
图像格式转换
在图像处理中,读入的图片通常是uint8格式,一是由于unit8的精读问题,二是由于有的函数不支持uint8类型,所以通常要转换成为double格式。
转换通常要用im2double()函数,而不用double()或mat2gray()函数
他们的区别如下
im2double():将0-255的uint8类型转换为0-1的double类型
double():直接将0-255的uint8类型转换为0-255的double类型
mat2gray():将0-”最大的数“的uint8类型转换为0-1的double类型
例如:
B = [5,5,5;5,2,25;25,5,2] 5 5 5 5 2 25 25 5 2 (类型为uint8) B1 = im2double(B) 0.0196 0.0196 0.0196 0.0196 0.0078 0.0980 0.0980 0.0196 0.0078 (类型为double) B2 = mat2gray(B) 0.1304 0.1304 0.1304 0.1304 0 1.0000 1.0000 0.1304 0 (类型为double) B3 = double(B) 5 5 5 5 2 25 25 5 2 (类型为double)
2、加入噪声
高斯噪声
在对图像添加高斯噪声通常有两种方法,一是加入指定均值与方差的噪声,即使用imnoise( )函数,这种方法易于理解,在此不做赘诉。二是加入干扰强度与图像能量相关的噪声,即使用awgn( )函数。三是直接使用简单函数
awgn( )函数使用方法如下:y=awgn(x,snr,’measured’,powertype)
其中x为输入图像;snr为信噪比;
measure有用信号能量来自测量图像的信号能量,能量计算方法为:
sigPower = sum(abs(sig(:)).^2)/length(sig(:))
powertype可以是’dB’或’linear’。如果powertype是’dB’,那么SNR以dB为单位。如果POWERTYPE是’linear’,那么SNR作为比值来度量。
例如 y=awgn(x,snr,’measured’,powertype)
直接使用简单函数的方法如下(未验证)
sigPower = sum(abs(sig(:)).^2)/length(sig(:)); %求出信号能量
noisePower=sigPower/SNR; %求出噪声能量
noise=sqrt(noisePower)*randn(n,1); %得到高斯随机噪声
y=sig+noise; %得到高斯信号
均匀噪声
椒盐噪声
- Matlab图像处理预处理
- matlab图像预处理
- Matlab图像预处理命令
- matlab图像预处理
- matlab图像预处理代码综合
- matlab预处理图像样本均衡
- 图像预处理之平滑处理
- 数字图像处理 预处理 图像增强
- matlab实现图像预处理的很多方法
- 【图像处理】MATLAB:图像噪声
- 【图像处理】MATLAB:图像压缩
- 【图像处理】MATLAB:图像分割
- MATLAB图像处理命令
- MATLAB 图像处理命令
- MATLAB图像处理基本知识
- Matlab 图像处理
- 关于matlab图像处理
- MATLAB图像处理基础
- Android:单选按钮
- iOS自动布局-链接
- 中国GDP什么时候会超过美国
- js数组操作
- XCode编译器介绍
- Matlab图像处理预处理
- 在EditText中添加图片和文字
- JAVA关键字极其作用
- Android:多选按钮
- Extjs如何自定义panel header样式?
- UIAlertView的简单用法
- C#之值与引用传递
- 【南理oj】24 - 素数距离问题(打表,多次出错)
- java数据结构与算法1