Reconociendo formas visio en una imagen

Al ofrecer soluciones SCADA, a menudo obtenemos las especificaciones de nuestros usuarios finales especificadas en el Diagrama de control estructurado (visiones como los diagramas de flujo que se muestran a continuación) que a menudo se envían en formato PDF o como imágenes.

Para acceder a estos en C #, esperaba usar una de las bibliotecas de OpenCV.

Estaba buscando el reconocimiento de plantillas, pero parece un ajuste incorrecto comenzar a alimentar un algoritmo de aprendizaje automático para enseñarle a reconocer la forma específica previamente conocida de cuadros y flechas.

Las bibliotecas que he visto tienen algunas funciones poliedge. Sin embargo, como se puede ver en el siguiente ejemplo, existe el peligro de que el sistema trate todo como un gran polígono cuando no hay espacio entre los elementos.

Las anotaciones pueden ser cualquier rotación de 90 grados y me gustaría identificarlas, así como el contenido de los rectángulos usando OCR.

No tengo ninguna experiencia en esto, lo que debería ser evidente en este momento, así que espero que alguien pueda señalarme en la dirección del agujero de conejo apropiado. Si hay múltiples enfoques, elija el menos matemático pesado.

Actualizar: Este es un ejemplo del tipo de imagen de la que estoy hablando.

El problema a abordar es:

Identificación de los rectángulos rojos con textos en celdas (OCR).La identificación de la flecha, incluidas las anotaciones de dirección y punto final. Tipo de línea, si es posible.Coincidencia de plantillas de los componentes.Recurrir a alguna entidad de polilínea o algo así si la coincidencia de plantilla falla.

Respuestas a la pregunta(2)

Su respuesta a la pregunta