Microsoft Azure Custom Vision Python SDK - используйте файл изображения с компьютера для прогнозирования

https://docs.microsoft.com/en-us/azure/cognitive-services/custom-vision-service/python-tutorial.

Я выполнил приведенное выше руководство по использованию пакета SDK для Azure Custom Vision Python. Вместо того, чтобы использовать изображение в Интернете для прогнозирования (как показано в руководстве), я хотел бы использовать файл изображения со своего компьютера. Как я могу это сделать? Спасибо!


person Madeline Leung    schedule 23.02.2019    source источник


Ответы (1)


В проекте Github, размещенном для упомянутого вами руководства, есть образец:

Это для обнаружения объектов, но вызов такой же для классификации, разница заключается в содержании результата (здесь у вас есть bounding_box элементов, потому что обнаружение объекта прогнозирует зоны на изображении):

def predict_project(prediction_key, project, iteration):
    predictor = CustomVisionPredictionClient(prediction_key, endpoint=ENDPOINT)

    # Open the sample image and get back the prediction results.
    with open(os.path.join(IMAGES_FOLDER, "Test", "test_od_image.jpg"), mode="rb") as test_data:
        results = predictor.predict_image(project.id, test_data, iteration.id)

    # Display the results.
    for prediction in results.predictions:
        print ("\t" + prediction.tag_name + ": {0:.2f}%".format(prediction.probability * 100), prediction.bounding_box.left, prediction.bounding_box.top, prediction.bounding_box.width, prediction.bounding_box.height)

См. Источник здесь: https://github.com/Azure-Samples/cognitive-services-python-sdk-samples/blob/master/samples/vision/custom_vision_object_detection_sample.py#L122

person Nicolas R    schedule 25.02.2019
comment
Что значит mode = "rb"? Сколько режимов есть? Кажется, я не могу найти документацию для этого SDK. Спасибо! - person Madeline Leung; 26.02.2019
comment
Здесь это параметр метода open, подробности см. Здесь: w3schools.com/python/python_file_handling. asp (r = чтение, b = двоичный) - person Nicolas R; 26.02.2019