Semana 7 (7/4 - 21/4)

Objetivo de la semana

[*] Trabajar en tener una versión estable y testeada del código de Mapping y Planning refactorizado (el deadline para tenerlo es 28, de cara al workshop del 29)

[] Detectar y apuntar mejoras (pendientes) a realizar de estas capas

[*] Contactar con el responsable de mapping de NVIDIA para ver bien cómo trabajan ellos con los mapas

[] Apuntar dudas más generales (como por ejemplo cómo gestionar los test del código) para plantearlas en el workshop del 29 (esto hacerlo más la semana del 21 al 28) 

[x] Redactar con Felipe una guía sobre cómo lanzar el vehículo en real, por ejemplo como hicimos en la demo

[x] Ir viendo los procesos administrativos para la inscripción del doctorado.

[x] Realizar modificaciones correspondientes para la revisión del paper del IV

Trabajo realizado

Refactoring del código 

-->  He creado una rama para ambas layers en la que realizaré estas modificaciones

[x] Antes había una clase MapParser que únicamente parseaba el mapa, y luego un map_utils.py con un montón de funciones para hacer cosas con el mapa. Entre otras, estaban las de generar waypoints centrados en el carril. Por tanto, por ejemplo el planificador tenía por un lado que crear un objeto MapParser y por otro lado estar además importando las demás funciones que necesitase de este map_utils. Ahora hay una clase MapObject que hereda de MapParser, e implementa como métodos todas estas funciones útiles del mapa. Por tanto ahora únicamente habría que instanciar un MapObject que ya haría las funciones de MapParser y map_utils. 

[x] Cuando se inicializa el objeto MapObject se calculan una única vez al principio todos los waypoints centrados en todos los carriles para ya estar disponibles cuando se requieran a lo largo de la ejecución, por tanto no es imprescindible que esté mega optimizado este código (que de hecho está bastante chapucero).
Aún así, estoy haciendo algunas pruebas midiendo tiempos de ejecución para aunque sea mejorarlo algo donde sea demasiado cuello de botella.

Nota: Pensaba que utilizando los parámetros self en los métodos iría mejor que no tener que estar pasando por parámetro cada vez que se llama al método. Por ejemplo en el método get_road(road_id) que busca una carretera a partir de su id, podría pasarle las carreteras donde buscar (1) o solo pasarle el road_id a buscar y ya utilizar dentro el parámetro self de las carreteras donde buscar (2):
1)  get_road (self.roads, road_id)
2)  get_road (road_id) --> y ya utilizar el parámetro self.roads dentro de la función 
Pues no! La opción (2) tarda casi el doble que (1), así que lo dejaré con la opción (1).

[] Modificar el MapVisualizator con PythonAPI para que haya uno solo que pueda funcionar o bien desde un launch o bien lanzándolo solo por terminal (se puede seleccionar mediante una variable standalone_mode).
Además, modificar este script para que no esté publicando constantemente como hacía antes, si no que solo publique una vez cuando se cambie el input del map_name (con un servicio??)

--> Duda ROS: La actualización del map_visualizator al cambiar el mapa seleccionado debería hacerse mediante un topic, un servicio o un parámetro?


Guía vehículo real con Felipe

Felipe ha completado la guía en un documento que se encuentra en la carpeta de Teams:

/Documentos/General/Tutorial y Manuales

Faltaría revisarla y ver si se añade alguna imagen.


Procesos administrativos inscripción doctorado

Los requisitos son tener 300 créditos así que eso está. El periodo para presentar la tesis desde la matriculación a tiempo completo es de 3 años (aunque luego puede haber prórrogas).

En el calendario administrativo se indica las fechas de preinscripción (son del curso 2021 pero para el 2022 serán parecidas):

- Solicitud de admisión: 9 septiembre al 7 octubre

- Adjudicación plazas: 2 al 9 de noviembre

 

La documentación a preparar es:

- Carta de motivación

-  DNI

- CV

- Título que habilita el acceso

- Certificado de notas que incluya la nota media


Por tanto, hasta septiembre de 2022 no hay que entregar nada (he llamado a la escuela de doctorado y me lo han confirmado).


Requisitos para completar el doctorado:

[] 3 revistas Q1 o Q2 (congresos no cuentan)

[] B2 en inglés

[] Estancia y lectura en inglés para título internacional


Contactar responsable de mapas en NVIDIA

He escrito por linkedin a Birgit Henke, la persona que realizó la presentación en el GTC. Estoy esperando su respuesta.


Modificaciones paper IV

Las modificaciones están realizas en rojo en el documento de Overleaf. Se han realizado correcciones gramaticales y se ha añadido una aclaración de la aportación en la parte de conclusiones.


Otros

He encontrado esta oferta de intership ofrecida por Dr.-Ing. David I. González-Aguirre en la universidad de Oregón. Están haciendo una colaboración de GoodMaps con Intel para la reconstrucción de mapas indoor. Me ha parecido muy buena idea (a futuro, quién sabe) que se podría extender esta aplicación que tienen al uso de mapas outdoor como los que tenemos nosotros, pero considerando en vez de los carriles las aceras, que también se describen en opendrive.
En este vídeo se puede ver, y en este enlace es la oferta.
Es solo algo que me ha parecido interesante y quería dejar por aquí anotado.


Trabajo semana siguiente

Comentarios