Maison > Article > Périphériques technologiques > Problèmes de suppression du bruit dans la technologie d’amélioration de l’image
L'amélioration de l'image est une technologie importante dans le traitement des images numériques, qui vise à améliorer la qualité et les détails des images. Cependant, dans les applications pratiques, les images peuvent être contaminées par divers types de bruit, tels que le bruit gaussien, le bruit poivre et sel et le bruit moucheté. Ces bruits peuvent réduire l’effet visuel et la lisibilité des images. La suppression du bruit est donc une tâche clé dans l’amélioration de l’image.
Le problème de suppression du bruit dans la technologie d’amélioration de l’image peut être résolu grâce à certaines méthodes efficaces. Cet article présentera quelques techniques courantes de suppression du bruit et fournira des exemples de code correspondants.
import numpy as np import cv2 def mean_filter(img, kernel_size): width, height = img.shape[:2] output = np.zeros_like(img) pad = kernel_size // 2 img_pad = cv2.copyMakeBorder(img, pad, pad, pad, pad, cv2.BORDER_REFLECT) for i in range(pad, width + pad): for j in range(pad, height + pad): output[i - pad, j - pad] = np.mean(img_pad[i - pad:i + pad + 1, j - pad:j + pad + 1]) return output # 调用示例 image = cv2.imread('input.jpg', 0) output = mean_filter(image, 3) cv2.imwrite('output.jpg', output)
import numpy as np import cv2 def median_filter(img, kernel_size): width, height = img.shape[:2] output = np.zeros_like(img) pad = kernel_size // 2 img_pad = cv2.copyMakeBorder(img, pad, pad, pad, pad, cv2.BORDER_REFLECT) for i in range(pad, width + pad): for j in range(pad, height + pad): output[i - pad, j - pad] = np.median(img_pad[i - pad:i + pad + 1, j - pad:j + pad + 1]) return output # 调用示例 image = cv2.imread('input.jpg', 0) output = median_filter(image, 3) cv2.imwrite('output.jpg', output)
import numpy as np import cv2 def bilateral_filter(img, sigma_spatial, sigma_range): output = cv2.bilateralFilter(img, -1, sigma_spatial, sigma_range) return output # 调用示例 image = cv2.imread('input.jpg', 0) output = bilateral_filter(image, 5, 50) cv2.imwrite('output.jpg', output)
Grâce à l'exemple de code ci-dessus, on peut voir que le filtrage moyen, le filtrage médian et le filtrage bilatéral sont tous des méthodes de suppression du bruit couramment utilisées dans la technologie d'amélioration d'image. Selon la situation réelle et les besoins de l'image, le choix de la technologie et des paramètres appropriés peut améliorer efficacement la qualité et les détails de l'image.
Cependant, il convient de noter que la sélection et le paramétrage des méthodes de suppression du bruit ne sont pas statiques et que différents types de bruit et différentes images peuvent nécessiter différentes méthodes de traitement. Par conséquent, dans les applications pratiques, il est très important de sélectionner les méthodes et paramètres de suppression du bruit appropriés en fonction des caractéristiques et des besoins de l’image.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!