• Emboss滤波器实现及应用


    一. Emboss 滤波器介绍:

            Emboss滤波器常用于检测图像的边缘和轮廓,能够有效地增强图像的高频信息(边缘和轮廓),并保留图像的低频信息(图像内容)。


    Emboss 滤波器卷积核 ↑
     

    二. 实验:实现Emboss滤波器,使用Emboss滤波器增强图像轮廓

     1 import cv2
     2 
     3 import numpy as np
     4 
     5 # Gray scale
     6 
     7 def BGR2GRAY(img):
     8 
     9     b = img[:, :, 0].copy()
    10 
    11     g = img[:, :, 1].copy()
    12 
    13     r = img[:, :, 2].copy()
    14 
    15     # Gray scale
    16 
    17     out = 0.2126 * r + 0.7152 * g + 0.0722 * b
    18 
    19     out = out.astype(np.uint8)
    20 
    21     return out
    22 
    23 # emboss filter
    24 
    25 def emboss_filter(img, K_size=3):
    26 
    27     H, W = img.shape
    28 
    29     # zero padding
    30 
    31     pad = K_size // 2
    32 
    33     out = np.zeros((H + pad * 2, W + pad * 2), dtype=np.float)
    34 
    35     out[pad: pad + H, pad: pad + W] = img.copy().astype(np.float)
    36 
    37     tmp = out.copy()
    38 
    39     # emboss kernel
    40 
    41     K = [[-2., -1., 0.],[-1., 1., 1.], [0., 1., 2.]]
    42 
    43     # filtering
    44 
    45     for y in range(H):
    46 
    47         for x in range(W):
    48 
    49             out[pad + y, pad + x] = np.sum(K * (tmp[y: y + K_size, x: x + K_size]))
    50 
    51     out = np.clip(out, 0, 255)
    52 
    53     out = out[pad: pad + H, pad: pad + W].astype(np.uint8)
    54 
    55     return out
    56 
    57 # Read image
    58 
    59 img = cv2.imread("../paojie.jpg").astype(np.float)
    60 
    61 # BGR2GRAY
    62 
    63 gray = BGR2GRAY(img)
    64 
    65 # emboss filtering
    66 
    67 out = emboss_filter(gray, K_size=3)
    68 
    69 # Save result
    70 
    71 cv2.imwrite("out.jpg", out)
    72 
    73 cv2.imshow("result", out)
    74 
    75 cv2.waitKey(0)
    76 
    77 cv2.destroyAllWindows()

    三. 实验结果:


    Emboss 滤波器作用于图像后 ↑
     

    原图转换为灰度图像后 ↑
     

            可以看到,Emboss滤波器能够有效地增强图像的轮廓。


    四. 参考内容:

      https://www.jianshu.com/p/0f7102dec590

  • 相关阅读:
    课程个人总结
    构建之法阅读笔记06
    构建之法读后感5
    第五周进度条
    提高自身能力
    活动图与状态机图
    对分析业务模型----类图的学习与认识
    需求分析工作的基本道理
    问题账户需求分析
    2016秋季个人阅读计划
  • 原文地址:https://www.cnblogs.com/wojianxin/p/12508170.html
Copyright © 2020-2023  润新知