Rozpoznawanie produktów półek (wersja zapoznawcza): analizowanie obrazów półek przy użyciu wstępnie wytrenowanego modelu
Ważne
Ta funkcja jest teraz przestarzała. 31 marca 2025 r. zostanie wycofana usługa Azure AI Image Analysis 4.0 Custom Image Classification, Custom Object Detection i Product Recognition (wersja zapoznawcza). Po tej dacie wywołania interfejsu API do tych usług nie powiedzą się.
Aby zapewnić bezproblemową obsługę modeli, przejdź do usługi Azure AI Custom Vision, która jest teraz ogólnie dostępna. Usługa Custom Vision oferuje podobne funkcje do tych funkcji wycofywania.
Najszybszym sposobem rozpoczęcia korzystania z rozpoznawania produktów jest użycie wbudowanych wstępnie wytrenowanych modeli sztucznej inteligencji. Za pomocą interfejsu API rozpoznawania produktów możesz przekazać obraz półki i uzyskać lokalizacje produktów i luk.
Uwaga
Marki pokazane na obrazach nie są powiązane z firmą Microsoft i nie wskazują żadnej formy poparcia produktów firmy Microsoft lub firmy Microsoft przez właścicieli marki, ani poparcia właścicieli marki lub ich produktów przez firmę Microsoft.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Po utworzeniu subskrypcji platformy Azure utwórz zasób usługi Vision w witrynie Azure Portal. Należy ją wdrożyć w obsługiwanym regionie świadczenia usługi Azure (zobacz Dostępność regionów). Po wdrożeniu wybierz pozycję Przejdź do zasobu.
- Będziesz potrzebować klucza i punktu końcowego z utworzonego zasobu, aby połączyć aplikację z usługą Azure AI Vision. W dalszej części przewodnika wklejysz klucz i punkt końcowy do poniższego kodu.
- Zasób usługi Azure Storage z kontenerem magazynu obiektów blob. Utwórz jeden
- Zainstalowano bibliotekę cURL . Możesz też użyć innej platformy REST, takiej jak Swagger lub rozszerzenie klienta REST dla programu VS Code.
- Obraz półki. Możesz pobrać nasz przykładowy obraz lub przynieść własne obrazy. Maksymalny rozmiar pliku na obraz wynosi 20 MB.
Analizowanie obrazów półek
Aby przeanalizować obraz półki, wykonaj następujące czynności:
Przekaż obrazy, które chcesz przeanalizować do kontenera magazynu obiektów blob, i uzyskaj bezwzględny adres URL.
Skopiuj następujące
curl
polecenie do edytora tekstów.curl -X PUT -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/productrecognition/ms-pretrained-product-detection/runs/<your_run_name>?api-version=2023-04-01-preview" -d "{ 'url':'<your_url_string>' }"
W razie potrzeby wprowadź w poleceniu następujące zmiany:
- Zastąp element
<subscriptionKey>
kluczem zasobu usługi Vision. - Zastąp element
<endpoint>
punktem końcowym zasobu usługi Vision. Na przykład:https://YourResourceName.cognitiveservices.azure.com
. - Zastąp element
<your_run_name>
unikatową nazwą przebiegu testu dla kolejki zadań. Jest to asynchroniczna nazwa kolejki zadań interfejsu API, aby móc później pobrać odpowiedź interfejsu API. Na przykład.../runs/test1?api-version...
- Zastąp
<your_url_string>
zawartość adresem URL obiektu blob obrazu
- Zastąp element
Otwórz okno wiersza polecenia.
Wklej edytowane
curl
polecenie z edytora tekstów w oknie wiersza polecenia, a następnie uruchom polecenie.
Sprawdzanie odpowiedzi
Po pomyślnym przetworzeniu żądania zostanie zwrócona odpowiedź w formacie JSON. Wyniki interfejsu ProductRecognitionResultApiModel
API rozpoznawania produktu są zwracane w polu JSON:
"ProductRecognitionResultApiModel": {
"description": "Results from the product understanding operation.",
"required": [
"gaps",
"imageMetadata",
"products"
],
"type": "object",
"properties": {
"imageMetadata": {
"$ref": "#/definitions/ImageMetadataApiModel"
},
"products": {
"description": "Products detected in the image.",
"type": "array",
"items": {
"$ref": "#/definitions/DetectedObject"
}
},
"gaps": {
"description": "Gaps detected in the image.",
"type": "array",
"items": {
"$ref": "#/definitions/DetectedObject"
}
}
}
}
Zapoznaj się z poniższymi sekcjami, aby zapoznać się z definicjami każdego pola JSON.
Model interfejsu API wyników rozpoznawania produktu
Wyniki operacji rozpoznawania produktu.
Nazwisko | Pisz | Opis | Wymagania |
---|---|---|---|
imageMetadata |
ImageMetadataApiModel | Informacje o metadanych obrazu, takie jak wysokość, szerokość i format. | Tak |
products |
DetectedObject | Produkty wykryte na obrazie. | Tak |
gaps |
DetectedObject | Wykryto luki na obrazie. | Tak |
Model interfejsu API metadanych obrazów
Informacje o metadanych obrazu, takie jak wysokość, szerokość i format.
Nazwisko | Pisz | Opis | Wymagania |
---|---|---|---|
width |
integer | Szerokość obrazu w pikselach. | Tak |
height |
integer | Wysokość obrazu w pikselach. | Tak |
Wykryty model interfejsu API obiektów
Opisuje wykryty obiekt na obrazie.
Nazwisko | Pisz | Opis | Wymagania |
---|---|---|---|
id |
string | Identyfikator wykrytego obiektu. | Nie. |
boundingBox |
Pole ograniczenia | Pole ograniczenia obszaru wewnątrz obrazu. | Tak |
tags |
TagsApiModel | Klasyfikacja ufności wykrytego obiektu. | Tak |
Model interfejsu API usługi Box ograniczenia
Pole ograniczenia obszaru wewnątrz obrazu.
Nazwisko | Pisz | Opis | Wymagania |
---|---|---|---|
x |
integer | Współrzędna lewa górna lewa część obszaru w pikselach. | Tak |
y |
integer | Górna współrzędna lewego górnego punktu obszaru w pikselach. | Tak |
w |
integer | Szerokość mierzona od lewego górnego punktu obszaru w pikselach. | Tak |
h |
integer | Wysokość mierzona od lewego górnego punktu obszaru w pikselach. | Tak |
Model interfejsu API tagów obrazów
Opisuje pewność klasyfikacji obrazów etykiety.
Nazwisko | Pisz | Opis | Wymagania |
---|---|---|---|
confidence |
liczba zmiennoprzecinkowa | Pewność przewidywania klasyfikacji. | Tak |
name |
string | Etykieta przewidywania klasyfikacji. | Tak |
Następne kroki
W tym przewodniku przedstawiono sposób wykonywania podstawowego wywołania analizy przy użyciu wstępnie wytrenowanego interfejsu API REST rozpoznawania produktów. Następnie dowiedz się, jak używać niestandardowego modelu rozpoznawania produktów, aby lepiej zaspokoić potrzeby biznesowe.