以下是一个基于Python语言的中值滤波代码:

import numpy as np
import cv2

# 读取图像
img = cv2.imread('input.jpg')

# 定义卷积核大小
kernel_size = 3

# 获取图像的行数和列数
rows, cols = img.shape[:2]

# 创建一个空的数组,并将其初始化为0
result = np.zeros((rows, cols, 3), np.uint8)

# 循环遍历图像的每个像素点
for i in range(1, rows - 1):
    for j in range(1, cols - 1):
        # 提取卷积核大小内的像素点
        pixels = img[i-1:i+2, j-1:j+2]

        # 将像素值排序,并取中间值作为该像素点的值
        result[i, j] = np.median(pixels, axis=(0, 1))

# 显示滤波后的图像
cv2.imshow('Median Filter', result)
cv2.waitKey(0)

该代码使用了OpenCV库,先读取了一张输入图像。然后定义了一个卷积核大小,创建了一个空的数组,并循环遍历图像的每个像素点。对于每个像素点,提取卷积核大小内的像素点,并将像素值排序,取中间值作为该像素点的值。最后,将滤波后的图像显示出来。

写一个中值滤波代码

原文地址: https://www.cveoy.top/t/topic/bs0G 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录