入坑计算机视觉必备的图像基础

大家好,暑假无事,论文写不出来,再折腾完云服务器之后,我又开始学习新技术了,这次学习的是深度学习之计算机视觉。

1 数字图像概念

1.1 位数

计算机采用0/1编码的系统,数字图像也是利用0/1来记录信息,我们平常接触的图像都是8位数图像,包含0~255灰度,其中0,代表最黑,1,表示最白。

图片

1.2 分辨率

数字图像有两个分辨率,图像分辨率与输出分辨率

图像分辨率指的是每英寸的像素数,简写为ppi,我们平常说一张图片大小的时候使用的就是图像分辨率。

输出分辨率指的是设备输出图像时每英寸可产生的点数,简写为dpi,这是在印刷行业,摄影行业常用的分辨率,摄影行业通常要求DPI不低于300。

相同的图像分辨率,更高的DPI表现为物理尺寸更小。因为这个时候每英寸点更多,像素变小。

如下面两张图,左图的DPI=72,物理尺寸大小为高46.85厘米,宽67.73厘米。右图的DPI=150,物理尺寸大小为高22.47厘米,宽32.49厘米。两者的像素数是相等的,都是1920*1328像素分辨率,但是右边的dpi更大。

图片

物理尺寸相同,DPI较低表现为较低的分辨率,此时每英寸的点数变少,像素变大。如下面两张图,图像实际大小相等,但是右边的图像分辨率较低,像素数较少,清晰度有所下降。

图片

1.3 彩色空间

图像有灰度图有彩色图,灰度图即只包含亮度信息,而彩色图不仅包含亮度信息还包含颜色信息。

图片

我们平常接触的是RGB彩色图,即由红(Red)绿(Green)蓝(Blue)3个通道组成,一张图像的每一个像素由矢量(R,G,B)表示。

1.4 对比度与清晰度

图像有高亮度也有低亮度,对应的就是白与黑,目前多数显示系统利用8字节,即灰度值0代表最黑,灰度值255代表最亮,不过大部分图像上的亮度范围通常都小于最大最小值之差。

对比度,指的就是画面的明暗反差程度

对比度有全局对比度和局部对比度。增加对比度,画面中亮的地方会更亮,暗的地方会更暗,明暗反差会增强。下面分别是降低对比度和增加对比度,感受一下。

图片

清晰度,指的是边缘附近的敏感对比。

如果增加清晰度,边缘较暗的一侧会变得更暗,边缘较亮的一侧会变得更亮,轮廓更加清晰,不过调节过度,会出现晕影。

增加清晰度,可以通过锐化操作来进行。降低清晰度,可以通过降低图像分辨率,增加模糊等方法。

图片

2 数字图像处理基础

2.1 直方图

图像之所以能处理,是因为像素与像素是有空间联系的,对像素灰度值进行统计,就得到了直方图。

下面分别是上面灰度和彩色图的直方图。

图片

统计代码如下:

import cv2
import matplotlib.pyplot as plt
import numpy as np
import sys
import os

filename=sys.argv[1]
img=cv2.imread(filename)
colors=['blue','green','red']

for i in range(3):
    hist,x=np.histogram(img[:,:,i].ravel(),bins=256,range=(0,256))
    plt.plot(0.5*(x[:-1]+x[1:]),hist,label=colors[i],color=colors[i])
plt.show()

imggray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
cv2.imwrite('sample_gray.jpg',imggray)

histgray,xgray=np.histogram(imggray.ravel(),bins=256,range=(0,256))
print xgray
plt.figure()
plt.plot(0.5*(xgray[:-1]+xgray[1:]),histgray)
plt.show()

我们可以看到,在灰度直方图包含两个很明显的分布,在彩色直方图的红色通道也包含两个很明显的分布,分别对应的就是“前景”和“背景”

图片

如上图,感兴趣的是图中的“柿子”,这就是前景,它的灰度比较高,对应的就是直方图中的较高峰。

2.2 边缘

视觉机制和马赫达效应都表明人眼对不连续的东西是最敏感的,而图像中不连续的东西,表现出来就是图像边缘。

边缘包含上升阶跃型、下降阶跃型、屋脊型、脉冲型等类型,

图片

边缘检测在计算机视觉与图像处理中基础且应用广泛。通过提取目标的轮廓,用于识别不同的物体,或作为图像的特征表示。边缘检测的基本方法有很多,它们的绝大部分可以划分为两类:基于一阶导数和二阶导数的方法。

3 概念区分

有一些基本概念容易混淆,图像处理,图形学,计算机视觉等,用几个图就很好理解了。

3.1 图像处理领域

图像处理一般指数字图像处理,输入是图像,输出也是图像,通常是为了改善,增强图像的内容以方便后续的分析。

图片

图片

图像模糊

图片

对比度增强

图片

图像降噪

3.2 计算机视觉

所谓计算机视觉,即compute vision,就是通过用计算机来模拟人的视觉工作原理,来完成模式分析,比如图像分类,分割,检测等。

图片

图片

3.3 图形学

所谓计算机图形学(Computer Graphics,简称CG),是指使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。

简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算,比如我们熟知的CG制作

图片

图片

图形学中三维重建占了很大一部分比例,感兴趣可以了解更多。

图片

图片

以上几个领域都是相互交叉,实际上没必要分的那么开,了解即可。