- 浏览: 499076 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (502)
- Java (70)
- Linux (10)
- 数据库 (38)
- 网络 (10)
- WEB (13)
- JSP (4)
- 互联网 (71)
- JavaScript (30)
- Spring MVC (19)
- HTML (13)
- CSS (3)
- AngularJS (18)
- Redis (5)
- Bootstrap CSS (1)
- ZooKeeper (4)
- kafka (6)
- 服务器缓存 (4)
- Storm (1)
- MongoDB (9)
- Spring boot (16)
- log4j (2)
- maven (3)
- nginx (5)
- Tomcat (2)
- Eclipse (4)
- Swagger (2)
- Netty (5)
- Dubbo (1)
- Docker (7)
- Hadoop (12)
- OAuth (1)
- webSocket (4)
- 服务器性能 (7)
- Session共享 (1)
- tieye修改 (1)
- 工作 (1)
- 有用的语录 (0)
- https (2)
- common (5)
- 产品开发管理 (1)
- CDN 工作原理 (1)
- APNS、GCM (1)
- 架构图 (3)
- 功能实现分析 (1)
- JMX (1)
- 服务器相关操作命令 (1)
- img02 (0)
- 服务器环境搭建 (9)
- goodMenuBook (1)
- CEInstantPot (0)
- 有用数据 (1)
- 百度地图WEB API (2)
- 正则表达式 (1)
- 样式例子 (2)
- staticRecipePressureCooker.zip (1)
- jCanvas (1)
- 网站攻击方法原理 (1)
- 架构设计 (3)
- 物联网相关 (3)
- 研发管理 (7)
- 技术需求点 (1)
- 计划 (1)
- spring cloud (11)
- 服务器开发的一些实用工具和方法 (1)
- 每天学到的技术点 (4)
- Guava (1)
- ERP 技术注意要点 (2)
- 微信小程序 (1)
- FineRepor (1)
- 收藏夹 (1)
- temp (5)
- 服务架构 (4)
- 任职资格方案 (0)
- osno_test (1)
- jquery相关 (3)
- mybatis (4)
- ueditor (1)
- VueJS (7)
- python (10)
- Spring EL (1)
- shiro (1)
- 前端开发原理与使用 (7)
- YARN (1)
- Spark (1)
- Hbase (2)
- Pig (2)
- 机器学习 (30)
- matplotlib (1)
- OpenCV (17)
- Hystrix (1)
- 公司 (1)
- miniui (4)
- 前端功能实现 (3)
- 前端插件 (1)
- 钉钉开发 (2)
- Jenkins (1)
- elasticSearch使用 (2)
- 技术规范 (4)
- 技术实现原理 (0)
最新评论
opencv 图像混合
图片间的数学运算,如相加、按位运算等
OpenCV函数:cv2.add(), cv2.addWeighted(), cv2.bitwise_and()
图片相加(简单相加,超出就用最大值)
add(src1, src2, dst=None, mask=None, dtype=None)
图像混合(会改变图片的透明度)
addWeighted(src1, alpha, src2, beta, gamma, dst=None, dtype=None)
res = cv2.addWeighted(img, 0.6, img2, 0.4, 0)
dst = α*img1 + β*img2 + γ
alpha:α
beta:β
gamma:γ
α和β都等于1时,就相当于图片相加
按位与
bitwise_and(src1, src2, dst=None, mask=None)
按位或
bitwise_or(src1, src2, dst=None, mask=None)
按位非
bitwise_not(src, dst=None, mask=None)
按位异或
bitwise_xor(src1, src2, dst=None, mask=None)
按位异或加掩膜(掩膜就是得到的结果与掩膜进行位与)
imggray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
ret, mask = cv2.threshold(imggray, 127, 255, cv2.THRESH_BINARY)
res = cv2.bitwise_xor(img,img2,mask=mask)
res2 = cv2.bitwise_xor(img, img2)
mask_inv = cv2.bitwise_not(mask)
图片间的数学运算,如相加、按位运算等
OpenCV函数:cv2.add(), cv2.addWeighted(), cv2.bitwise_and()
图片相加(简单相加,超出就用最大值)
add(src1, src2, dst=None, mask=None, dtype=None)
图像混合(会改变图片的透明度)
addWeighted(src1, alpha, src2, beta, gamma, dst=None, dtype=None)
res = cv2.addWeighted(img, 0.6, img2, 0.4, 0)
dst = α*img1 + β*img2 + γ
alpha:α
beta:β
gamma:γ
α和β都等于1时,就相当于图片相加
按位与
bitwise_and(src1, src2, dst=None, mask=None)
按位或
bitwise_or(src1, src2, dst=None, mask=None)
按位非
bitwise_not(src, dst=None, mask=None)
按位异或
bitwise_xor(src1, src2, dst=None, mask=None)
按位异或加掩膜(掩膜就是得到的结果与掩膜进行位与)
imggray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
ret, mask = cv2.threshold(imggray, 127, 255, cv2.THRESH_BINARY)
res = cv2.bitwise_xor(img,img2,mask=mask)
res2 = cv2.bitwise_xor(img, img2)
mask_inv = cv2.bitwise_not(mask)
# -*-encoding:utf-8-*- import pytesseract from PIL import Image from PIL import ImageFilter from PIL import ImageFont from PIL import ImageDraw import numpy as np from PIL import Image import cv2 def main(): # 颜色空间转换 img = cv2.imread("learn.jpg") img2 = cv2.imread("learn2.jpg") # =================================图片相加(简单相加,超出就用最大值) res = cv2.add(img,img2) # =================================图像混合(会改变图片的透明度) # addWeighted(src1, alpha, src2, beta, gamma, dst=None, dtype=None) # dst = α * img1 + β * img2 + γ # alpha: α # beta: β # gamma: γ # α和β都等于1时,就相当于图片相加 res = cv2.addWeighted(img, 0.6, img2, 0.4, 0) # =================================按位与 # bitwise_and(src1, src2, dst=None, mask=None) res = cv2.bitwise_and(img,img2) # =================================按位或 # bitwise_or(src1, src2, dst=None, mask=None) res = cv2.bitwise_or(img, img2) # =================================按位非 # bitwise_not(src, dst=None, mask=None) res = cv2.bitwise_not(img) # =================================按位异或 # bitwise_xor(src1, src2, dst=None, mask=None) res = cv2.bitwise_xor(img,img2) # =================================按位异或加掩膜(掩膜就是得到的结果与掩膜进行位与) imggray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) ret, mask = cv2.threshold(imggray, 127, 255, cv2.THRESH_BINARY) res = cv2.bitwise_xor(img,img2,mask=mask) res2 = cv2.bitwise_xor(img, img2) mask_inv = cv2.bitwise_not(mask) cv2.imshow('imggray', imggray) cv2.imshow('mask', mask) cv2.imshow('res', res) cv2.imshow('res2', res2) cv2.imshow('mask_inv', mask_inv) cv2.waitKey(0) if __name__ == '__main__': main()
发表评论
-
识别图片中的人脸
2018-10-31 21:21 795识别图片中的人脸 # -*-encoding:ut ... -
opencv 霍夫变换(识别出图像中的直线和圆)
2018-10-23 20:34 3120# -*-encoding:utf-8-*- import ... -
opencv 模板匹配(在大图中找小图)
2018-10-22 21:31 8436# -*-encoding:utf-8-*- import ... -
opencv 直方图
2018-10-22 21:30 498# -*-encoding:utf-8-*- import ... -
opencv 轮廓特征
2018-10-21 20:35 1235# -*-encoding:utf-8-*- import ... -
opencv 轮廓
2018-10-21 20:34 521# -*-encoding:utf-8-*- import ... -
opencv 膨胀腐蚀开闭
2018-10-21 20:34 876# -*-encoding:utf-8-*- import ... -
opencv 边缘检测
2018-10-21 20:32 769# -*-encoding:utf-8-*- import ... -
opencv 平滑图像
2018-10-17 21:25 724opencv 平滑图像 模糊/平滑图片来消除图片噪声 O ... -
opencv 绘图功能
2018-10-16 22:04 842opencv 绘图功能 学习画线、圆和矩形等多种几何形状, ... -
opencv 图像几何变换
2018-10-16 19:36 919opencv 图像几何变换 实现旋转、平移和缩放图片 了解仿 ... -
opencv 阈值分割
2018-10-16 16:02 1237opencv 阈值分割 同的阈值方法”二值化”图像。 使用 ... -
opencv 颜色空间转换
2018-10-15 19:42 1314opencv 颜色空间转换 颜色空间转换,如BGR↔Gray ... -
openvc 图像基本操作
2018-10-15 19:11 977openvc 图像基本操作 访问和修改图片像素点的值 px ... -
Python OpenCV 基本操作
2018-10-12 22:46 397Python OpenCV 基本操作 加载图片,显示图片, ... -
Python OpenCV 形态学操作(腐蚀膨胀,开运算和闭运算)
2018-10-12 22:32 5346Python OpenCV 形态学操作(腐蚀膨胀,开运算和闭运 ...
相关推荐
在这个"QT+opencv图像混合程序 label显示对比"项目中,我们将探讨如何在QT的Widget界面中利用OpenCV进行图像混合,并通过label控件来展示对比效果。 首先,我们需要理解图像混合的基本概念。图像混合通常是指将两张...
在本资源中,"opencv图像混合实例代码下载"提供了深入理解和实践图像混合的教程。下面我们将详细探讨线性混合公式、图像混合的必要条件以及三种常见的图像混合方式。 线性混合是图像混合中最基础也最常用的方法。它...
总之,OpenCV图像混合是通过组合不同图像或视频帧来创建新视觉效果的强大工具。无论是简单的图像叠加还是复杂的动态GIF处理,OpenCV都能提供足够的灵活性和控制力。通过熟练掌握这些技术,你可以创建出富有创意的...
QT+OpenCV图像混合程序是将两个或多个图像进行融合的一种技术,通常在计算机视觉、图像处理和机器学习领域有着广泛的应用。在这个程序中,我们主要关注的是`addWeighted`函数,它是OpenCV库中用于图像混合的核心工具...
【OpenCV图像混合技术详解】 在计算机视觉领域,OpenCV是一个强大的开源库,广泛用于图像处理和计算机视觉任务。在本教程中,我们将探讨“005 简单图像混合”这一主题,这涉及到如何使用OpenCV在两个或多个图像之间...
在Python的OpenCV库中,图像处理功能非常丰富,其中包括为图像添加边框以及实现图像混合。这两个功能在视觉效果的创建、图像编辑和动画制作中都有广泛应用。 **图像边框的实现** 图像边框的添加是通过`cv2....
9. **图像混合**:通过OpenCV的像素级操作,可以实现图像的混合、合成,创造出新的视觉效果。 10. **文件保存**:处理完图像后,可以使用`cv::imwrite`将结果保存为图片文件,以便进一步分析或展示。 在实际开发中...
本主题聚焦于OpenCV3中的一个基础概念:初级图像混合,特别是线性混合操作。这一章节从《OpenCV3编程入门》一书的第5章中提取,旨在帮助初学者理解如何通过线性混合将两张图像融合在一起。 线性混合是一种基本的...
这通常涉及图像的投影、重采样和混合。在OpenCV中,`cv::warpPerspective()`函数可用于将源图像映射到目标图像的坐标系。接着,我们可以使用不同的融合策略,如加权平均、直方图均衡化等,将多个图像的像素值结合在...
OpenCV库是开源计算机视觉库,包含了丰富的图像处理和计算机视觉算法。在OpenCV中,`cv::createBackgroundSubtractorMOG2`函数可用于创建混合高斯背景 subtractor 对象,该对象可以用于学习背景并检测前景物体。参数...
根据给定的信息,本文将详细解释如何利用OpenCV与CUDA技术进行图像混合处理,并通过具体的代码示例来进一步阐述这一过程中的关键技术点。 ### 一、OpenCV与CUDA简介 #### 1. OpenCV(Open Source Computer Vision ...
- **Sobel算子**:用于计算一阶、二阶或混合图像差分,可以检测图像的边缘。例如`cvSobel()`函数,输入图像`src`和输出图像`dst`,以及x方向和y方向的差分阶数。 - **Laplace算子**:用于检测图像的二阶导数,能...
浅墨出品,分享精神至上~ ...利用OpenCV载入了dota2英雄剑圣的原画和dota2 logo,进行多通道图像混合操作。 博文《【OpenCV入门教程之五】 分离颜色通道&多通道图像混合》的配套详细注释源代码。 博文链接: ...
本教程将详细解释如何在MATLAB环境中调用OpenCV库来实现混合高斯模型进行背景建模。 首先,让我们了解混合高斯模型。GMM是一种概率密度函数的组合,它由多个高斯分布构成,每个高斯分布代表数据的一个潜在模式。在...
线性混合:对两幅图像(f0(x)和f1(x))或两段视频(同样为(f0...图像混合中通过组合一些给定的单通道数组,将这些孤立的单通道数组合并成一个多通道的数组,从而创建出一个由多个单通道阵列组成的多通道阵 列。
这通常涉及到图像的混合或权重分配。OpenCV的`cv::addWeighted`函数可以帮助我们实现这一目标,通过给每个像素分配适当的比例来自两张图片。 4. **图像输出**:最后,将处理后的图像保存为新的单张图片。OpenCV的`...
利用OpenCV载入了dota2英雄幻影刺客的原画和dota2 logo,进行ROI区域定义和图像混合处理的一个非常有趣的示例程序。 博文《【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析》的配套详细注释源代码。 ...
基于opencv3.4.3的,冈萨雷斯的《数字图像处理》第三章3.7小节混合空间增强法的实现。欢迎大家拍砖,以求斧正!o(* ̄︶ ̄*)o 若下载代码的话,记得改一下图片路径,我没做图片是否为空的判断,直接运行,图片路径...
### OPENCV图像处理的函数说明 #### 概述 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,提供了大量的图像处理和计算机视觉算法。这些算法被广泛应用于研究、开发以及产品中,涉及领域...
OpenCV 提供了 cv2.addWeighted() 函数来实现图像混合运算。例如: ``` dst = cv2.addWeighted(img1, 0.7, img2, 0.3, 0) cv2.imshow('dst', dst) cv2.waitKey(0) cv2.imwrite('3.png', dst) cv2.destroyAllWindows...