Я пытаюсь обрезать определенную часть двух изображений и поменять местами положение этих изображений в основном изображении с помощью OpenCV.
Ниже приведен код, который я использую для выполнения вышеуказанного требования
image1 = img[198:238, 456:654]
image2 = img[120:282, 487:534]
resized_image = cv2.resize(image1, (90, 221))
resized_image1 = cv2.resize(image2, (211, 90))
img[120:282, 487:534] = resized_image
img[198:238, 456:654] = resized_image1
cv2.imwrite('01.png',img)
приведенный выше код успешно меняет положение двух изображений, но когда я передаю значение динамически, я объявляю положение изображения, которое будет разрезано как переменную, скажем, «положение», когда я использую это переменное изображение, не будет заменено, как показано в примере ниже
position[0] = img[198:238, 456:654]
position[1] = img[120:282, 487:534]
image1 = position[0]
image2 = position[1]
resized_image = cv2.resize(image1, (90, 221))
resized_image1 = cv2.resize(image2, (211, 90))
position[1] = resized_image
position[0] = resized_image1
cv2.imwrite('01.png',img)
здесь изображение остается таким же, каким оно было до того, как обмен не произошел. image1 = position[0]
обрезает изображение в заданной позиции, но когда я пытаюсь вставить изображение, используя position[1] = resized_image
, на самом деле ничего не происходит, ожидается, что оно будет изменено. Так что же происходит, почему обмен не происходит. Как я могу это исправить?