Перемещение и запись пикселей изображения - Python - - PullRequest
0 голосов
/ 18 июня 2020

Хорошо, у меня новый ie вопрос в python. Итак, у меня есть список с координатами некоторых интересующих меня пикселей. Я бы хотел переместить эти пиксели в другое изображение или сохранить эти пиксели в новом изображении. Пока я работаю с cv2 и matplotlib, я даже подумал о том, чтобы сохранить координаты со значениями RGB и записать их на другое изображение , но я понятия не имею, с чего начать. Извините, если это какой-то тупой вопрос, спасибо

Ответы [ 2 ]

0 голосов
/ 18 июня 2020
img_src = cv2.imread('someimg.jpg')
h, w, c = img_src.shape

# an empty black image for saving pixels
img_dest = np.zeros((h, w, c), dtype=np.uint8)


for ixy in xy_list:
    x, y = xy_list[ixy]

    # copy pixels at given locations
    img_dest[x, y, :] = img_src[x, y, :]


cv2.imwrite('output.jpg', img_dest)

Может ли это решить вашу проблему?

0 голосов
/ 18 июня 2020

Вы можете сделать это так же, как в массиве numpy. Например, вы хотите взять первую часть изображения RGB размером 10x10 со всеми тремя каналами. В основном;

new_image = np.zeros([10, 10, 3], dtype=np.uint8)
new_image[:, :, :] = old_image[:10, :10, :]
...