当前位置: 首页 > news >正文

大千科技网站建设百度24小时人工电话

大千科技网站建设,百度24小时人工电话,做类似360手赚那样的网站,品牌形象网站有哪些【Python/Opencv】图像权重加法函数:cv2.addWeighted()详解 文章目录【Python/Opencv】图像权重加法函数:cv2.addWeighted()详解1. 介绍2. API3. 代码示例与效果3.1 代码3.2 效果4. 参考1. 介绍 在OpenCV图像加法cv2.add函数详解详细介绍了图像的加法运…

【Python/Opencv】图像权重加法函数:cv2.addWeighted()详解

文章目录

  • 【Python/Opencv】图像权重加法函数:cv2.addWeighted()详解
    • 1. 介绍
    • 2. API
    • 3. 代码示例与效果
      • 3.1 代码
      • 3.2 效果
    • 4. 参考

1. 介绍

在OpenCV图像加法cv2.add函数详解详细介绍了图像的加法运算。

除了这种加法外,OpenCV还提供了带权重的加法,即两副图像的像素通道值相加时各自按一定的权重比例取值来相加。

假设有2个图像矩阵src1和src2,在两个图像融合时,各自的权重分别为alpha和beta,则二者融合后的目标图像dst中各像素通道值的计算公式为:

dst(I)=saturate(src1(I)∗alpha+src2(I)∗beta+gamma)

上述公式中两副图像的权重alpha和beta取值没有强制要求,但一般情况建议alpha+beta=1。实际上alpha、beta和src1、src2相乘就是调整的src1、src2对应图像的明暗度,因此图像融合权重加法实际上是先各自调整两副图像的明暗度之后再相加。

2. API

import cv2
out = cv2.addWeighted(src1, alpha, src2, beta, gamma, dst=None, dtype=None)
  • 参数说明:
    • src1, src2:需要融合相加的两副大小和通道数相等的图像
    • alpha:src1的权重
    • beta:src2的权重
    • gamma:gamma修正系数,不需要修正设置为0,具体请参考《图像处理gamma修正(伽马γ校正)的原理和实现算法》
    • dst:可选参数,输出结果保存的变量,默认值为None,如果为非None,输出图像保存到dst对应实参中,其大小和通道数与输入图像相同,图像的深度(即图像像素的位数)由dtype参数或输入图像确认
    • dtype:可选参数,输出图像数组的深度,即图像单个像素值的位数(如RGB用三个字节表示,则为24位),选默认值None表示与源图像保持一致。
  • 返回值:
    • out:融合相加的结果图像

3. 代码示例与效果

addWeighted只能实现两副相同大小的图像融合相加,可能我们更需要的是一副小图像和一副大图像的融合相加。在本案例中就实现这样一个函数:

def addWeightedSmallImgToLargeImg(largeImg, alpha, smallImg, beta, gamma=0.0, regionTopLeftPos=(0,0)):srcW, srcH = largeImg.shape[1::-1]refW, refH = smallImg.shape[1::-1]x,y =  regionTopLeftPosif (refW>srcW) or (refH>srcH):#raise ValueError("img2's size must less than or equal to img1")raise ValueError(f"img2's size {smallImg.shape[1::-1]} must less than or equal to img1's size {largeImg.shape[1::-1]}")else:if (x+refW)>srcW:x = srcW-refWif (y+refH)>srcH:y = srcH-refHdestImg = np.array(largeImg)tmpSrcImg = destImg[y:y+refH,x:x+refW]tmpImg = cv2.addWeighted(tmpSrcImg, alpha, smallImg, beta,gamma)destImg[y:y + refH, x:x + refW] = tmpImgreturn destImg

该函数的前5个参数与addWeighted对应,但多了个regionTopLeftPos参数,用于指定小图像左上角放置到大图像的具体位置,缺省为大图像的左上角。

下面使用addWeightedSmallImgToLargeImg来实现一个两副图像融合的案例。

  • 案例中使用的大图像如下:大小(550,620)
    在这里插入图片描述

  • 案例中使用的小图像如下:大小(300,400)
    在这里插入图片描述

3.1 代码

import numpy as np
import cv2img1 = cv2.imread(r'a.jpg')
img2 = cv2.imread(r'b.jpg')
img = addWeightedSmallImgToLargeImg(img1, 1, img2, 0.6,regionTopLeftPos=(100, 100))
cv2.imwrite('result.jpg', img)

3.2 效果

在这里插入图片描述

4. 参考

【1】https://blog.csdn.net/LaoYuanPython/article/details/109143281

http://www.zhongyajixie.com/news/10064.html

相关文章:

  • 邢台泰尚网络科技有限公司seo排名软件有用吗
  • 厦门专业做网站的公司沈阳网站制作优化推广
  • ppt排版布局seo还可以做哪些推广
  • 广州 网站制作 网站推广保定seo网站推广
  • 泉州网站建设推广推广引流平台app大全
  • 做动漫网站的小说推广引流话术
  • wordpress页面链接404seo托管服务
  • 常州教育建设装备中心网站云优化软件
  • 郑州手机网站建设多少钱seo优化网站查询
  • 电子商务主要就业岗位石家庄抖音seo
  • forum wordpress杭州seo服务公司
  • 濮阳专业做网站公司实时seo排名点击软件
  • 大连模板网站制作搜索引擎排名优化是什么意思
  • 松江做网站seo营销是什么
  • 做一个医院网站多少钱武汉大学人民医院地址
  • 做暧小说在线观看网站seo实战教程
  • 建个商城网站多少钱最近10个新闻
  • 百度收录最好的网站百度推广怎么样
  • 良品铺子的网站建设目标google官方下载app
  • wordpress程序的主题优化网站服务
  • 网站在线布局软文撰写
  • 北航刘禹导师做网站seo网站优化培训要多少钱
  • 杨和网站建设谷歌账号注册入口官网
  • 上饶商城网站建设中国万网官网登录
  • 电脑商业网站怎的做网站关键词优化办法
  • 湛江市建网站信息流广告的特点
  • 建网站怎么上线怎么给客户推广自己的产品
  • 长沙网站制作哪家好餐饮培训
  • 南通制作网站的有哪些公司东莞网站推广大全
  • 中国机房建设公司排名搜索引擎优化内容包括哪些方面