Tecnologia de detecção de paralisia facial baseada em reconhecimento de imagem

Página inicial do autor: Bússola de Programação

 

Sobre o autor: Criador de alta qualidade no campo Java, especialista em blogs CSDN, autor convidado de Nuggets, muitos anos de experiência em design de arquitetos, palestrante residente na Tencent Classroom

Conteúdo principal: Projeto Java, design de graduação, modelo de currículo, materiais didáticos, banco de perguntas para entrevistas, assistência técnica mútua

Favoritos, curtidas, não se perca, é bom seguir o autor

Obtenha o código-fonte no final do artigo 

1. Introdução

1.1 Base e importância da seleção de tópicos

É muito importante julgar corretamente o grau de paralisia facial do paciente e tomar medidas médicas o mais rápido possível, porque a neurite facial costuma perturbar muito a vida e a psicologia do paciente. Em muitos casos, a paralisia facial não é uma doença repentina, mas tem um período de deterioração, porque alguns pacientes apenas ocasionalmente experimentam um desconforto facial anormal no início, mas não o levam a sério. O sistema descrito neste artigo é muito útil para ajudar os pacientes a detectar doenças o mais rápido possível e iniciar o tratamento o quanto antes. médicos diferentes não são os mesmos. Depende do supervisor. Fatores, em um ciclo de tratamento curto, é difícil para o médico julgar com precisão o efeito do tratamento com base nas características faciais do paciente, e é muito provável que cause erros de diagnóstico e atrasar o tratamento. E através do estabelecimento deste sistema, não só é benéfico para os médicos formular planos de tratamento razoáveis, mas também o sistema pode ser usado por pacientes em casa, para que os pacientes também possam obter uma análise intuitiva da condição e possam participar da compreensão de suas própria condição ao longo de todo o processo, em vez de seguir cegamente o médico. , também pode evitar conflitos desnecessários causados ​​por diferenças de julgamentos subjetivos entre pacientes e médicos, e também pode reduzir a carga psicológica dos médicos. Os dados calculados por máquinas de computador podem fornecer base teórica para os médicos julgarem, e aumentar a confiança entre médicos e pacientes.Sentir, reduzir mal-entendidos e comunicar a condição de forma eficiente, formando um círculo virtuoso.

Atualmente, muitos hospitais na China usarão o sistema construído pela tecnologia de reconhecimento facial para julgamento de doenças clínicas. Atualmente, é amplamente utilizado na forma do corpo e hipertrofia anormal de órgãos internos, doenças genéticas e hipercortisolismo. Os estudiosos agora estão estudando a aplicação da tecnologia de reconhecimento facial na síndrome alcoólica fetal ( FAS), encefalomielite miálgica e outras doenças. Esta tecnologia ajuda os médicos a julgar objetivamente as condições da doença e as tendências de desenvolvimento. É simples e eficiente de usar. É um modelo da combinação perfeita da indústria de computadores e todas as esferas da vida.

1.2 Status da pesquisa e tendência de desenvolvimento no país e no exterior                            

O reconhecimento de imagem é alcançado por meio das etapas de aquisição e processamento de imagens de computador para situações específicas, análise e correspondência de alvos, extração de recursos e modelos de classificação de treinamento. Com os esforços de cientistas nacionais e estrangeiros, mudanças rápidas foram alcançadas. As pessoas começaram a aplicar esta tecnologia para a medicina, agricultura, segurança, transporte, campos de veículos. Nesse contexto, muitos métodos médicos avançados são inseparáveis ​​do suporte da tecnologia de reconhecimento de imagem. Para exames físicos diários, como radiografia de tórax e eletrocardiograma, podemos obter informações de diagnóstico preliminar fornecidas por computadores por meio de recuperação de autoatendimento e, em seguida, encontrar o médico consulta, tão grande quanto uma cirurgia minimamente invasiva, tecnologia de tomografia cerebral, análise de patologia cardíaca, reconhecimento de imagem de tuberculose, tecnologia de imagem da retina para pacientes diabéticos [ [ i] ] .

Nos últimos anos, os estudiosos da medicina têm feito muitas ideias e pesquisas para alcançar um sistema de graus de paralisia facial que possa obter o consenso de todos. Os artigos estrangeiros atualmente disponíveis sobre o julgamento do grau de paralisia facial propuseram mais de 20 métodos. Entre eles, os mais utilizados são: Toronto Facial Grading System (TFGS), Facial Nerve Function Index (FNFI), HB System, etc. Na China, em 2005 e 2006, a Associação Chinesa de Medicina Tradicional Chinesa e Ocidental e a Associação Médica Chinesa, respectivamente, elaboraram padrões para a avaliação da paralisia facial, mas não foram amplamente utilizados. Depois disso, o Hospital Huashan desenvolveu um conjunto de sistema de julgamento de grau de paralisia facial (HFGS) por si só. Após o teste, o sistema tem boa eficiência e confiabilidade. Inclui todos os ramos do nervo facial. Cada ramo é dividido em vários itens pequenos, e há testes detalhados O programa foi inicialmente promovido no Hospital Huashan [ [ii] ].

 Combinado com a análise acima, existem atualmente muitos sistemas de classificação de paralisia facial em casa e no exterior, mas cada um tem suas próprias vantagens e desvantagens, portanto, a construção de um sistema de classificação de paralisia facial eficiente, agradável e preciso ainda precisa de pesquisa aprofundada.

1.3 Conteúdo de pesquisa e percurso técnico desta disciplina

Realize a coleta em tempo real das fotos do rosto do usuário pela câmera; conclua o reconhecimento de recursos e a rotulagem dinâmica de várias posições-chave, como a ponta do nariz, os cantos dos olhos, os cantos da boca e o meio da pessoa; calcule a simetria dos pontos de recursos esquerdo e direito em relação à linha central de acordo com as posições de coordenadas dos pontos de recursos e forneça o resultado da avaliação da simetria. Complete o algoritmo e o sistema de software e hardware e realize o relatório de teste de não menos que 50 pessoas.


Dois graus de paralisia facial

2.1 Entendendo a Paralisia Facial

A paralisia do nervo facial (paralisia facial) é um distúrbio comum caracterizado pela disfunção do nervo facial causada por lesão do nervo facial, resultando em disfunção das expressões faciais em pacientes. Os sintomas comuns de pacientes com paralisia facial são boca e olhos tortos. Quando o paciente está gravemente doente, afeta seriamente a vida normal e perde funções como fechar os olhos, levantar as sobrancelhas e sorrir [ [1] ] . Existem muitas causas de paralisia do nervo facial, mas a comunidade médica ainda não identificou a causa específica da doença. Teoria genética, teoria da origem do vírus, teoria da imunologia, teoria da reumatologia, teoria do transporte de sangue, teoria da compressão vascular, etc. são várias teorias patogênicas reconhecidas pelos pesquisadores [ [2] ] . A paralisia facial pode ser dividida em paralisia facial central e periférica de acordo com a localização do início [ [3] ]. O primeiro geralmente não apresenta disfunção de expressão no rosto, mas o canto da boca pode ser inclinado para um lado. O segundo sofrerá de paralisia muscular, o que afeta seriamente a vida. Somente o lado saudável pode exercer força ao fazer uma expressão sorridente A doença prolongada causará danos físicos e psicológicos ao paciente, afetará o sistema de circulação sanguínea de todo o corpo, prejudicará a interação social normal das pessoas e causará gagueira e ambigüidade quando elas não puderem se comunicar com outras pessoas normalmente.

2.2 Métodos existentes para avaliar o grau de paralisia facial

  1. O sistema de julgamento de grau de paralisia facial B foi aprovado pelo Comitê de Doenças do Nervo Facial em 1984. Este sistema divide a paralisia facial em seis categorias, observando o grau de movimento das características faciais e músculos quando o paciente fecha os olhos, sorri, projeta as bochechas , enruga o nariz e levanta as sobrancelhas. níveis, mas os limites entre os níveis são borrados e a usabilidade é baixa. Ainda precisa de melhorias. Yanagihara Facial Paralysis Grading System (YFGS) [ [4] ] é pontuado coletando dez estados de movimento facial do paciente, e cada expressão é dividida em quatro pontos e um total de quarenta pontos, incluindo imobilidade, sobrancelhas franzidas, sorriso, fechar a cantos da boca, olhos ligeiramente fechados, etc. espere. Método de visualização de dados de temperatura para avaliar o grau de paralisia facial [ [5] ] Quando uma pessoa sofre de paralisia facial e perde todos ou parte dos músculos faciais, haverá um estado anormal de transporte do fluxo sanguíneo e a faixa de temperatura dos músculos faciais aparecerá sob luz infravermelha. Os lados esquerdo e direito do rosto são assimétricos, e o efeito de observar visualmente a gravidade da paralisia facial pode ser alcançado desenhando um histograma da temperatura muscular em uma determinada direção. O sistema de classificação facial Huashan (HFGS) no Hospital Huashan detecta 6 ramos do nervo facial, 5 dos quais são compostos por 2-3 pequenos itens de inspeção. E os pesquisadores forneceram uma base de pontuação para cada item da inspeção. Por exemplo, o padrão de pontuação para fechar os olhos é: 5 pontos para a distância entre as pálpebras superior e inferior maior ou igual a 3 mm, 4 pontos entre 2 e 3 mm , e 3 pontos para 0 a 2 mm.

Detecção de três arestas

3.1 Princípio básico da detecção de borda

Normalmente, a borda a ser extraída na produção e na vida é o local onde as alterações nas amostras de imagem incluem mais informações. O objetivo da detecção de extração de borda é encontrar um conjunto de pixels com mudanças de passo ou mudanças de telhado.

Como a borda é a parte onde o nível de cinza do pixel muda mais drasticamente, a maneira mais direta é calcular a derivada neste ponto. Pela informação expressa na Figura 3-1: o valor máximo da primeira derivada é a aresta, e o ponto onde a segunda derivada é zero é a aresta. Para as informações mostradas na Figura 3-2: o ponto onde o valor da derivada de primeira ordem é 0 é o ponto de borda, e o ponto onde a derivada de segunda ordem assume o valor máximo é a borda.

      

Figura 3-1 Mudança de etapa Figura 3-2 Mudança de telhado             

Etapas gerais para detecção de borda:

1. Filtragem, o algoritmo de detecção de borda é baseado principalmente na primeira e segunda derivadas da intensidade da imagem, mas geralmente o resultado é muito sensível ao ruído, então filtros devem ser usados ​​para melhorar o desempenho do detector de borda. Exemplo: Detectores correlacionados com ruído. Os métodos de filtragem comumente usados ​​pelo público incluem principalmente filtragem Gaussiana. Na verdade, uma função Gaussiana discreta é usada para gerar um conjunto de kernels Gaussianos normalizados e, em seguida, cada ponto da matriz de tons de cinza da imagem é ponderado e somado usando a função Gaussiana .

2. Aprimoramento, a maneira de tornar a borda mais óbvia é calcular a intensidade da mudança de pixel de todos os pontos na amostra de imagem em sua área próxima. O algoritmo adota o método de enfatizar certos pontos: os pontos cujo valor de cinza muda drasticamente em sua vizinhança. No uso real, pode ser determinado calculando a quantidade de mudança de gradiente.

3. Detecção, muitas vezes na imagem após a operação da segunda etapa, geralmente há muitos pontos nas proximidades de alguns pontos com uma grande mudança de gradiente, mas em alguns casos esses pontos não são pontos de borda reais, portanto, devemos usar alguns métodos Para excluir esses pontos, a estratégia de limites altos e baixos é frequentemente usada para triagem em aplicações práticas.    

3.2 Operadores comuns de detecção de arestas

3.2.1 Operador diferencial de primeira ordem: Sobel

O operador Sobel é um operador diferencial discreto, que é usado para calcular o gradiente aproximado do nível de cinza da imagem. A função do algoritmo Soble integra a suavização gaussiana e a derivada, também conhecida como operador diferencial de primeira ordem, e o operador derivativo. Obtenha a imagem gradiente da direção X e da direção Y através das direções horizontal e vertical. Para entender especificamente o algoritmo de Sobel, é necessário determinar quais são as bordas: é o local onde o valor do pixel salta, é uma das características mais salientes da imagem e desempenha um papel importante na extração de recursos da imagem, detecção de objetos, reconhecimento de padrões e outros campos. Como obter a borda da imagem: Faça o cálculo diferencial para a área onde a borda deve ser obtida. Quanto maior o Δf(x), maior a mudança do pixel na direção X e mais forte o sinal da borda. Portanto, o método de cálculo do algoritmo de Sobel é mover na direção x e na direção y da imagem, usando um modelo três por três, extrair correspondentemente nove pixels na mesma amostra de tamanho e realizar cálculos de convolução para calcular a borda nesta direção O valor máximo da mudança. No entanto, existem muitas opções para calcular a amplitude.Geralmente, as direções horizontal e vertical, ou outros ângulos são selecionados de acordo com as condições específicas.

O método de detecção do operador Sobel tem um bom efeito em algumas imagens especiais (como muitos gradientes de cinza e ruído). O operador Sobel é impreciso para o posicionamento da borda. Muitas vezes, há mais de um pixel na borda da imagem (como mostrado na Figura 3-3). Quando a precisão da extração de borda não é alta, o operador sobel é um método de detecção de borda relativamente comum.

Figura 3-3 detecção de borda sobel

3.2.2 Operador diferencial de segunda ordem: Laplance

O algoritmo laplaciano é facilmente perturbado pelo ruído, por isso geralmente não é usado para extrair bordas e é usado principalmente para inferir as áreas claras e escuras da imagem. Ele extrai informações buscando derivadas duplas. Em comparação com outros operadores, sua vantagem é que ele não possui direcionalidade. As informações de borda obtidas em diferentes orientações são igualmente importantes; perder qualquer conhecimento de orientação levará à interrupção da borda extraída. , mas este método pode executar operações de compensação na detecção de borda em todas as direções para tornar a imagem mais clara e a borda não é facilmente afetada pela interrupção.

3.2.3 Operador de detecção de borda não diferencial: Algoritmo de Canny

O algoritmo é um meio especial. Ao capturar informações multifacetadas e eficazes de várias imagens, pode reduzir as informações que precisam ser processadas e calculadas durante o processo de operação e acelerar a velocidade do algoritmo. Agora é amplamente utilizado em processos de processamento de imagens em vários setores. Seu inventor explorou em experimentos que não importa a ocasião para capturar a borda, os requisitos são basicamente os mesmos, então ele resumiu algumas diretrizes que podem resumir todos os requisitos de captura de borda. Os critérios gerais para detecção de borda [ [i] ] incluem:

1. O algoritmo deve tentar o seu melhor para extrair arestas, o que significa que nenhuma aresta pode ser perdida ou falsamente detectada.

2. A aresta detectada deve ser posicionada com precisão no centro da aresta verdadeira.

Uma determinada borda na imagem deve ser marcada apenas uma vez e, sempre que possível, o ruído da imagem não deve produzir bordas espúrias.

O algoritmo de Canny é um operador de captura de arestas muito usado hoje em dia. Ele é calculado por meio de experimentos rigorosos de predecessores e pode obter efeitos de captura de arestas muito eficazes e precisos. E porque pode atender aos três critérios acima, e as etapas de cálculo são fáceis e demoradas, é um dos algoritmos populares agora.

O algoritmo de detecção de arestas Canny pode ser dividido nas seguintes etapas:

  1. Usando o filtro gaussiano, consegue-se desfoque e remoção de ruído.

Como queremos minimizar a interferência do ruído na eficiência da extração de arestas, precisamos adotar estratégias para reduzir ou eliminar o ruído de forma a diminuir a probabilidade de erro. Portanto, usamos o filtro gaussiano para cálculo de convolução para obter o efeito de borrar a imagem, reduzindo assim o erro de julgamento do detector de borda devido ao ruído. O kernel do filtro gaussiano é geralmente ímpar * ímpar (mínimo 3). Se a imagem tiver uma área B cujo tamanho é três vezes três e o ponto a ser suavizado for e, após o processamento, o valor do pixel de e será:

A fórmula acima (1) precisa ser mais explorada, como escolher um kernel de convolução adequado, o tamanho do valor afetará diretamente o efeito de detecção do algoritmo astuto. Quanto maior o valor, menor a interferência, mas a precisão da determinação da posição da borda também diminuirá.As estatísticas experimentais mostram que normalmente multiplicar cinco por cinco obterá melhores resultados. As Figuras 3-4 são os diagramas de efeito dos kernels do filtro de 3*3 e 7*7, respectivamente.

 

Figura 3-5 Kernel do filtro gaussiano 3*3 e 7*7

2. As arestas podem ser extraídas de todas as direções da imagem, portanto, o operador Canny usa quatro métodos diferentes para selecionar e detectar arestas em três direções na imagem: horizontal, vertical e diagonal. Retorna o valor do diferencial de primeira ordem nas direções horizontal e vertical, através do qual são calculados o gradiente e a direção de um ponto no gráfico. O operador Sobel foi escolhido para este teste para derivar o gradiente e a orientação.

 3. Aplique uma restrição de resultado não máximo para enfraquecer os efeitos irrelevantes devido à detecção de borda. A restrição não máxima é uma técnica de borda esparsa e funciona no lado "fino". Não é claro e preciso se confiarmos apenas no gradiente da imagem e depois extrairmos o efeito visual da borda de acordo com a alteração do gradiente. Para o critério 3: deve haver apenas uma resposta precisa para uma borda. Esse requisito não pode ser alcançado apenas por meio da segunda etapa. Essa etapa pode efetivamente alterar o valor do gradiente de outros pontos fora do ponto máximo local para 0.

Siga este passo para todos os pontos no gráfico, os passos específicos são:

(1) Tome como referência os dois pixels dos gradientes horizontal esquerdo e horizontal do ponto atualmente calculado.

(2) Assumindo que o ponto que está sendo calculado tem um gradiente de pixels maior que o ponto de referência, então este ponto é classificado como uma categoria de borda e, ao contrário, este ponto é restrito. Em muitos casos, um método mais preciso será adotado: interpolar linearmente os valores de pixel entre dois pontos de referência para obter o objeto de comparação real do benchmark.

(3) Aplique um teste de limite duplo conforme mostrado na Figura 3-5 e 3-6 para extrair arestas confiáveis ​​e ocultas.

        

        

   Figura 3-6 Limite baixo do algoritmo de Canny Figura 3-7 Diagrama de efeito do limite alto de Canny       

4. Depois de restringir os pixels que não são o resultado máximo, os pontos restantes podem apresentar de forma mais realista a borda essencial da imagem. No entanto, alguns pixels de borda devido a alterações de ruído e cor ainda permanecem. Para atingir o objetivo de lidar com essas respostas dispersas, é aconselhável adotar o método de seleção dos limites superior e inferior: supondo que o valor de alteração do pixel de borda seja menor que o limite mais alto e, caso contrário, maior que a interface mínima, registre como Weak Edge, assumindo o valor de alteração do pixel de borda Se for menor que o limite mínimo, então ele será removido pela restrição. A configuração dos limites superior e inferior depende da situação específica da imagem a ser detectada. No entanto, seu limite não tem uma função adaptativa e precisa ser selecionado de acordo com a situação, por isso muitas pessoas fizeram muitas melhorias no algoritmo de Canny [[ ii] ].

5. Depois de restringir as bordas fracas individuais por meio das etapas acima, as bordas claras são o conjunto de pixels identificados como bordas fortes porque são um subconjunto das bordas reais da imagem. No entanto, se as bordas fracas são as bordas que precisamos extrair, resta verificar, porque sua composição pode ser a borda exata ou pode ser causada por alterações de ruído ou alterações de cor. Portanto, para extrair bordas conclusivas, é necessário proibir o aparecimento de bordas devido a ruído e cor. Em geral, arestas devido a ruídos e mudanças de cor não são conectadas a arestas reais. Tomamos o método de observar a borda fraca e seus oito valores de pixel adjacentes ao redor para determinar a conexão da borda, desde que um dos oito pontos seja uma borda forte, ela pode ser classificada na categoria de borda precisa.

3.3 Resumo do Capítulo

Com base na análise acima e nas capturas de tela dos resultados experimentais, pode-se obter que a precisão da extração de borda do algoritmo de sobel não é muito alta e há muitos pixels extras na borda, mas funciona bem em imagens ruidosas e complexas. O operador Laplance funciona mal em imagens com ruído. No entanto, o limite extraído divide muito bem as áreas claras e escuras. Finalmente, embora o operador astuto já seja um bom algoritmo de detecção, ele ainda tem suas deficiências [ [ iii] ] Por exemplo:

(1) Depois de coletar as imagens, precisamos realizar o pré-processamento. Ao realizar a filtragem gaussiana, precisamos considerar a escolha do tamanho do kernel da filtragem gaussiana. A seleção inadequada pode fazer com que a filtragem de ruído e a extração de informações de borda não alcancem bons resultados.

(2) Como o filtro gaussiano selecionado pelo algoritmo astuto não pode remover ruído sal e pimenta e ruído de impulso, muitas arestas são ruído.

(3) A quarta etapa do algoritmo astuto usa limites duplos para determinar bordas precisas. Em diferentes cenários de uso, as imagens coletadas são afetadas por luz, brilho e contraste, e os limites precisam ser constantemente alterados. Não possui um função adaptativa e o processamento é complicado. , sem colagem e aplicação prática, obterá pseudo-bordas [ [iv] ].

Quatro algoritmos de detecção de borda aprimorados

4.1 Ajuste adaptativo

No experimento, descobriu-se que as imagens coletadas em diferentes ocasiões têm brilho e contraste diferentes, o que afetará o efeito da detecção de borda (conforme mostrado na Figura 4.1 intensidade da luz, 4.2 intensidade da luz). Quando a luz é boa, mais linhas será detectado e, quando a luz estiver escura, relativamente poucas linhas serão extraídas. Também pode ser explicado que quando a luz é ruim, os detalhes da imagem são seriamente perdidos, o que levará a erros na extração de bordas e determinação de pontos de recurso.

4.1.1 Ajustar brilho e contraste

Normalmente, um operador de manipulação de imagens é uma função: possui um ou mais parâmetros, ou seja, uma ou mais imagens podem ser passadas para operação e, por fim, uma nova imagem alterada é gerada. Existem muitos tipos de mudanças aqui, e duas são introduzidas aqui: mudanças de ponto, que são usadas para ajustar o contraste e o brilho das imagens, e mudanças de campo, que são usadas para filtrar imagens e outras operações de convolução. A operação comum do primeiro é fazer operações aritméticas em cada pixel da imagem: duas variáveis ​​são comumente usadas e o brilho e o contraste da imagem são alterados, chamados de ganho e deslocamento, respectivamente. Os resultados são mostrados na Figura 4-1.

Figura 4-1 Alterações antes e depois de ajustar o brilho e o contraste

4.1.2 Filtros Espaciais

 Um filtro normal geralmente consiste em um domínio e opera em alterações nos pixels dentro de seu intervalo. O primeiro é porque os objetos de cálculo da operação geral são pixels dentro de um determinado intervalo retangular, e o último é porque a operação de filtragem geralmente executa algumas etapas especiais de transformação nesses pontos na área retangular e usa o valor do pixel transformado como o pixel valor do ponto. O novo resultado gera uma imagem completamente diferente. De um modo geral, seu alias ou abreviação é kernel, template. De acordo com essas etapas de mudança, pode ser reduzido a dois tipos: linear ou não linear. De acordo com o efeito final do filtro em diferentes fotos, geralmente é dividido em: suave ou nítido,

A função geral do primeiro é desfocar a imagem e reduzir a interferência de ruído, enquanto o último é tornar a borda da imagem mais clara e aumentar a posição da mudança de escala de cinza.

O não linear mais comum é o Filtro de Mediana, conforme mostrado na Figura 4-3. Seu processo de operação retira todos os pixels de uma área retangular de um determinado ponto, e o valor da mediana é usado como o novo pixel valor do ponto. O objetivo é geralmente reduzir o pixel e o tamanho de cinza deste ponto e a diferença de ponto entre sua área circundante para atingir o objetivo de reduzir o ruído isolado, para que este método possa efetivamente evitar a interferência de ruído de sal e pimenta. Além disso, ele pode não apenas ser usado para evitar ruído, mas também ajudar a imagem a manter o conteúdo completo da borda em maior extensão, em vez de causar distorção na imagem como o filtro médio. No entanto, ainda tem algumas desvantagens. Por exemplo, é fácil produzir efeitos ruins devido à seleção inadequada do tamanho do retângulo de operação. Quando o retângulo é selecionado relativamente pequeno, os detalhes da imagem de saída são restaurados, mas interferência de ruído desnecessária é também retido. No entanto, supondo que a área retangular seja maior, embora possa efetivamente evitar a interferência de ruído, a imagem de saída será distorcida em vários graus.Além disso, combinando seus princípios, podemos saber que assumindo que o número de ruídos nesta área retangular é maior que o número de pontos que compõem a imagem nesta área, então seu efeito final de operação não será tão satisfatório. Em seguida, você pode expandir o escopo da área retangular para operações de filtragem. Embora esse método possa melhorar um pouco o impacto do ruído excessivo, ele levará à distorção do efeito da imagem. Em circunstâncias normais, de acordo com as conclusões de experiências anteriores, desde que o número de pontos de ruído seja inferior a 0,2 vezes o número de pixels em toda a imagem, o resultado da operação deste filtro ainda é muito aplicável. No entanto, se a qualidade da imagem não for boa o suficiente e houver muito ruído, as operações normais serão inúteis.

Portanto, combinado com a análise acima, ao executar a filtragem de ruído, de acordo com a situação real da área de operação específica, o tamanho do kernel pode ser ajustado a qualquer momento e, em seguida, o ruído pode ser eliminado. A mediana é usada como um resultado da substituição. Este filtro auto-ajustável pode conseguir a eliminação de sal e pimenta e outros ruídos não impulsivos e, como o tamanho da janela pode ser ajustado a qualquer momento, as bordas que são melhor extraídas em termos de coleta de informações não serão particularmente desfocadas ou luz muito turva.

4.1.3 Descrição do Algoritmo de Filtragem Mediana Adaptativa

O filtro autoajustável pode não apenas eliminar o ruído impulsivo com um grande número de ocorrências, mas também tem uma capacidade mais forte de coletar conhecimento sobre os pequenos links da amostra, todas as quais são suas vantagens exclusivas. O que ele tem em comum com os filtros comuns é que deve haver uma área operacional retangular, ou seja, o kernel, e a diferença entre os dois é que seu kernel mudará de acordo com as condições específicas da área para a qual ele desliza durante a operação, exatamente como em 3.2 Quando o filtro Gaussiano é introduzido na seção 3, o efeito de selecionar diferentes tamanhos de kernel é diferente, e o significado é o mesmo aqui.

Uma descrição detalhada desse algoritmo deve usar as seguintes notações:

: O tamanho da escala de cinza do ponto cuja abscissa é x e cuja ordenada é y

: Escala de cinza mínima na faixa operacional

: Escala de cinza mediana dentro da faixa operacional

: A área máxima da faixa de operação

: A faixa operacional de filtragem de ruído, xy é a abscissa e a ordenada da posição central da área retangular

Primeiro, o objetivo da primeira etapa é julgar se o pixel em escala de cinza extraído dentro da faixa de operação selecionada é um ponto de ruído. Supondo que o tamanho correspondente esteja entre e , esse ponto não é um ponto de ruído. Exclua algumas possibilidades raras, como o tamanho de e ou são iguais, então esse ponto é um ponto de ruído, é necessário aumentar a área da área de operação retangular e extrair um ponto que não seja um ponto de ruído no nova faixa de operação. Se você ainda não conseguir encontrar o ponto sem ruído após a operação de duas etapas, imprima o ponto com uma escala de cinza de .

O próximo passo é identificar se o ponto cujas coordenadas são (x, y) é um ponto de ruído, o método de identificação é o mesmo acima, ou seja, substitua por e depois calcule. Se o resultado final da identificação for ruído, substitua este ponto para filtrar, caso contrário, mantenha este ponto, o resultado final é mostrado na Figura 4-5.

Figura 4-2 mais ruído de sal e pimenta Figura 4-3 filtro mediano                    

    Figura 4-4 Filtro gaussiano Figura 4-5 Filtro mediano adaptativo               

4.1.4 Equalização do histograma

  A equalização do histograma, também conhecida como nivelamento do histograma, consiste em organizar todos os pixels da imagem no eixo horizontal de acordo com suas posições e esticá-los de forma não linear, de modo que o número de ocorrências correspondente a qualquer valor de cinza na imagem seja aproximadamente o mesmo, o histograma da imagem de saída final é comparado com antes, e os valores de pixel com ocorrências mais frequentes tornam-se uma série de pontos com mudanças uniformes no número de ocorrências. Conforme mostrado na Figura 4-8.           

O histograma da imagem refere-se ao número de vezes que todos os valores de pixel da imagem estão no nível de cinza (0-255) e o número de vezes que o nível de cinza aparece é acumulado e o histograma é gerado de acordo. O histograma (Figura 4-6) reflete as características de distribuição do nível de cinza da imagem. A Figura 4-7 reflete a relação direta entre o tamanho da escala de cinza e o número de vezes que ela aparece na imagem. O eixo da coordenada x representa o tamanho da escala de cinza e o eixo da coordenada y representa o número de escalas de cinza que aparecem na imagem ( ou seja, o número de pixels). Todo o seu sistema de coordenadas descreve a distribuição dos níveis de cinza da imagem, para que as características da distribuição dos níveis de cinza da imagem possam ser vistas, ou seja, se a maioria dos pixels estiver concentrada no cinza baixo área de nível, a imagem é apresentada.

 

 A Figura 4-8 é o resultado da equalização do histograma da amostra de operação. O resultado original tem picos e depressões óbvios, mas após a modificação, ele muda para uma curva suave sem saliências particularmente óbvias. Seu princípio é fazer a imagem Depois a mudança, o número de ocorrências de diferentes valores de cinza é aproximadamente o mesmo, então o tamanho de cinza de alguns pontos é ampliado, então o efeito visual do realce de contraste aparece na Figura 4-9.

4.1.5 Fusão de Imagens

Com base na comparação acima dos resultados de sobel e canny, pode-se descobrir que ambos têm função de suavização [ [ i] ], mas cada um tem suas próprias características. Em termos de ruído, canny tem um bom efeito de redução de ruído. Embora sobel seja sensível ao ruído, pode ser suprimido. Em termos de extração de borda, o efeito de conexão é melhor visualmente. A borda é precisa e completa, mas a borda é muito fina e não há contraste entre força e fraqueza. A borda extraída por sobel tem direcionalidade clara e tem força e fraqueza, mas não é muito preciso visualmente. Com base nas características dos dois, a imagem pode ser misturada e fundida com as respectivas vantagens e desvantagens dos dois.

 

 

4.2 Resumo do Capítulo

Combinando os vários métodos mencionados acima, podemos ver efeitos visuais intuitivos no sistema: A partir da Figura 4-10 e da Figura 4-11, pode-se confirmar que os detalhes da imagem são mais perdidos quando a luz é escura e quando a luz é brilhante Há muitos detalhes na imagem e muitas informações são muito complicadas, o que levará a um declínio no efeito final de reconhecimento facial. A Figura 4-12 e a Figura 4-13 são os efeitos obtidos pela alteração do limite do parâmetro do algoritmo de Canny. Embora este capítulo não mencione esse método para evitar a repetição do princípio de funcionamento do algoritmo de Canny, mas combinado com a Figura 4- 10 e 4-11 e Figuras 3-5 e 3-6, pode-se ver que ajustando o limite, a descrição dos detalhes da borda pode ser significativamente alterada. Quanto menor o limite, mais detalhes são retidos. Portanto, aumentar o limite quando a luz é brilhante pode eliminar detalhes desnecessários. Quando a luz é escura, reduza o limite e preserve as informações detalhadas o máximo possível para atingir o objetivo adaptativo. Conforme mostrado na Figura 4-13, é óbvio que a perda de borda é grave e o limite deve ser ajustado para 20. Em seguida, a Figura 4-14 é o resultado do ajuste do contraste do brilho e da execução da operação do histograma Figura 4-15. Pode-se descobrir que após a equalização do histograma, algumas linhas relativamente fortes são obviamente espessadas, mas algumas linhas relativamente claras são filtradas. Por causa do princípio de funcionamento do algoritmo, pode-se saber que o algoritmo é realizado modificando diretamente o valor do pixel da imagem para tornar a distribuição do número de ocorrências do valor do pixel uniforme, então alguns pixels com um pequeno número de ocorrências serão enfraquecido e enfraquecido diretamente.Este método pode efetivamente Para forte aprimoramento de borda, o preço é que alguns detalhes serão perdidos, o que tem dois lados, mas essa deficiência pode ser compensada ajustando o limite do algoritmo astuto. Quanto ao ajuste direto do brilho da imagem, pode ser visto na Figura 4-14 que o ajuste cego e direto do brilho e do contraste da própria imagem causará a perda de detalhes, portanto, o impacto do brilho na preservação dos detalhes da imagem não se refere ao brilho da imagem em si, mas pode ser a luz externa causada por outros fatores,

 

 Detecção de cinco rostos

Após os passos acima, obtemos uma imagem de borda da face o mais precisa possível, em seguida, precisamos extrair a parte da face da imagem antes de adquirir os pontos-chave. Os métodos comumente usados ​​atualmente incluem classificadores em cascata baseados em recursos harr, classificadores em cascata baseados em lbp e métodos como o uso da biblioteca dlib.

5.1 Classificadores em cascata para recursos Lbp ou haar

Lbp também é nomeado como o modo binário local, que toma o valor do pixel do ponto médio como referência, e os pixels circundantes são maiores que 1 e menores que 0, e o recurso binário local do pixel central é obtido pela saída em formato binário. O recurso binário local Recursos como pontos, linhas, arestas, cantos e áreas planas da imagem podem ser obtidos. lbp tem invariância de escala e invariância de rotação.

Os recursos Haar têm alta variabilidade interclasse, ou seja, há uma grande diferença entre cada recurso, baixa variabilidade interclasse, os mesmos resultados de detecção de recursos são basicamente consistentes, intensidade local é ruim, invariância de rotação de iluminação espacial e alta eficiência computacional . O recurso Haar detecta a face e k recursos podem ser selecionados na face e depois comparados em n áreas. Entre eles, os recursos haar são cálculos de ponto flutuante e lbp são cálculos inteiros; portanto, a velocidade do primeiro é várias vezes mais lenta, mas os resultados da detecção de dados treinados por haar sob os mesmos dados de amostra são mais precisos que lbp e lbp precisa mais dados de amostra para obter o mesmo efeito.

 

O princípio do classificador em cascata [ [i] ]: o classificador é treinado por meio de um grande número de dados de amostra de imagem positiva e negativa, que possui as características de treinamento lento e detecção rápida. Cada recurso é um classificador fraco e vários classificadores fracos formar uma classificação forte O classificador fraco pode ser construído com uma árvore de decisão (como mostrado na Figura 5-1), e as características extraídas são comparadas com as características do classificador uma a uma para determinar se a característica pertence ao rosto de uma pessoa. De fato, a classificação forte é o primeiro passo para deixar cada classificação fraca votar, e o próximo passo é selecionar o peso de acordo com a possibilidade de erro de julgamento por diferentes classificadores e realizar a operação de soma de acordo com o peso. Ou seja, apenas o resultado do cálculo do valor médio é usado como referência para fazer o julgamento final.

5.2 Detecção de face  DLIB

Embora os modelos de dados haar e lbp que acompanham o opencv sejam frequentemente usados ​​na detecção facial e o efeito seja melhor, esse sistema usa dlib, um pacote de biblioteca c++ muito usado, que contém muitas interfaces de ferramentas sobre aprendizado de máquina. Em termos de precisão, a velocidade é alta e o opencv pode não ser capaz de detectar o rosto, uma vez que a imagem do rosto adquirida pelo opencv não está voltada para a direção certa ao detectar o rosto, mas isso raramente acontece com o dlib. Como esse método adota a estratégia de regressão em cascata, a primeira etapa é coletar um grande número de fotos especialmente processadas de pessoas com o mesmo tamanho e plano de fundo das amostras de dados de treinamento, e a próxima etapa é treinar para obter um modelo de dados. Quando inserimos uma foto, dlib usará o detector em sua biblioteca para chamar o modelo de dados treinado oficialmente para correspondência e retornar os rets de face extraídos e chamar a interface da biblioteca para operar no valor retornado. 68 pontos são marcados e, em seguida, as informações de posição de 68 pontos são armazenadas em um parâmetro, e o usuário pode saber diretamente a posição da coordenada de cada ponto por meio desse parâmetro. 68 pontos de recurso podem ser obtidos por forma (Figura 5.2).

 

Cálculo de seis graus de paralisia facial

6.1 Adquirindo dados de imagem 

Este sistema coleta fotos usando uma câmera de computador, usa o visual c++ 2015 como ferramenta de desenvolvimento e chama a câmera através de videocaptura para capturar imagens de pacientes em tempo real. Deve ser coletado em um ambiente rígido como:

(1) As fotografias coletadas devem ser do rosto inteiro do paciente e ser o mais simétricas possível.

(2) Ao coletar diferentes expressões, ela precisa estar sob a mesma fonte de luz, e a fonte de luz deve ser distribuída de maneira natural e uniforme. Atualmente, o julgamento do grau de paralisia facial depende principalmente do julgamento subjetivo dos médicos. Atualmente, não existe um método de julgamento geralmente aceito, mas de acordo com as características clínicas da paralisia facial, podemos saber que depois de sofrer de paralisia facial Paralisia, as pessoas não podem fechar os olhos completamente, sorrir e sorrir normalmente e tamborilar. Você não pode fechar a boca quando levanta as bochechas e só pode levantar um lado das sobrancelhas quando as levanta. Mesmo quando você Ainda assim, você pode ver que o rosto está distorcido. Com base nessas características, combinadas com os pontos de recursos extraídos na etapa anterior, podemos fazer alguns cálculos. Classificação da paralisia facial.

6.2 Método da distância vertical (14 pontos)

De acordo com as características de expressão externa de pacientes com paralisia facial mencionadas acima, marcando 68 pontos nas características faciais para obter as coordenadas dos pontos de características faciais, primeiro selecionamos sete pares de pontos de características, que podem ser calculados selecionando as coordenadas y de os pontos mais altos dos olhos e sobrancelhas esquerdo e direito, as pessoas normais podem levantar as sobrancelhas com o mesmo intervalo ao mesmo tempo, então a diferença da coordenada y é a mesma, mas a diferença do eixo y entre as sobrancelhas esquerda e direita de pacientes é definitivamente inconsistente, e quanto maior a diferença, mais grave a doença. Para pacientes que não conseguem sorrir nos cantos esquerdo e direito da boca ao mesmo tempo, você pode selecionar os cantos externos esquerdo e direito da boca (esquerdo: 48 direito: 56) e, em seguida, fazer a diferença com o y coordenada do canto interno do olho que não mudará, não importa a expressão que você faça. De acordo com as características da incapacidade do paciente de fechar completamente o olho no lado afetado, selecione os pontos característicos da pálpebra superior e inferior dos olhos esquerdo e direito (esquerda: 38 42 direita: 44 45) para fazer a diferença. Deve ser maior. Quando o paciente faz uma expressão de biquinho e aperto no nariz, devido à fraqueza muscular do lado afetado, a distância entre o lado externo do nariz e o canto interno do olho será maior para comparação. Finalmente, alguns pacientes gravemente enfermos podem ter cantos da boca evidentemente distorcidos em um estado estático. Pode-se ver pelas fotos coletadas da Internet que a maioria dos pacientes graves terá desvio grave dos cantos externos da boca, de modo que os cantos esquerdo e os cantos externos direitos da boca podem ser registrados. Calcule a diferença das coordenadas do eixo y do canto interno do olho que não muda e compare-as. Finalmente, são recolhidos cinco conjuntos de diferenças, e o peso de cada conjunto de diferenças no cálculo dos níveis de participação é selecionado de acordo com a experiência clínica do médico. Este sistema usa o cálculo da média.

Sete conclusões

Com a aceleração do ritmo de vida das pessoas, a vida diária das pessoas é muito menos saudável do que no passado. A paralisia facial tornou-se uma doença relativamente comum. O tempo de início da paralisia facial não tem nada a ver com a idade das pessoas. Não importa crianças ou idosos, haverá casos da doença. Além disso, as pessoas de meia-idade de hoje têm muita pressão em suas vidas, têm assuntos complicados para lidar e estão em um estado relativamente difícil por um longo tempo, portanto, são especialmente propensas a doenças. Especialmente depois que os jovens gostam de se exercitar ou comer demais entre seus pares, é muito fácil causar a doença depois de beber muito álcool e enfrentar o respiradouro ou ar condicionado. Pacientes com paralisia facial não são restritos por idade, podendo adoecer desde crianças até idosos. Hoje em dia, pessoas jovens e de meia-idade estão mais estressadas no trabalho, e maus hábitos de vida, como ficar acordado até tarde, causam excesso de trabalho, o que aumenta a chance de sofrer de paralisia facial. Suar profusamente, soprar ar condicionado e ventiladores depois de beber álcool são os maiores gatilhos para os jovens sofrerem de paralisia facial no verão. Portanto, é necessário desenvolver um sistema que possa detectar de forma conveniente e rápida o nível de paralisia facial.Com o aprofundamento das pesquisas e o feedback dos usuários, o sistema será continuamente aprimorado.

Este tópico adota tecnologia de reconhecimento facial baseada em opencv para estabelecer um sistema de reconhecimento de paralisia facial, com base no grau de assimetria facial de pacientes com paralisia facial. O esquema da tecnologia de reconhecimento facial para diagnóstico médico é o seguinte: tirar fotos de assuntos → definir automaticamente ou semi-automaticamente pontos de marcação → extrair dados de características faciais → comparar e classificar com padrões conhecidos [7]. Espera-se obter uma lista de pontos de características faciais através da biblioteca de funções de face_landmarks e opencv, assumindo que cada face é um dicionário, incluindo nose_bridge, right_eyebrow, right_eye, chine, left_eyebrow, bottom_lip, nose_tip, top_lip, left_eye, cada parte contém vários pontos de recurso de peças (x, y), existem 68 pontos de recurso no total, dos quais pelo menos cinco pontos de recurso são interceptados, e o método baseado no eixo de simetria ou o método do eixo de simetria e diferença de distância [1] é usado para comparar as diferentes características faciais do paciente.O grau de simetria é usado para analisar o grau de paralisia facial. 

Esta pesquisa foi preliminarmente verificada e utilizada para diagnóstico auxiliar de paralisia facial e outras doenças. Ao extrair os dados de localização de pontos de referência específicos no rosto do paciente e analisar as informações dos dados faciais do paciente, é possível obter tendências de desenvolvimento difíceis de identificar a olho nu e fazer julgamentos oportunos sobre a condição. A aplicação da tecnologia de reconhecimento facial no diagnóstico médico pode reduzir os problemas de diagnóstico tardio de doenças e recursos médicos insuficientes. Espera-se que seja usado para triagem precoce de doenças no futuro, melhore a eficácia do diagnóstico clínico e forneça aos profissionais clínicos uma nova perspectiva do diagnóstico médico. 

 

Acho que você gosta

Origin blog.csdn.net/whirlwind526/article/details/130447319
Recomendado
Clasificación