Advertisement
Xlorddx

Untitled

Aug 17th, 2018
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.87 KB | None | 0 0
  1. import random
  2. from PIL import Image
  3. photo = input('Введите путь: ')
  4.  
  5. def one():
  6.     img = Image.open(photo)
  7.     pixels = img.load()
  8.     maxLoad = img.width * img.height
  9.     onePer = maxLoad / 100
  10.     k = 0
  11.     for i in range(img.width):
  12.         for j in range(img.height):
  13.             if(i*j>k*10*onePer):
  14.                 print("Обработано", k*10, "%" )
  15.                 k+=1
  16.             r, g, b = pixels[i, j]
  17.             S = (r + g + b) // 3
  18.             pixels[i, j] = (S, S, S)
  19.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  20.     img.show()
  21.     img.save(sevka)
  22. def two():
  23.     img = Image.open(photo)
  24.     pixels = img.load()
  25.     maxLoad = img.width * img.height
  26.     onePer = maxLoad / 100
  27.     k = 0
  28.     factor = random.randint(0,100)
  29.     for i in range(img.width):
  30.         for j in range(img.height):
  31.             if(i*j>k*10*onePer):
  32.                 print("Обработано", k*10, "%" )
  33.                 k+=1
  34.             rand = random.randint(-factor, factor)
  35.             r = pixels[i, j][0] + rand
  36.             g = pixels[i, j][1] + rand
  37.             b = pixels[i, j][2] + rand
  38.             a = (r + g + b) // 3
  39.             if (a > 127):
  40.                 r = 255
  41.                 g = 255
  42.                 b = 255
  43.             else:
  44.                 r = 0
  45.                 g = 0
  46.                 b = 0
  47.             pixels[i, j] = (r, g, b)
  48.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  49.     img.show()
  50.     img.save(sevka)
  51. def three():
  52.     img = Image.open(photo)
  53.     pixels = img.load()
  54.     maxLoad = img.width * img.height
  55.     onePer = maxLoad / 100
  56.     k = 0
  57.     factor = random.randint(0,100)
  58.     for i in range(img.width):
  59.         for j in range(img.height):
  60.             if(i*j>k*10*onePer):
  61.                 print("Обработано", k*10, "%" )
  62.                 k+=1
  63.             rand = random.randint(-factor, factor)
  64.             a = pixels[i, j][0] + rand
  65.             b = pixels[i, j][1] + rand
  66.             c = pixels[i, j][2] + rand
  67.             if (a < 0):
  68.                 a = 0
  69.             if (b < 0):
  70.                 b = 0
  71.             if (c < 0):
  72.                 c = 0
  73.             if (a > 255):
  74.                 a = 255
  75.             if (b > 255):
  76.                 b = 255
  77.             if (c > 255):
  78.                 c = 255
  79.             pixels[i, j] = (a, b, c)
  80.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  81.     img.show()
  82.     img.save(sevka)
  83. def four():
  84.     img = Image.open(photo)
  85.     pixels = img.load()
  86.     maxLoad = img.width * img.height
  87.     onePer = maxLoad / 100
  88.     k = 0
  89.     for i in range(img.width):
  90.         for j in range(img.height):
  91.             if(i*j>k*10*onePer):
  92.                 print("Обработано", k*10, "%" )
  93.                 k+=1
  94.             r = pixels[i, j][0]
  95.             g = pixels[i, j][1]
  96.             b = pixels[i, j][2]
  97.             if i <= img.width / 2 and j <= img.height / 2:
  98.                 pixels[i,j] = (r + 255, g, b)
  99.             if i <= img.width / 2 and j >= img.height / 2:
  100.                 pixels[i,j] = (r, g + 255,b)
  101.             if i >= img.width / 2 and j <= img.height / 2:
  102.                 pixels[i,j] = (r, g, b + 255)
  103.             if i >= img.width / 2 and j >= img.height / 2:
  104.                 pixels[i,j] = (r, g, b)
  105.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  106.     img.show()
  107.     img.save(sevka)
  108. def five():
  109.     img = Image.open(photo)
  110.     pixels = img.load()
  111.     maxLoad = img.width * img.height
  112.     onePer = maxLoad / 100
  113.     k = 0
  114.     for i in range(img.width):
  115.         for j in range(img.height):
  116.             if(i*j>k*10*onePer):
  117.                 print("Обработано", k*10, "%" )
  118.                 k+=1
  119.             r = pixels[i, j][0]
  120.             g = pixels[i, j][1]
  121.             b = pixels[i, j][2]
  122.             if j <= img.height / 2:
  123.                 pixels[i, j] = (r, g, b + 255)
  124.             if j >= img.height / 2:
  125.                 pixels[i, j] = (r + 255, g + 190, b)
  126.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  127.     img.show()
  128.     img.save(sevka)
  129. def six():
  130.     img = Image.open(photo)
  131.     pixels = img.load()
  132.     maxLoad = img.width * img.height
  133.     onePer = maxLoad / 100
  134.     k = 0
  135.     for i in range(img.width):
  136.         for j in range(img.height):
  137.             if(i*j>k*10*onePer):
  138.                 print("Обработано", k*10, "%" )
  139.                 k+=1
  140.             r = pixels[i, j][0]
  141.             g = pixels[i, j][1]
  142.             b = pixels[i, j][2]
  143.             pixels[i, j] = (r + 255, g + 140, b + 71)
  144.     sevka = input('Введите название, под которым вы хотите сохранить обработанное фото(.jpg не забудь): ')
  145.     img.show()
  146.     img.save(sevka)
  147. def start():
  148.     print('Вы можете выбрать несколько фильтров: Серый Flash-back, Twocolors, Noise, InFourColors.')
  149.     print('1 - Серый Flash-back.')
  150.     print('2 - Twocolors.')
  151.     print('3 - Noise.')
  152.     print('4 - InFourColors.')
  153.     print('5 - Украина це Европа.')
  154.     print('6 - Tomato-man.')
  155.     action = input()
  156.     if action == '1':
  157.         one()
  158.     if action == '2':
  159.         two()
  160.     if action == '3':
  161.         three()
  162.     if action == '4':
  163.         four()
  164.     if action == '5':
  165.         five()
  166.     if action == '6':
  167.         six()
  168. start()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement