均值模糊、中值模糊、自定義模糊


 

import cv2 as cv
import numpy as np


def blur(image):
    """均值模糊,用來去噪聲"""
    dst = cv.blur(image, (5, 5))  # ksize=(1,3),均值模糊,stride=1
    cv.namedWindow("mean_blur", 0)
    cv.resizeWindow("mean_blur", 300, 400)
    cv.imshow("mean_blur", dst)


def median_blur(image):
    """中值模糊,平滑椒鹽噪聲"""
    dst = cv.medianBlur(image, 5)  # ksize=5
    cv.namedWindow("median_blur", 0)
    cv.resizeWindow("median_blur", 300, 400)
    cv.imshow("median_blur", dst)


def custom_blur(image):
    """自定義模糊"""
    kernel = np.ones([5, 5], np.float32) / 25  # 防止溢出255
    kernel1 = np.array([[0, -1, 0], [-1, 5, -1], [0, -1, 0]], np.float32)  # 銳化算子
    dst = cv.filter2D(image, -1, kernel=kernel1)  # -1,表示默認的ddepth
    cv.namedWindow("custom_blur", 0)
    cv.resizeWindow("custom_blur", 300, 400)
    cv.imshow("custom_blur", dst)


src = cv.imread("img/test.jpg")
cv.namedWindow("src", 0)
cv.resizeWindow("src", 300, 400)
cv.imshow("src", src)
blur(src)
median_blur(src)
custom_blur(src)
cv.waitKey(0)
cv.destroyAllWindows()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM