计算机视觉——基本图像处理

1.语言环境

1.1python环境的下载

下载了Anaconda,Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。这里采用的是Anaconda2-5.0.0进行下载,为了配合课本的学习,采用了python2.7的版本。Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等。

环境配置好之后打开cmd输入:conda --version
输出版本号之后说明安装成功了
计算机视觉——基本图像处理

1.2编辑器下载

我下载的是pycharm编辑器
计算机视觉——基本图像处理

2.绘制图像直方图

2.1基本原理

绘制轮廓需要对每个坐标 [x, y] 的像素值施加同一个阈值,所以首先需要将图像灰度化,这里用 PIL 的 convert() 方法将图像转换成灰度图像。在使用axis()函数进行操作。
图像的直方图用来表征该图像像素值的分布情况。用一定数目的小区间(bin)来指定表征像素值的范围,每个小区间会得到落入该小区间表示范围的像素数目。该(灰度)图像的直方图可以使用 hist() 函数绘制。hist() 函数的第二个参数指定小区间的数目。需要注意的是,因为 hist() 只接受一维数组作为输入,所以我们在绘制图像直方图之前,必须先对图像进行压平处理。flatten() 方法将任意数组按照行优先准则转换成一维数组。

2.2代码实现

计算机视觉——基本图像处理

2.3结果展示

计算机视觉——基本图像处理

3.直方图均衡化

3.1基本原理

直方图均衡化是指将一幅图像的灰度直方图变平,使变换后的图像中每个灰度值的分布概率都相同。在对图像做进一步处理之前,直方图均衡化通常是对图像灰度值进行归一化的一个非常好的方法,并且可以增强图像的对比度。在这种情况下,直方图均衡化的变换函数是图像中像素值的累积分布函数(cumulative distribution function,简写为 cdf,将像素值的范围映射到目标范围的归一化操作)

3.2代码实现

计算机视觉——基本图像处理

3.3结果展示

计算机视觉——基本图像处理

4.高斯滤波

4.1基本原理

高斯滤波实质上是一种信号的滤波器,其用途是信号的平滑处理,人们知道数字图像用于后期应用,其噪声是最大的问题,由于误差会累计传递等原因,很多图像处理教材会在很早的时候介绍Gauss滤波器,用于得到信噪比SNR较高的图像(反应真实信号)。

4.2代码实现

计算机视觉——基本图像处理

4.3结果展示

计算机视觉——基本图像处理