Progreso noviembre 2024 - RoboticsURJC/tfg-dcampoamor GitHub Wiki

Progreso noviembre 2024

SEMANA 68 (04/11/2024-10/11/2024)

SEMANA 69 (11/11/2024-17/11/2024)

SEMANA 70 (25/11/2024-01/12/2024)

SEMANA 68 (04/11/2024-10/11/2024)

  • Pruebas con robot real de movimiento tras detección de puntos verdes

    Se siguieron realizando pruebas de movimiento del robot con detecciones, después de llevar a cabo también modificaciones en el código, buscando poder introducir en lugar de los puntos verdes, las detecciones de fresas mediante del uso de YOLOv3.

    Para estos cambios, se intentó modificar en primer lugar el programa del robot, obteniendo tras ciertos cambios errores en el programa en ejecución como el siguiente:

    Este error ocurre porque se está tratando de comparar dos tipos de datos incompatibles utilizando el operador ==. En el mensaje, se muestra que se intenta comparar una lista [0, 0, 0, 0, 0] con un objeto vacío [].

    Para resolverlo, se ajustaron las variables adecuadamente antes de hacer la comparación en el programa.

SEMANA 69 (11/11/2024-17/11/2024)

  • Modificaciones en el código para detección de fresas y movimiento de robot

    Para poder obtener la aplicación final y real de este proyecto, se modificó el código en Python, para poder pasar de xmlrpc_server.py a xmlrpc_fresas.py, en el que se intentaba que se detectasen ya las fresas, en lugar de puntos verdes a través de filtro de color.

    Durante estas modificaciones, a la hora de testear los cambios realizados, se obtuvieron distintos mensajes de error del tipo NameError, AtributeError, TypeError o FilenotFoundError.

    El AttributeError: 'Namespace' object has no attribute 'nns_thres' se debe a que la variable nns_thres no estaba definida dentro de las opciones del programa, a la hora de ejecutarlo en los argumentos, no esté siendo pasada cuando se ejecuta el script.

    El error FileNotFoundError: No such file or directory: 'weights/yolov3.weights' ocurría debido a que el archivo de pesos necesario (yolov3.weights) no se encuentraba en el directorio especificado, por lo que se verificó que la ruta al archivo de pesos fuera correcta y que el archivo existiese en esa ubicación.

    Estos errores del tipo NameError, ocurrían debido a que el código estaba intentando utilizar las variables frame, el método loadCamera() y la variable detection, no se habían definido previamente, donde la función no estaba presente o se requería alguna importación que contuviera esta función, o donde el método no estaba definido, respectivamente. Para todos estos, se consiguió solucionar modificando el código y añadiendo o llamando a estas funciones o variables, una vez cerciorado que existían y funcionaba esa parte correctamente.

    Por último, el TypeError: 'NoneType' object is not subscriptable, ocurría debido a que se intentaba acceder al índice de un objeto que era None, es decir, que no contenía un valor válido, como lo es la variable detection, por lo que al intentar realizar operaciones sobre esa variable, se producía este error. Para poder solucionarlo, se modificó el programa para que esta variable se asignase correctamente y se pudiera acceder a los valores de esta que se requería.

    Una vez estos errores se solucionaron, se volvió a ejecutar el programa en la terminal del ordenador, obteniendo que esta vez el programa se ejecutaba sin ningún código de error aparente, sin embargo, no se detectaban ni recuadraban ninguna de las fresas que se podían observar a través de la cámara.

SEMANA 70 (25/11/2024-01/12/2024)

  • Modificaciones en el código para detección de fresas y movimiento de robot

    Para poder solucionar que, pese a ejecutarse, no se detectasen las fresas, se modificó el código en Python, creando el código xmlrpc_deteccionfresasv1.py y posteriormente el xmlrpc_deteccionfresas.py.