001 opencv addWeighted

目录

一、环境

二、addWeighted函数

三、代码演示


一、环境

本文使用环境为:

  • Windows10
  • Python 3.9.17
  • opencv-python 4.8.0.74

二、addWeighted函数

OpenCV中的cv.addWeighted函数是一个用于图像叠加的函数,它可以将两个具有相同尺寸和类型的图像按照指定的权重进行加权叠加。这个函数的主要作用是将两个图像融合在一起,以实现特定的视觉效果。

函数原型如下:

python 复制代码
cv2.addWeighted(src1, alpha, src2, beta, gamma)

参数说明:

  • src1:第一个输入图像,可以是任意大小和类型。
  • alpha:第一个输入图像的权重,范围为0到1。alpha越大,第一个输入图像在结果中所占的比重越大。
  • src2:第二个输入图像,与src1具有相同的尺寸和类型。
  • beta:第二个输入图像的权重,范围为0到1。beta越大,第二个输入图像在结果中所占的比重越大。
  • gamma:可选参数,用于调整输出图像的亮度。默认值为0。

返回值:

  • dst:加权叠加后的输出图像,与输入图像具有相同的尺寸和类型。

三、代码演示

给定两张图片:

完整代码,注意执行代码后,需要在bash窗口输入一个0-1之间的小数:

python 复制代码
from __future__ import print_function
import cv2 as cv

# opencv-python           4.8.0.74
alpha = 0.5
try:
    raw_input          # Python 2
except NameError:
    raw_input = input  # Python 3

print(''' Simple Linear Blender
-----------------------
* Enter alpha [0.0-1.0]: ''')
input_alpha = float(raw_input().strip())
if 0 <= alpha <= 1:
    alpha = input_alpha
# 读取图片
src1 = cv.imread(cv.samples.findFile('LinuxLogo.jpg'))
src2 = cv.imread(cv.samples.findFile('WindowsLogo.jpg'))
# 判断是否正常读取
if src1 is None:
    print("Error loading src1")
    exit(-1)
elif src2 is None:
    print("Error loading src2")
    exit(-1)
# 渲染图片
beta = (1.0 - alpha)
dst = cv.addWeighted(src1, alpha, src2, beta, 0.0)
# 显示
cv.imshow('dst', dst)
cv.waitKey(0)
# 释放窗口
cv.destroyAllWindows()

如下图是我输入0.5的效果图:

相关推荐
max5006003 小时前
基于深度学习的污水新冠RNA测序数据分析系统
开发语言·人工智能·python·深度学习·神经网络
Sunhen_Qiletian3 小时前
计算机视觉前言-----OpenCV库介绍与计算机视觉入门准备
人工智能·opencv·计算机视觉
zoujiahui_20184 小时前
vscode中创建python虚拟环境的方法
ide·vscode·python
小王爱学人工智能6 小时前
5分钟了解OpenCV
人工智能·opencv·计算机视觉
杨荧6 小时前
基于大数据的美食视频播放数据可视化系统 Python+Django+Vue.js
大数据·前端·javascript·vue.js·spring boot·后端·python
格林威7 小时前
工业相机使用 YOLOv8深度学习模型 及 OpenCV 实现目标检测简单介绍
人工智能·深度学习·数码相机·opencv·yolo·目标检测·计算机视觉
牛客企业服务7 小时前
AI面试系统助手深度评测:6大主流工具对比分析
数据库·人工智能·python·面试·职场和发展·数据挖掘·求职招聘
囚~徒~7 小时前
uwsgi 启动 django 服务
python·django·sqlite
老歌老听老掉牙8 小时前
SymPy 中 atan2(y, x)函数的深度解析
python·sympy
路人蛃9 小时前
Scikit-learn - 机器学习库初步了解
人工智能·python·深度学习·机器学习·scikit-learn·交友