Rumah  >  Artikel  >  Peranti teknologi  >  Isu penindasan hingar dalam teknologi peningkatan imej

Isu penindasan hingar dalam teknologi peningkatan imej

WBOY
WBOYasal
2023-10-09 12:19:44543semak imbas

Isu penindasan hingar dalam teknologi peningkatan imej

Peningkatan imej ialah teknologi penting dalam pemprosesan imej digital, yang bertujuan untuk meningkatkan kualiti dan butiran imej. Walau bagaimanapun, dalam aplikasi praktikal, imej mungkin tercemar oleh pelbagai jenis hingar, seperti hingar Gaussian, hingar garam dan lada, dan hingar bintik. Bunyi ini boleh mengurangkan kesan visual dan kebolehbacaan imej, jadi penindasan hingar adalah tugas utama dalam peningkatan imej.

Masalah penindasan hingar dalam teknologi peningkatan imej boleh diselesaikan melalui beberapa kaedah yang berkesan. Artikel ini akan memperkenalkan beberapa teknik penindasan hingar biasa dan memberikan contoh kod yang sepadan.

  1. penapis min
    Penuras min ialah kaedah penindasan hingar yang mudah dan biasa digunakan. Ia berdasarkan tetingkap gelongsor bersaiz tetap, mengira purata nilai kelabu piksel dalam tetingkap gelongsor dan menggunakan nilai ini sebagai nilai piksel yang ditapis. Berikut ialah contoh fungsi penapis min berdasarkan Python:
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)
  1. Median filter
    Median filter ialah kaedah penindasan hingar tak linear berdasarkan A tetap- saiz tetingkap gelongsor, nilai median piksel dikira dalam tetingkap gelongsor, dan nilai ini digunakan sebagai nilai piksel yang ditapis. Berikut ialah contoh fungsi penapis median berdasarkan Python:
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)
  1. penapisan dua hala
    Penapisan dua hala ialah kaedah yang menyekat hingar sambil mengekalkan butiran tepi imej Kaedah penapisan. Ia mengira pekali penapis berdasarkan jarak spatial dan persamaan nilai kelabu piksel, dengan itu menyekat hingar sambil mengekalkan ketajaman tepi. Berikut ialah contoh fungsi penapisan dua hala berdasarkan Python:
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)

Melalui kod contoh di atas, dapat dilihat bahawa penapisan min, penapisan median dan penapisan dua hala semuanya biasa digunakan teknik penambahbaikan imej. Mengikut situasi dan keperluan sebenar imej, memilih teknologi dan parameter yang sesuai boleh meningkatkan kualiti dan butiran imej dengan berkesan.

Walau bagaimanapun, perlu diambil perhatian bahawa pemilihan dan tetapan parameter kaedah penindasan hingar adalah tidak statik Jenis bunyi yang berbeza dan imej yang berbeza mungkin memerlukan kaedah pemprosesan yang berbeza. Oleh itu, dalam aplikasi praktikal, adalah sangat penting untuk memilih kaedah dan parameter penindasan hingar yang sesuai mengikut ciri dan keperluan imej.

Atas ialah kandungan terperinci Isu penindasan hingar dalam teknologi peningkatan imej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn