es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Google Cloud Vision API Object Localization – número de objetos reconocidos.

Estoy utilizando el siguiente código de Python para detectar matrículas con la API Cloud Vision.

response = client.annotate_image({
    'image': {'source': {'image_uri': uri}},
    'features': [
        {'max_results': 1000, 'type_': vision.Feature.Type.TEXT_DETECTION},
        {'max_results': 1000, 'type_': vision.Feature.Type.OBJECT_LOCALIZATION},
    ],
})

lo_annotations = response.localized_object_annotations
for obj in lo_annotations:
    print('\n{} (confianza: {})'.format(obj.name, obj.score))
    print('Vértices de polígono normalizado:')

    for vertex in obj.bounding_poly.normalized_vertices:
        print(' - ({}, {})'.format(vertex.x, vertex.y))

Si utilizo una imagen que muestra más autos, edificios, personas, etc., obtengo alrededor de 4 a 7 objetos reconocidos. Los objetos reconocidos son los más grandes en la escena, como “Coche”, “Coche”, “Edificio”, “Edificio”, “Persona”.

Si recorto solo un coche de esta imagen y realizo la Localización de objetos con esta nueva imagen, obtengo objetos como “Coche”, “Neumático”, “Neumático”, “Matrícula”, lo cual es perfecto, porque la placa se reconoce y se muestra en la lista.

Parece que el algoritmo de Localización de objetos selecciona algunos objetos prominentes de la imagen y ignora los objetos más pequeños o menos prominentes.

Pero en mi caso, necesito localizar todas las matrículas en la imagen. ¿Hay alguna manera de obtener el modelo utilizado para listar todas las matrículas en la imagen o más objetos que solo los más prominentes?

De lo contrario, ¿cuál sería el enfoque correcto para obtener todas las placas de una imagen? ¿Debo entrenar un modelo personalizado?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El algoritmo de localización de objetos utilizado en Cloud Vision API está diseñado para seleccionar objetos prominentes de una imagen y a veces puede perder objetos más pequeños o menos prominentes. En este caso, no es posible forzar al algoritmo a detectar todas las placas de matrícula en la imagen.

    Para lograr el resultado deseado de localizar todas las placas de matrícula en la imagen, tendrías que entrenar un modelo personalizado utilizando Google AutoML Vision o una herramienta similar. Esto te permitiría personalizar el modelo para detectar específicamente todas las placas de matrícula en la imagen.

Comments are closed.