Ji bo ku bi dîtbarî bi karanîna pirtûkxaneya Pillow tiştên ku di wêneyekê de hatine kifş kirin nas bikin û ronî bikin, em dikarin pêvajoyek gav-gav bişopînin. Pirtûkxaneya Pillow pirtûkxaneyek wênekêş a Python a hêzdar e ku cûrbecûr kapasîteyên hilberandina wêneyê peyda dike. Bi berhevkirina kapasîteyên pirtûkxaneya Pillow bi fonksiyona vedîtina tiştan a Google Vision API re, em dikarin vê peywirê bi bandor bi dest bixin.
Li vir gavên ku hûn bi dîtbarî bi karanîna pirtûkxaneya Pillow-ê di wêneyekê de tiştên hatine tespîtkirin nas dikin û ronî dikin hene:
1. Pirtûkxaneyên pêwîst saz bikin: Bi sazkirina pirtûkxaneyên pêwîst dest pê bikin. Pillow bi karanîna fermana `pip install pillow` saz bikin. Wekî din, hûn ê hewce bikin ku Google Vision API saz bikin û pirtûkxaneya muwekîlê Google Cloud ji bo Python saz bikin.
2. Bi Google Vision API-ê verast bikin: Ji bo ku hûn API-ya Google Vision bikar bînin, hûn hewce ne ku serlêdana xwe rast bikin. Belgeyên ku ji hêla Google ve hatî peyda kirin bişopînin da ku pêbaweriyên pêwîst bistînin.
3. Wêneyê barkirin û analîz kirin: Pirtûkxaneya Pillow bikar bînin da ku wêneya ku hûn dixwazin analîz bikin bar bikin. Hûn dikarin rêbaza `Image.open()` bikar bînin ku pelê wêneyê vekin. Dema ku wêne hate barkirin, wê veguherînin formatek ku bi Google Vision API-ê re têkildar e, wekî JPEG an PNG.
4. Wêne ji Google Vision API re bişînin: Pirtûkxaneya muwekîlê Google Cloud ji bo Python bikar bînin da ku wêneyê ji Google Vision API re ji bo tespîtkirina tiştan bişînin. Ev dikare bi afirandina hêmanek daxwaznameyê bi daneyên wêneyê re û bangkirina rêbaza guncan, wek `image_annotator_client.object_localization().annotate_image()` pêk were.
5. Encamên tespîtkirina objeyan bistînin: Encamên tespîtkirina tiştan ji bersiva ku ji Google Vision API-yê hatî wergirtin derxînin. Bersiv dê di derheqê tiştên ku hatine tespît kirin de, wekî qutiyên wan ên sînor, etîket, û pîvanên pêbaweriyê agahdar bike.
6. Li ser wêneyê qutiyên sînor xêz bikin: Pirtûkxaneya Pillow bikar bînin da ku qutiyên sînor li dora tiştên ku li ser wêneyê hatine tespît kirin xêz bikin. Hûn dikarin rêbaza `ImageDraw.Draw()` bikar bînin da ku tiştek xêzkirinê biafirînin, û dûv re jî rêbaza `draw.rectangle()` bikar bînin da ku qutiyên sînor xêz bikin.
7. Etîket û pûanan li wêneyê zêde bikin: Ji bo zêdekirina dîtinê, hûn dikarin etîket û xalên pêbaweriyê li wêneyê zêde bikin. Rêbaza `draw.text()` ji pirtûkxaneya Pillow bikar bînin da ku etîket û pûanên li ser wêneyê biweşînin.
8. Wêneyê annotated hilînin û nîşan bidin: Wêneyê şîrovekirî bi rêbaza `Wêne.save()` ji pirtûkxaneya Pillow hilînin. Hûn dikarin formata xwestî hilbijêrin, wekî JPEG an PNG. Bi bijartî, wêneya şirovekirî bi karanîna rêbaza `Wêne.show()` nîşan bide.
Bi şopandina van gavan, hûn dikarin bi karanîna pirtûkxaneya Pillow bi dîtbarî tiştên ku di wêneyekê de hatine tespît kirin nas bikin û ronî bikin. Kombûna kapasîteyên hilberandina wêneya hêzdar a Pillow û fonksiyona vedîtina tiştan a Google Vision API rê dide analîza bikêr û rast a wêneyan.
Mînak:
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()
Di vê nimûneyê de, em yekem wêneyê bi karanîna pirtûkxaneya Pillow bar dikin û analîz dikin. Dûv re, em bi Google Vision API-ê verast dikin û wêneyê ji bo tespîtkirina tiştan dişînin. Em encamên tespîtkirina tiştan vedigirin û pirtûkxaneya Pillow bikar tînin da ku qutiyên sînorkirî yên li dora tiştên ku li ser wêneyê hatine tespît kirin xêz bikin. Wekî din, em etîket û pîvanên pêbaweriyê li wêneyê zêde dikin. Di dawiyê de, em wêneya şirovekirî hilînin û nîşan bidin.
Pirs û bersivên din ên vê dawiyê di derbarê Fêmkirina wêneyên pêşkeftî:
- Di Google Vision API-ê de hin kategoriyên pêşwext ji bo naskirina tiştan çi ne?
- Nêzîkatiya pêşniyarkirî ya ji bo karanîna taybetmendiya tespîtkirina lêgerîna ewledar bi hev re digel teknîkên din ên nermalav çi ye?
- Em çawa dikarin bigihîjin nirxên îhtîmalê yên ji bo her kategoriyê di annotasyona lêgerîna ewledar de?
- Em çawa dikarin bi karanîna Google Vision API-ya di Python de annotasyona lêgerîna ewle bistînin?
- Pênc kategorî di taybetmendiya tespîtkirina lêgerîna ewledar de çi ne?
- Taybetmendiya lêgerîna ewledar a Google Vision API çawa naveroka eşkere di nav wêneyan de destnîşan dike?
- Em çawa dikarin bi karanîna çarçoweya daneya pandas agahdariya tiştê hatî derxistin bi rengek tabloyek organîze bikin?
- Em çawa dikarin hemî annotasyonên tiştan ji bersiva API-ê derxînin?
- Kîjan pirtûkxane û zimanê bernamekirinê têne bikar anîn da ku fonksiyona Google Vision API nîşan bidin?
- API-ya Google Vision çawa di wêneyan de tespîtkirin û herêmîkirina tiştan dike?
Di têgihîştina wêneyên pêşkeftî de bêtir pirs û bersivan bibînin