1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ajuda processamento imagens (Matlab)

Discussão em 'Programação' iniciada por nelo_inc, 9 de Janeiro de 2009. (Respostas: 1; Visualizações: 3100)

  1. nelo_inc

    nelo_inc Power Member

    Boas.
    Estou aqui com uma duvida num trabalho de processamento de imagens para uma cadeira universitaria, se alguem me pude-se dar uma ajudinha agradecia.
    Tenho aqui esta imagem que foi gerada a partir de um algoritmo de Matlab é bastante simples a imagem, mas tenho de criar um algoritmo que a puxa-se para o centro da imagem, que coluca-se o interior do contorno a branco, e fora de esse contorno a niveis de cinzento, mas nao estou a conseguir perceber como posso fazer isso, porque vou ter mais imagens semelhantes a esta que tenho de fazer o mesmo.
    Se alguem me pude-se dar uma ajuda, ou umas luzes de como posso conseguir fazer isto em Matlab. Obrigado.
    [​IMG]
     
  2. tiagopestana

    tiagopestana Power Member

    Assim muito por alto:

    1) Importa a imagem usando a funçao imread. Isto vai criar um array cujas dimensoes dependem do formato da imagem. Parece-me que no teu caso só tens preto e branco e portanto o array deve ser bi-dimensional. Verifica bem a sintaxe da funçao que nao deves ter grandes problemas.

    2) Determina o centroide dos pontos a branco, em termos de indices do array. Pensa no centroide como a média das posiçoes dos pontos a branco. Pesquisa no google pela fórmula.

    3) Determina o centro do array, faz a diferença com o centroide. Faz um shift ao array por esse valor.

    4) Cria um array do mesmo tamanho totalmente preenchido com cinzento. Percorre o array original linha a linha (ou coluna a coluna) e determina a primeira e última posiçao em cada linha onde aparece branco. No array cinzento, preenche todas as posiçoes entre esses dois pontos com branco.
     

Partilhar esta Página