Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana dengan Cekap Menukar Imej RGB ke Skala Kelabu dalam Python?

Bagaimana dengan Cekap Menukar Imej RGB ke Skala Kelabu dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-04 19:31:16909semak imbas

How to Efficiently Convert RGB Images to Grayscale in Python?

Menukar Imej RGB kepada Skala Kelabu dalam Python

Soalan:

Bagaimana saya boleh menukar imej RGB kepada skala kelabu dengan cekap menggunakan Python?

Masalah Penerangan:

Percubaan untuk menukar imej RGB kepada skala kelabu menggunakan fungsi imread dalam matplotlib, tetapi menghadapi had dalam operasi yang tersedia. Pelaksanaan manual RGB kepada penukaran skala kelabu didapati tidak cekap. Mencari penyelesaian terbina dalam profesional untuk tugas pemprosesan imej biasa ini.

Jawapan:

Menggunakan Bantal:

from PIL import Image
img = Image.open('image.png').convert('L')
img.save('greyscale.png')

Menggunakan Matplotlib dan RGB ke Skala Kelabu Formula:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

def rgb2gray(rgb):
    return np.dot(rgb[...,:3], [0.2989, 0.5870, 0.1140])

img = mpimg.imread('image.png')     
gray = rgb2gray(img)    
plt.imshow(gray, cmap=plt.get_cmap('gray'), vmin=0, vmax=1)
plt.show()

Atas ialah kandungan terperinci Bagaimana dengan Cekap Menukar Imej RGB ke Skala Kelabu dalam Python?. 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