matlab——图像增强2
利用非线性函数对医学图像进行处理
对数函数:对数变换公式s = c * log(1 + v * r) / log(v + 1),r为输入的图像数据
反对数函数:反对数变换公式为s = ((v + 1) .^ r - 1) / v,r为输入的图像数据
幂函数:幂次变换的公式为 s = c * r ^ v ,r为输入图像像素
I=dicomread('img');%读取医学图像“img”
I1=mat2gray(double(I));%将图片进行归一化,并转换为double类型
I_log=log(1+6*I1)/log(6+1);
I_antilog=((2+1).^I1)/2;
I_addpo= 1* I1^ 1.1;
I_repo=1*I1^0.9;
subplot(3,2,1),imshow(I),title('原始图像');
subplot(3,2,2),imshow(I_log),title('对数变换');
subplot(3,2,3),imshow(I_antilog),title('反对数变换');
subplot(3,2,4),imshow(I_addpo),title('幂次变换(y>1)');
subplot(3,2,5),imshow(I_repo),title('幂次变换(y<1)');
结果显示
部分内容来源于:https://blog.csdn.net/wl1070325332/article/details/77882472