У меня есть что-то типа схемы Байера. Как переставить пиксели изображения оптимизированным подходомPython

Программы на Python
Anonymous
У меня есть что-то типа схемы Байера. Как переставить пиксели изображения оптимизированным подходом

Сообщение Anonymous »

У меня есть изображение в оттенках серого. Я разделил изображение на блоки размером 128х128. Я реализовал следующий код, и он работает правильно. Однако это занимает очень много времени из-за использования четырех вложенных циклов for. Есть ли способ оптимизировать его, чтобы добиться того же результата, но быстрее? Размер блока установлен на 128, где размер блока[0] равен 128. Количество блоков в направлении строки в «Image_input» составляет 68 (num_block_row), а в направлении столбца — 54 (num_block_col).
На самом деле я намеревался расположить первые пиксели каждого блока рядом. На прикрепленном изображении каждый блок состоит из четырех пикселей, каждый из которых имеет свой цвет. Я стремлюсь расположить пиксели красного цвета рядом в каждом блоке. Этот процесс следует применить и к другим блокам.

Код: Выделить всё

for t in range(blocksize[0]):

for s in range(blocksize[0]):

for i in range(num_block_row):

for j in range(num_block_col):

Image_result[(t*num_block_row) + i ,(s*num_block_col) + j] = Image_input[(i * blocksize[0]) + t, (j * blocksize[0]) + s]
Я пытался переставить пиксели изображения, но это заняло очень много времени. Существует ли оптимизированный метод для этого?
Изображение


Подробнее здесь: https://stackoverflow.com/questions/778 ... -with-opti

Вернуться в «Python»