MATLAB图像点运算
1、线性点运算图像成像设备以及图像记录设备的动态范围太窄等原因,会导致图像成像曝光率不足或者过度,这时就会用到点运算将灰度图像的线性范围进行拓展,线性点运算是指灰度变换函数为线性挣窝酵聒函数时的运算示例1:对图像进行线性点运算编写对应m文件如下:clear all;a=imread('coins.png');a1=a+30;%%图像灰度值增加30%%a2=1.5*a;%%图像对比度增加1.5倍%%a3=0.5*a;%%图像对比度减少为原来的0.5%%subplot(2,2,1)imshow(a);title('原始图像');subplot(2,2,2)imshow(a1);title('灰度值增加图像');subplot(2,2,3)imshow(a2);title('对比度增加图像');subplot(2,2,4)imshow(a3);title('对比度减少图像');程序运行结果如下图:

3、直方图与点运算直方图是多种空间域处理技术的基础,直方图能够有效用于图像的增强,直方图在软件中也可以很方便的进行计算,是实时图像处理的一个重要工具,matlab中使用imhist函数来产生直方图,其调用格式如下:imhist(I);I表示图像矩阵,返回一幅图像,显示I的直方图线性点运算只是将图像的直方图拉伸后平移,形状基本不发生变化,超过灰度边界的积累在边界上,非线性点运算其直方图的形状会发生明显的变化示例:点运算对直方图的影响编写对应的m文件如下:a=imread('cameraman.tif');subplot(1,2,1)imhist(a);title('原始图像')b=1.5*double(a)+0.5;%%对直方图进行变换%%subplot(1,2,2)imhist(uint8(b));title('变换后的图像');程序运行结果如下图:

5、另外函数adapthisteq函数首先对图像进行直方图均衡化,然后利用双线性插值法把各个小块进行拼接,以消除局部块造成的边界。该函数调用格式如下:J=adapthisteq(I);其中I表示原图像,J表示均衡化后的图像示例:使用函数adapthisteq函数对图像进行直方图均衡化编写对应m文件如下:a=imread('eight.tif');subplot(1,2,1)imshow(a);title('原始图像');b=adapthisteq(a);subplot(1,2,2)imshow(b);title('adapthisteq均衡化图像');程序运行结果如下图:
