Ultralytics YOLO27:
Licenciar o YOLO
IA visual

O que é R-CNN? Uma visão geral rápida

Saiba mais sobre o RCNN e seu impacto na detecção de objetos. Vamos abordar seus principais componentes, aplicações e papel no avanço de técnicas como Fast RCNN e YOLO.

ABAbirami Vina9 min de leitura
Como o R-CNN realiza a detecção de objetos baseada em regiões

A detecção de objetos é uma tarefa de visão computacional que reconhece e localiza objetos em imagens ou vídeos para aplicações como condução autônoma, vigilância e exames de imagem médica. Métodos anteriores de detecção de objetos, como o detector Viola-Jones e o Histograma de Gradientes Orientados (HOG) com Máquinas de Vetores de Suporte (SVM), dependiam de características projetadas manualmente e janelas deslizantes. Esses métodos frequentemente tinham dificuldade para detectar objetos com precisão em cenas complexas com vários objetos de diferentes formas e tamanhos.

As Redes Neurais Convolucionais Baseadas em Regiões (R-CNN) mudaram a forma como abordamos a detecção de objetos. Esse é um marco importante na história da visão computacional. Para entender como surgiram modelos como o Ultralytics YOLOv8, primeiro precisamos entender modelos como o R-CNN.

Criada por Ross Girshick e sua equipe, a arquitetura do modelo R-CNN gera propostas de regiões, extrai características com uma Rede Neural Convolucional (CNN) pré-treinada, classifica objetos e refina as caixas delimitadoras. Embora isso possa parecer complexo, ao final deste artigo você terá uma compreensão clara de como o R-CNN funciona e por que ele é tão importante. Vamos conferir!

Como funciona o R-CNN?#

O processo de detecção de objetos do modelo R-CNN envolve três etapas principais: gerar propostas de regiões, extrair características e classificar objetos enquanto refina suas caixas delimitadoras. Vamos analisar cada etapa.

Diagrama de funcionamento do R-CNN

Fig. 1. Como funciona o R-CNN.

Propostas de regiões: a base do R-CNN#

Na primeira etapa, o modelo R-CNN examina a imagem para criar inúmeras propostas de regiões. As propostas de regiões são áreas potenciais que podem conter objetos. Métodos como Selective Search analisam vários aspectos da imagem, como cor, textura e forma, dividindo-a em partes diferentes. O Selective Search começa dividindo a imagem em partes menores e, em seguida, mescla as partes semelhantes para formar áreas de interesse maiores. Esse processo continua até gerar cerca de 2.000 propostas de regiões.

Diagrama do funcionamento do Selective Search

Fig. 2. Como funciona o Selective Search.

Essas propostas de regiões ajudam a identificar todos os locais possíveis onde um objeto pode estar. Nas etapas seguintes, o modelo pode processar com eficiência as áreas mais relevantes, concentrando-se nessas áreas específicas em vez de analisar a imagem inteira. O uso de propostas de regiões equilibra a abrangência e a eficiência computacional.

Extração de características da imagem: capturando os detalhes#

A próxima etapa do processo de detecção de objetos do modelo R-CNN é extrair características das propostas de regiões. Cada proposta de região é redimensionada para um tamanho uniforme esperado pela CNN (por exemplo, 224x224 pixels). O redimensionamento ajuda a CNN a processar cada proposta com eficiência. Antes da deformação, o tamanho de cada proposta de região é ligeiramente ampliado para incluir 16 pixels de contexto adicional ao redor da região, fornecendo mais informações do entorno para uma extração de características melhor.

Depois de redimensionadas, essas propostas de regiões são inseridas em uma CNN como a AlexNet, que geralmente é pré-treinada em um grande conjunto de dados como o ImageNet. A CNN processa cada região para extrair vetores de características de alta dimensão que capturam detalhes importantes, como bordas, texturas e padrões. Esses vetores de características condensam as informações essenciais das regiões. Eles transformam os dados brutos da imagem em um formato que o modelo pode usar em análises posteriores. A classificação e localização precisas dos objetos nas etapas seguintes dependem dessa conversão fundamental de informações visuais em dados significativos.

Extração de características de uma proposta de região usando AlexNet

Fig. 3. Extração de características de uma proposta de região usando AlexNet.

Classificação de objetos: identificando objetos detectados#

A terceira etapa consiste em classificar os objetos nessas regiões. Isso significa determinar a categoria ou classe de cada objeto encontrado nas propostas. Em seguida, os vetores de características extraídos são enviados a um classificador de aprendizado de máquina.

No R-CNN, Máquinas de Vetores de Suporte (SVMs) são comumente usadas para essa finalidade. Cada SVM é treinada para reconhecer uma classe específica de objeto, analisando os vetores de características e decidindo se uma determinada região contém uma instância dessa classe. Em essência, para cada categoria de objeto há um classificador dedicado que verifica cada proposta de região em busca daquele objeto específico.

Durante o treinamento, os classificadores recebem dados rotulados com exemplos positivos e negativos:

  • Exemplos positivos: regiões que contêm o objeto-alvo.
  • Exemplos negativos: regiões sem o objeto.

Os classificadores aprendem a distinguir esses exemplos. A regressão das caixas delimitadoras refina ainda mais a posição e o tamanho dos objetos detectados, ajustando as caixas delimitadoras propostas inicialmente para corresponder melhor aos limites reais do objeto. O modelo R-CNN pode identificar e localizar objetos com precisão combinando a classificação e a regressão das caixas delimitadoras.

Exemplo de regressão de caixa delimitadora

Fig. 4. Exemplo de regressão de caixa delimitadora. (fonte: towardsdatascience.com)

Reunindo tudo: refinando as detecções com NMS#

Após as etapas de classificação e regressão das caixas delimitadoras, o modelo costuma gerar várias caixas delimitadoras sobrepostas para o mesmo objeto. A Supressão Não Máxima (NMS) é aplicada para refinar essas detecções, mantendo as caixas mais precisas. O modelo elimina caixas redundantes e sobrepostas aplicando NMS e mantém apenas as detecções com maior confiança.

A NMS funciona avaliando as pontuações de confiança (que indicam a probabilidade de um objeto detectado estar realmente presente) de todas as caixas delimitadoras e suprimindo aquelas que se sobrepõem significativamente a caixas com pontuações mais altas.

Exemplo de supressão não máxima

Fig. 5. Exemplo de supressão não máxima. (fonte: towardsdatascience.com)

Veja as etapas da NMS:

  • Ordenação: As caixas delimitadoras são ordenadas de forma decrescente pelas pontuações de confiança.
  • Seleção: A caixa com a pontuação mais alta é selecionada, e todas as caixas que se sobrepõem significativamente a ela (com base na Interseção sobre União, IoU) são removidas.
  • Iteração: Esse processo se repete para a próxima caixa com a pontuação mais alta e continua até que todas as caixas tenham sido processadas.

Em resumo, o modelo R-CNN detecta objetos gerando propostas de regiões, extraindo características com uma CNN, classificando os objetos e refinando suas posições com a regressão das caixas delimitadoras, além de usar a Supressão Não Máxima (NMS) para manter apenas as detecções mais precisas.

R-CNN é um marco na detecção de objetos#

O R-CNN é um modelo marcante na história da detecção de objetos porque introduziu uma nova abordagem que melhorou muito a precisão e o desempenho. Antes do R-CNN, os modelos de detecção de objetos tinham dificuldade para equilibrar velocidade e precisão. O método do R-CNN, que gera propostas de regiões e usa CNNs para extrair características, permite localizar e identificar objetos com precisão nas imagens.

O R-CNN abriu caminho para modelos como Fast R-CNN, Faster R-CNN e Mask R-CNN, que melhoraram ainda mais a eficiência e a precisão. Ao combinar aprendizado profundo com análise baseada em regiões, o R-CNN estabeleceu um novo padrão na área e abriu possibilidades para diversas aplicações do mundo real.

Transformando a geração de imagens médicas com R-CNN#

Um caso de uso interessante do R-CNN é em exames de imagem médica. Modelos R-CNN têm sido usados para detectar e classificar diferentes tipos de tumores, como tumores cerebrais, em exames médicos como ressonâncias magnéticas e tomografias computadorizadas. O uso do modelo R-CNN em exames de imagem médica melhora a precisão do diagnóstico e ajuda os radiologistas a identificar tumores malignos em estágio inicial. A capacidade do R-CNN de detectar até mesmo tumores pequenos e em estágio inicial pode fazer uma diferença significativa no tratamento e no prognóstico de doenças como o câncer.

Detecção de tumores cerebrais usando R-CNN

Fig. 6. Detecção de tumores cerebrais usando R-CNN.

O modelo R-CNN pode ser aplicado a outras tarefas de exames de imagem médica além da detecção de tumores. Por exemplo, pode identificar fraturas, detectar doenças da retina em exames oftalmológicos e analisar imagens dos pulmões em busca de doenças como pneumonia e COVID-19. Seja qual for o problema médico, a detecção precoce pode levar a melhores resultados para os pacientes. Ao aplicar a precisão do R-CNN na identificação e localização de anomalias, os profissionais de saúde podem melhorar a confiabilidade e a velocidade dos diagnósticos médicos. Com a detecção de objetos agilizando o processo de diagnóstico, os pacientes podem se beneficiar de planos de tratamento oportunos e precisos.

Limitações do R-CNN e seus sucessores#

Apesar de impressionante, o R-CNN tem algumas desvantagens, como alta complexidade computacional e tempos de inferência lentos. Essas desvantagens tornam o modelo R-CNN inadequado para aplicações em tempo real. Separar as propostas de regiões e a classificação em etapas distintas pode resultar em um desempenho menos eficiente.

Ao longo dos anos, surgiram vários modelos de detecção de objetos que resolveram esses problemas. O Fast R-CNN combina propostas de regiões e extração de características pela CNN em uma única etapa, acelerando o processo. O Faster R-CNN introduz uma Rede de Propostas de Regiões (RPN) para agilizar a geração de propostas, enquanto o Mask R-CNN adiciona segmentação em nível de pixel para detecções mais detalhadas.

Comparação entre R-CNN, Fast R-CNN, Faster R-CNN e Mask R-CNN

Fig. 7. Comparação entre R-CNN, Fast R-CNN, Faster R-CNN e Mask R-CNN.

Mais ou menos na mesma época do Faster R-CNN, a série YOLO (Você só olha uma vez) começou a avançar a detecção de objetos em tempo real. Os modelos YOLO preveem caixas delimitadoras e probabilidades de classe em uma única passagem pela rede. Por exemplo, o Ultralytics YOLOv8 oferece maior precisão e velocidade, além de recursos avançados para muitas tarefas de visão computacional.

Principais conclusões#

O R-CNN revolucionou a visão computacional, mostrando como o aprendizado profundo pode transformar a detecção de objetos. Seu sucesso inspirou muitas novas ideias na área. Embora modelos mais recentes, como Faster R-CNN e YOLO, tenham surgido para corrigir as falhas do R-CNN, sua contribuição é um marco enorme que merece ser lembrado.

À medida que a pesquisa avança, veremos modelos de detecção de objetos ainda melhores e mais rápidos. Esses avanços não só melhorarão a forma como as máquinas entendem o mundo, mas também impulsionarão o progresso em muitos setores. O futuro da detecção de objetos parece promissor!

Quer continuar explorando a IA? Faça parte da comunidade da Ultralytics! Explore nosso repositório no GitHub para conhecer nossas mais recentes inovações em inteligência artificial. Confira nossas soluções de IA para diversos setores, como agricultura e manufatura. Junte-se a nós para aprender e avançar!

Explore solutions

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens aéreas e de drones em informações em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com o Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão ao monitoramento aéreo com modelos Ultralytics YOLO. Impulsiona drones, fluxos de trabalho aeroespaciais, conservação ambiental e setores geoespaciais com soluções de visão computacional.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais
Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens aéreas e de drones em informações em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com o Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão ao monitoramento aéreo com modelos Ultralytics YOLO. Impulsiona drones, fluxos de trabalho aeroespaciais, conservação ambiental e setores geoespaciais com soluções de visão computacional.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais
Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens aéreas e de drones em informações em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com o Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão ao monitoramento aéreo com modelos Ultralytics YOLO. Impulsiona drones, fluxos de trabalho aeroespaciais, conservação ambiental e setores geoespaciais com soluções de visão computacional.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina