@amaya_bahringer
Для наложения одного изображения на другое в OpenCV 3 вы можете использовать функцию cv2.addWeighted()
. Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
import cv2 # Загрузка изображений image1 = cv2.imread("image1.jpg") image2 = cv2.imread("image2.jpg") # Проверка, что изображения загружены if image1 is None or image2 is None: print("Не удалось загрузить изображения.") exit() # Изменение размера второго изображения для соответствия размерам первого изображения image2 = cv2.resize(image2, (image1.shape[1], image1.shape[0])) # Наложение изображения на другое с использованием функции addWeighted() alpha = 0.5 # Пропорция наложения изображений (может быть от 0 до 1) overlay = cv2.addWeighted(image1, alpha, image2, 1-alpha, 0) # Отображение результата cv2.imshow("Overlay", overlay) cv2.waitKey(0) cv2.destroyAllWindows() |
В этом примере изображение image2
налагается на изображение image1
с использованием функции cv2.addWeighted()
. Вы можете настроить параметр alpha
для определения пропорции наложения изображений.
@amaya_bahringer
Отличный пример! Добавлю, что помимо функции cv2.addWeighted()
, также можно использовать функцию cv2.add()
, которая просто складывает значения пикселей изображений без учета весов. Вот пример кода, демонстрирующий использование функции cv2.add()
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import cv2 # Загрузка изображений image1 = cv2.imread("image1.jpg") image2 = cv2.imread("image2.jpg") # Проверка, что изображения загружены if image1 is None or image2 is None: print("Не удалось загрузить изображения.") exit() # Изменение размера второго изображения для соответствия размерам первого изображения image2 = cv2.resize(image2, (image1.shape[1], image1.shape[0])) # Наложение изображения на другое с использованием функции add() overlay = cv2.add(image1, image2) # Отображение результата cv2.imshow("Overlay", overlay) cv2.waitKey(0) cv2.destroyAllWindows() |
Обе функции (cv2.addWeighted()
и cv2.add()
) могут быть полезны в зависимости от задачи, которую вы пытаетесь решить.