Rodrigo Laguna Profile picture
Campeón interbarrial de veo veo & gran jugador de uno, asistido

Sep 18, 2020, 25 tweets

Luego de un largo proceso de adquisición, etiquetado y curado, quedó pronta una nueva versión del que he bautizado como Clean-Dirty Conteiners in Montevideo, y está disponible en @kaggle !

kaggle.com/rodrigolaguna/…

Sale 🧵contando su génesis, proceso y futuros pasos 👇

Todo comenzó en abril de este año: un vecino compartió una foto del contenedor preguntando qué se podía hacer. Reenvié la queja a la @montevideoIM y en pocas horas la situación se había regularizado. Sin embargo, es algo que pasa seguido...

En ese momento se me ocurrió que este proceso se puede automatizar: verificar el estado del contenedor y si requiere atención, avisar a la Intendencia.

Tomar imágenes del contenedor y twitear de forma automática es un problema sencillo. La parte difícil es saber si el contenedor está sucio o no. Para este punto, se debe entrenar un clasificador de imágenes que requiere datos etiquetados de entrenamiento, algo que no tenía.

Así que comencé a buscar fotos de contenedores en Google Imágenes, Redes Sociales y de noticias. Una búsqueda a mano: la biblioteca que solía usar para imágenes de Google, google-images-download, quedó desactualizada 😖😖😖github.com/hardikvasa/goo…

Con eso conseguí menos de 200 ejemplos: muy pocos. En su mayoría eran casos extremos poco cotidianos: en general cuando la gente se queja o es noticia, la situación es extrema. Conseguí unos pocos limpios de cuando la @montevideoIM muestra cómo quedaron tras una queja.

El siguiente paso fue pedirle a mis amigos y familiares que me pasen fotos de sus contenedores. En pleno #QuedateEnCasa @Diego76978770 tuvo tremenda idea: ¿por qué ir hasta el contenedor, si puedo "caminar" en Google Street View?

La idea era muy buena, pero ¿podrá escalar? Afortunadamente @montevideodti tiene disponibles como #DatosAbiertos la ubicación de todos los contenedores de la ciudad, y en CSVs: un éxito! catalogodatos.gub.uy/dataset/intend…

Un detalle es que la ubicación es una esquina, y el contenedor puede estar en cualquier parte de la esquina, e incluso puede no estar, los contenedores se cambian de lugar.

Por tanto, hice un pequeño dataset para encontrar contenedores, que también quedó disponible: kaggle.com/rodrigolaguna/…

Con esto, el dataset creció bastante. Sin embargo, la mayoría de las fotos no contenían contenedores, eran de un ángulo malo y eran de contenedores limpios. Además, son muy particulares, contienen blur en ciertas partes y marcas de agua. Por tanto continué la recolección normal.

Con esto llegué a la versión inicial: unas 600 imágenes de contenedores limpios y unas 450 de contenedores sucios. El clasificador inicial que entrené no funcionaba suficientemente bien, así que decidí continuar con la recolección manual: tomar fotos durante paseos/mandados...

Este fin de semana llegué a la versión actual: 1133 imágenes de contenedores limpios y 746 contenedores sucios, separados en entrenamiento y test de forma independiente.

Algunas particularidades: el etiquetado binario hace que un montón de grises vayan a blanco o negro, limpio o sucio. ¿Qué pasa si hay apenas una bolsa fuera del contenedor? O un sillón? O una caja? No es lo correcto, pero ¿amerita un reclamo?.

En principio, todo surgió como un pasatiempo de cuarentena. Poner una cámara frente a cada contenedor no es muy viable a gran escala. La ventaja de tener una cámara dedicada a un contenedor es que apenas se ensucia, automáticamente se reporta.

Conversando sobre el tema, fueron surgiendo otras opciones: se podrían utilizar las cámaras de los autos que recorren la ciudad multando vehículos subrayado.com.uy/asi-funcionan-… Con una misma cámara se pueden fiscalizar múltiples contenedores de manera automática

Otra posibilidad sería desarrollar una aplicación que permita a los vecinos reportar el estado de los contenedores de su barrio mediante imágenes. Esto ya existe:

Se llama Por mi barrio, de @DATAuy , permite reportar problemas en general por parte de los ciudadanos, en particular, sobre el estado de contenedores. Se genera un reporte que va derecho a la @montevideoIM .
pormibarrio.uy

Sería interesante acceder a esa base de imágenes para incrementar el dataset. En ese sentido, un clasificador podría ayudar a priorizar las denuncias, aunque desconozco si el volumen de datos recibido amerita.

Por último, ¿es útil denunciar contenedores sucios?

Según Eduardo Fernandez, director de limpieza de la IMM, cuando reciben denuncias las resuelven en menos de 24hs, pero muchas veces "nadie denuncia". "A nosotros los reclamos nos sirven porque nos podemos enterar de lo que está pasando".
elobservador.com.uy/nota/otro-efec…

Como comentario final, no creo que esto sea la panacea, pero quizá sea útil. Por lo pronto comparto el dataset. En breve espero seguir con los siguientes pasos y antes de fin de año quizá tener el bot corriendo 🤖🏃‍♂️💨

Un detalle que olvidé mencionar, pero creo importante: todo eldataset está público bajo licencia @creativecommons 4.0 cc BY: cualquiera puede usarlo con cualquier propósito, incluso comercial, sin siquiera avisarme... la magia de los #DatosAbiertos

creativecommons.org/licenses/by/4.…

de más está decirlo: si quieren contribuir al dataset, no duden en contactarme. No tiene por qué ser una base de datos entera, recibo de a pocas fotos igual 😁😁

El dataset va a seguir creciendo 🤓

Muchas gracias a @ObservadorUY por la posibilidad de difundir el trabajo!

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling