Az észlelt objektumok vizuális azonosítása és kiemelése a képen a Pillow könyvtár segítségével, lépésről lépésre követhetjük a folyamatot. A Pillow könyvtár egy hatékony Python képalkotó könyvtár, amely a képfeldolgozási lehetőségek széles skáláját kínálja. A Pillow könyvtár képességeit a Google Vision API objektumészlelési funkciójával kombinálva ezt a feladatot hatékonyan tudjuk megvalósítani.
Az alábbi lépések segítségével vizuálisan azonosíthatja és kiemelheti az észlelt objektumokat a képen a Pillow könyvtár használatával:
1. Telepítse a szükséges könyvtárakat: Kezdje a szükséges könyvtárak telepítésével. Telepítse a Pillow-t a "pip install pillow" paranccsal. Ezenkívül be kell állítania a Google Vision API-t, és telepítenie kell a Google Cloud ügyfélkönyvtárat a Pythonhoz.
2. Hitelesítés a Google Vision API-val: A Google Vision API használatához hitelesítenie kell az alkalmazást. A szükséges hitelesítő adatok megszerzéséhez kövesse a Google által biztosított dokumentációt.
3. Töltse be és elemezze a képet: A Párna könyvtár segítségével töltse be az elemezni kívánt képet. A képfájl megnyitásához használhatja az `Image.open()` metódust. A kép betöltése után alakítsa át a Google Vision API-val kompatibilis formátumba, például JPEG vagy PNG.
4. Küldje el a képet a Google Vision API-nak: Használja a Pythonhoz készült Google Cloud ügyfélkönyvtárat, hogy elküldje a képet a Google Vision API-nak objektumészlelés céljából. Ezt úgy teheti meg, hogy létrehoz egy kérési objektumot a képadatokkal, és meghívja a megfelelő metódust, például: `image_annotator_client.object_localization().annotate_image()`.
5. Az objektumészlelési eredmények lekérése: Az objektumészlelési eredmények kibontása a Google Vision API-tól kapott válaszból. A válasz információkat tartalmaz majd az észlelt objektumokról, például határolókeretekről, címkékről és megbízhatósági pontszámokról.
6. Rajzoljon határolókereteket a képre: A Párna könyvtár segítségével rajzoljon határolókereteket a képen észlelt objektumok köré. Az "ImageDraw.Draw()" metódussal létrehozhat egy rajzobjektumot, majd a "draw.rectangle()" metódussal megrajzolhatja a határolókereteket.
7. Adjon hozzá címkéket és pontszámokat a képhez: A megjelenítés javítása érdekében címkéket és megbízhatósági pontszámokat adhat hozzá a képhez. Használja a `draw.text()' metódust a Pillow könyvtárból a címkék és pontszámok átfedéséhez a képen.
8. Mentse el és jelenítse meg a megjegyzésekkel ellátott képet: Mentse el a megjegyzésekkel ellátott képet az "Image.save()" metódussal a Párna könyvtárból. Kiválaszthatja a kívánt formátumot, például JPEG vagy PNG. Opcionálisan megjelenítheti a megjegyzésekkel ellátott képet az "Image.show()" metódussal.
Ha követi ezeket a lépéseket, a Párna könyvtár segítségével vizuálisan azonosíthatja és kiemelheti az észlelt objektumokat a képen. A Pillow erőteljes képfeldolgozó képességeinek és a Google Vision API tárgyfelismerő funkciójának kombinációja lehetővé teszi a képek hatékony és pontos elemzését.
Példa:
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()
Ebben a példában először a Pillow könyvtár segítségével töltjük be és elemezzük a képet. Ezután hitelesítjük a Google Vision API-t, és elküldjük a képet objektumészlelésre. Lekérjük az objektumészlelési eredményeket, és a Párna könyvtár segítségével határolókereteket rajzolunk az észlelt objektumok köré a képen. Ezenkívül címkéket és megbízhatósági pontszámokat adunk a képhez. Végül elmentjük és megjelenítjük az annotált képet.
További friss kérdések és válaszok ezzel kapcsolatban Fejlett képmegértés:
- Milyen előre meghatározott kategóriák vannak az objektumfelismeréshez a Google Vision API-ban?
- Mi a javasolt megközelítés a biztonságos keresés észlelési funkciójának más moderálási technikákkal kombinálva történő használatához?
- Hogyan érhetjük el és jeleníthetjük meg az egyes kategóriák valószínűségi értékeit a biztonságos keresési megjegyzésben?
- Hogyan szerezhetjük meg a biztonságos keresési megjegyzést a Google Vision API használatával a Pythonban?
- Milyen öt kategória található a biztonságos keresés észlelési funkciójában?
- Hogyan észleli a Google Vision API biztonságos keresési funkciója az explicit tartalmat a képeken?
- Hogyan rendezhetjük a kinyert objektuminformációkat táblázatos formátumba a panda adatkeret segítségével?
- Hogyan nyerhetjük ki az összes objektum annotációt az API válaszából?
- Milyen könyvtárakat és programozási nyelvet használnak a Google Vision API működésének bemutatására?
- Hogyan hajtja végre a Google Vision API objektumészlelést és lokalizációt a képeken?
További kérdések és válaszok a Speciális képértelmezés részben