Menengah dengan Python? . Kami akan membuat program Python yang dapat mengenali warna dari gambar JPEG atau PNG. Itu juga akan memberi Anda nama dan nilai RGB dari warna. Jadi mari kita langsung ke dalamnya Show
Modul Diperlukan Pemasangan modul pip install cv2 Kemudian def color_recognition():_ Anda dapat mengganti jalur file dengan gambar Anda sendiri Dan begitulah. Terima kasih telah membaca Lebih banyak konten di PlainEnglish. io. Mendaftar untuk buletin mingguan gratis kami. Ikuti kami di Twitter dan LinkedIn. Bergabunglah dengan komunitas kami Perselisihan Halo, ada sesama programmer. Hari ini dalam tutorial ini kita akan mempelajari cara mendeteksi berbagai warna pada gambar dengan bantuan pustaka OpenCV dengan Python Pengantar Deteksi WarnaProses pendeteksian nama warna apa pun dalam suatu gambar dikenal sebagai deteksi warna. Ini adalah tugas yang sangat sederhana untuk manusia, tetapi tidak sesederhana itu untuk komputer. Mata dan otak manusia bekerja sama untuk mengubah cahaya menjadi warna. Sinyal ditransmisikan ke otak melalui reseptor cahaya di mata kita. Warna tersebut kemudian dikenali oleh otak kita Dalam tutorial pendeteksian warna Python ini, kami akan membuat aplikasi yang memungkinkan Anda mendapatkan nama warna hanya dengan mengkliknya. Akibatnya, kita memerlukan file data dengan nama dan nilai warna. Kemudian kita akan menghitung jarak antara setiap warna dan memilih yang jaraknya paling kecil Dataset Digunakan untuk Deteksi WarnaMerah, hijau, dan biru adalah tiga warna primer yang membentuk warna apa pun yang tersedia. Setiap nilai warna di komputer didefinisikan sebagai angka antara 0 dan 255. Sebuah warna dapat diwakili di sekitar 16. 5 juta cara berbeda. Kita perlu menerjemahkan nilai setiap warna ke namanya menggunakan kumpulan data kita. Kami akan bekerja dengan kumpulan data yang berisi nilai RGB beserta namanya Mengimpor OpenCVLangkah pertama adalah mengimpor semua modul yang diperlukan bersama dengan OpenCV, lalu memuat gambar tetapi pastikan gambar berada di dalam folder yang sama dengan file kode import cv2 import numpy as np import pandas as pd img = cv2.imread("sample.jpg") Muat "warna. csv”.Kami menggunakan pustaka index = ["color", "color_name", "hex", "R", "G", "B"] data = pd.read_csv("colors.csv", names=index, header=None) Membuat jendela dan fungsi callbackPertama, kita harus membuat jendela baru di mana gambar masukan akan ditampilkan. Kemudian, kami menyediakan fungsi panggilan balik yang akan diaktifkan hanya jika peristiwa mouse terjadi di seluruh gambar cv2.namedWindow("Color Detection Window") cv2.setMouseCallback("Color Detection Window",call_back_function)_ Tapi sekarang kita harus membuat fungsi callback yang disebutkan dengan nama Membuat Fungsi CallbackMari kita pahami apa yang akan dilakukan fungsi callback ini. Ini akan menghitung nilai rgb dari piksel yang kita klik dua kali dan koordinat (x,y) dari posisi mouse disimpan def call_back_function (event, x,y,flags,param): if event == cv2.EVENT_LBUTTONDBLCLK: global b,g,r,xpos,ypos, clicked clicked = True xpos = x ypos = y b,g,r = img[y,x] b = int(b) g = int(g) r = int(r) Mengekstrak nama warna dari nilai rgbSekarang kita telah mengekstrak nilai rgb dari gambar, sekarang kita perlu mengubah nilai rgb menjadi nama warna. Hal yang sama dilakukan pada fungsi di bawah ini def get_Color_Name(R,G,B): minimum = 10000 for i in range(len(csv)): d = abs(R- int(csv.loc[i,"R"])) + abs(G- int(csv.loc[i,"G"]))+ abs(B- int(csv.loc[i,"B"])) if(d<=minimum): minimum = d cname = csv.loc[i,"color_name"] return cname_ Untuk mendapatkan nama warna, kami menghitung jarak (d) yang memberi tahu kami seberapa dekat kami dengan warna tertentu dan memilih salah satu yang menghasilkan jarak minimum. Jarak dihitung menggunakan rumus berikut d = abs(Red — ithRedColor) + (Green — itthGreenColor) + (Blue — ithBlueColor) Menampilkan Hasil di jendelaKami menggunakan fungsi index = ["color", "color_name", "hex", "R", "G", "B"] data = pd.read_csv("colors.csv", names=index, header=None)0 dan index = ["color", "color_name", "hex", "R", "G", "B"] data = pd.read_csv("colors.csv", names=index, header=None)1 masing-masing while(1): cv2.imshow("Color Detection Window",img) if (clicked): cv2.rectangle(img,(20,20), (750,60), (b,g,r), -1) text = getColorName(r,g,b)+'R='+str(r)+'G='+ str(g)+'B='+ str(b) cv2.putText(img, text,(50,50),2,0.8, (255,255,255),2,cv2.LINE_AA) if(r+g+b>=600): cv2.putText(img, text,(50,50),2,0.8,(0,0,0),2,cv2.LINE_AA) clicked=False if cv2.waitKey(20) & 0xFF ==27: break cv2.destroyAllWindows()_ Keluaran SampelJendela Deteksi Warna OpencvDeteksi Warna Merah TerdeteksiDeteksi Warna Cyan TerdeteksiKeluaran pada Gambar LainGambar Deteksi Warna Kulit2KesimpulanHari ini kita belajar cara mendeteksi warna menggunakan OpenCV dalam bahasa pemrograman Python. Harap Anda belajar sesuatu Bagaimana cara mendeteksi warna dari gambar menggunakan Python OpenCV?Daftar Isi . Langkah 1. Impor Perpustakaan dan baca gambarnya Langkah 2. Tentukan batas untuk warna Langkah 3. Deteksi warna menggunakan cv2. dalam lingkup() Langkah 4. Lakukan Bitwise DAN dengan gambar masukan Bisakah OpenCV mendeteksi warna?OpenCV memiliki beberapa fungsi bawaan untuk melakukan operasi Deteksi Warna dan Segmentasi . Lalu apa itu Teknik Deteksi Warna dan Segmentasi dalam Pengolahan Citra? .
Apa itu deteksi warna dalam pemrosesan gambar?Algoritme pendeteksian warna mengidentifikasi piksel dalam gambar yang cocok dengan warna atau rentang warna tertentu . Warna piksel yang terdeteksi kemudian dapat diubah untuk membedakannya dari gambar lainnya. |