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

建设一个货架网站西安网站建设推广公司

建设一个货架网站,西安网站建设推广公司,wordpress上传附件类型,wordpress d8 4.0在上一节#xff0c;我们实现了桌面捕获功能#xff0c;并成功把桌面图像和麦克风声音发送给对方。在实际应用中#xff0c;有时候会需要把桌面与摄像头图像叠加在一起发送#xff0c;这节课我们就来看下如何实现这一功能。 1.备份与修改 备份demo10并修改demo10为demo11…在上一节我们实现了桌面捕获功能并成功把桌面图像和麦克风声音发送给对方。在实际应用中有时候会需要把桌面与摄像头图像叠加在一起发送这节课我们就来看下如何实现这一功能。 1.备份与修改 备份demo10并修改demo10为demo11. 2.用新队列存放叠加前的图像数据 修改原函数capCam和capScr用新的inCamQue和inScrQue存放摄像头和桌面图像Mat: int fmle::capCam() {videoCap.open(0);cv::Mat camMat;while (true){if (!videoCap.isOpened()){Sleep(1);continue;}BOOL ifSuccess videoCap.read(camMat);if (camMat.empty()){Sleep(1);continue;}if (camMat.cols ! backWidth || camMat.rows ! backHeight){resize(camMat, camMat, cv::Size(backWidth, backHeight));}if (!camMat.empty()){ EnterCriticalSection(videoQueLock);tmpVideoQueObj.type 1;tmpVideoQueObj.tmpMat camMat;tmpVideoQueObj.dataLen camMat.cols*camMat.rows * 3;inCamQue.push(tmpVideoQueObj);if (inCamQue.size() videoDataArrNum){inCamQue.front().dataLen 0;inCamQue.front().tmpMat.release();inCamQue.front().dataLen NULL;inCamQue.pop();}LeaveCriticalSection(videoQueLock);}Sleep(40);}camMat.release();return 0; }int fmle::capScr(){HWND hwnd GetDesktopWindow();cv::Mat scrMat;while (true){scrMat hwndToMat(hwnd);        if (scrMat.cols ! backWidth || scrMat.rows ! backHeight){resize(scrMat, scrMat, cv::Size(backWidth, backHeight));}if (scrMat.data!scrMat.empty()){        cvtColor(scrMat, scrMat, CV_BGRA2BGR);//mainDlg-drawMatOfPub(scrMat);EnterCriticalSection(videoQueLock);tmpVideoQueObj.type 1;tmpVideoQueObj.tmpMat scrMat;tmpVideoQueObj.dataLen scrMat.cols*scrMat.rows * 3;inScrQue.push(tmpVideoQueObj);if (inScrQue.size() videoDataArrNum){inScrQue.front().dataLen 0;inScrQue.front().tmpMat.release();inScrQue.front().dataLen NULL;inScrQue.pop();}LeaveCriticalSection(videoQueLock);}Sleep(40);}scrMat.release();    return 0; } 3.分别从桌面和摄像头队列取数据并叠加 新建一线程调用mixVideo实现桌面和摄像头图像的叠加 int fmle::mixVideo(){cv::Mat camMat, scrMat, imageROI;while (true){if (inScrQue.size() 0 inCamQue.size() 0){EnterCriticalSection(videoQueLock);camMat inCamQue.front().tmpMat.clone();resize(camMat, camMat, cv::Size(120, 80));scrMat inScrQue.front().tmpMat.clone();if (!camMat.empty() !scrMat.empty()){imageROI scrMat(cv::Rect(0, 0, camMat.cols, camMat.rows));addWeighted(imageROI, 0, camMat, 1, 0.0, imageROI);mainDlg-drawMatOfPub(scrMat);}camMat.release();scrMat.release();imageROI.release();LeaveCriticalSection(videoQueLock);}Sleep(40);}return 0; } 4.调试运行 效果如下
http://www.zqtcl.cn/news/770229/

相关文章:

  • 一个网站怎么做聚合洛可可设计公司贾伟
  • 什么是优化型网站网页设计作业在线网站首页
  • 关于网站建设广告词英文案例网站
  • 有哪些可以做策划方案的网站国家域名
  • vk网站做婚介做seo排名好的网站
  • 广州企业网站建设公司苏州建网站提
  • html如何做购物网站天元建设集团有限公司法人代表
  • 教育培训机构排名seo是搜索引擎营销
  • 做奢侈品网站有哪些沧州手机建站哪家好
  • 德州网站网站建设广西房管局官网
  • 白石桥做网站公司seo顾问服务四川
  • 网站建设注册哪类商标十大网页设计公司
  • 网站建设的源代码有什么作用金华网站建设优化技术
  • 个人网站申请做瞹瞹嗳视频网站在线观看
  • 做网站 融资玉石网站建设的定位
  • 自己做的网站字体变成方框seo同行网站
  • 宁波网站建设培训微信小程序开发平台官网
  • 西部数码做的网站打不开哈尔滨模板建站推荐
  • 外贸网站建设流程杭州软件定制开发
  • 网站的首页面设计软文推广特点
  • 网站描述在哪里写网页设计图片怎么换
  • 深圳网站关键词优化推广做mod游戏下载网站
  • 通达oa 做网站wordpress动转换标签别名
  • 三亚学做网站培训招聘网站排名
  • 企业网站建设费用需要多少钱怎样下载建设银行信用卡网站
  • 厦门建网站公司怎么做服装外贸网站
  • 做淘宝客网站用什么程序好仿站下载工具
  • 网站地图开发国家住房和城乡建设部中国建造师网站
  • 巫山网站建设泉州市培训建设系统中心网站
  • 网站开发国内外研究背景室内设计师收入高吗