Pythonで画像ノイズ除去アルゴリズムを実装する方法

Python では、OpenCV ライブラリを利用することで、画像のノイズ除去アルゴリズムを実装できます。以下に中値フィルタアルゴリズムの実装例を示します。

import cv2

# 加载图像
image = cv2.imread('input_image.jpg')

# 将图像转换为灰度图像
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 中值滤波
denoised_image = cv2.medianBlur(gray_image, 5)

# 显示原始图像和降噪后的图像
cv2.imshow('Original Image', gray_image)
cv2.imshow('Denoised Image', denoised_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

この例では、最初にcv2.imread関数で画像を読み込み、次にcv2.cvtColor関数で画像をグレースケールに変換します。続いて、グレースケール画像にcv2.medianBlur関数を用いて中央値フィルタ処理を行います。この時、5というパラメータはフィルタのサイズを表します。最後に、cv2.imshow関数を使用して元の画像とノイズ除去後の画像を表示します。

中値フィルタアルゴリズム以外に、OpenCVではガウシアンフィルタやバイラテラルフィルタなど、他の画像ノイズ低減アルゴリズムも提供しています。具体的なニーズに応じて適切なアルゴリズムを選択できます。

bannerAds