У меня есть такой массив цветов:
colors = [
[50, 0, 255], # Blue
[255, 0, 0], # Red
[255, 0, 180], # Pink
[255, 140, 0], # Orange
[255, 255, 0], # Jaune
[0, 255, 255], # Cyan
]
У меня есть массив больших пикселей:
pixels = [0] * width * height * 3
Я хочу построить изображение, которое содержит случайные блоки одного цвета :
for y in range(block_count_y):
for x in range(block_count_x):
color = random.choice(colors)
for yp in range(block_height):
for xp in range(block_width):
offset = (y * width * block_height + yp * width + x * block_width + xp) * 3
pixels[offset + 0] = color[0]
pixels[offset + 1] = color[1]
pixels[offset + 2] = color[2]
Тогда мне нужно получить байты пикселей с этим:
bytes(pixels)
Мои циклы очень медленные. Я ищу способ оптимизировать это.
Я пытался numpy и список понимания, но это не работает ...
Есть идеи?
Спасибо