opencv学习之路(10)、ROI与mask掩码
一、ROI

#include<opencv2/opencv.hpp>
using namespace cv; void main(){
Mat img=imread("E://0.jpg");
Mat logo=imread("E://opencv.jpg");
Mat ROI=img(Rect(,,logo.cols,logo.rows));//x,y,w,h xy坐标,宽度,高度
//Mat ROI=img(Range(20,20+logo.rows),Range(20,20+logo.cols));//纵坐标范围,行坐标范围
logo.copyTo(ROI);//logo复制到ROI上面 imshow("img",img);
waitKey();
}
低级融合

二、mask掩码

图像高级融合
#include<opencv2/opencv.hpp>
using namespace cv; void main(){
Mat img=imread("E://0.jpg");
Mat logo=imread("E://opencv.jpg");
Mat mask=imread("E://opencv.jpg",);//以灰度图的形式读入
bitwise_not(mask, mask);//图像取反,白色背景变黑
imshow("mask",mask);
threshold(mask, mask, , , THRESH_BINARY);//二值化,50这个取值是经过调试后选择的,若取值为100则左下角的标志会消失
imshow("threshold", mask); Mat ROI=img(Rect(,,logo.cols,logo.rows));//x,y,w,h xy坐标,宽度,高度
logo.copyTo(ROI,mask);//logo复制到ROI上面 imshow("img",img);
waitKey();
}

图像加法
#include<opencv2/opencv.hpp>
using namespace cv; void main(){
Mat img1=imread("E://3.jpg");
Mat img2=imread("E://4.jpg");
Mat mask=Mat::zeros(img1.size(),CV_8SC1);//纯黑
circle(mask,Point(mask.cols/,mask.rows/),,Scalar(),-,);
Mat dst;
add(img1,img2,dst,mask);
imshow("result",dst);
waitKey();
}

opencv学习之路(10)、ROI与mask掩码的更多相关文章
- opencv学习之路(41)、人脸识别
一.人脸检测并采集个人图像 //take_photo.cpp #include<opencv2/opencv.hpp> using namespace cv; using namespac ...
- opencv学习之路(31)、GrabCut & FloodFill图像分割
一.GrabCut 1.利用Rect做分割 #include "opencv2/opencv.hpp" using namespace cv; void main() { Mat ...
- opencv学习之路(27)、轮廓查找与绘制(六)——外接圆、椭圆拟合、逼近多边形曲线、计算轮廓面积及长度、提取不规则轮廓
一.最小外接圆 #include "opencv2/opencv.hpp" #include<iostream> using namespace std; using ...
- opencv学习之路(21)、模板匹配及应用
一.模板匹配概念 二.单模板匹配 #include "opencv2/opencv.hpp" #include <iostream> using namespace s ...
- opencv学习之路(40)、人脸识别算法——EigenFace、FisherFace、LBPH
一.人脸识别算法之特征脸方法(Eigenface) 1.原理介绍及数据收集 特征脸方法主要是基于PCA降维实现. 详细介绍和主要思想可以参考 http://blog.csdn.net/u0100066 ...
- opencv学习之路(39)、PCA
一.PCA理论介绍 网上已经有许多介绍pca原理的博客,这里就不重复介绍了.详情可参考 http://blog.csdn.net/zhongkelee/article/details/44064401 ...
- opencv学习之路(29)、轮廓查找与绘制(八)——轮廓特征属性及应用
一.简介 HSV颜色空间(hue色调,saturation饱和度,value亮度) 二.HSV滑动条 #include "opencv2/opencv.hpp" #include ...
- opencv学习之路(30)、分水岭算法及图像修补
一.简介 二.分水岭算法 #include "opencv2/opencv.hpp" using namespace cv; void main() { Mat srcImg = ...
- opencv学习之路(26)、轮廓查找与绘制(五)——最小外接矩形
一.简介 二.轮廓最小外接矩形的绘制 #include "opencv2/opencv.hpp" using namespace cv; void main() { //轮廓最小外 ...
随机推荐
- Hibernate.编写xml文件无自动提示信息
Hibernate.编写xml文件无自动提示信息 注意: 配置 xxxx.hbm.xml 文件的自动提示.和配置 hibernate.cfg.xml 文件的提示,操作步骤是一样的.只是复制的文件内容. ...
- shadow一键安装
https://blog.csdn.net/qq_4278923/article/details/80909686
- kafka 单机配置
http://blog.csdn.net/jingshuigg/article/details/24439637 . su root : chown -R hadoop:hadoop version- ...
- hive-drop-import-delims选项对oracle的clob无效
工作过程中发现了用sqoop将oracle中的数据导入到hive时,会因为oracle中类型为clob的字段中存在换行时,会造成hive的数据错位.即使加上了 --hive-drop-import-d ...
- 5.JVM的内存区域划分
一.JVM介绍 1. 什么是JVM? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟 ...
- E. Bear and Drawing
E. Bear and Drawing time limit per test 1 second memory limit per test 256 megabytes input stan ...
- codeforces 979C Kuro and Walking Route
题意: 给出一棵树,其中有两个点,x和y,限制走了x之后的路径上不能有y,问可以走的路径(u,v)有多少条,(u,v)和(v,u)考虑为两条不同的路径. 思路: 简单树形dp,dfs统计在x到y路径( ...
- Spark学习之路 (十五)SparkCore的源码解读(一)启动脚本
一.启动脚本分析 独立部署模式下,主要由master和slaves组成,master可以利用zk实现高可用性,其driver,work,app等信息可以持久化到zk上:slaves由一台至多台主机构成 ...
- sql server 中后缀为.mdf的文件是干什么用的??
在微软的SQL Server 2000 数据库有三种类型的文件: 1)主要数据文件(扩展名.mdf是 primary data file 的缩写) 主要数据文件包含数据库的启动信息,并指向数据库中的其 ...
- Linux服务器---邮件服务器dovecot
安装dovecot Dovecot是CentOS系统中著名的POP3/IMAP服务器实现.POP3/IMAP是从邮件服务器中读取邮件时使用的协议,POP3将邮件全部从服务器中拖取下来:IMAP则每次从 ...