跳转到内容

感觉系统/视觉系统/图像处理

来自维基教科书,开放世界中的开放书籍

图像处理

[编辑 | 编辑源代码]

一个主要的理解技术工具是计算机处理图像的方式。我们必须了解如何编辑图像以及有哪些技术可以重新排列图像。

图像表示

[编辑 | 编辑源代码]

对于计算机来说,图像只不过是大量的小方块。这些方块被称为“像素”。在灰度图像中,每个像素都包含一个数字 n,通常是 。这个数字 n 代表了图像中该方块的确切颜色。这意味着,在一个灰度图像中,我们可以使用 256 种不同的灰度,其中 255 代表白色斑点,而 0 代表方块是黑色的。说实话,我们甚至可以使用超过 256 种不同的灰度级别。用这种方法,每个像素使用正好 1 字节(或 8 位)的内存来保存。(由于计算机的二进制系统,它包含:28=256)如果你认为你的图像需要更多不同的灰度级别,这不是问题。你只需要使用更多内存来保存图片即可。但请记住,对于大型图像来说,这可能是一项艰巨的任务。此外,你经常会遇到这样的问题:你的传感设备(例如你的显示器)可能无法显示超过 256 种不同的灰色。

表示彩色图像比灰度图像只稍微复杂一点。你需要知道的只是计算机使用三种主要颜色红色、绿色蓝色的加色混合。这些是所谓的 RGB 颜色。

这些图像也是由像素保存的。但是现在每个像素必须知道 3 个介于 0 到 256 之间的值,每种颜色 1 个值。因此,现在我们可以表示 2563= 16,777,216 种不同的颜色。类似于灰度图像,这里也成立,没有颜色意味着黑色,所有颜色都意味着白色。这意味着,颜色 (0,0,0) 是黑色,而 (0,0,255) 意味着蓝色,(255,255,255) 是白色。

图像滤波

[编辑 | 编辑源代码]

一维滤波器

[编辑 | 编辑源代码]

在许多技术应用中,我们发现了一些可以轻松描述特征的原始基础。在一维情况下,滤波器并不复杂,因此我们可以使用这些滤波器来更改图像。所谓的“Savitzky- Golay 滤波器”允许平滑传入的信号。该滤波器由 Abraham Savitzky 和 Marcel J. E. Golay 于 1964 年提出。它是一种脉冲响应滤波器(IR)。

为了更好地理解,让我们看一个例子。在 1d 中,我们通常处理向量。一个这样的给定向量,我们称之为 x,它包含:。我们的目的是平滑这个向量 x。为此,我们只需要另一个向量 ,我们称这个向量为权重向量。

有了 ,我们现在得到了一个平滑的向量 y。这个向量比之前的向量更平滑,因为我们只保存了向量中几个元素的平均值。这意味着新找到的向量元素取决于要平滑的元素左右两边的几个元素。这种方法的一个主要缺点是,新找到的向量 y 只有 n-m 个元素,而不是像原始向量 x 那样有 n 个元素。

绘制这个新的向量会产生与之前相同的函数,只是振幅更小。因此没有丢失数据,但波动更小。

二维滤波器

[编辑 | 编辑源代码]

从一维情况到二维情况的转换,只需将向量变成矩阵。正如前面提到的,灰度图像对于计算机或像MATLAB这样的软件工具来说,仅仅是一个充满自然数的大矩阵,通常介于0到255之间。

权重向量现在变成了权重矩阵。但是我们仍然通过将不同的矩阵元素乘积加起来来使用滤波器。

膨胀和腐蚀

[编辑 | 编辑源代码]

对于之前看到的线性滤波器,它们是交换的。引用维基百科:“如果

"

换句话说,使用多少个线性滤波器以及它们的顺序并不重要。例如,如果将Savitzky-Golay滤波器应用于一些数据,然后应用第二个Savitzky-Golay滤波器计算一阶导数,则无论滤波器的顺序如何,结果都是相同的。甚至可以证明,有一个单一滤波器可以实现与两个应用滤波器相同的效果。

相反,形态学操作是图像上的非线性操作,最终结果取决于操作的顺序。如果我们考虑任何图像,它都是由像素值xij定义的。此外,假设图像为黑白图像,因此我们有

为了定义形态学操作,我们需要设置一个结构元素SE。例如,一个3x3矩阵作为图像的一部分。

腐蚀E的定义如下

.

也就是说,如果任何结构元素M中的像素值为0,腐蚀操作会将M(M中的特定像素)的值设置为零。否则E(M)=1

对于膨胀D,如果SE中任何值为1,则M的膨胀D(M)被设置为1。

.


膨胀和腐蚀的组合:图像的开运算和闭运算

[编辑 | 编辑源代码]

膨胀和腐蚀有两种组合。一种称为开运算,另一种称为闭运算。它们分别为

华夏公益教科书