Negativo de uma imagem no MATLAB
Este tutorial irá discutir como encontrar o negativo de uma imagem alterando os níveis de intensidade dos pixels presentes na imagem no Matlab.
Obtenha o negativo de uma imagem no MATLAB
Uma imagem é composta por pixels que contêm diferentes níveis de intensidade. Por exemplo, uma imagem de 200 por 200 significa 200 pixels no eixo horizontal e 200 somente no eixo vertical. Cada pixel é composto de níveis de intensidade. Por exemplo, uma imagem de 8 bits é composta por 256 níveis de intensidade que vão de 0 a 256. Para obter o negativo de uma imagem, precisamos inverter esses valores da imagem. Por exemplo, precisamos converter 0 em 256 e 256 em 0. A fórmula para tirar o negativo de uma imagem seria o nível de intensidade máxima - o valor do pixel. Por exemplo, no caso de uma imagem de 8 bits, o nível de intensidade máxima é 256, então podemos subtrair cada valor de pixel de 256 e armazenar esse valor de volta no pixel específico. No Matlab, podemos ler um arquivo de imagem usando a função imread()
e armazená-lo em uma variável. O algoritmo para esta função seria ler a imagem e armazená-la em uma variável e então subtrair cada valor de pixel de 256 e armazená-lo de volta na variável original e mostrar a imagem usando a função imshow()
. Na saída, as cores da imagem serão invertidas. Por exemplo, se a cor for branca, ela será convertida em preto. Por exemplo, vamos pegar o negativo de uma imagem no Matlab. Veja o código abaixo.
OriginalImg = imread('cat.jpg');
NImg = 256 - OriginalImg;
subplot(1,2,1)
imshow(OriginalImg)
title('Original image')
subplot(1,2,2)
imshow(NImg)
title('Negative Image')
Resultado:
Na saída acima, as cores da imagem foram invertidas. As cores claras foram convertidas em escuras e as cores escuras em claras. No caso de imagens coloridas, a cor vermelha passa a ciano, a cor verde passa a magenta, a cor azul passa a amarelo e vice-versa. No caso de imagens binárias, zeros serão substituídos por uns e uns por zeros. Também podemos usar a função integrada do Matlab imcomplement()
para encontrar o negativo de uma imagem. A função imcomplement()
subtrai o valor do pixel do valor máximo do pixel da classe da imagem.