Пример #1
0
def main(path):

    img = Image.open(path)  # img = imagem do parametro

    while 1:
        print("\n\tMenu Brilho:\n")
        print("\t1 - Brilho aditivo em RGB")
        print("\t2 - Brilho multiplicativo em RGB")
        print("\t3 - Brilho aditivo em Y")
        print("\t4 - Brilho multiplicativo em Y")
        print("\t0 - Voltar ao Menu Principal")

        option = int(input("\t> "))  # lê inteiro

        if option == 1:
            # lê valor que o usuario deseja para brilho
            plus = float(input("\t\tDigite o valor a ser adicionado: "))
            # im recebe a imagem retornada pela função
            im = aditive_brightness(img, plus)
            im = Image.fromarray(im)  # salva imagem
            img.show()  # exibe imagem antes da aplicação da função
            im.show()  # exibe imagem depois da aplicação da função

        elif option == 2:
            mult = float(input("\t\tDigite o valor a ser multiplicado: "))
            im = multiplicative_brightness(img, mult)
            im = Image.fromarray(im)
            img.show()
            im.show()

        elif option == 3:
            plus = float(input("\t\tDigite o valor a ser adicionado: "))
            im = yiq.rgb2yiq(img)  # converte a imagem rgb para yiq
            # im recebe imagem retornada pela função
            im = aditive_brightness_y(im, img.width, img.height, plus)
            # converte imagem yiq em rgb
            im = yiq.yiq2rgb(im, img.width, img.height)
            im = Image.fromarray(im)  # salva imagem
            img.show()  # exibe imagem antes do processamento
            im.show()  # exibe imagem depois do processamento

        elif option == 4:
            mult = float(input("\t\tDigite o valor a ser multiplicado: "))
            im = yiq.rgb2yiq(img)
            im = multiplicative_brightness_y(im, img.width, img.height, mult)
            im = yiq.yiq2rgb(im, img.width, img.height)
            im = Image.fromarray(im)
            img.show()
            im.show()

        else:
            return
Пример #2
0
def main():
    if len(sys.argv) < 2:
        print("Usage: python " + sys.argv[0] + " image_name")
        sys.exit(1)

    img = Image.open(sys.argv[1])

    print("1 - Brilho aditivo em RGB")
    print("2 - Brilho multiplicativo em RGB")
    print("3 - Brilho aditivo em Y")
    print("4 - Brilho multiplicativo em Y")
    print("0 - Sair")

    option = int(input("Escolha um opção: "))

    if option == 1:
        plus = float(input("Digite o valor a ser adicionado: "))
        im = aditive_brightness(img, plus)
        im = Image.fromarray(im)
        img.show()
        im.show()

    elif option == 2:
        mult = float(input("Digite o valor a ser multiplicado: "))
        im = multiplicative_brightness(img, mult)
        im = Image.fromarray(im)
        img.show()
        im.show()

    elif option == 3:
        plus = float(input("Digite o valor a ser adicionado: "))
        im = yiq.rgb2yiq(img)
        im = aditive_brightness_y(im, img.width, img.height, plus)
        im = yiq.yiq2rgb(im, img.width, img.height)
        im = Image.fromarray(im)
        img.show()
        im.show()

    elif option == 4:
        mult = float(input("Digite o valor a ser multiplicado: "))
        im = yiq.rgb2yiq(img)
        im = multiplicative_brightness_y(im, img.width, img.height, mult)
        im = yiq.yiq2rgb(im, img.width, img.height)
        im = Image.fromarray(im)
        img.show()
        im.show()

    else:
        print("Bye")
        sys.exit(0)
Пример #3
0
def main():
    if len(sys.argv) < 2:
        print("Usage: python " + sys.argv[0] + " image_name")
        sys.exit(1)

    img = Image.open(sys.argv[1])

    print("1 - Aplicar negativo em RGB")
    print("2 - Aplicar negativo em Y")
    print("0 - Sair")

    option = int(input("Selecione uma opção: "))

    if option == 1:
        im = negative(img)
        im = Image.fromarray(im)
        im.show()

    elif option == 2:
        im = yiq.rgb2yiq(img)
        im = negative_y(im, img.width, img.height)
        im = yiq.yiq2rgb(im, img.width, img.height)
        im = Image.fromarray(im)
        im.show()

    else:
        sys.exit(0)
Пример #4
0
def main(path):

    img = Image.open(path)  # abre a imagem passada como argumento

    while 1:
        print("\n\tMenu Negativo:\n")
        print("\t1 - Aplicar negativo em RGB")
        print("\t2 - Aplicar negativo em R")
        print("\t3 - Aplicar negativo em G")
        print("\t4 - Aplicar negativo em B")
        print("\t5 - Aplicar negativo em Y")
        print("\t0 - Voltar ao Menu Principal")

        option = int(input("Selecione uma opção: "))

        if option == 1:
            # retorna um array após deixar as cores negativas em RGB
            im = negative(img)
            im = Image.fromarray(im)  # constrói a imagem
            im.show()  # mostra a imagem construída

        elif option == 2:
            # retorna um array após deixar as cores negativas em R
            im = negativeR(img)
            im = Image.fromarray(im)
            im.show()

        elif option == 3:
            # retorna um array após deixar as cores negativas em G
            im = negativeG(img)
            im = Image.fromarray(im)
            im.show()

        elif option == 4:
            # retorna um array após deixar as cores negativas em B
            im = negativeB(img)
            im = Image.fromarray(im)
            im.show()

        elif option == 5:
            # converte a imagem de rgb para yiq
            im = yiq.rgb2yiq(img)
            # utiliza a nossa função para deixar deixar a imagem negativa
            im = negative_y(im, img.width, img.height)
            # converte de yiq para rgb
            im = yiq.yiq2rgb(im, img.width, img.height)
            im = Image.fromarray(im)
            im.show()

        else:
            return
Пример #5
0
def threshold_user(image, thresh):
    thresh /= 255

    img = np.zeros((image.height, image.width, 3), 'float32')
    im = yiq.rgb2yiq(image)

    for j in range(image.height):
        for i in range(image.width):
            #img[j, i, 0] = im[j, i, 0]

            if im[j, i, 0] <= thresh:
                img[j, i, 0] = 0
            else:
                img[j, i, 0] = 1

    return img
Пример #6
0
def threshold_mean(image):
    img = np.zeros((image.height, image.width, 3), 'float32')
    im = yiq.rgb2yiq(image)

    thresh = 0
    for j in range(image.height):
        for i in range(image.width):
            img[j, i, 0] = im[j, i, 0]
            thresh += img[j, i, 0]

    thresh /= (image.width * image.height)

    for j in range(image.height):
        for i in range(image.width):
            if img[j, i, 0] <= thresh:
                img[j, i, 0] = 0
            else:
                img[j, i, 0] = 1

    return img