前言:
此时兄弟们对“图像处理中的加权平均”大约比较讲究,朋友们都需要剖析一些“图像处理中的加权平均”的相关文章。那么小编同时在网摘上收集了一些关于“图像处理中的加权平均””的相关内容,希望看官们能喜欢,看官们一起来学习一下吧!磨皮是很多人喜闻乐见的功能,尤其女人。
那么,手机,或者说计算机,是如何通过计算实现磨皮的呢?
我们首先来看,照片是如何存储在计算机中的。
图像的存储
我们所见的图像,在电脑中实际上是一个数字阵列,即矩阵。
图片有宽度(width)和高度(height),而矩阵有行(row)和列(column),正好一个萝卜一个坑地对应。
举一个通俗的例子。
假设图片分辨率为4×4,那么,图片“/”,可在电脑中表示为:
255在显示器上将被显示为纯白,0为纯黑。
介于0到255之间的,将被显示为不同程度的“灰色”,因此,这图被称为“灰度图”。
为什么是0到255呢?
这是因为,我们使用一个字节,也就是8bit二进制(0000 0000到1111 1111)来存储每个像素点,它可以表示256种不同的灰度。
当然,也有用10bits或12bits或16bits的场景,比如一些医疗成像器械。如果用16bits,可以表示65536种灰颜色,颜色分辨得更精准。
彩色图像由RGB(红、绿、蓝)三色组成,原理一样。
这样一来,对图像的操作,就可以转换成对矩阵的操作,实际上,图像处理软件正是这么做的。
有了图像矩阵,如何进行磨皮的操作呢?
平均与模糊
磨皮,实际上就是将该模糊的区域模糊化,这样就能消除皱纹、痘痘等等细节。
那么,如何将图片模糊?
在生活中,我们可能遇到过这种情况:
称体重时,反复称三四次,再求个平均,以确保秤没问题,是自己真变肥了。
为什么平均呢?
因为,误差会产生“干扰”,会使数据“波动”,“平均”可使数据更“平滑”。
“平滑”,就是图像中的“模糊”。
如果我们将图像矩阵中的每一个点与其周围进行“平均”,那么照片就变平滑了。
比如,上面的4×4矩阵:
我们可以将蓝色方框中的像素点与周围的点进行平均:
蓝色点 = (255×7 + 0 + 0) / 9 = 198
然后,我们“从左到右、从上到下”一格一格地移动红色的窗口,将每一点都重新进行平均计算(边缘补零),就会发现:
原本纯黑的地方,向白色靠拢了;原本纯白的地方,向黑色靠拢了。
黑白的界限不再“泾渭分明”,而变成“逐渐过渡”。
这个红色方框所构成的3×3矩阵,就是一个“滤波器”,该矩阵的各个元素都是1,上面的算法就是矩阵的“卷积”。
如果我们对这张测试图片进行类似的“平滑”操作:
则效果如下:
这样,图片就被模糊了。
又比如,经典的lena图:
平均一下?
非常显然,尖锐的地方,比如帽子上的羽毛,被模糊(平滑)了。
如果我们仅对面部进行模糊,就是一种“磨皮”的效果。
当然,这里仅采用了“平权平均”,为了追求更好的效果,实际程序员往往会使用“加权平均”。
至于如何选取合适的“加权系数”,这就是数字图像处理中“卷积与滤波器”的内容,而且,图像不仅能进行平均,还能进行傅里叶变换等其它操作,在此点到为止,不予展开。
科技的日新月异使我们突然意识到:
1.照片拍得太清晰,并不一定受欢迎,
2.磨皮不仅可以用砂纸,还能用矩阵。
标签: #图像处理中的加权平均