Зачем копировать массив Numpy не вступает в силу?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Зачем копировать массив Numpy не вступает в силу?

Сообщение Anonymous »

Я пытаюсь написать простую функцию, которая будет смешивать два изображения, черный фон и изображение рук, и перемещать ручное изображение на задний план.

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

import cv2
import numpy as np
import time
import math

SEQUENCE_LENGTH = 15

def rotate(background, hand):
h,w = hand.shape[:2] #Get hand shape
step = math.floor((background.shape[1]-hand.shape[1])/SEQUENCE_LENGTH) #Calculat>

merged = background[:] #Create temporary array for merging bckg and hand image
#background = np.zeros((480,640,3),dtype='uint8')
for i in range(SEQUENCE_LENGTH):
x_offset = i*step
y_offset = 0

merged[y_offset:y_offset+h, x_offset:x_offset + w] = hand
cv2.imshow("Hand", merged)
cv2.waitKey(100)
merged[:] = background[:] ### Why this does not take effect, unless I uncomm>
### background = np.zeros((480,640,3),dtype='uint8')

def main():
bckg = np.zeros((480,640,3),dtype='uint8') #Generate black background
hand = cv2.imread("/home/hand.jpg") # Get hand image
# Define new width and height
new_width = 100
new_height = 100

resized_hand = cv2.resize(hand, (new_width, new_height)) #Resize hand image
rotate(bckg,resized_hand) #Call rotation function
cv2.waitKey(0)
cv2.destroyAllWindows()

if __name__ == "__main__":
main()
< /code>
Фон очищается только тогда, когда я повторно декларский фоновой src = "https://i.sstatic.net/tcwbebfy.png"/> 
Чистый фон:
 
не работает. вопрос, почему? Я проверил данные дата фона и объединенного изображения, и они одинаковы, независимо от того, использую ли я назначение np.zeros 
или нет.

Подробнее здесь: https://stackoverflow.com/questions/796 ... the-effect
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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