技术标签: matlab OpenCV 图片叠加 opencv
最近在随浅墨的博客学习OpenCV,受益匪浅,这系列博客记录OpenCV的学习历程,也对自己的学习做一个笔记。
首先感谢浅墨的OpenCV学习系列教程,帮助很大,在此添加浅墨文章的链接。
以下结合教程写出关于使用OpenCV实现图像叠加的代码以及一些原理解释,同时结合MATLAB进行学习。
由浅入深一步一步学习,首先实现图像叠加,这里添出background图(大图),logo图(小图),实现logo嵌入background任意感兴趣部分,这里有两种方法,先把两种方法的代码添出,再做进一步讨论。先添图片,background和logo。
background:
logo:
方法一:
//---------------------------------------------------------------------------
// 【程序说明】
// 实现功能:图像叠加
// 重要函数:imread,imshow,namedWindow(可参考浅墨文章)
// Rect,Range,copyTo,addWeighted(参考文章分解)
//---------------------------------------------------------------------------
#include<iostream>
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
using namespace cv;
int main( )
{
Mat background= imread("dota2.jpg");
Mat logo= imread("logo.jpg");
//载入后先显示
namedWindow("background");
imshow("background",background);
namedWindow("logo");
imshow("logo",logo);
Mat imageROI_1;
//ROI图像与原始图像共享数据
imageROI_1=background(Rect(200,10,logo.cols,logo.rows));
namedWindow("imageROI_1");
imshow(
文章浏览阅读830次,点赞2次,收藏16次。 一、初识VBSVbs 是一种变量无关、解释性执行的脚本语言。vbs语言中不区分大小写。语句以换行结束。dim 声明变量;批量名称声明,多个变量之间用逗号分隔:set &..._vbs脚本语法
文章浏览阅读565次。actions和mutations交互时候,传递的是一个包含数据的对象。这个对象包含不同数据。eg.state.js: 保存数据const state = { foods: [], shops: []}export default state问题就是mutations.js里面:1.第二个参数foods是用{}包住,foods传递的是一个包含数据的对象。2.第二个...
文章浏览阅读1.3k次。1 BatchNorm1.1 实现Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shifthttp://d2l.ai/chapter_convolutional-modern/batch-norm.html?highlight=batchnorm2d import torch import torch.nn.functi..._f.batch_norm
文章浏览阅读6.6k次,点赞2次,收藏20次。vue3+ts+element-plus el-table组件二次封装(新增动态设置列的显示与隐藏并且可以随意拖地排序功能、改用vitepress编辑组件文档;新增了单元格编辑功能))新增了单元格编辑键盘事件及第三方组件事件功能;2023-06-08 TTable组件新增整行拖拽排序功能;TTable组件修复表头合并插槽使用失效;TTable组件单元格编辑新增表单校验功能/表格内操作按钮权限配置)新增展开行功能;2024-03-20 TTable组件新增新增第一列既显示(复选、单选)和序列号_vue3+ts+element plus封装表格
文章浏览阅读270次。1.制定好一下系统的学习规划,每天定量,学完什么知识点就掌握,能自己应用,而不是能看懂,写不出来东西。因为现在有很多人都是这样,表面上我是学会了,但是以上手去写但是怎么也写不出来。2.不要自己一个人闷头学,找一套质量不错的视频教程跟着去学习,听课的过程当中一定要把笔记记录下来。笔记当中只记忆重点的结论。把不懂的地方记下来,有时间就去解决。要学会在学习中记好笔记,一定要记得去复习。3.机会都是留给有准备的人,坚持每天学习也考验你的耐性和毅力,中途如果没有什么事情千万不能松懈,一天都不可以,保持一周6天的学_java自学怎样才能达到企业要求
文章浏览阅读2.2w次。1、首先需要理解async 和 await的基本含义 async 是一个修饰符,async 定义的函数会默认的返回一个Promise对象resolve的值,因此对async函数可以直接进行then操作,返回的值即为then方法的传入函数// 0. async基础用法测试async function fun0() { console.log(1) return 1}fun0().then( x => { console.log(x) }) // 输出结果 1,.._js await
文章浏览阅读473次,点赞2次,收藏5次。STM32创建新工程第一步下载固件包第二步创建工程第三步完成配置,修改main文件为空执行编译第一步下载固件包网址如下:1、Openedv:http://openedv.com/posts/list/6054.htm2、ST官网:https://www.stmcu.com.cn/Designresource/list/STM32F1/firmware_software/firmware_software固件库介绍:Libraries:CMSIS、STM32F10x_StdPeriph_Driv_菲斯塔固件
文章浏览阅读1.4k次。1.VMware必须设置成桥接模式,且要在“编辑-》虚拟网络编辑器”里指定桥接到HOST主机的物理网卡 2.Ubuntu虚拟机、HOST主机和目标开发板的IP必须在同一个网段 3.将网线连接开发板并上电,否则Ubuntu虚拟机的ifconfig不会显示已配置的网络设置..._ubuntu18 虚拟机连接开发板
文章浏览阅读377次。原帖地址:http://blog.csdn.net/phunxm/article/details/42174937/仅供我个人收藏学习,原博主如不同意请联系qq651263878进行删除,在此表示感谢以及歉意。1.iPhone尺寸规格后续上市的iPhone7以及iPhone7plus 与六代相同1 inch = 2.54cm = 25.4mm上表中的宽高(width/height)为手机的物理尺..._ios html注入屏幕尺寸适配
文章浏览阅读719次。教案与学生成果:制作电子贺卡狮山镇松岗中心小学 朱蔼玲【教学目的与要求】(1)、通过利用计算机制作贺卡,让学生理解、掌握并熟练运用word这一章的各知识点。(2)通过练习掌握word提供的强大的编辑功能,并能进行综合运用,完成贺卡的制作。(3)进一步熟练掌握用绘图工具绘制图形、文本框及自选图形的制作与修饰、艺术字的插入等操作。(4)通过制作电子贺卡,培养学生动手实践和主动探究的兴趣。为学生创造现代..._计算机作业电子贺卡
文章浏览阅读2.3k次,点赞3次,收藏15次。<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <tit_html圆角矩形边框
文章浏览阅读568次。程序平时运行正常,每天总能出现几次,数据库链接不上异常,ORM 使用的是 iBatis ,那位兄弟遇到过呀?未经处理的异常: IBatisNet.DataMapper.Exceptions.DataMapperException: Unable to open connection to "ADO.Net driver for MySQL". ---> System.Security.Au..._为验证提供的消息或签名已被更改