forked from Gwynbleidd203/computacao_grafica_proj
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpattern.py
78 lines (41 loc) · 1.89 KB
/
pattern.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import time
from PIL import Image, ImageOps
from colorsys import rgb_to_hsv
color_to_change = (255, 100, 0)
def max_min_hsv(sample):
range_color = sample.getextrema()
print(range_color[0, [0]], [1, [0]])
return range_color[0, [0]], range_color[1, [0]]
def max_min_pattern(sample):
range_color = sample.getextrema()
print("Máximos e mínimos dos valores da amostra de cor: ", range_color)
range_color_min = []
range_color_max = []
for color in range_color:
range_color_min.append(color[0])
range_color_max.append(color[1])
tuple_color_max = tuple(map(int, range_color_max))
tuple_color_min = tuple(map(int, range_color_min))
return tuple_color_min, tuple_color_max
def rgb_pattern(sample, original):
tuple_color_min, tuple_color_max = max_min_pattern(sample)
print("Buscando valores entre {} e {}".format(tuple_color_min, tuple_color_max))
pixel = original.load()
for i in range(original.size[0]):
for j in range(original.size[1]):
if pixel[i, j] >= tuple_color_min and pixel[i, j] <= tuple_color_max:
original.putpixel((i, j), color_to_change)
converted_img = original.save("imgs/converted/RGB/img_converted({}).jpg".format(time.time()))
original.show()
return converted_img
def hsv_pattern(sample, original):
tuple_color_min, tuple_color_max = max_min_pattern(sample)
print("Buscando valores entre {} e {}".format(tuple_color_min, tuple_color_max))
pixel = original.load()
for i in range(original.size[0]):
for j in range(original.size[1]):
if pixel[i, j][0] >= tuple_color_min[0] and pixel[i, j][0] <= tuple_color_max[0]:
original.putpixel((i, j), color_to_change)
converted_img = original.save("imgs/converted/HSV/img_converted({}).jpg".format(time.time()))
original.show()
return converted_img