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.

RCNN dibuja rectángulos dentro de rectángulos.

Construí un RCNN bastante simple (modelo secuencial de keras) para identificar cuneiformes en grabados. Se supone que debe dibujar alrededor de 11 rectángulos en la imagen de abajo, donde se encuentra el cuneiforme (verdad absoluta). Los rectángulos no deben intersectarse. Como resultado, obtengo alrededor de 25 rectángulos que están dentro de los otros. ¿Alguien más experimentado podría compartir ideas sobre la causa raíz y los pasos que debería tomar o probar? Estoy publicando el código que calcula el resultado, pero el error puede estar en el IOU o en el entrenamiento.

“`

if e < 2000:
x, y, w, h = resultado
timage = imout[y:y+h,x:x+w]
resized = cv2.resize( timage, \
( longitued_borde_imagen, longitued_borde_imagen ), \
interpolation = cv2.INTER_AREA \
)
img = np.expand_dims( resized, axis = 0 )
out = modelo_final.predict( img )
#out= modelo_final.local( img )

if out[0][0] > 0.70:
cv2.rectangle( imout, \
( x, y ), \
( x+w, y+h ),\
( 0, 255, 0 ),\
1, \
cv2.LINE_AA \
)

“`

enter image description here
Imagen de la salida actual

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como experto en IA, puede haber múltiples razones por las que se obtienen alrededor de 25 rectángulos que están dentro de cada uno. Algunas de las posibles razones y pasos a seguir son las siguientes:

    1. Los datos de entrenamiento pueden no ser lo suficientemente diversos: dado que el modelo se entrena con imágenes de grabados cuneiformes, es posible que los datos de entrenamiento no sean lo suficientemente diversos para capturar todas las posibles variaciones de las imágenes de grabado cuneiforme. Para solucionar esto, puedes entrenar el modelo con un conjunto más diverso de imágenes.
    2. La arquitectura del modelo puede no ser adecuada: es posible que la arquitectura actual del modelo no sea adecuada para detectar imágenes de grabado cuneiforme. Puedes probar a utilizar diferentes arquitecturas de modelos, como Faster R-CNN, YOLO o SSD, para ver si tienen un mejor rendimiento.

    3. Es posible que los hiperparámetros no estén optimizados: los hiperparámetros actuales utilizados para entrenar el modelo (por ejemplo, tasa de aprendizaje, tamaño de lote, etc.) pueden no ser óptimos. Puedes intentar ajustar estos hiperparámetros para mejorar el rendimiento del modelo.

    4. Es posible que el umbral de IOU sea demasiado bajo: el umbral de IOU actual utilizado para detectar los rectángulos puede ser demasiado bajo, lo que resulta en la detección de múltiples rectángulos para el mismo grabado cuneiforme. Puedes intentar aumentar el umbral de IOU para reducir el número de rectángulos detectados.

    5. El script de postprocesamiento puede no ser adecuado: por último, es posible que el script de postprocesamiento utilizado para dibujar los rectángulos no sea adecuado para la tarea. Puedes probar a utilizar diferentes scripts de postprocesamiento o modificar el script actual para mejorar la precisión de detección.

    En resumen, puede haber múltiples razones por las que se obtienen múltiples rectángulos dentro de cada uno al detectar imágenes de grabado cuneiforme. Al considerar los pasos mencionados anteriormente, puedes mejorar el rendimiento y la precisión del modelo.

Comments are closed.