opencv-python(五):图像的算数运算

0. 注意

图像的本质就是矩阵,所以要以矩阵的眼光来理解

1. 加减法

1.1 加法

  • img1+img2:将两幅图像对应位置的像素相加(尺寸类型相同)
  • img1+50:将img1全部像素+50,提高了整体亮度

1.2 减法

  • img1-img2:两幅相同尺寸的图相减
  • img-50:将img1全部像素-50,降低了整体亮度
    将img1全部像素+50,提高了整体亮度
    opencv-python(五):图像的算数运算_第1张图片
    右边两幅图是左边两幅图相减做差的结果,对于左边两幅图的差别不易观察,但是做差后就很明显

1.2 图像混合

图像混合的数学公式:
g ( x ) = ( 1 − α ) f 1 ( x ) + α f 2 ( x ) g(x) =(1-α)f_1(x)+αf_2(x) g(x)=(1α)f1(x)+αf2(x)
通过控制 α α α来决定混合图中谁的更明显

  • cv2.addWeighted(img1,alpha,img2,beta,gamma):按权重混合两幅图
  • alpha:img1的权重
  • beta:img2的权重
  • gamma:给混合图像增加亮度
import cv2

img1=cv2.imread("donald_trump.jpg")

img2=cv2.imread("flower.jpg")
img2=cv2.resize(img2,(600,800)) #需要两幅图尺寸一样

# 100代表混合图的亮度增加100,若不想增加则设为0
img3=cv2.addWeighted(img1,0.3,img2,0.7,100)

cv2.imshow("",img3)
cv2.waitKey(0)

opencv-python(五):图像的算数运算_第2张图片

2. 按位运算

包括AND、OR、NOT、XOR等,最显著的使用场景就是掩膜:
opencv-python掩膜操作

你可能感兴趣的:(opencv-python,opencv,计算机视觉,cv)