700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python中值滤波去除椒盐噪声_python 中值滤波 椒盐去噪 图片增强实例

python中值滤波去除椒盐噪声_python 中值滤波 椒盐去噪 图片增强实例

时间:2022-10-17 08:18:29

相关推荐

python中值滤波去除椒盐噪声_python 中值滤波 椒盐去噪 图片增强实例

受光照、气候、成像设备等因素的影响,灰度化后的图像存在噪声和模糊干扰,直接影响到下一步的文字识别,因此,需要对图像进行增强处理。图片预处理中重要一环就是椒盐去澡,通常用到中值滤波器进行处理,效果很好。中值滤波器是一种非线性滤波器,其基本原理是把数字图像中某点的值用其领域各点值的中值代替。

如求点[i,j]的灰度值计算方法为:

(1)按灰度值顺序排列[i,j]领域中的像素点;

(2)取排序像素集的中间值作为[i,j]的灰度值。中值滤波技术能有效抑制噪声。

直接上代码,希望给大家有帮助:

import numpy as np

import cv2

import tensorflow as tf

from PIL import Image

import os

import scipy.signal as signal

input_images = np.zeros((300, 300))

filename = "D:\字母图库\F\P80627-112853.jpg"

print(filename)

img = Image.open(filename).resize((300, 300)).convert('L')

width = img.size[0]

height = img.size[1]

for h in range(0, height):

for w in range(0, width):

if img.getpixel((h, w)) < 128:

input_images[w, h] = 0

else:

input_images[w, h] = 1

cv2.imshow("test1111", input_images)

data = signal.medfilt2d(np.array(img), kernel_size=3) # 二维中值滤波

for h in range(0, height):

for w in range(0, width):

if data[h][w] < 128:

input_images[w, h] = 0

else:

input_images[w, h] = 1

cv2.imshow("test2222", input_images)

data = signal.medfilt2d(np.array(img), kernel_size=5) # 二维中值滤波

for h in range(0, height):

for w in range(0, width):

if data[h][w] < 128:

input_images[w, h] = 0

else:

input_images[w, h] = 1

cv2.imshow("test3333", input_images)

cv2.waitKey(0)

以上这篇python 中值滤波,椒盐去噪,图片增强实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: -12-17

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。