terça-feira, 1 de novembro de 2016

Amostragem e Quantização

O primeiro trabalho da Disciplina tem o objetivo de realizar a manipulação das imagens através da Amostragem e Quantização. Foram utilizados para a execução a IDE Spyder e os pacotes NumPy e OpenCV.

Abaixo segue códigos e imagens:

# -*- coding: utf-8 -*-
"""
Created on Mon Oct 31 20:40:25 2016

@author: rafael.vanso
"""
import numpy as np
import cv2
import time

#importando a imagem
imagem = cv2.imread ('C:\WinPython-32bit-2.7.10.3\Imagens\cavalo.jpg',0)


#Amostragem


#mostrando a imagem original
cv2.imshow('Imagem Original',imagem)
cv2.waitKey(0)

n=1
maximo = 8
#reduzindo a imagem
while n < maximo:
    reduzida =imagem[::n,::n]
    cv2.imshow('Imagem em Transformação', reduzida)
    cv2.waitKey(5)
    n = n + 1
    time.sleep(0.2)
   

#aumentando a imagem
m = 4
aumentada = np.repeat(reduzida, m, axis=0)
aumentada = np.repeat(aumentada, m, axis=1)


#Quantização
#verificando se a imagem possui limite de 255
x = (np.uint8(np.arange(256)))
img = x[imagem]

#dividindo a imagem pelo parametro e normalizando
quantizada =  (img/40)*40

#mostra a imaagem aumentada
cv2.imshow('Imagem Aumentada',aumentada)

#mostrando a imagem quanizada
cv2.imshow('Imagem Quantizada',quantizada)

cv2.waitKey(0)
cv2.destroyAllWindows()

Imagem Original

   

Imagem reduzida

   

 
Imagem Aumentada

 
 Imagem Quantizada

 

Nenhum comentário:

Postar um comentário