自定义滤镜和置换滤镜的原理
- 2022-03-04
- 来源/作者: ps.onegreen.org / 佚名
- 10 次浏览
自定义滤镜和其他滤镜有所不同,它涉及到了一些图像处理方面的知识,而和photoshop用户习惯的直观调控的滤镜有所不同。ps中的计算也涉及到了图像处理的算法。
photoshop是常用于图像处理的软件,他是一种功能强大的图像处理算法集合。用户可以通过photoshop提供的可视化用户接口方便的调节各种参数,从而实现千变万化的效果,非常直观方便。不过这些算法是封装在暗箱中的,对用户封闭,用户不需要了解复杂的算法,这也使得使用者不需要具备专业的图像处理基础就可以根据主观视觉调出各种满足需求的图像。因为用户手中无法直接掌控图像数据,也就削减了用户对算法的直接控制。不过photoshop还是提供了一个简单的算法接口——自定义滤镜。
因为这个滤镜涉及到数字图像处理领域,因此在了解自定义滤镜的使用之前,我们需要一些简单的图像处理知识。
图像的存储格式,一般我们最常处理的图都是jepg格式,RGB三色加法合成模式,位深度表示的是每个像素使用的存储数据的位数,位深为8表示使用8位二进制数据存储,因此从最暗到最亮可以划分为0~255一共256(2 8)个等级。因此一般的jpg图片位深每个通道8位一共24位。所以一共可以产生1600多万种颜色。图像存入计算机中,被划分为非常细小的一格一格紧密排列的方格,叫做像素,也就是组成图像的最小单位。因此图像无法无限放大观看,放大以后会出现矩形锯齿,所以在photoshop中,处理矢量图像时会要求先栅格化,也就是要把矢量图形切割成像素的意思。进行图像处理时,先把图片数据读入一个矩阵中。例如对于一个400×300像素的RGB图片,将它的数据读入一个矩阵I以后,这时矩阵I是一个400×300×3的三维矩阵。例如I(x,y,1)表示的就是位于(x, y)位置的像素的红通道的数值。
有了以上的了解,我们来看自定义滤镜的对话框:
2对话框中间有一个5×5的参数框,可以称为系数矩阵或者加权矩阵。它是一个图像处理的数据窗,它最中间的那个格子表示的是我们要计算的像素,周围的格子表示的是邻近像素。在图像处理是,这个数据窗连续移动,应用到每个像素上,被数据窗覆盖的像素值乘以相应的系数后相加,再除以缩放倍数,然后再加上位移值,就是该点的新的像素值。因此通过在里面填上用户自己定义的系数,就可以实现一个自定义的算子。通过设计不同的参数可以实现各种不同的滤波器。存储可以把当前的算子存储起来,供以后载入方便使用。
3;图片缩小以后看起来比较累,
3-2:(把照片变得更清晰。)
自定义滤镜4:
自定义滤镜5:
置换滤镜的原理:
首先,至于被应用置换滤镜的叫作源图,或源像素。对于置换后生成的,我们叫做目的图或目的像素。用来计算偏移距离的图,我们叫做置换图或者置换像素。
1、置换像素的灰度信息所规定的方向矢量
a。第一个通道计算水平的x方向偏移量。第二个通道计算垂直的y方向偏移量。例如对于rgb图来说,红通道控制水平方向偏移,绿通道控制垂直方向偏移。对于只有一个通道的置换图(灰度图),则x,y方向都以该通道进行计算。
b。正方向:向左或者向上。负方向:向右或者向下。
c。对于某点,偏移距离=(像素灰度-128)×该方向比例。
d。因此,对于x,y方向比例都为100%的情况下,像素在x或者y方向的最大移动距离是128像素。亮色的方向矢量为向左上方向,暗色的方向矢量为向右下方向。灰度为128的像素不产生偏移。
2。置换原理:
[目的图]是这样生成的,[目的图]上的[目的像素]来自于[源图]上的某一个像素,这个像素是根据置换图制定的位移方向到源图上进行反向查找,然后把找到的源图上的这个像素作为目的像素。举个简单的例子,假设目的像素对应的置换像素指定的是右移128像素,那么目的像素就是源图上的左边的与目的像素相距128的那个像素。因此,我们可以这样理解置换图,置换图和磁铁一样,是一个场,每一点都是一个矢量,有方向和大小。
3.置换的应用区域(任意选区对置换结果的影响)
对于任意形状的选区,置换计算区域为选区的外接矩形来得到目的图,目的图只有在选区内的部分才得到体现。在选区外的部分,依然保持源像素。这一点与我前面得到的结论是一致的。
4.什么是未定义区域:
由第一条置换原理,我们知道,由于在源图上寻找目的像素的时候,寻找的位置可能超出了选区外接矩形区域的外接矩形,那么该目的像素的位置,称为未定义区域。
*注意超出的选区,不是我们制定的任意形状选区,而是选区的外接矩形!后面提到的边缘像素,依旧值得是外接矩形边缘,而不是选区边缘!
5.伸展以适合方式和拼贴方式:
伸展方式:对置换图伸展成为和选区外接矩形同样的形状。
拼贴方式:选区外接矩形和置换图以左上角对齐的方式,如果置换图小于选区外接矩形,那么置换图将重复拼贴,直到完全覆盖选区为止。
6.未定义区域折回方式:
寻找源像素时超出选区外接矩形区域时,该像素所处位置叫做未定义区域,
对于折回方式,是从另一侧继续进入外接矩形区域查找。这种方式也可以理解为,将选区外接矩形区域以拼贴方式向四周可以无限扩展,然后查找到源像素。
7,查找源像素是两个方向的叠加:
查找源像素是横向和纵向方向的叠加,即先水平移动,再垂直移动,或者先垂直移动,再垂直移动,是无所谓的。但必须是按两个方向移动两次的结果
8、未定义区域重复边缘像素方式:查找顺序是,横向查找+纵向查找时,如果遇到选区的边缘就停止该查找方向。这就是重复边缘像素方式。9。上面提到的选区外接矩形区域的概念,以上提到的伸展,拼贴,边缘等概念,都是针对的选区的外接矩形,而不是选区的形状!
11.对置换滤镜的认识:
1)置换,是对于源图像素的重新选取和排列,因此不要奢望置换带来新的色彩和像素,并且只有可能损失像素信息。
2)对于置换图,由于只利用它的灰度信息,所以通过追求置换图的绚丽色彩来追求效果是没有意义的,在我们眼中,要把置换图看作一副没有颜色的灰度图。它的灰度变化和对比,可以理解为用来生成扭曲效果。没有灰度变化的置换图,不会带来扭曲的效果。
3)像素的最大移动距离,不可能超出选区宽度。