Perbezaan antara Mod P dan L dalam PIL
Mod P PIL (dipaletkan) dan mod L (pencahayaan) menawarkan kelebihan dan keburukan yang berbeza apabila bekerja dengan imej.
Mod P (Palettised)
- Menyimpan setiap piksel sebagai indeks ke dalam palet dengan sehingga 256 warna.
- Kurang ruang storan yang diperlukan berbanding RGB (1/3 saiz ).
- Terhad kepada 256 warna unik, yang berpotensi menghasilkan banding atau artifak.
Mod L (Pencahayaan)
- Imej saluran tunggal yang mewakili hanya kecerahan (kecerahan), ditafsirkan sebagai skala kelabu.
- Storan padat tetapi hanya mewakili skala kelabu, bukan warna.
Penukaran Antara Mod
Anda boleh menukar antara mod menggunakan fungsi tukar(mod):
# Convert to RGB mode
image.convert('RGB')
# Convert to P mode
image.convert('P')
# Convert to L mode
image.convert('L')
Contoh Imej
-
P Mod: Fail GIF atau imej skala kelabu dengan rona terhad.
-
Mod L: Foto hitam-putih atau imej skala kelabu dengan peralihan lancar.
Nota
- Imej boleh disimpan dalam RGB walaupun apabila muncul skala kelabu dengan menetapkan komponen R, G dan B sama.
- Imej skala kelabu boleh disimpan dalam mod P dengan memastikan semua entri palet mempunyai nilai R, G dan B yang sama.
Amalan Terbaik
Untuk mengelakkan potensi isu, tukar imej kepada RGB semasa pembukaan:
im = Image.open("image.jpg").convert('RGB')
Atas ialah kandungan terperinci Mod P vs. L dalam PIL: Bila Menggunakan Imej Palet atau Luminance?. 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