勇哥注:
图片过滤器是一切缺陷检测、边缘提取、图片分割前处理、分类器应用等等的基础。有很重要的研究意义。
因此勇哥会写成一个系列贴子以和大家一起分享。
-正文---------------------------------------------------------------------
highpass_image
从图像中提取高频分量。
签名
描述
highpass_image
通过使用具有以下矩阵的线性滤波器(在7x5矩阵的情况下),提取图像中的高频分量:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -35 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1这对应于应用平均算子(mean_image
),然后减去原始灰度值。将128的值添加到结果中,即128出现零交叉。
该滤波器强调高频成分(边缘和拐角)。截止频率取决于滤波器矩阵的大小(高x宽):矩阵越大,截止频率越小。
在图像边界处,像素的灰度值被镜像。如果发生上溢或下溢,则灰度值将被裁剪(分别为255和0)。
注意
如果为或传递了偶数值,则运算符将改用下一个较大的奇数值。因此,滤波器掩膜中心总是唯一地确定。 Height
Width
highpass_image
可以在OpenCL设备上执行。与 mean_image
和
sub_image
适用相同的限制。
请注意,如果使用reduced_domain的图像作为输入,则过滤器运算符可能会返回意外结果。请参考过滤器一章。
举个栗子:
read_image (Image, 'particle') highpass_image (Image, Highpass, 21, 21) threshold (Highpass, Region, 132, 255) opening_circle (Region, RegionOpening, 1.5) dev_display (Image) dev_display (RegionOpening)
highpass_image (Image, Highpass, 21, 21)
highpass_image (Image, Highpass, 5, 5)
再举个栗子:
read_image (Image, ImageFiles[14]) shock_filter(Image, SharpenedImage, 0.5, 10, 'canny', 0.8)//p2 bilateral_filter(SharpenedImage, SharpenedImage, ImageBilateral, 9, 20, [], []) scale_image_max(ImageBilateral, ImageScaleMax) emphasize(ImageScaleMax, ImageEmphasize, Width, Height, 1) highpass_image(ImageEmphasize, Highpass, 3, 3)
源图:
(图1)
运行至算子emphasize的效果。
(图2)
highpass_image(ImageEmphasize, Highpass, 3, 3)
通过了图2的高频部分,抵制了低频部分,得到了我们需要的齿边缘。
(图3)
---------------------
作者:hackpig
来源:www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!

