Lai vizuāli identificētu un iezīmētu atklātos objektus attēlā, izmantojot spilvenu bibliotēku, mēs varam sekot soli pa solim. Pillow bibliotēka ir jaudīga Python attēlu bibliotēka, kas nodrošina plašu attēlu apstrādes iespēju klāstu. Apvienojot Pillow bibliotēkas iespējas ar Google Vision API objektu noteikšanas funkcionalitāti, mēs varam efektīvi veikt šo uzdevumu.
Tālāk ir norādītas darbības, lai vizuāli identificētu un izceltu atklātos objektus attēlā, izmantojot spilvenu bibliotēku.
1. Instalējiet nepieciešamās bibliotēkas: Sāciet ar nepieciešamo bibliotēku instalēšanu. Instalējiet spilvenu, izmantojot komandu "pip install pillow". Turklāt jums būs jāiestata Google Vision API un jāinstalē Google Cloud klienta bibliotēka Python.
2. Autentificējieties, izmantojot Google Vision API: lai izmantotu Google Vision API, jums ir jāautentificē lietojumprogramma. Izpildiet Google sniegto dokumentāciju, lai iegūtu nepieciešamos akreditācijas datus.
3. Ielādējiet un analizējiet attēlu: izmantojiet spilvenu bibliotēku, lai ielādētu attēlu, kuru vēlaties analizēt. Attēla faila atvēršanai varat izmantot metodi “Image.open()”. Kad attēls ir ielādēts, konvertējiet to formātā, kas ir saderīgs ar Google Vision API, piemēram, JPEG vai PNG.
4. Nosūtiet attēlu uz Google Vision API: izmantojiet Python paredzēto Google Cloud klienta bibliotēku, lai nosūtītu attēlu uz Google Vision API objektu noteikšanai. To var izdarīt, izveidojot pieprasījuma objektu ar attēla datiem un izsaucot atbilstošo metodi, piemēram, `image_annotator_client.object_localization().annotate_image()`.
5. Izgūstiet objektu noteikšanas rezultātus: izņemiet objektu noteikšanas rezultātus no atbildes, kas saņemta no Google Vision API. Atbildē būs informācija par atklātajiem objektiem, piemēram, to ierobežojošās kastes, etiķetes un uzticamības rādītāji.
6. Zīmējiet attēlam ierobežojošos lodziņus: izmantojiet Spilvena bibliotēku, lai ap attēlā konstatētajiem objektiem uzzīmētu ierobežojošos lodziņus. Varat izmantot metodi 'ImageDraw.Draw()', lai izveidotu zīmēšanas objektu, un pēc tam izmantot metodi 'draw.rectangle()', lai uzzīmētu ierobežojošos lodziņus.
7. Pievienojiet attēlam etiķetes un punktus. Lai uzlabotu vizualizāciju, attēlam varat pievienot etiķetes un uzticamības rādītājus. Izmantojiet metodi “draw.text()” no bibliotēkas Pillow, lai attēlam pārklātu etiķetes un punktus.
8. Saglabājiet un parādiet anotēto attēlu: saglabājiet anotēto attēlu, izmantojot `Image.save()` metodi no Pillow bibliotēkas. Varat izvēlēties vajadzīgo formātu, piemēram, JPEG vai PNG. Pēc izvēles parādiet anotēto attēlu, izmantojot metodi “Image.show()”.
Veicot šīs darbības, varat vizuāli identificēt un izcelt attēlā atklātos objektus, izmantojot spilvenu bibliotēku. Pillow jaudīgo attēlu apstrādes iespēju un Google Vision API objektu noteikšanas funkcionalitātes kombinācija ļauj efektīvi un precīzi analizēt attēlus.
Piemērs:
python from PIL import Image, ImageDraw from google.cloud import vision # Load and analyze the image image_path = 'path/to/your/image.jpg' image = Image.open(image_path) image_data = image.tobytes() # Authenticate with the Google Vision API client = vision.ImageAnnotatorClient.from_service_account_json('path/to/your/credentials.json') # Send the image to the Google Vision API for object detection response = client.object_localization(image=vision.Image(content=image_data)) objects = response.localized_object_annotations # Draw bounding boxes on the image draw = ImageDraw.Draw(image) for obj in objects: bbox = obj.bounding_poly.normalized_vertices draw.rectangle([(bbox[0].x * image.width, bbox[0].y * image.height), (bbox[2].x * image.width, bbox[2].y * image.height)], outline='red', width=3) # Add labels and scores to the image label = obj.name score = obj.score draw.text((bbox[0].x * image.width, bbox[0].y * image.height - 15), f'{label} ({score:.2f})', fill='red') # Save and display the annotated image annotated_image_path = 'path/to/save/annotated_image.jpg' image.save(annotated_image_path) image.show()
Šajā piemērā mēs vispirms ielādējam un analizējam attēlu, izmantojot spilvenu bibliotēku. Pēc tam mēs autentificējamies ar Google Vision API un nosūtām attēlu objekta noteikšanai. Mēs izgūstam objektu noteikšanas rezultātus un izmantojam spilvenu bibliotēku, lai ap attēla noteiktajiem objektiem uzzīmētu norobežojošos lodziņus. Turklāt attēlam pievienojam etiķetes un uzticamības rādītājus. Visbeidzot, mēs saglabājam un parādām anotēto attēlu.
Citi jaunākie jautājumi un atbildes par Uzlabota attēlu izpratne:
- Kādas ir iepriekš noteiktas kategorijas objektu atpazīšanai Google Vision API?
- Kāda ir ieteicamā pieeja drošas meklēšanas noteikšanas funkcijas izmantošanai kopā ar citām regulēšanas metodēm?
- Kā mēs varam piekļūt katras kategorijas iespējamības vērtībām un parādīt tās drošās meklēšanas anotācijā?
- Kā mēs varam iegūt drošas meklēšanas anotāciju, izmantojot Google Vision API programmā Python?
- Kādas ir piecas kategorijas, kas iekļautas drošas meklēšanas noteikšanas funkcijā?
- Kā Google Vision API drošās meklēšanas funkcija attēlos nosaka necenzētu saturu?
- Kā mēs varam sakārtot iegūto objektu informāciju tabulas formātā, izmantojot pandas datu rāmi?
- Kā mēs varam iegūt visas objekta anotācijas no API atbildes?
- Kādas bibliotēkas un programmēšanas valoda tiek izmantota, lai demonstrētu Google Vision API funkcionalitāti?
- Kā Google Vision API veic objektu noteikšanu un lokalizāciju attēlos?
Skatiet vairāk jautājumu un atbilžu sadaļā Izvērstā attēlu izpratne