opencv——利用图像金字塔合成图片

本文介绍了一种基于拉普拉斯金字塔的图像融合技术,该技术通过分解输入图像为多个分辨率层,并在每一层上进行融合处理,最后重构得到融合后的图像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import cv2
import numpy as np
DEPTH =3

imgA = cv2.imread('apple.jpg')
imgB = cv2.imread('orange.jpg')
gA=[imgA]
lpA=[]


gB=[imgB]
lpB=[]


for i in range(DEPTH):
  tempA1 = cv2.pyrDown(gA[i])
  tempB1 = cv2.pyrDown(gB[i])

  gA.append(tempA1)
  gB.append(tempB1)

  lA = cv2.subtract(gA[i] ,cv2.pyrUp(tempA1))
  lB = cv2.subtract(gB[i] ,cv2.pyrUp(tempB1))

  lpA.append(lA)
  lpB.append(lB)
lpA.append(gA[-1])
lpB.append(gB[-1])

lpAB = []#将拉布拉斯金字塔的每一层拼接起来
for la,lb in zip(lpA,lpB):
  rows,cols,dpt = la.shape
  ls = np.hstack((la[:,0:cols//2], lb[:,cols//2:]))
  lpAB.append(ls)

tempA2 =lpAB[-1]
for i in range(DEPTH,0,-1):
  tempA2 = cv2.pyrUp(tempA2)
  tempA2 = cv2.add(tempA2,lpAB[i-1])

cv2.imwrite('apple1.jpg',tempA2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值