O presente protocolo descreve um novo algoritmo de detecção de objetos salientes de ponta a ponta. Ele aproveita redes neurais profundas para melhorar a precisão da detecção de objetos salientes dentro de contextos ambientais intrincados.
A detecção de objetos salientes emergiu como uma área de interesse crescente dentro do reino da visão computacional. No entanto, os algoritmos predominantes exibem precisão diminuída quando encarregados de detectar objetos salientes em ambientes intrincados e multifacetados. À luz dessa preocupação premente, este artigo apresenta uma rede neural profunda de ponta a ponta que visa detectar objetos salientes dentro de ambientes complexos. O estudo introduz uma rede neural profunda de ponta a ponta que visa detectar objetos salientes dentro de ambientes complexos. Compreendendo dois componentes inter-relacionados, a saber, uma rede convolucional completa multiescala em nível de pixel e uma rede codificadora-decodificadora profunda, a rede proposta integra semântica contextual para produzir contraste visual em mapas de feição multiescala, enquanto emprega recursos de imagem profunda e rasa para melhorar a precisão da identificação do limite do objeto. A integração de um modelo de campo aleatório condicional (CRF) totalmente conectado aumenta ainda mais a coerência espacial e a delimitação de contorno de mapas salientes. O algoritmo proposto é extensivamente avaliado contra 10 algoritmos contemporâneos nas bases de dados SOD e ECSSD. Os resultados da avaliação demonstram que o algoritmo proposto supera outras abordagens em termos de precisão e acurácia, estabelecendo assim sua eficácia na detecção de objetos salientes em ambientes complexos.
A detecção de objetos salientes imita a atenção visual humana, identificando rapidamente as principais regiões da imagem enquanto suprime as informações de fundo. Essa técnica é amplamente empregada como ferramenta de pré-processamento em tarefas como recorte de imagens1, segmentação semântica2 e edição de imagens3. Ele simplifica tarefas como substituição de plano de fundo e extração de primeiro plano, melhorando a eficiência e a precisão da edição. Além disso, auxilia na segmentação semântica, aprimorando a localização do destino. O potencial da detecção de objetos salientes para melhorar a eficiência computacional e conservar a memória ressalta suas perspectivas significativas de pesquisa e aplicação.
Ao longo dos anos, a detecção de objetos salientes evoluiu de algoritmos tradicionais iniciais para a incorporação de algoritmos de aprendizagem profunda. O objetivo desses avanços tem sido diminuir a lacuna entre a detecção de objetos salientes e os mecanismos visuais humanos. Isso levou à adoção de modelos de redes convolucionais profundas para o estudo da detecção de objetos salientes. Borji et al.4 resumiram e generalizaram a maioria dos algoritmos tradicionais clássicos, que se baseiam nas características subjacentes da imagem. Apesar de alguma melhoria na precisão da detecção, a experiência manual e a cognição continuam a representar desafios para a detecção de objetos salientes em ambientes complexos.
O uso de Redes Neurais Convolucionais (CNNs) é predominante no domínio da detecção de objetos salientes. Nesse contexto, redes neurais convolucionais profundas são utilizadas para atualizações de peso por meio da aprendizagem autônoma. Redes neurais convolucionais têm sido empregadas para extrair semântica contextual de imagens por meio do uso de camadas convolucionais e pooling em cascata, possibilitando o aprendizado de características complexas de imagens em níveis mais elevados, que possuem maior capacidade de discriminação e caracterização para detecção de objetos salientes em diferentes ambientes.
Em 2016, as redes neurais totalmente convolucionais5 ganharam força significativa como uma abordagem popular para detecção de objetos salientes, com base na qual os pesquisadores iniciaram a detecção de objetos salientes em nível de pixel. Muitos modelos são geralmente construídos em redes existentes (por exemplo, VGG166, ResNet7), com o objetivo de melhorar a representação da imagem e fortalecer o efeito da detecção de borda.
Liu et al.8 usaram uma rede neural já treinada como estrutura para calcular a imagem globalmente e, em seguida, refinaram o limite do objeto usando uma rede hierárquica. A combinação das duas redes forma a rede final de saliência profunda. Isso foi feito alimentando o mapa saliente previamente adquirido na rede como conhecimento prévio de forma repetitiva. Zhang et al.9 efetivamente fundiram informações semânticas e espaciais de imagens usando redes profundas com transferência bidirecional de informações de camadas rasas para profundas e de camadas profundas para rasas, respectivamente. A detecção de objetos salientes usando um modelo profundo de aprendizagem mútua foi proposta por Wu et al.10. O modelo utiliza informações de primeiro plano e borda dentro de uma rede neural convolucional para facilitar o processo de detecção. Li et al.11 empregaram o algoritmo de buraco de redes neurais para enfrentar o desafio de fixar os campos receptivos de diversas camadas em redes neurais profundas no contexto da detecção de objetos salientes. No entanto, a segmentação de superpixels é usada para aquisição de borda de objetos, aumentando consideravelmente o esforço computacional e o tempo de computação. Ren et al.12 desenvolveram uma rede codificadora-decodificadora em várias escalas para detectar objetos salientes e utilizaram redes neurais convolucionais para combinar efetivamente características profundas e superficiais. Embora o desafio da diluição de fronteiras na detecção de objetos seja resolvido por meio dessa abordagem, a fusão multiescala de informações inevitavelmente resulta em demandas computacionais elevadas.
A revisão da literatura13 propõe que a detecção de saliência, desde métodos tradicionais até métodos de aprendizagem profunda, é resumida, e a evolução da detecção de alvos de saliência desde suas origens até a era do aprendizado profundo pode ser vista com muita clareza. Vários modelos de detecção de objetos salientes baseados em RGB-D com bom desempenho têm sido propostos na literatura14. A literatura acima revisa e classifica os vários tipos de algoritmos para detecção de objetos de saliência e descreve seus cenários de aplicação, os bancos de dados usados e as métricas de avaliação. Este artigo também fornece uma análise qualitativa e quantitativa dos algoritmos propostos em relação às suas bases de dados sugeridas e métricas de avaliação.
Todos os algoritmos acima obtiveram resultados notáveis em bancos de dados públicos, fornecendo uma base para a detecção de objetos salientes em ambientes complexos. Embora tenha havido inúmeras realizações de pesquisa neste campo, tanto nacional quanto internacionalmente, ainda há algumas questões a serem abordadas. (1) Os algoritmos tradicionais de não-aprendizagem profunda tendem a ter baixa precisão devido à sua dependência de características rotuladas manualmente, como cor, textura e frequência, que podem ser facilmente afetadas pela experiência e percepção subjetivas. Consequentemente, a precisão de suas capacidades de detecção de objetos salientes é diminuída. Detectar objetos salientes em ambientes complexos usando algoritmos tradicionais de aprendizagem não profunda é desafiador devido à sua dificuldade em lidar com cenários intrincados. (2) Os métodos convencionais de detecção de objetos salientes apresentam acurácia limitada devido à sua dependência de características rotuladas manualmente, como cor, textura e frequência. Além disso, a detecção em nível de região pode ser computacionalmente cara, muitas vezes ignorando a consistência espacial, e tende a detectar mal os limites dos objetos. Essas questões precisam ser abordadas para aumentar a precisão da detecção de objetos salientes. (3) A detecção de objetos salientes em ambientes intrincados representa um desafio para a maioria dos algoritmos. A maioria dos algoritmos de detecção de objetos salientes enfrenta sérios desafios devido ao ambiente de detecção de objetos salientes cada vez mais complexo com planos de fundo variáveis (cores de fundo e primeiro plano semelhantes, texturas de plano de fundo complexas, etc.), muitas incertezas, como tamanhos de objetos de detecção inconsistentes e a definição pouco clara de bordas de primeiro plano e plano de fundo.
A maioria dos algoritmos atuais exibe baixa precisão na detecção de objetos salientes em ambientes complexos com cores de fundo e primeiro plano semelhantes, texturas de fundo complexas e bordas borradas. Embora os algoritmos atuais de objetos salientes baseados em aprendizado profundo demonstrem maior precisão do que os métodos tradicionais de detecção, os recursos de imagem subjacentes que eles utilizam ainda são insuficientes para caracterizar recursos semânticos de forma eficaz, deixando espaço para melhorias em seu desempenho.
Em resumo, este estudo propõe uma rede neural profunda de ponta a ponta para um algoritmo de detecção de objetos salientes, com o objetivo de aumentar a precisão da detecção de objetos salientes em ambientes complexos, melhorar as bordas do alvo e caracterizar melhor as características semânticas. As contribuições deste trabalho são as seguintes: (1) A primeira rede emprega VGG16 como rede base e modifica suas cinco camadas de agrupamento usando o algoritmo de furo11. A rede neural multi-escala totalmente convolucional em nível de pixel aprende características de imagem de diferentes escalas espaciais, abordando o desafio de campos receptivos estáticos em várias camadas de redes neurais profundas e melhorando a precisão de detecção em áreas significativas de foco no campo. (2) Esforços recentes para melhorar a precisão da detecção de objetos salientes têm se concentrado em aproveitar redes neurais mais profundas, como VGG16, para extrair recursos de profundidade da rede codificadora e recursos superficiais da rede decodificadora. Essa abordagem efetivamente aumenta a precisão de detecção de limites de objetos e melhora as informações semânticas, particularmente em ambientes complexos com planos de fundo variáveis, tamanhos de objeto inconsistentes e limites indistintos entre primeiro plano e plano de fundo. (3) Esforços recentes para melhorar a precisão da detecção de objetos salientes enfatizaram o uso de redes mais profundas, incluindo VGG16, para extrair recursos profundos da rede codificadora e recursos superficiais da rede decodificadora. Essa abordagem demonstrou melhor detecção de limites de objetos e maior informação semântica, especialmente em ambientes complexos com planos de fundo variados, tamanhos de objetos e limites indistintos entre o primeiro plano e o plano de fundo. Adicionalmente, a integração de um modelo de campo aleatório condicional (CRF) totalmente conectado foi implementada para aumentar a coerência espacial e a precisão de contorno de mapas salientes. A eficácia dessa abordagem foi avaliada em conjuntos de dados SOD e ECSSD com antecedentes complexos e mostrou-se estatisticamente significativa.
Trabalhos relacionados
Fu et al.15 propuseram uma abordagem conjunta usando RGB e deep learning para detecção de objetos salientes. Lai et al.16 introduziram um modelo fracamente supervisionado para detecção de objetos salientes, aprendendo a saliência a partir de anotações, utilizando principalmente rótulos de rabisco para economizar tempo de anotação. Embora esses algoritmos tenham apresentado uma fusão de duas redes complementares para detecção de objetos de saliência, eles carecem de uma investigação aprofundada sobre a detecção de saliência em cenários complexos. Wang et al.17 projetaram uma fusão iterativa de dois modos de recursos de redes neurais, tanto bottom-up quanto top-down, otimizando progressivamente os resultados da iteração anterior até a convergência. Zhang et al.18 efetivamente fundiram informações semânticas e espaciais de imagens usando redes profundas com transferência bidirecional de informações de camadas rasas para profundas e de camadas profundas para rasas, respectivamente. A detecção de objetos salientes utilizando um modelo profundo de aprendizagem mútua foi proposta por Wu et al.19. O modelo utiliza informações de primeiro plano e borda dentro de uma rede neural convolucional para facilitar o processo de detecção. Esses modelos de detecção de objetos salientes baseados em redes neurais profundas alcançaram um desempenho notável em conjuntos de dados disponíveis publicamente, permitindo a detecção de objetos salientes em cenas naturais complexas. No entanto, o desenho de modelos ainda mais superiores continua sendo um objetivo importante neste campo de pesquisa e serve como motivação primária para este estudo.
Quadro geral
A representação esquemática do modelo proposto, como mostrado na Figura 1, é derivada principalmente da arquitetura VGG16, incorporando uma rede neural multiescala totalmente convolucional (DCL) em nível de pixel e uma rede codificadora-decodificadora profunda (DEDN). O modelo elimina todo o pool final e camadas totalmente conectadas de VGG16 enquanto acomoda as dimensões da imagem de entrada de W × H. O mecanismo operacional envolve o processamento inicial da imagem de entrada via DCL, facilitando a extração de feições profundas, enquanto feições rasas são obtidas a partir das redes DEDN. A fusão dessas características é posteriormente submetida a um modelo de campo aleatório condicional (CRF) totalmente conectado, aumentando a coerência espacial e a precisão de contorno dos mapas de saliência produzidos.
Para verificar a eficácia do modelo, ele foi submetido a testes e validação em conjuntos de dados SOD20 e ECSSD21 com intrincados backgrounds. Depois que a imagem de entrada passa pelo DCL, diferentes mapas de características de escala com vários campos receptivos são obtidos, e semânticas contextuais são combinadas para produzir um mapa saliente W × H com coerência interdimensional. A DCL emprega um par de camadas convolucionais com núcleos 7 x 7 para substituir a camada de agrupamento final da rede VGG16 original, aumentando a preservação da informação espacial nos mapas de feição. Isso, combinado com a semântica contextual, produz um mapa saliente W × H com coerência interdimensional. Da mesma forma, a Deep Encoder-Decoder Network (DEDN) utiliza camadas convolucionais com 3 x 3 núcleos nos decodificadores e uma única camada convolucional após o último módulo de decodificação. Aproveitando características profundas e rasas da imagem, é possível gerar um mapa saliente com uma dimensão espacial de W × H, abordando o desafio dos limites indistintos do objeto. O estudo descreve uma técnica pioneira para detecção de objetos salientes que amalgama os modelos DCL e DEDN em uma rede unificada. Os pesos dessas duas redes profundas são aprendidos através de um processo de treinamento, e os mapas de saliência resultantes são fundidos e, em seguida, refinados usando um Campo Aleatório Condicional (CRF) totalmente conectado. O objetivo primário desse refinamento é melhorar a consistência espacial e a localização de contornos.
Rede neural multiescala em nível de pixel totalmente convolucional
A arquitetura VGG16 originalmente consistia de cinco camadas de pooling, cada uma com um passo de 2. Cada camada de pool compacta o tamanho da imagem para aumentar o número de canais, obtendo mais informações contextuais. O modelo DCL é inspirado naliteratura13 e é um aprimoramento do framework do VGG16. Neste artigo, um modelo DCL de nível de pixel11 é usado, como mostrado na Figura 2 dentro da arquitetura do VGG16, uma rede neural convolucional profunda. As quatro camadas iniciais de pool máximo são interconectadas com três núcleos. O primeiro kernel é 3 × 3 × 128; o segundo núcleo é 1 × 1 × 128; e o terceiro núcleo é 1 × 1 × 1. Para obter um tamanho uniforme de mapas de feição após as quatro camadas iniciais de agrupamento, conectadas a três núcleos, com cada tamanho sendo equivalente a um oitavo da imagem original, o tamanho do passo do primeiro kernel conectado a essas quatro maiores camadas de agrupamento é definido como 4, 2, 1 e 1, respectivamente.
Para preservar o campo receptivo original nos diferentes núcleos, o “algoritmo de buraco” proposto na literatura11 é usado para estender o tamanho do kernel adicionando zeros, mantendo assim a integridade do núcleo. Esses quatro mapas de recursos são conectados ao primeiro kernel com diferentes tamanhos de passos. Consequentemente, os mapas de feição produzidos na etapa final possuem dimensões idênticas. Os quatro mapas de feições constituem um conjunto de feições multiescalares obtidas a partir de escalas distintas, cada uma representando tamanhos variados de campos receptivos. Os mapas de feição resultantes obtidos das quatro camadas intermediárias são concatenados com o mapa de feição final derivado de VGG16, gerando assim uma saída de 5 canais. A saída subsequente é subsequentemente submetida a um kernel 1 × 1 × 1 com a função de ativação sigmoide, produzindo finalmente o mapa saliente (com uma resolução de um oitavo da imagem original). A imagem é aumentada e ampliada usando interpolação bilinear, garantindo que a imagem resultante, referida como o mapa de saliência, mantenha uma resolução idêntica à imagem inicial.
Rede codificadora-decodificadora profunda
Da mesma forma, a rede VGG16 é empregada como a rede de backbone. VGG16 é caracterizado por um baixo número de canais de mapa de feição rasa, mas alta resolução e um alto número de canais de recursos profundos, mas baixa resolução. O agrupamento de camadas e a redução da amostragem aumentam a velocidade computacional da rede profunda ao custo de reduzir a resolução do mapa de feições. Para resolver esse problema, seguindo a análise na literatura14, a rede codificadora é usada para modificar a conectividade total da última camada de pool no VGG16 original. Esta modificação envolve substituí-lo por duas camadas convolucionais com 7 × 7 núcleos (núcleos convolucionais maiores aumentam o campo receptivo). Ambos os núcleos de convolução são equipados com uma operação de normalização (BN) e uma unidade linear modificada (ReLU). Esse ajuste resulta em um mapa de recursos de saída do codificador que preserva melhor as informações de espaço da imagem.
Embora o codificador melhore a semântica de imagem de alto nível para a localização global de objetos salientes, o problema de borramento de limites de seu objeto saliente não é efetivamente melhorado. Para resolver esse problema, recursos profundos são fundidos com recursos superficiais, inspirados no trabalho de detecção de borda12, propondo o modelo de rede codificador-decodificador (DEDN), como mostrado na Figura 3. A arquitetura do codificador compreende três núcleos interconectados com os quatro iniciais, enquanto o decodificador melhora sistematicamente a resolução do mapa de feição usando os valores máximos recuperados das camadas máximas de pooling.
Nesta metodologia inovadora para detecção de objetos salientes, durante a fase decodificadora, uma camada convolucional com um kernel 3 × 3 é utilizada em combinação com uma camada de normalização em lote e uma unidade linear adaptada. Na conclusão do módulo de decodificação final dentro da arquitetura do decodificador, uma camada convolucional de canal solitário é empregada para obter um mapa saliente de dimensões espaciais W × H. O mapa saliente é gerado através de uma fusão colaborativa do modelo codificador-decodificador, produzindo o resultado, e a fusão complementar dos dois, ou seja, a fusão complementar de informações profundas e informações superficiais. Isso não apenas alcança a localização precisa do objeto saliente e aumenta o campo receptivo, mas também preserva efetivamente as informações de detalhes da imagem e fortalece o limite do objeto saliente.
Mecanismo de integração
A arquitetura do codificador compreende três kernels, que estão associados às quatro camadas iniciais de pool máximo do modelo VGG16. Em contraste, o decodificador é intencionalmente formulado para aumentar progressivamente a resolução de mapas de feição adquiridos a partir das camadas de amostragem ascendente, aproveitando os valores máximos obtidos das camadas de agrupamento correspondentes. Uma camada convolucional utilizando um kernel 3 x 3, uma camada de normalização em lote e uma unidade linear modificada são então utilizadas no decodificador, seguidas por uma camada convolucional de canal único para gerar um mapa saliente de dimensões W × H. Os pesos das duas redes profundas são aprendidos através de ciclos de treinamento alternados. Os parâmetros da primeira rede foram mantidos fixos, enquanto os parâmetros da segunda rede foram submetidos a treinamento por um total de cinquenta ciclos. Durante o processo, os pesos do mapa de saliência (S1 e S2) usado para fusão são atualizados através de um gradiente aleatório. A função de perda11 é:
(1)
Na expressão dada, o símbolo G representa o valor rotulado manualmente, enquanto W significa o conjunto completo de parâmetros de rede. O peso βi serve como um fator de equilíbrio para regular a proporção de pixels salientes versus pixels não salientes no processo de computação.
A imagem I é caracterizada por três parâmetros: |I|, |I|– e |I|+, que representam o número total de pixels, a contagem de pixels não salientes e a contagem de pixels salientes, respectivamente.
Uma vez que os mapas salientes obtidos das duas redes acima não consideram a coerência dos pixels vizinhos, um modelo de refinamento de saliência em nível de pixel totalmente conectado CRF15 é usado para melhorar a coerência espacial. A equação de energia11 é a seguinte, resolvendo o problema de marcação binária de pixels.
(2)
onde L denota o rótulo binário (valor saliente ou valor não saliente) atribuído a todos os pixels. A variável P(li) denota a probabilidade de um determinado pixel xireceber um rótulo específico li, indicando a probabilidade de o pixel xiser saliência. No início, P(1) = Sie P(0) = 1 – Si, onde Sidenota o valor de saliência no pixel xidentro do mapa de saliência fundido S. θi,j(li,l j) é o potencial pareado, definido da seguinte forma.
(3)
Entre eles, se li≠ lj, então μ(li,l j) = 1, caso contrário μ(li,l j) = 0. O cálculo de θi,j envolve a utilização de dois núcleos, onde o kernel inicial é dependente tanto da posição do pixel P quanto da intensidade do pixel I. Isso resulta na proximidade de pixels com cores semelhantes exibindo valores de saliência comparáveis. Os dois parâmetros, σα e σβ, regulam o quanto a similaridade de cores e a proximidade espacial influenciam o resultado. O objetivo do segundo núcleo é eliminar pequenas regiões isoladas. A minimização da energia é obtida através da filtragem de alta dimensão, que agiliza o campo médio da distribuição de Campo Aleatório Condicional (CRF). Após a computação, o mapa saliente denotado como Scrf exibe maior coerência espacial e contorno em relação aos objetos salientes detectados.
Configurações experimentais
Neste artigo, uma rede profunda para detecção de alvos salientes baseada na rede neural VGG16 é construída usando Python. O modelo proposto é comparado com outros métodos usando os conjuntos de dados SOD20 e ECSSD21 . O banco de dados de imagens SOD é conhecido por seus planos de fundo complexos e confusos, semelhança de cores entre primeiro plano e plano de fundo e tamanhos de objetos pequenos. A cada imagem neste conjunto de dados é atribuído um valor verdadeiro rotulado manualmente para avaliação de desempenho quantitativa e qualitativa. Por outro lado, o conjunto de dados ECSSD consiste principalmente de imagens provenientes da Internet, apresentando cenas naturais mais complexas e realistas com baixo contraste entre o fundo da imagem e objetos salientes.
Os índices de avaliação utilizados para comparar o modelo neste trabalho incluem a curva de Precisão-Recordação, Fβe EMAE, comumente utilizados. Para avaliar quantitativamente o mapa de saliência predito, a curva de Precision-Recall (P-R)22 é empregada alterando o limiar de 0 para 255 para binarizar o mapa de saliência. Fβé uma métrica de avaliação abrangente, calculada com as equações de precisão e recordação derivadas do mapa saliente binarizado e um mapa de valores verdadeiros.
(4)
onde β é o parâmetro de peso para ajustar a precisão e a recall, definindo β2 = 0,3. O cálculo de EMAEé equivalente ao cálculo do erro absoluto médio entre o mapa de saliência resultante e o mapa verdade terrestre, conforme definido pela expressão matemática subsequente:
(5)
Deixe Ts(u,v) denotar o valor extraído dos pixels do mapa saliente (u,v) e deixe TG(u,v) denotar o valor correspondente dos pixels verdadeiros do mapa (u,v).
O artigo apresenta uma rede neural profunda de ponta a ponta projetada especificamente para a detecção de objetos salientes em ambientes complexos. A rede é composta por dois componentes interconectados: uma rede multiescala totalmente convolucional (DCL) em nível de pixel e uma rede codificadora-decodificadora profunda (DEDN). Esses componentes trabalham sinergicamente, incorporando semântica contextual para gerar contrastes visuais dentro de mapas de feição em multiescala. Além disso, eles aproveitam recursos d…
The authors have nothing to disclose.
Este trabalho é apoiado pelo 2024 Henan Provincial Higher Education Institutions Key Scientific Research Project Funding Program Program (Número do Projeto:24A520053). Este estudo também é apoiado pela Criação Especializada e Integração Característica Demonstração Construção Curso na Província de Henan.
Matlab | MathWorks | Matlab R2016a | MATLAB's programming interface provides development tools for improving code quality maintainability and maximizing performance. It provides tools for building applications using custom graphical interfaces. It provides tools for combining MATLAB-based algorithms with external applications and languages |
Processor | Intel | 11th Gen Intel(R) Core (TM) i5-1135G7 @ 2.40GHz | 64-bit Win11 processor |
Pycharm | JetBrains | PyCharm 3.0 | PyCharm is a Python IDE (Integrated Development Environment) a list of required python: modulesmatplotlib skimage torch os time pydensecrf opencv glob PIL torchvision numpy tkinter |
PyTorch | PyTorch 1.4 | PyTorch is an open source Python machine learning library , based on Torch , used for natural language processing and other applications.PyTorch can be viewed both as the addition of GPU support numpy , but also can be viewed as a powerful deep neural network with automatic derivatives . |