利用Python进行图像的加法,图像混合(不同权重相加)【附代码】

一、图像的加法

图像相加可以直接利用numpy模块进行相加,也可以采用opencv里面函数进行相加,

注意事项:相加的图像类型、大小必须相同

具体代码如下:

# -*- coding: utf-8 -*-
import cv2
import numpy as np
img=cv2.imread('4.jfif')

x = np.uint8([200])
y = np.uint8([10])
print cv2.add(x,y)    # 200+10 = 210 

print x+y             # 210

二、图像混合(不同权重的图像相加)

Image=\alpha image1+(1-\alpha )image2+\gamma

上式中\alpha为第一张图片image1的比重因子,Image为合成后的图像。\gamma为常数(个人理解为增加图像的亮度)

注意事项:其实质为图像的加法,要求图像类型大小均相同。

opencv中利用cv2.addWeighted()进行图像混合,权重不同,会得到不同的透明图像。

具体示例如下所示:

# -*- coding: utf-8 -*-
import cv2
import numpy as np

img1=cv2.imread('shu1.jpg')
img2=cv2.imread('shu2.jpg')

Image=cv2.addWeighted(img1,0.8,img2,0.2,0)  #img1的比重因子为0.7,img2的比重因子0.3,伽马为0

cv2.imshow('Image',Image)
cv2.waitKey(0)
cv2.destroyAllWindow()

运行结果如下所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值