4.8 KiB
Klassifitseeri pilt - Virtuaalne IoT riistvara ja Raspberry Pi
Selles õppetunni osas saadad kaameraga tehtud pildi Custom Vision teenusele, et see klassifitseerida.
Piltide saatmine Custom Vision teenusele
Custom Vision teenusel on Python SDK, mida saab kasutada piltide klassifitseerimiseks.
Ülesanne - piltide saatmine Custom Vision teenusele
-
Ava
fruit-quality-detectorkaust VS Code'is. Kui kasutad virtuaalset IoT seadet, veendu, et virtuaalne keskkond töötab terminalis. -
Python SDK piltide saatmiseks Custom Vision teenusele on saadaval Pip paketina. Paigalda see järgmise käsuga:
pip3 install azure-cognitiveservices-vision-customvision -
Lisa järgmised import-lauseid
app.pyfaili algusesse:from msrest.authentication import ApiKeyCredentials from azure.cognitiveservices.vision.customvision.prediction import CustomVisionPredictionClientSee toob sisse mõned moodulid Custom Vision teekidest: ühe autentimiseks ennustusvõtmega ja teise ennustusklientide klassi jaoks, mis saab Custom Vision teenust kutsuda.
-
Lisa järgmine kood faili lõppu:
prediction_url = '<prediction_url>' prediction_key = '<prediction key>'Asenda
<prediction_url>URL-iga, mille kopeerisid varem Prediction URL dialoogist. Asenda<prediction key>ennustusvõtmega, mille kopeerisid samast dialoogist. -
Ennustus-URL, mille Prediction URL dialoog pakkus, on mõeldud REST-lõpppunkti otsekutsumiseks. Python SDK kasutab URL-i osi erinevates kohtades. Lisa järgmine kood, et jagada URL vajalikeks osadeks:
parts = prediction_url.split('/') endpoint = 'https://' + parts[2] project_id = parts[6] iteration_name = parts[9]See jagab URL-i, eraldades
https://<location>.api.cognitive.microsoft.comlõpp-punkti, projekti ID ja avaldatud iteratsiooni nime. -
Loo ennustaja objekt, et teha ennustus järgmise koodiga:
prediction_credentials = ApiKeyCredentials(in_headers={"Prediction-key": prediction_key}) predictor = CustomVisionPredictionClient(endpoint, prediction_credentials)prediction_credentialskasutab ennustusvõtit. Neid kasutatakse ennustusklientide objekti loomiseks, mis osutab lõpp-punktile. -
Saada pilt Custom Vision teenusele järgmise koodiga:
image.seek(0) results = predictor.classify_image(project_id, iteration_name, image)See kerib pildi tagasi algusesse ja saadab selle ennustusklientidele.
-
Lõpuks näita tulemusi järgmise koodiga:
for prediction in results.predictions: print(f'{prediction.tag_name}:\t{prediction.probability * 100:.2f}%')See käib läbi kõik tagastatud ennustused ja kuvab need terminalis. Tagastatud tõenäosused on ujukomaarvud vahemikus 0-1, kus 0 tähendab 0% tõenäosust, et pilt vastab sildile, ja 1 tähendab 100% tõenäosust.
💁 Pildiklassifikaatorid tagastavad protsendid kõigi kasutatud siltide kohta. Iga sildi puhul on tõenäosus, et pilt vastab sellele sildile.
-
Käivita oma kood, suunates kaamera mõnele puuviljale, sobivale pildikomplektile või puuviljale, mis on nähtav veebikaameral, kui kasutad virtuaalset IoT riistvara. Näed väljundit konsoolis:
(.venv) ➜ fruit-quality-detector python app.py ripe: 56.84% unripe: 43.16%Saad näha tehtud pilti ja neid väärtusi Predictions vahekaardil Custom Vision teenuses.
💁 Selle koodi leiad code-classify/pi või code-classify/virtual-iot-device kaustast.
😀 Sinu puuvilja kvaliteedi klassifikaatori programm oli edukas!
Lahtiütlus:
See dokument on tõlgitud AI tõlketeenuse Co-op Translator abil. Kuigi püüame tagada täpsust, palume arvestada, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Algne dokument selle algses keeles tuleks pidada autoriteetseks allikaks. Olulise teabe puhul soovitame kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valesti tõlgenduste eest.
