Na získanie dominantných farieb v obrázku pomocou klienta Vision API môžeme využiť funkciu detekcie vlastností obrázka, ktorú poskytuje Google Vision API. Tento výkonný nástroj nám umožňuje analyzovať a pochopiť vizuálny obsah obrázka vrátane identifikácie prítomných dominantných farieb.
Prvým krokom je nastavenie klienta Vision API a overenie našich požiadaviek. Keď to urobíme, môžeme poslať obrázok do API na analýzu. Rozhranie API podporuje rôzne formáty obrázkov, ako sú JPEG, PNG a GIF.
Aby sme získali dominantné farby, musíme využiť funkciu `imagePropertiesAnnotation` rozhrania API. Táto funkcia nám poskytuje informácie o farbách prítomných na obrázku vrátane dominantných farieb. Dominantné farby sú reprezentované ich hodnotami RGB a sú zoradené na základe ich prevalencie v obraze.
Pri vytváraní požiadavky na rozhranie API musíme zadať parameter „features“ ako „IMAGE_PROPERTIES“. Toto hovorí API, že chceme extrahovať vlastnosti obrázka vrátane dominantných farieb. Tu je príklad toho, ako môžeme uskutočniť volanie API pomocou Pythonu:
python import base64 from google.cloud import vision def get_dominant_colors(image_path): client = vision.ImageAnnotatorClient() with open(image_path, 'rb') as image_file: content = image_file.read() image = vision.Image(content=content) features = [vision.Feature(type_=vision.Feature.Type.IMAGE_PROPERTIES)] response = client.annotate_image({ 'image': image, 'features': features }) colors = response.image_properties_annotation.dominant_colors.colors dominant_colors = [] for color_info in colors: color = color_info.color rgb = (color.red, color.green, color.blue) dominant_colors.append(rgb) return dominant_colors
Vo vyššie uvedenom príklade najprv importujeme potrebné knižnice a autentifikujeme klienta Vision API. Potom si prečítame súbor obrázka a vytvoríme objekt Vision API `Image` s obsahom obrázka. Ďalej špecifikujeme funkciu `IMAGE_PROPERTIES` a vykonáme volanie API pomocou metódy `annotate_image`.
Odpoveď rozhrania API obsahuje dominantné farby v poli „image_properties_annotation“. Iterujeme farby a extrahujeme hodnoty RGB. Nakoniec vrátime zoznam dominantných farieb.
Je dôležité poznamenať, že dominantné farby vrátené rozhraním API sú založené na celkovej prevahe farieb v obrázku. To znamená, že vrátené farby nemusia nevyhnutne predstavovať vizuálne najvýraznejšie prvky na obrázku. Poskytujú však dobrú indikáciu dominantnej farebnej palety.
Ak chcete získať dominantné farby v obrázku pomocou klienta Vision API, musíme použiť funkciu `imagePropertiesAnnotation`. Uskutočnením volania API s príslušnými parametrami môžeme získať dominantné farby ako hodnoty RGB. Táto funkcia môže byť užitočná v rôznych aplikáciách, ako je kategorizácia obrázkov, analýza obsahu a vizuálne vyhľadávanie.
Ďalšie nedávne otázky a odpovede týkajúce sa EITC/AI/GVAPI Google Vision API:
- Dá sa Google Vision API použiť na detekciu a označovanie objektov pomocou knižnice Python vo videách a nie v obrázkoch?
- Ako implementovať nakreslenie hraníc objektov okolo zvierat na obrázkoch a videách a označiť tieto hranice konkrétnymi menami zvierat?
- Aké sú niektoré preddefinované kategórie na rozpoznávanie objektov v rozhraní Google Vision API?
- Umožňuje Google Vision API rozpoznávanie tváre?
- Ako je možné pridať zobrazovaný text do obrázka pri kreslení hraníc objektu pomocou funkcie „draw_vertices“?
- Aké sú parametre metódy "draw.line" v poskytnutom kóde a ako sa používajú na kreslenie čiar medzi hodnotami vrcholov?
- Ako sa dá knižnica vankúšov použiť na kreslenie hraníc objektov v Pythone?
- Aký je účel funkcie „draw_vertices“ v poskytnutom kóde?
- Ako môže rozhranie Google Vision API pomôcť pochopiť tvary a objekty na obrázku?
- Ako môžu používatelia preskúmať vizuálne podobné obrázky odporúčané rozhraním API?
Pozrite si ďalšie otázky a odpovede v EITC/AI/GVAPI Google Vision API