如何在Python中去除该图像上的噪声?

0 python opencv python-imaging-library

我有以下图像:

图像

我想去除该图像中的一些噪点。我已经尝试使用 OpenCV 和以下代码:

cv2.fastNlMeansDenoisingColored(image_sharp, None, 2, 10, 7, 20)
Run Code Online (Sandbox Code Playgroud)

然而,返回给我的图像看起来完全相同:

去噪图像

有没有人有什么建议?

fmw*_*w42 5

您可以在 Python/OpenCV 中进行除法标准化。

  • 读取输入
  • 转换为灰度
  • 应用高斯模糊
  • 将灰度图像除以模糊图像
  • 保存输出

输入:

在此输入图像描述

import cv2
import numpy as np

# read the image
img = cv2.imread('equation.png')

# convert to gray
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

# blur
smooth = cv2.GaussianBlur(gray, None, sigmaX=100, sigmaY=100)

# divide gray by morphology image
division = cv2.divide(gray, smooth, scale=255)

# save results
cv2.imwrite('equation_division.jpg',division)

# show results
cv2.imshow('smooth', smooth)  
cv2.imshow('division', division)  
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述