Uma plataforma para
Identificação e monitoramento de espuma em biorreatores através de inteligência artificial com Python e dispositivo Arduino
Sobre
Esta é a plataforma desenvolvida no trabalho de iniciação científica “Identificação e monitoramento de espuma em biorreatores através de inteligência artificial com Python e dispositivo Arduino”, do aluno João Pedro Pazos Ramos, da Unesp de Araraquara. Aqui temos explicações sobre como o dispositivo funciona, como foi desenvolvido e quais os equipamentos usados, além disso o código da inteligência artificial atua através da plataforma, uma vez que as informações captadas pelo dispositivo são enviadas para cá para serem processadas e permitindo o monitoramento remoto.
Objetivos
1.
Desenvolver dispositivo capaz de capturar dados de luminosidade de um laser e imagens, e enviar essas informações para uma plataforma web
2.
Criar uma plataforma web para receber os dados do dispositivo e processa-los a fim de detectar espuma nas imagens
3.
Desenvolver algoritmo de inteligência artificial capaz de se auto-treinar com os dados e imagens captados com a finalidade de detectar espuma em imagens
Como funciona?
Pra entender melhor como esse projeto funciona, podemos separa-lo em algumas partes, por exemplo, o que é o Arduino, o que são e como funcionam inteligências artificiais, como esses dois pontos se juntam com uma plataforma web para realizar a identificação e o monitoramento de espuma em biorreatores.
O que é Arduino?
O Arduino é uma plataforma de desenvolvimento de código aberto que consiste em hardware e software projetados para facilitar a criação de projetos eletrônicos e programáveis. Combinando um microcontrolador e uma interface amigável de programação, o Arduino é amplamente utilizado por entusiastas, estudantes e profissionais para criar uma variedade de dispositivos interativos e autônomos.
Existem diversos tipos de componentes eletrônicos e sensores disponíveis para serem utilizados em projetos com o Arduino, e para o projeto mencionado, foram selecionados um laser, um sensor de luminosidade e um ESP32-CAM. O laser é empregado para detecção de obstáculos em conjunto com o sensor de luminosidade que é pode medir a intensidade da luz ambiente ou do laser e assim captar interferências. Por fim, o ESP32-CAM é uma placa que incorpora uma câmera, permitindo a captura e processamento de imagens em projetos que envolvem monitoramento por vídeo, reconhecimento de objetos ou vigilância, além disso ela também conta com um chip Wi-Fi, permitindo a transmissão de dados e imagens através da internet. A combinação desses componentes com o Arduino oferece uma plataforma versátil para criar soluções criativas e funcionais em eletrônica e automação.
O que são inteligências artificiais?
Inteligências Artificiais (IAs) são sistemas de computador que aprendem e tomam decisões semelhantes à inteligência humana. O processo começa com a coleta de dados relevantes para a tarefa, como imagens ou texto. Esses dados são preparados e organizados. Em seguida, um algoritmo de IA é escolhido e treinado com esses dados, ajustando seus parâmetros para aprender padrões. Uma vez treinado, o modelo de IA pode ser aplicado a novos dados para tomar decisões ou fazer previsões. Isso é usado em uma variedade de aplicações, como reconhecimento de voz, diagnóstico médico, carros autônomos e muito mais, permitindo que máquinas realizem tarefas complexas com base em dados e aprendizado contínuo.
Um dos campos mais emocionantes das IAs é a visão computacional, que se concentra em ensinar computadores a "ver" e interpretar o mundo visual. Um componente-chave disso é a detecção de objetos em imagens.
As redes neurais convolucionais (CNNs) são o coração da detecção de objetos em imagens com IA. Elas são projetadas para imitar o funcionamento do cérebro humano, onde camadas de neurônios simulam a detecção de características visuais. As CNNs aprendem a reconhecer padrões, como bordas, texturas e formas, à medida que são treinadas em enormes conjuntos de dados de imagens rotuladas.
As CNNs usam camadas de convolução para aplicar filtros a imagens, camadas de pooling para reduzir a dimensionalidade e camadas totalmente conectadas para tomar decisões com base nas características extraídas. Funções de ativação introduzem não linearidade nas previsões da rede.
No contexto do TensorFlow com Python, o TensorFlow é uma biblioteca popular que facilita a criação, treinamento e implantação de modelos de IA, incluindo CNNs. Ele fornece ferramentas para definir modelos, carregar dados, treinar modelos e realizar inferência.
A detecção de objetos com IA é usada em uma ampla gama de aplicações, desde sistemas de vigilância e veículos autônomos até assistentes de reconhecimento de imagem em smartphones. Ela revoluciona a maneira como interagimos com o mundo visual, permitindo que as máquinas compreendam e respondam às informações visuais de maneira inteligente.
Como o tudo funciona em cunjunto?
O projeto envolve o desenvolvimento de um dispositivo inteligente que combina vários componentes, incluindo um laser, um sensor de luminosidade, um Arduino e um ESP32-CAM. A ideia por trás desse dispositivo é capturar imagens de um reator em intervalos de tempo definidos e, ao mesmo tempo, medir a luminosidade ambiente com o sensor de luminosidade.
A parte interessante do projeto está na utilização do laser e do sensor de luminosidade em conjunto. Quando o laser é apontado diretamente para o sensor, o sensor registra um valor máximo de luminosidade. Qualquer valor de luminosidade capturado abaixo desse valor máximo indica uma interferência no trajeto do laser. Isso significa que, se houver espuma ou qualquer objeto que interrompa o feixe do laser, o sensor detectará uma diminuição na luminosidade.
Ao combinar essa informação de luminosidade com as imagens capturadas pelo ESP32-CAM, o sistema pode automaticamente rotular as imagens em duas categorias: aquelas em que não há interferência no laser (luminosidade máxima) e aquelas em que há interferência (luminosidade abaixo do máximo). Esse processo de rotulagem automatizada permite identificar facilmente quando a espuma está presente no reator, economizando tempo e esforço em comparação com uma análise manual das imagens.
Em resumo, o projeto utiliza tecnologias como laser, sensor de luminosidade, Arduino e ESP32-CAM para criar um sistema automatizado de detecção de espuma em um reator, tornando o monitoramento mais eficiente e preciso.
Com este sistema, uma base de treinamento para a inteligência artificial (IA) é preparada automaticamente. A IA foi desenvolvida em Python, usando a biblioteca TensorFlow, e está integrada a uma plataforma web. O dispositivo envia as imagens capturadas e os registros de luminosidade correspondentes para esse servidor.
No servidor web, as imagens são processadas e rotuladas, e esses dados são adicionados ao banco de dados para o treinamento contínuo da IA. Isso significa que a IA pode aprender e se adaptar automaticamente a novos cenários ou situações, o que é especialmente útil quando há mudanças no ambiente, no reator ou outros fatores que podem não estar presentes no banco de dados inicial da IA.
Essa abordagem de treinamento contínuo permite que a IA seja altamente flexível e capaz de lidar com situações em constante evolução. Ela se torna cada vez mais precisa à medida que mais dados são coletados e incorporados ao seu aprendizado, tornando-a uma ferramenta poderosa para a detecção de espuma no reator e a análise de imagens em tempo real.
Além de suas funções principais, a plataforma web desenvolvida em Python usando o framework Django desempenha um papel crucial em várias outras áreas do projeto.
Primeiramente, ela serve como um repositório central para compartilhar informações detalhadas sobre o projeto, incluindo documentação, descrição do hardware, código-fonte da IA e instruções de uso. Isso facilita o compartilhamento de conhecimento e colaboração entre os membros da equipe e outras partes interessadas.
Além disso, a plataforma atua como um ponto de acesso conveniente para monitoramento remoto do reator. Isso significa que os usuários podem acessar e visualizar as imagens e informações de luminosidade em tempo real a partir de qualquer lugar com uma conexão à internet. Isso é especialmente útil para a tomada de decisões em tempo real e para garantir o funcionamento adequado do sistema, mesmo quando não estão fisicamente presentes no local.
Em resumo, a plataforma web, construída com Django, desempenha um papel multifuncional no projeto, servindo como um hub de informações, um repositório de código, e uma interface de monitoramento remoto, tornando o projeto mais acessível, colaborativo e eficaz.