1. 数值计算

import cv2
import matplotlib.pyplot as plt
import numpy as np

# 功能描述
if __name__ == '__main__':
    dog_img = cv2.imread('dog.jpg')
    cat_img = cv2.imread('cat.jpg')

    n_dog_img = dog_img + 1  # 直接+1相当于给每个像素点都+1
    cv2.imshow('n_dog_img', n_dog_img)
    cv2.waitKey(0)  # 等待时间 毫秒,0表示任意按键终止
    cv2.destroyAllWindows()

opencv21.pngopencv211.png

上图中直接进行数值计算相当于给每个像素直接进行数值计算,且当值大于255时,进行%255运算

2.图像融合

import cv2
import matplotlib.pyplot as plt
import numpy as np

# 功能描述
if __name__ == '__main__':
    dog_img = cv2.imread('dog.jpg')
    cat_img = cv2.imread('cat.jpg')

    # n_dog_img = dog_img + 1  # 直接+1相当于给每个像素点都+1
    # cv2.imshow('n_dog_img', n_dog_img)
    dog_img = cv2.resize(dog_img, (750, 500))
    # dog_img = cv2.resize(dog_img, (0, 0), fx=1.5, fy=1.5)  # 宽高不指定,指定在x和y上的缩放倍数
    # n_img = dog_img + cat_img  # 不能进行简单的数值相加
    n_img = cv2.addWeighted(dog_img, 0.4, cat_img, 0.3, 0)
    cv2.imshow('n_img', n_img)
    cv2.waitKey(0)  # 等待时间 毫秒,0表示任意按键终止
    cv2.destroyAllWindows()

opencv221.pngopencv222.png