def main(): command = input("Enter 'Decode' or 'Hide': ") if (command == "Hide"): fname = input("What is the image you want to hide the message in?: ") fimg = cImage.FileImage(fname) nfname = input("What is the text file you want to hide: ") nfile = open(nfname, "r") nimg = Hide(fimg, nfile) w = nimg.getWidth() h = nimg.getHeight() nwindow = cImage.ImageWin("New", w, h) nimg.draw(nwindow) nimg.save("new.png") nwindow.exitOnClick() elif (command == "Decode"): gname = input("What is the image file you want decode?: ") fimg = cImage.FileImage(gname) nfile = open("Decoded.txt", "w") nfile.write(Decode(fimg)) nfile.close else: print("Invalid Command")
def __init__(self, problem, imageFilename): '''Takes a SlidingPuzzle and the filename for a GIF image and initializes the display.''' self.__problem = problem self.__totalScore = 0 numRows, numCols = problem.getDim() image = cImage.FileImage(imageFilename) self.__tileHeight = image.getHeight() // numRows self.__tileWidth = image.getWidth() // numCols self.__tileList = [] for i in range(numRows * numCols): self.__tileList.append( cImage.EmptyImage(self.__tileWidth, self.__tileHeight)) t = 0 for r in range(numRows): for c in range(numCols): for x in range(self.__tileWidth): for y in range(self.__tileHeight): self.__tileList[t].setPixel( x, y, image.getPixel(c * self.__tileWidth + x, r * self.__tileHeight + y)) t = t + 1 for x in range(self.__tileWidth): for y in range(self.__tileHeight): self.__tileList[self.__problem.getBlank()].setPixel( x, y, cImage.Pixel(255, 255, 255)) self.__win = cImage.ImageWin("Sliding Puzzle!", numCols * self.__tileWidth, numRows * self.__tileHeight) self.update()
def pil_to_ppm(imagem): """Constrói e salva uma imagem em formato PPM, modo ASCII.""" # carrega ficheiro origem pil_img = cImage.FileImage(imagem) largura = pil_img.getWidth() altura = pil_img.getHeight() nome_completo = imagem.split('/')[-1] nome = '/Users/ernestojfcosta/Desktop/' + nome_completo.split( '.')[0] + '.ppm' ficheiro = open(nome, 'w') # constrói cabeçalho (modo, comentário, dimensão, cor máxima ficheiro.write('P3\n') ficheiro.write('# Criado por Ernesto Costa.\n') ficheiro.write(str(largura) + ' ' + str(altura) + '\n') ficheiro.write('255\n') # Guarda pixeis for lin in range(altura): for col in range(largura): pixel = pil_img.getPixel(col, lin) r = str(pixel.getRed()) + '\n' ficheiro.write(r) g = str(pixel.getGreen()) + '\n' ficheiro.write(g) b = str(pixel.getBlue()) + '\n' ficheiro.write(b) ficheiro.close() return ficheiro
def main(): # Get file names oname = sys.argv[1] nname = sys.argv[2] # Open and read in original image oimg = cImage.FileImage(oname) # Display image w = oimg.getWidth() h = oimg.getHeight() owindow = cImage.ImageWin("Original Image", w, h) oimg.draw(owindow) # Copy Image nimg = copyImg(oimg) # Display new image w = nimg.getWidth() h = nimg.getHeight() nwindow = cImage.ImageWin("New Image", w, h) nimg.draw(nwindow) nimg.save(nname) nwindow.exitOnClick()
def main(imagem_fich, funcao): imagem = cImage.FileImage(imagem_fich) mostra_imagem_b(imagem) nova_imagem = funcao(imagem) mostra_imagem_b(nova_imagem) janela.exitOnClick()
def manipula_cor(imagem_fich, val_r, val_g, val_b): """ Manipula cores. Altera de modo independente os três canais de cor.""" imagem = cImage.FileImage(imagem_fich) largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin('Manipula cores', 2 * largura, altura) imagem.draw(janela) nova_imagem = cImage.EmptyImage(largura, altura) for coluna in range(largura): for linha in range(altura): pixel = imagem.getPixel(coluna, linha) r = pixel.getRed() g = pixel.getGreen() b = pixel.getBlue() novo_r = max(r, r + ((val_r * r) % 255)) novo_g = max(g, g + ((val_g * g) % 255)) novo_b = max(r, r + ((val_b * b) % 255)) novo_pixel = cImage.Pixel(novo_r, novo_g, novo_b) nova_imagem.setPixel(coluna, linha, novo_pixel) nova_imagem.setPosition(largura + 1, 0) nova_imagem.draw(janela) janela.exitOnClick()
def main(): kernel_x = [[-1,0,1],[-2,0,2],[-1,0,1]] kernel_y = [[1,2,1],[0,0,0],[-1,-2,-1]] janela = cImage.ImageWin('Convolu��o', 270,360) my_image = cImage.FileImage(270,360)
def main4(imagem_fich_1, imagem_fich_2, funcao): imagem_1 = cImage.FileImage(imagem_fich_1) imagem_2 = cImage.FileImage(imagem_fich_2) largura_1 = imagem_1.getWidth() altura_1 = imagem_1.getHeight() largura_2 = imagem_2.getWidth() altura_2 = imagem_2.getHeight() largura = min(largura_1, largura_2) altura = min(altura_1, altura_2) janela = cImage.ImageWin('Fusão', largura, altura) nova_imagem = funde(imagem_1, imagem_2, funcao) nova_imagem.draw(janela) janela.exitOnClick()
def mostra_imagem(img_fich): imagem = cImage.FileImage(img_fich) largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin('Imagem', largura, altura) imagem.draw(janela) janela.exitOnClick()
def mostra_imagem(caminho_imagem): """ Mostra uma imagem guardada num ficheiro. """ minha_janela = cImage.ImageWin("A minha imagem", 530, 380) imagem = cImage.FileImage(caminho_imagem) imagem.draw(minha_janela) minha_janela.exitOnClick()
def mostra_imagem(img_fich): # Carrega a imagem do disco imagem = cImage.FileImage(img_fich) largura = imagem.getWidth() altura = imagem.getHeight() # Cria janela janela = cImage.ImageWin('Imagem', largura,altura) # Mostra imagem na janela imagem.draw(janela) # Termina janela.exitOnClick()
def main(imagem_fich): imagem = cImage.FileImage(imagem_fich) largura = imagem.getWidth() altura = imagem.getHeight() nova_imagem = roda_90(imagem) janela = cImage.ImageWin('Roda 90', altura,largura) #por causa da rota��o nova_imagem.draw(janela) janela.exitOnClick()
def transforma(imagem_fich, funcao_cor): """ Transforma uma imagem de acordo com a fun��o de cor.""" imagem = cImage.FileImage(imagem_fich) largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin('Transforma��o de Imagem', 2 * largura, altura) imagem.draw(janela) nova_imagem = manipula_imagem(imagem, funcao_cor) nova_imagem.setPosition(largura + 1, 0) nova_imagem.draw(janela) janela.exitOnClick()
def mostra_corta_imagem(imagem, pos_x, dim_x, pos_y, dim_y): img = cImage.FileImage(imagem) altura = img.getHeight() largura = img.getWidth() img_cortada = corta_imagem(img,pos_x, dim_x, pos_y, dim_y) janela = cImage.ImageWin('Corta Imagem', 2*largura, altura) img_cortada.setPosition(largura+pos_x, pos_y) img.draw(janela) img_cortada.draw(janela) janela.exitOnClick()
def main(): origImage = cImage.FileImage(sys.argv[1]) w = origImage.getWidth() h = origImage.getHeight() origWindow = cImage.ImageWin("Original Window", w, h) origImage.draw(origWindow) newWindow = cImage.ImageWin("New Window", w, h) aList = oldList(origImage, w, h) cdfList = sortList(aList) newImage = turnGrey(aList, cdfList, origImage) newImage.draw(newWindow) origWindow.exitOnClick() plotFreqs(aList, oldList(newImage, w, h), cdfList)
def main14(imagem_fich, angulo): imagem = cImage.FileImage(imagem_fich) largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin('Roda', largura, altura) nova_imagem = roda_imagem(imagem, angulo) nova_imagem.draw(janela) janela.exitOnClick()
def mostra_encripta(imagem): img = cImage.FileImage(imagem) largura = img.getWidth() altura = img.getHeight() nova_imagem = encripta(img) janela = cImage.ImageWin('Encripta', 2*largura, altura) nova_imagem.setPosition(largura+1,0) img.draw(janela) nova_imagem.draw(janela) janela.exitOnClick()
def cria_moldura(imagem,tamanho, cor): """Cria uma moldura à volta da imagem original de tamanho e cor.""" img = cImage.FileImage(imagem) largura = img.getWidth() altura = img.getHeight() nova_imagem = cImage.EmptyImage(largura+2*tamanho, altura + 2*tamanho) janela = cImage.ImageWin('Moldura', largura+2*tamanho, altura + 2*tamanho) janela.setBackground('red') img.setPosition(tamanho, tamanho) img.draw(janela) janela.exitOnClick()
def filter(ifile, op, param={}, ofile=''): import cImage OldImage = cImage.FileImage(ifile) width = OldImage.getWidth() height = OldImage.getHeight() myimagewindow = cImage.ImageWin(str(op), width * 2, height) OldImage.setPosition(0, 0) OldImage.draw(myimagewindow) NewImage = op(OldImage, width, height, param) # filer function call NewImage.setPosition(width, 0) NewImage.draw(myimagewindow) if ofile != '': NewImage.save(ofile) myimagewindow.exitOnClick()
def mostra(imagem): """ Procede à diminiuição do ruído da imagem.""" # Cria imagens img = cImage.FileImage(imagem) nova_img = elimina_ruido(img) # Cria janela largura = img.getWidth() altura = img.getHeight() janela = cImage.ImageWin('Elimina ruído', 2 * largura, altura ) # Coloca imagens nova_img.setPosition(largura+1,0) img.draw(janela) nova_img.draw(janela) # Termina janela.exitOnClick()
def displayImageFile(fileName): """ Displays an image file in an appropriately sized window Arguments: fileName: the name of a file holding a graphics image (*.gif, *.png, etc.) Returns: None """ # Get the image file theImage = cImage.FileImage(fileName) # Display it displayImage(theImage)
def mostra_convol_2(imagem, mascara): """ Convolução de uma imagem.""" # Cria imagens img = cImage.FileImage(imagem) nova_img = transforma_convol(img, mascara) # Cria janela largura = img.getWidth() altura = img.getHeight() janela = cImage.ImageWin('Convolução', 2 * largura, altura) # Coloca imagens nova_img.setPosition(largura + 1, 0) img.draw(janela) nova_img.draw(janela) # Termina janela.exitOnClick()
def main78(nome_fich, limiar): # Prepara imagem = cImage.FileImage(nome_fich) largura = imagem.getWidth() altura = imagem.getHeight() # Converte nova_imagem = preto_branco(nome_fich, limiar) # Cria janela janela = cImage.ImageWin('Preto e Branco', 2 * largura, altura) # Mostra imagem.draw(janela) nova_imagem.setPosition(largura, 0) nova_imagem.draw(janela) # Termina janela.exitOnClick()
def mostra_reduz_cores(imagem, palete): """ Substitui na imagem as cores pelas mais próximas na palete.""" # Cria imagens img = cImage.FileImage(imagem) nova_img = reduz_cores(img, palete) # Cria janela largura = img.getWidth() altura = img.getHeight() janela = cImage.ImageWin('Reduz Cores', 2 * largura, altura) # Coloca imagens nova_img.setPosition(largura + 1, 0) img.draw(janela) nova_img.draw(janela) # Termina janela.exitOnClick()
def main_cinzento(imagem_ficheiro): """Constrói e vizualiza a escala de cinzentos de uma imagem.""" # Obtém imagem imagem = cImage.FileImage(imagem_ficheiro) # Fabrica a escala de cinzentos imagem_nova = cinzento_imagem(imagem) # Define janela largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin('Cinzento',2*largura, altura) # vizualiza imagem.draw(janela) imagem_nova.setPosition(largura+1,0) imagem_nova.draw(janela) # Termina janela.exitOnClick()
def mostra_blur(imagem): """ Procede à diminiuição da pixelização da imagem.""" # Cria imagens img = cImage.FileImage(imagem) img_ampliada = ampliar(img, 3, 2) nova_img = blur(img_ampliada) # Cria janela largura = img.getWidth() altura = img.getHeight() janela = cImage.ImageWin('Blur', 6 * largura, 2 * altura) # Coloca imagens nova_img.setPosition(3 * largura + 1, 0) img_ampliada.draw(janela) nova_img.draw(janela) # Termina janela.exitOnClick()
def extrai_caract(imagem, mascara_1, mascara_2, limiar): """ Convolução de uma imagem.""" # Cria imagens img_cor = cImage.FileImage(imagem) img = imagem_cinzentos(img_cor) nova_img = transforma_convol(img, mascara_1, mascara_2, limiar) # Cria janela largura = img.getWidth() altura = img.getHeight() janela = cImage.ImageWin('Extrai Características', 2 * largura, altura) # Coloca imagens nova_img.setPosition(largura + 1, 0) img.draw(janela) nova_img.draw(janela) # Termina janela.exitOnClick()
def main_funcao(imagem_ficheiro, funcao): """Transforma uma imagem de acordo com a funcao.""" # Obtém imagem imagem = cImage.FileImage(imagem_ficheiro) # Transforma a imagem imagem_nova = transforma_imagem(imagem,funcao) # Define janela largura = imagem.getWidth() altura = imagem.getHeight() janela = cImage.ImageWin( funcao.__name__,2*largura, altura) # vizualiza imagem.draw(janela) imagem_nova.setPosition(largura+1,0) imagem_nova.draw(janela) # Termina janela.exitOnClick()
def main(): fileName = sys.argv[1] # the image to process and its dimenstions # imageToProcess = cImage.FileImage(fileName) w = imageToProcess.getWidth() h = imageToProcess.getHeight() #creating a window that is double the size(width) to fit both pictures # myImageWin = cImage.ImageWin('Image Processing', 2.5 * w, h) imageToProcess.draw(myImageWin) imageToProcess = smoothImage(fileName) imageToProcess.setPosition(w + 50, 0) imageToProcess.draw(myImageWin) myImageWin.exitonclick()
def showImages(path, filesList, delay): print "" print "Going to show images..." print "" window = cImage.ImageWin("Imagem", 600, 400) for i in range(len(filesList)): filePath = path + "/" + filesList[i] print "Path: ", filePath image = cImage.FileImage(filePath) image.draw(window) time.sleep(delay) window.exitOnClick()