Menukar Imej RGB kepada Skala Kelabu dalam Python
Menukar imej RGB kepada skala kelabu ialah operasi asas dalam pemprosesan imej. Dalam Python, terdapat pelbagai pendekatan untuk menyelesaikan tugas ini menggunakan perpustakaan popular seperti scikit-image, NumPy dan Pillow.
Pillow
Pillow ialah perpustakaan Python yang berkuasa untuk manipulasi imej. Ia menyediakan kaedah yang mudah untuk menukar imej RGB kepada skala kelabu menggunakan fungsi tukar:
from PIL import Image img = Image.open('image.png').convert('L')
Argumen 'L' menentukan bahawa imej harus ditukar kepada skala kelabu, mengekalkan nilai kecerahan. Jika imej input mengandungi saluran alfa (transparensi) dan ia harus dikekalkan, gunakan mod 'LA' sebaliknya.
NumPy dan Matplotlib
Pendekatan lain ialah dengan gunakan NumPy dan Matplotlib. NumPy menyediakan pelaksanaan mudah bagi penukaran RGB kepada skala kelabu:
import numpy as np def rgb2gray(rgb): return np.dot(rgb[...,:3], [0.2989, 0.5870, 0.1140])
Fungsi ini menggunakan jumlah wajaran nilai merah, hijau dan biru untuk mengira keamatan skala kelabu. Dengan Matplotlib, anda boleh memuatkan dan memaparkan imej skala kelabu:
import matplotlib.pyplot as plt import matplotlib.image as mpimg img = mpimg.imread('image.png') gray = rgb2gray(img) plt.imshow(gray, cmap=plt.get_cmap('gray'), vmin=0, vmax=1) plt.show()
scikit-image
scikit-image ialah perpustakaan Python khusus untuk pemprosesan imej. Ia menawarkan fungsi yang dipanggil color.rgb2gray untuk penukaran skala kelabu:
from skimage import color img = color.rgb2gray(mpimg.imread('image.png'))
Pelaksanaan Tambahan
Fungsi yang disediakan oleh Sebastian juga melaksanakan tugas dengan berkesan, tetapi ia beroperasi pada saluran RGB individu dan mungkin kurang cekap apabila bekerja dengan imej besar. Namun begitu, ia menunjukkan pelaksanaan mudah formula penukaran skala kelabu.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Imej RGB kepada Skala Kelabu dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!