数字图像处理笔记——直方图和点操作(Histograms and point operations)

直方图

我们根据灰度值的大小可以将灰度值相同的像素分到同一组,将每个灰度值所含的像素点数目画出来得到的图就是直方图。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第1张图片

 

点操作

图像的点操作是对某个图像的每个灰度值相同的像素都进行相同的操作

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第2张图片

对比度增强

对比度增强就是将灰度值的范围拉到已达到颜色差别更明显的目的,在matlab中有image tool可供直接调整对比度,红色框之间的像素值将会被映射到0-255,而处在红框左侧之外的值都会变为0,红框右侧以外的值都会变成255

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第3张图片

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第4张图片

直方图均衡

有的时候当我们需要得到图像的一些细节的时候,对比度均衡并不能很好地帮我们完成这项工作,我们需要对图像的像素值进行重分配来获得理想的像素分配,也就是各个像素值所含的数目都是相同的。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第5张图片

我们可以证明为了获得理想的像素分布,像素的变换函数就是原图像像素值的累计分布(CDF)。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第6张图片

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第7张图片

在matlab中提供了一个函数histeq来完成这项工作,可以看出结果是图像的直方图并不是均匀分布的,而还是参差不齐的,原因是直方图分布是离散的,而不是连续的,因此当像素重分配的时候,对于同一个值,它的映射函数是相同的,不能将其一分为二变成两个新的值,所以就会出现直方图不均匀的状况。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第8张图片

伽马矫正

我们在矫正图像的时候还有一个参数就是伽马,那么伽马是做什么用的呢?我们理想的输入和屏幕的显示输出应该是一条过原点的直线,即F(D)=D,但实际显示器的输入输出关系式一个幂函数,这样就会导致图像在显示器显示出来以后出现色彩失真。这个幂函数的幂次就是伽马,因此当我们知道一个显示器的输入输出关系以后,我们就可以对图像进行预补偿来矫正失真

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第9张图片

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第10张图片

空域滤波器

对一个图像进行空域滤波是将一个点的像素值由其相邻像素的值进行替代

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第11张图片

因为当我们进行操作时相当于一个冲击响应和各个点做卷积,当我们在matlab中我们有imfilter这个函数可以帮助我们完成滤波的任务。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第12张图片

除了上述提到的平滑滤波器,我们还有两种常用的空域滤波器(如下图),第一个滤波器会将与周围像素有明显不同的像素高亮出来,这个滤波器常用于轮廓检测;第二个滤波器会将下半区域像素与上半区域像素有明显不同的像素高亮出来,这个滤波器常用于水平线检测。

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第13张图片

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第14张图片

                                                  边缘检测

数字图像处理笔记——直方图和点操作(Histograms and point operations)_第15张图片

                                                水平线检测

 

 

 

 

你可能感兴趣的:(图像处理)