Olha o Buraco!
Participantes:
Kleber Lima da SilvaResumo do projeto:
Este sistema é capaz de detectar imperfeições na pavimentação para realizar um mapeamento da qualidade das vias públicas com um custo baixo de implantação, pois utiliza a própria frota da prefeitura ou até mesmo os ônibus do transporte público.Descrição do projeto:
- Problemas:
- A pavimentação é sempre uma das principais reivindicações da comunidade e é um problema frequente nas cidades brasileiras.
- Os buracos afetam a boa fluidez do trânsito e causam desconforto e prejuízos aos motoristas.
- O método mais comum e utilizado atualmente para o levantamento das ruas que precisam de manutenção é por meio dos cidadãos que realizam chamados ao órgão responsável.
- O que falta é um método de baixo custo para coletar dados sobre a qualidade do pavimento para todas as ruas de uma cidade de uma maneira consistente e metódica.
- Solução:
- O projeto resolve os problemas apresentados por meio de um sistema que realiza o mapeamento da qualidade das vias públicas com um custo de implantação muito baixo, pois é possível utilizar a própria frota de carros da prefeitura ou até mesmo os ônibus do transporte público.
- O sistema possui acelerômetro e uma câmera (na traseira de um veículo) para detectar imperfeições da pavimentação. Os dados serão registrados e apresentados em um mapa indicando a classificação da qualidade do pavimento, bem como os pontos críticos que devem ser priorizados.
- Diferenciais:
- Sistema open source que poderá ser modificado e adicionado novos recursos, como, por exemplo: sensor de qualidade do ar, sensor de nível UV, entre outros sensores que monitorem variáveis interessantes para indicadores de qualidade de vida de uma cidade.
- Não existe nenhum sistema do tipo sendo utilizado no Brasil.
- A proposta sugere utilizar a própria frota de carros da prefeitura ou o transporte público, ou seja, não é necessário destinar um veículo específico para realizar o mapeamento.
- A ideia é que este mapeamento fique aberto para que qualquer cidadão veja e acompanhe a situação da pavimentação da cidade, podendo inclusive servir na tomadas de decisão ao traçar rotas desviando de pontos críticos.
Histórico do desenvolvimento:
O desenvolvimento deste projeto foi divido em três módulos para a posterior integração final entre eles, segue abaixo as principais tarefas e respectivo status de andamento.
- GPS:
- [CONCLUÍDO – 18/05] Configuração do GPS
- [CONCLUÍDO – 18/05] Script de testes: leitura e apresentação das coordenadas
- [CONCLUÍDO – 20/05] Script funcional 1: transmissão das coordenadas para o servidor
- Acelerômetro:
- [CONCLUÍDO – 23/05] Instalação e configuração do acelerômetro
- [CONCLUÍDO – 23/05] Script de testes: apresentação dos dados raw
- [CONCLUÍDO – 17/06] Script funcional 1: algoritmo de classificação/identificação dos buracos
- Câmera:
- [CONCLUÍDO – 30/05] Configuração da webcam
- [CONCLUÍDO – 30/05] Script de testes: tirar e salvar foto
- [CONCLUÍDO – 10/06] Script funcional 1: envio da foto para o servidor
- [PRIORIDADE 1] Script funcional 2: marcar áreas da imagem com ruído, usando o OpenCV
- [PRIORIDADE 2] Script funcional 3: algoritmo de classificação/identificação dos buracos
- Procedimentos e integrações gerais:
- [CONCLUÍDO – 16/05] Instalação do Debian (Linaro Linux release 17.04) na DragonBoard 410C
- [EM DESENVOLVIMENTO] A cada 5 metros: tirar uma foto, algoritmo de classificação/identificação (apenas acelerômetro), enviar os atributos (latitude, longitude, estado) e as fotos para o Google Drive
- [PRIORIDADE 3] Adicionar: algoritmo de classificação/identificação pela câmera
- [PRIORIDADE 4] Adicionar: apresentar os dados em algum mapa/dashboard
- [PRIORIDADE 5] Adicionar: retenção dos dados enquanto não tiver conexão com a Internet
- [PRIORIDADE 6] Adicionar: melhorias gerais na apresentação dos dados classificados
STATUS ATUALIZADO EM: 25/06/2017
Hardware:
O diagrama de blocos a seguir mostra de maneira simplificada o hardware do sistema proposto:
A partir deste diagrama, listam-se as principais funcionalidades de cada elemento:
- Qualcomm DragonBoard 410C: placa de desenvolvimento rodando uma distribuição Linux para a execução da aplicação.
- GPS: obtenção dos dados de geolocalização.
- WiFi: conectividade com a Internet para a comunicação com o servidor.
- Cartão SD: log dos dados entre os envios para o servidor e enquanto não estiver conectado à Internet.
- Webcam: obtenção das imagens da pavimentação para classificação e registro.
- Acelerômetro: identificação de padrões de buracos e/ou qualidade da pavimentação.
- Servidor (nuvem): local para guardar os dados obtidos pelo sistema.
- Mapa: interface para a apresentação dos dados de maneira mais intuitiva para as tomadas de decisões.
Software/Firmware:
Ainda em fase de desenvolvimento. Pontos críticos:
- Desenvolvimento do algoritmo para classificação da qualidade da pavimentação a partir dos dados do acelerômetro.
- Desenvolvimento do algoritmo de visão computacional usando a biblioteca OpenCV para identificar defeitos na pavimentação por meio das imagens obtidas.
- Apresentação dos dados no mapa utilizando o OpenStreetMap para uma análise intuitiva que ajude na tomada de decisão para as prioridades nos reparos da pavimentação.
Referências:
Solução similar – Projeto SQUID (ARGO labs): vídeo de apresentação.
Guia para instalação do Debian na DragonBoard 410C
Biblioteca em Python para “parsing” do protocolo NMEA 0183 (GPS)
Módulo Python para o MPU6050 (acelerômetro/giroscópio) no Linux
Biblioteca em Python para interação com a API do Google Drive