Volta a ativa

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, Scilab, engenharia, ica, processamento de sinais, processamento digital de imagens, software livre
Eu irei fazer uma viagem hoje e estarei retornando na segunda-feira, de modo que assim que voltar irei iniciar o tutorial do Scilab.Caso alguém tenha alguma sugestão de temas para os exemplos de código, fique a vontade para pedir (processamento de sinais e/ou imagens, inteligência computacional, automação e controle, etc....).Enfim, eu acho que com as sugestões dos leitores, que devem ser os mais interessados no blog, o tutorial ficará muito bom.

Manipulação de iluminação pelo histograma

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, SIRENE, SIVP, Scilab, Simulação numérica, equalização de histograma, estatística, linux, processamento digital de imagens, software livre
Eu fiz um post sobre segmentação em que eu citei uma equalização de histograma, mas como atualmente estou fazendo alguns testes com realce de imagens e usando técnicas que envolvem o histograma das imagens, vou apresentar algo aqui.Para começar, tudo o que for apresentado aqui foi desenvolvido no Scilab com a biblioteca SIVP (informações podem ser encontradas facilmente nas tags do blog).Pois bem, para começar vamos manipular apenas um offset do histograma que consiste em acrescentar ou subtrair um valor constante em todos os pixels da imagem.Para ilustrar, vamos usar a imagem a seguir.Segue o histograma desta imagem.Obs.: Lembrando que o histograma é a incidência de pixels em cada nível (intensidade).Observando este histograma, percebe-se que ele está muito consentrado nos valores altos, o que se reflete em uma imagem muito clara.Vamos então reduzir 50 de cada pixel.Obtemos a imagem (original | nova).E o novo histograma.Neste caso, já percebe-se alguma diferença na imagem.Para fechar o post, faço 2 ...

Técnicas clássicas de segmentação de pele humana

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, Mestrado, SIRENE, SIVP, Scilab, limiarização, linux, processamento digital de imagens, segmentação, software livre
Enfim algum tempo livre... Vou aproveitar e fazer um post sobre uma das etapas do meu mestrado a segmentação da pele.Vou apenas apresentar 3 formas de segmentação de pele e alguns resultados obtidos.A imagem de teste é apresentada a seguir.Espaço de cores RGB:Um pixel pertence a pele se satisfizer as condições abaixo:R > 95G > 40B > 20max {R, G, B} − min {R, G, B} > 15|R − G| > 15R>GR>BResultado da segmentação:Espaço de cores YCbCr:Um pixel pertence a pele se satisfizer as condições abaixo:77 ≤ Cb ≤ 127133 ≤ Cr ≤ 173Resultado da segmentação:Espaço de cores HSV:Um pixel pertence a pele se satisfizer as condições abaixo:0° ≤ H ≤ 50°0, 23 ≤ S ≤ 0, 68Resultado da segmentação:Antes que alguém saia por aí dizendo que um método é melhor que outro, eu digo ...

Vogais em Libras

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, Mestrado, SIVP, Scilab, biometria, computação, engenharia, linux, processamento digital de imagens, segmentação, software livre, threshold, visão computacional
Eu fiz mais uns vídeos para a minha qualificação de mestrado.Como eu estou com problemas com o Scilab (que decidiu não abrir mais arquivos de vídeo) eu extrai os frames de cada vídeo (com o mplayer), basta dar o comando:>> mplayer -vo jpeg nome_do_arquivo.aviAtualmente, estou avaliando algoritmos de segmentação da pele, testei alguns de limiarização e outros baseados em clustering. Nenhum deles funciona bem em todas as imagens que tenho, caso alguém se disponha a ajudar, ficarei muito grato.Seguem algumas imagens que gerei.Letra 'A'Letra 'E'Letra 'I'Letra 'O'Letra 'U'

Converter todas as imagens de um diretório

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, armazenamento, computação, linux, processamento digital de imagens, programação gráfica, software livre
Um post bem curto, para variar um pouco.Vi este link e achei interessante.Tudo consiste neste script (para rodar no shell do Linux):>> for f in *.jpg;>> do convert -verbose $f ${f%.*}.png;>> doneO comando convert pertence ao pacote do ImageMagick.O código apresentado converte todas as imagens do diretório corrente de *.jpg para *.png, para converter entre outros formatos basta mudar para as extensões desejadas.Para os que não compreenderam o código:1a linha - laço que percorre todos os arquivos de extensão *.jpg;2a linha - chama o convert para mudar o arquivo atual $f para o novo arquivo, que terá o mesmo nome com a nova extensão ${f%.*}.png;3a linha - indica o fim do laço.Os que entendem algo de codificação de imagens, devem imaginar os benefícios que este tipo de recurso oferece.

Conjunto de vídeos sobre Libras

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, SIVP, Scilab, Video, YouTube, libras, linux, processamento digital de imagens, rastreamento, segmentação, software livre, visão computacional, webcam
Hoje eu fiz os primeiros vídeos para testar os algoritmos que desenvolvi para o meu mestrado.Primeiro vou testar algoritmos de segmentação, depois de extração dos momentos centrados e por fim os algoritmos de classificação.Eu fiz um código do Scilab para fazer a captura do vídeo, como o que apresentei aqui.Eu fiz 2 conjuntos de vídeos com as 26 letras do alfabeto em Libras (um vídeo por letra).Pelo que vi nos vídeos, terei problemas em fazer a segmentação da mão, caso seja necessário, e/ou algoritmos de rastreamento.Eu fiz os vídeos na Feneis-CE com 2 pessoas que têm experiência com Libras (um deles é deficiente auditivo).Sobre os vídeos, eu os fiz com uma webcam VGA (640 x 480 pixels) com duração de 5 segundos a 20 fps.Eu pensei em fornecer os vídeos a possíveis colaboradores que tenham interesse em trabalhar com reconhecimento de gestos ou mesmo com o reconhecimento da Libras.Como são muitos vídeos (52 no total) eu não acho interessante colocá-los no YouTube, mas posso passar por e-mail aos interessados (cada conjunto de vídeos tem uns 13,5 MB).Os interessados podem deixar ...

Processamento de imagens em lote

Sheep @ Info and Tech in Signals Categorias: Ciência Geral, linux, processamento digital de imagens, programação gráfica, programação visual, software livre
Como vocês sabem, o tempo é curto e por isso esta postagem também o será.É só para apresentar o Phatch.Trata-se de um software para tratamento de imagens em lote. Acredito que o tratamento em lote consiste em ter uma sequência de imagens e fazer a mesma operação sobre todas elas.Exemplos de operações que eu vi no Phatch:Redimensionamento;Marca d'água;Arredondamento de bordas;Rotação.Como disse, estes são exemplos de recursos do Phatch.

Auto-imagem

_DS2_Minina_ @ Info and Tech in Signals Categorias: Ciência Geral, YouTube, multisign, processamento digital de imagens, redes neurais
Hoje vi este vídeo e não poderia deixar de postá-lo:Trata-se de um elefante que faz uma pintura fantástica.O vídeo é longo mas vale a pena assistir até o final.

Transformadas matemáticas

Octavio Mateus @ Info and Tech in Signals Categorias: Ciência Geral, Matemática, Mestrado, Perfil profissional, Pesquisa, computação, cálculo integral, delta de dirac, engenharia, estatística, filtragem, processamento de sinais, processamento digital de imagens
Antes de começar efetivamente o post, gostaria de informar aos que não foram ao Halleluya: vocês não imaginam o que perderam... mas já fica o convite para o ano que vem.Gostaria também de solicitar aos leitores que votem na enquete, pois só tem 3 votos e já faz umas 2 semanas que coloquei a enquete.Agora sobre transformadas matemáticas, não pretendo dar um curso de transformações matemáticas mas apenas "abrir um pouco os olhos".A idéia da transformada matemática é ver a informação de outra forma, por exemplo a Transformada de Fourier serve para você ver uma informação temporal na frequência e/ou vice-versa.As transformações aplicadas a informação podem ser lineares, não-lineares, inversíveis, não-inversíveis, biunívocas, etc....São exemplos de transformações lineares: y = A x em que x é a informação original, A é a matriz de transformação e y é resultado da transformação. A Transformada Discreta de Fourier (DFT) pode ser escrita como uma equação do tipo: dft(x) = A x, em que cada elemento de A é uma exponencial complexa exp(w n). Se a matriz A for inversível, então a transformação é y = A x inversível.Algumas transformadas são de ...

Fourier

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, Formação, Matemática, computação, cálculo integral, engenharia, processamento de sinais, processamento digital de imagens
A Transformada de Fourier de um sinal x(t) possibilita a obtenção das informações frequenciais contidas em x(t).Define-se a Transformada de Fourier como sendo:É interessante observar que esta operação faz uma sobreposição de x(t) sobre a exponencial complexa (harmônica), de modo a obter a similaridade entre o sinal e a exponencial.Como o resultado será uma função da frequência, a Transformada de Fourier gera uma função que é a descrição das componentes de frequências de x(t).A Tranformada de Fourier é uma transformação linear biunívoca, o que leva a concluir que existe uma Transformada de Fourier Inversa, e realmente existe e é definida por:A Transformada de Fourier possibilita, por exemplo, saber a distribuição de frequências de um sinal e assim controlar as faixas de frequência de operação dos dispositivos de telecomunicações.

Projeto de Biometria Open-Source

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, biometria, linux, opencv, processamento digital de imagens, programação gráfica, reconhecimento de padrões, software livre
Hoje vi um artigo sobre um projeto de reconhecimento facial open-source, o Malic.Como este artigo está sendo bem divulgado, vou apenas fazer uma análise sintética do sistema.O aplicativo foi desenvolvido usando OpenCV e outra biblioteca que não conheço (Malib).O Malic tem as seguintes etapas:O usuário pôe-se frente a câmera e marca os pontos característicos em seu rosto (cantos da boca, olhos, nariz, etc...);Estes pontos são salvos em um arquivo;A fase de reconhecimento consiste em aplicar um filtro de gabor para reconhecer a face.Para finalizar, gostaria de parabenizar a iniciativa, pois projetos desta natureza são raros em software livre.

Morfologia matemática no OpenCV

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, SIRENE, engenharia, linux, morfologia matemática, opencv, processamento digital de imagens, python, software livre, visão computacional
Eu já fiz um post sobre morfologia matemática, em que abordava aspectos teóricos desta técnica.Neste post, gostaria de apresentar as funções do OpenCV que implementam a questão do elemento estruturante e as operações morfológicas de erosão e dilatação.Primeiramente a função que cria o elemento estruturante:IplConvKernel* cvCreateStructuringElementEx( int cols, int rows, int anchor_x, int anchor_y, ...

In Vesalius, esse é bom!

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, FISL, biometria, processamento digital de imagens, python, reconstrução 3D, software livre
Uma das palestras que mais me agradou no FISL 9.0 foi a do In Vesalius.Neste caso, a palestra foi dada pela coordenadora do projeto, então este foi bem apresentado em termos de ferramentas usadas e recursos disponíveis.O In Vesalius, em sua concepção, foi um software apenas gratuito, hoje é um software livre disponível no site do Software Público.O In Vesalius foi desenvolvido quase todo em Python e algumas partes em C/C++. Foram usadas as bibliotecas gráficas VTK e ITK.O In Vesalius usa imagens Dicom (padrão usado por equipamentos médicos) e a partir destas imagens gera uma visualização 3D da região analisada. Ocorre então a "impressão" em um equipamento especial e obtém-se um modelo (feito em um material que parece gesso, sendo bem mais resistente) da região analisada, por exemplo o crânio.Algo que achei interessante é que as imagens dicom não contêm apenas uma matriz de pixels convencionais, mas cada pixel também contém a informação de sua posição espacial no corpo analisado; de modo que a reconstrução 3D consiste em lêr a imagem, segmentar as regiões de interesse (conversando com um dos desenvolvedores, descobri que usam Watershed, mas provavelmente ...

Gotcha?

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, FISL, processamento digital de imagens, rastreamento, software livre
Assisti a palestra do Gotcha e, para ser sincero, perdi meu tempo.Para começar, os caras usaram um sensor infra-vermelho que era rastreado pelo wii-mote (joystick do Wii, fabricado pela Nintendo) então era só pegar o ponto mais estimulado e passar para o mouse e ainda tinha um segundo ponto para gerar o clique. A crítica: com um sensor desses, os desenvolvedores deviam pensar em algo mais inteligente, tipo navegação 3D. Uma aplicação do tipo mover mouse, na minha concepção, deve ser mais acessível e um Wii não é algo que possa se comprar com frequência.Depois, os caras usaram M$ Vi$ual $tudio no M$ Ruindow$ à Vista, sem comentários: isso foi um crime!Os palestrantes também não eram dos melhores: um era advogado e passou a palestra toda fazendo gracinhas e querendo chamar a atenção; o outro era um aluno de 2o grau, provavelmente, que teve uma idéia com o primeiro e o pessoal (comunidade) gostou (em comparação, cliquem aqui). Não estou menosprezando os caras, apenas acho que estão dando muita atenção para algo deveras simples.Para finalizar, quase metade da palestra foi assistir um dos palestrantes jogando Quake, e não foi dada ...

Informações sobre o jogo “controle a bolinha com as mãos”

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, FISL, SIRENE, Scilab, Simulação numérica, jogos, processamento digital de imagens, visão computacional
Este jogo foi um "sub-projeto" que apareceu com o andamento do SIRENE.O objetivo do jogo é apenas não permitir que a bolinha chegue nas bordas da tela.Como os leitores devem imaginar, fiz este protótipo no Scilab (detalhe: acho que não demorei 6 horas de implementação, pois já tinha as idéias em mente, e comecei tudo do zero), então pude ter um alto desempenho no desenvolvimento do programa, porém a execussão do mesmo fica comprometida.O Scilab é um ambiente de simulação, muito indicado para o desenvolvimento de algoritmos de forma rápida, porém a execussão do programa é muito lenta.No FISL irei fazer uma apresentação informal deste programa, porém não pretendo disponibilizá-lo antes de ver como fazer para colocá-lo sob as condições da GNU-GPL.

Segmentação neural com 3 neurônios

Milton Lopes Filho @ Info and Tech in Signals Categorias: Ciência Geral, SIRENE, SIVP, Scilab, Simulação numérica, processamento digital de imagens, segmentação
Nos últimos dias eu estive avaliando a segmentação usando a rede de Kohonen. Fiz algumas experiências com relação aos atributos, codificações de cor, quantidade de neurônios e outras coisas.Nas figuras a seguir apresento resultados obtidos com 3 neurônios, em que cada cor representa os pontos pertencentes a um dado neurônio após o treinamento da rede.Imagem 1.Imagem 2.Imagem 3.Imagem 4.Imagem 5.Nas imagens 2 e 5 a rede não conseguiu segmentar a mão, porém em todas as outras observa-se que a mão ficou bem evidenciada na imagem segmentada.Nestes casos, a codificação de cor usada foi RGB.
Design by j david macor.com.Original WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login