Menukar RGB kepada HSV dan HSV kepada RGB Dalam Julat 0-255
Menukar perwakilan warna antara RGB (Merah, Hijau, Biru) dan HSV (Hue, Saturation, Value) adalah penting untuk pemprosesan imej dan grafik komputer. Transformasi ini memerlukan menterjemah nilai warna dalam julat tertentu untuk memastikan penukaran yang tepat.
Penukaran RGB ke HSV
Penukaran RGB ke HSV melibatkan langkah berikut:
Kira Ketepuan (S): Kira ketepuan menggunakan formula:
S = (V - min) / V
Kira Hue (H): Tentukan rona menggunakan pernyataan bersyarat berdasarkan nilai relatif RGB komponen:
if (R >= G && R >= B): H = (G - B) / (V - min) elif (G >= R && G >= B): H = 2 + (B - R) / (V - min) else: H = 4 + (R - G) / (V - min)
Penukaran HSV kepada RGB
Penukaran HSV kepada RGB diteruskan sebagai berikut:
Cari Indeks Hue: Tentukan indeks integer bagi hue:
i = int(H / 60.0)
Kira Bahagian Pecahan: Kira bahagian pecahan warna:
ff = H / 60.0 - i
Tetapkan RGB Lalai Nilai:
R = G = B = V
Kira Nilai RGB: Laraskan nilai RGB berdasarkan indeks warna:
if (i == 0): B = p elif (i == 1): R = q elif (i == 2): G = p elif (i == 3): R = p elif (i == 4): B = t elif (i == 5): G = p
Atas ialah kandungan terperinci Bagaimana untuk Menukar RGB kepada HSV dan Kembali Lagi Dalam Julat 0-255?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!