本文由JavaCS3原创,转载请注明出处!
由于最近在做数字图像处理方面的程序,偶然想到PS里面有个自定滤镜的玩意。猛然发现这不就是卷积么,于是就想跟大家分享一下!本以为这个IDEA是我最先想出来的没想到网上好像有相关介绍,先摘录一些,大家可以先去浏览一下http://www.wzsky.net/html/Photo/Photoshop/114775.html
http://wenku.baidu.com/view/d13c40d276eeaeaad1f330c7.html
先给大家讲讲这神秘的PS吧!!!!可能很多搞设计的人,或者对PS稍微有所了解的人都觉得PS这软件简直就是魔术一般,模糊变清晰,什么美图啊等等。自从学习数字图像处理后觉得这软件无非就是把这深奥的理论变为轻松的可以供人们随意组合的工具罢了。很多的处理方法都是数字图像处理里面很经典的方法。一下针对今天的主题(自定滤镜)探讨一下。
其实所谓的滤镜在信号处理里面无非就是滤波这样的东西,只不过我们所处理的图像是数字图像罢了。
首先,这个自定滤镜在滤镜->其他->自定 里面,大家一看这面板可能会非常陌生。(什么玩意啊?全是些框框!连滑块都没有!)呵呵!我估计大家平时去乱玩的时候看到这个就没兴趣了。其实这东西是数字图像里面非常常见的滤波算子 也可以叫他内核(Kernel) 接下来就要提到卷积了。以下是openCV里面有关卷积的介绍:HERE
———————————————————————————————————--
高度概括地说,卷积是在每一个图像块与某个算子(核)之间进行的运算。
核说白了就是一个固定大小的数值数组。该数组带有一个 锚点 (其实就是中心点) ,一般位于数组中央。
由于最近在做数字图像处理方面的程序,偶然想到PS里面有个自定滤镜的玩意。猛然发现这不就是卷积么,于是就想跟大家分享一下!本以为这个IDEA是我最先想出来的没想到网上好像有相关介绍,先摘录一些,大家可以先去浏览一下http://www.wzsky.net/html/Photo/Photoshop/114775.html
http://wenku.baidu.com/view/d13c40d276eeaeaad1f330c7.html
先给大家讲讲这神秘的PS吧!!!!可能很多搞设计的人,或者对PS稍微有所了解的人都觉得PS这软件简直就是魔术一般,模糊变清晰,什么美图啊等等。自从学习数字图像处理后觉得这软件无非就是把这深奥的理论变为轻松的可以供人们随意组合的工具罢了。很多的处理方法都是数字图像处理里面很经典的方法。一下针对今天的主题(自定滤镜)探讨一下。
其实所谓的滤镜在信号处理里面无非就是滤波这样的东西,只不过我们所处理的图像是数字图像罢了。
首先,这个自定滤镜在滤镜->其他->自定 里面,大家一看这面板可能会非常陌生。(什么玩意啊?全是些框框!连滑块都没有!)呵呵!我估计大家平时去乱玩的时候看到这个就没兴趣了。其实这东西是数字图像里面非常常见的滤波算子 也可以叫他内核(Kernel) 接下来就要提到卷积了。以下是openCV里面有关卷积的介绍:HERE
———————————————————————————————————--
高度概括地说,卷积是在每一个图像块与某个算子(核)之间进行的运算。
核说白了就是一个固定大小的数值数组。该数组带有一个 锚点 (其实就是中心点) ,一般位于数组中央。
假如你想得到图像的某个特定位置的卷积值,可用下列方法计算:
- 将核的锚点放在该特定位置的像素上,同时,核内的其他值与该像素邻域的各像素重合;
- 将核内各值与相应像素值相乘,并将乘积相加;
- 将所得结果放到与锚点对应的像素上;
- 对图像所有像素重复上述过程。
———————————————————————————————————--
希望大家会明白上面的原理!这个类似于两个矩阵的乘法!
好了接下来来我给大家介绍一下常见的操作!
1.首先最简单的box filter,其实就是最简单的模糊操作。
希望大家会明白上面的原理!这个类似于两个矩阵的乘法!
好了接下来来我给大家介绍一下常见的操作!
1.首先最简单的box filter,其实就是最简单的模糊操作。