- Diogo Gallina – RM98605
- Pedro Archila – RM550450
- Pedro Couto - RM98402
- Rafael Kanfler - RM99791
- João Dubas - RM76153
No âmbito das tecnologias para monitoramento e conservação marinha, estamos desenvolvendo uma solução inovadora que visa engajar a comunidade e utilizar inteligência artificial para promover a limpeza e a preservação das praias. O projeto consiste em um aplicativo que integra voluntários e cidadãos interessados em reportar a poluição marinha através de fotografias. Esta abordagem colaborativa não apenas facilita o monitoramento das condições das praias, mas também estimula a participação ativa na conservação do meio ambiente.
Nossa solução contempla dois tipos de usuários: voluntários que se dispõem a participar de eventos de limpeza das praias e cidadãos que registram a poluição através de fotos. Essas imagens são avaliadas por um modelo de inteligência artificial que classifica e compara as praias com base nos níveis de poluição. A tecnologia utilizada permite identificar e categorizar os tipos de lixo, como plásticos, óleo, plantas marinhas e vida marinha em risco, além de avaliar a gravidade da situação em níveis alto, médio e baixo.
Ao coletar e analisar dados fotográficos, o aplicativo oferece aos usuários informações precisas sobre as praias mais próximas que necessitam de atenção. Através dessa funcionalidade, pretendemos organizar eventos de limpeza, reunindo voluntários para ações coordenadas e eficazes. A integração de dados de localização e classificação permite que as ações sejam direcionadas de forma estratégica, garantindo maior impacto e eficiência na remoção de resíduos.
Além disso, o aplicativo visa fomentar uma rede de colaboração e conscientização ambiental. Ao proporcionar uma plataforma onde as pessoas podem contribuir ativamente para a redução da poluição marinha, estamos criando um movimento de preservação que transcende o uso da tecnologia. A combinação de monitoramento preciso e mobilização comunitária torna nossa solução uma ferramenta poderosa para enfrentar os desafios da poluição marinha e promover a sustentabilidade dos ecossistemas costeiros.
A documentação do swagger pode ser encontrada no seguinte endereço: http://localhost:{PORT}/swagger-ui.html
Recurso | Rota | Método | Descrição |
---|---|---|---|
User | /users | POST | Cria um usuário |
User | /users | GET | Busca todos os usuários |
User | /users/:user_id | GET | Busca usuário pelo ID |
User | /users/by-name | GET | Busca os usuários por parte do nome |
User | /users/by-email | GET | Busca os usuários por parte do email |
User | /users/by-type | GET | Busca usuários pelo tipo |
User | /users/by-type-count | GET | Agrupa por tipo de usuário |
User | /users/:user_id | PUT | Atualiza um usuário |
User | /users/:user_id | DELETE | Deleta um usuário |
Beach | /beaches | POST | Cria uma praia |
Beach | /beaches | GET | Busca todas as praias |
Beach | /beaches/by-name | GET | Busca todas por uma parte do nome |
Beach | /beaches/by-pollution-level | GET | Busca todas por nível de poluição |
Beach | /beaches/by-pollution-level-count | GET | Agrupa por nível de poluição |
Beach | /beaches/:beach_id | GET | Busca praia pelo ID |
Beach | /beaches/:beach_id | PUT | Atualiza uma praia |
Beach | /beaches/:beach_id | DELETE | Deleta uma praia |
Event | /events/ | POST | Cria um evento |
Event | /events | GET | Busca todos os eventos |
Event | /events/:event_id | GET | Busca evento pelo ID |
Event | /events/by-name | GET | Busca todos os eventos por pate do nome |
Event | /events/by-status | GET | Busca todos os eventos por status |
Event | /events/by-status-count | GET | Agrupa por status |
Event | /events/:event_id | PUT | Atualiza um evento |
Event | /events/:event_id | DELETE | Deleta um evento |
Participation | /participations | POST | Registra usuário em um evento |
Participation | /participations/:participationId/users/:userId | PUT | Confirma participação de usuário em um evento |
Participation | /participations/users/:userId | GET | Busca todas participações de eventos que um usuário está registrado |
Participation | /participations/:participationId/users/:userId | DELETE | Deleta participação de um usuário |
Photo | /photos | POST | Adiciona uma foto |
Photo | /photos | GET | Busca todas as fotos |
Photo | /photos/:photo_id | GET | Busca foto pelo ID |
Photo | /photos/:beach_id | GET | Busca todas as fotos de uma praia |
Photo | /photos/:user_id | GET | Busca todas as fotos que um usuário adicionou |
Photo | /photos/by-classification-count | GET | Agrupa por classificação da foto |
Photo | /photos/:photo_id | DELETE | Deleta uma foto pelo id |