Pildil tuvastatud objektide visuaalseks tuvastamiseks ja esiletõstmiseks Pillow teegi abil saame järgida samm-sammult protsessi. Pillow teek on võimas Pythoni pilditeek, mis pakub laia valikut pilditöötlusvõimalusi. Kombineerides Pillow teegi võimalused Google Vision API objektituvastusfunktsiooniga, suudame selle ülesande tõhusalt täita.
Siin on sammud, et visuaalselt tuvastada ja esile tõsta pildil tuvastatud objekte, kasutades padjateegi.
1. Installige vajalikud teegid: alustage vajalike teekide installimisega. Install Pillow, kasutades käsku "pip install padi". Lisaks peate seadistama Google Vision API ja installima Pythoni jaoks Google Cloudi klienditeegi.
2. Autentige Google Vision API-ga: Google Vision API kasutamiseks peate oma rakenduse autentima. Vajalike mandaatide hankimiseks järgige Google'i esitatud dokumente.
3. Pildi laadimine ja analüüsimine: kasutage analüüsitava pildi laadimiseks Pillow teeki. Pildifaili avamiseks võite kasutada meetodit „Image.open()”. Kui pilt on laaditud, teisendage see Google Vision API-ga ühilduvasse vormingusse (nt JPEG või PNG).
4. Saatke pilt Google Vision API-le: kasutage Pythoni jaoks mõeldud Google Cloudi klienditeegi, et saata pilt objekti tuvastamiseks Google Vision API-sse. Seda saab teha, luues pildiandmetega päringuobjekti ja kutsudes välja sobiva meetodi, näiteks `image_annotator_client.object_localization().annotate_image()`.
5. Objekti tuvastamise tulemuste toomine: eraldage objekti tuvastamise tulemused Google Vision API-lt saadud vastusest. Vastus sisaldab teavet tuvastatud objektide kohta, nagu nende piirdekastid, sildid ja usaldusskoorid.
6. Joonistage pildile piirdekastid: kasutage Pillow teeki, et joonistada pildil tuvastatud objektide ümber piirdekastid. Saate kasutada joonistusobjekti loomiseks meetodit "ImageDraw.Draw()" ja seejärel kasutada piirdekastide joonistamiseks meetodit "draw.rectangle()".
7. Lisage pildile sildid ja hinded: visualiseerimise parandamiseks saate lisada pildile silte ja usaldusskoore. Kasutage pildile siltide ja hinde katmiseks meetodit "draw.text()" Padja teegist.
8. Salvestage ja kuvage annoteeritud pilt. Salvestage kommenteeritud pilt, kasutades Padja teegist meetodit "Image.save()". Saate valida soovitud vormingu, näiteks JPEG või PNG. Soovi korral kuvage annoteeritud kujutis, kasutades meetodit „Image.show()”.
Järgides neid samme, saate Pillow teegi abil tuvastatud objektid visuaalselt tuvastada ja esile tõsta. Pillow võimsate pilditöötlusvõimaluste ja Google Vision API objektituvastusfunktsiooni kombinatsioon võimaldab pilte tõhusalt ja täpselt analüüsida.
Näide:
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()
Selles näites laadime esmalt pildi ja analüüsime seda Pillow teegi abil. Seejärel autentime Google Vision API-ga ja saadame pildi objekti tuvastamiseks. Toome objekti tuvastamise tulemused ja kasutame Pillow teeki, et joonistada pildil tuvastatud objektide ümber piirdekastid. Lisaks lisame pildile sildid ja usaldusskoorid. Lõpuks salvestame ja kuvame kommenteeritud pildi.
Muud hiljutised küsimused ja vastused selle kohta Täpsem piltide mõistmine:
- Millised on Google Vision API objektituvastuse eelmääratletud kategooriad?
- Milline on soovitatav lähenemisviis turvalise otsingu tuvastamise funktsiooni kasutamiseks koos teiste modereerimistehnikatega?
- Kuidas pääseme iga kategooria tõenäosusväärtustele ligi ja kuvame neid turvalise otsingu annotatsioonis?
- Kuidas saame Pythonis Google Vision API abil turvalise otsingu märkuse hankida?
- Millised on viis kategooriat, mis sisalduvad turvalise otsingu tuvastamise funktsioonis?
- Kuidas tuvastab Google Vision API turvalise otsingu funktsioon piltidelt vulgaarse sisu?
- Kuidas saame eraldatud objektiteavet pandade andmeraami abil tabelivormingus korraldada?
- Kuidas saame API vastusest eraldada kõik objekti annotatsioonid?
- Milliseid teeke ja programmeerimiskeelt kasutatakse Google Vision API funktsionaalsuse demonstreerimiseks?
- Kuidas Google Vision API teostab objektide tuvastamist ja lokaliseerimist piltidel?
Vaadake rohkem küsimusi ja vastuseid jaotises Kujutiste täpsem mõistmine