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

江苏宏远建设集团网站网上销售型的企业网站

江苏宏远建设集团网站,网上销售型的企业网站,wordpress中级教程,网站建设捌金手指花总十六在上一节#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/816563/

相关文章:

  • 蕲春县住房和城乡建设局网站广东建设局网站首页
  • 网站优化工作室共享经济型网站开发
  • 自己做网站好还是购买网站好网站建设平台报价
  • 设计师配色网站太原建站模板源码
  • 学计算机的做网站的叫什么工作wordpress商用收费不
  • 青岛网站建设谁家好一些网页微信怎么登陆
  • 企业网站seo优做网站的旅行社
  • 十大免费自助建站上传网站到空间
  • 深圳企业做网站简约个人网站
  • 茂名放心营销网站开发网站怎么做app
  • php语言 网站建设专业的外贸网站建设公司价格
  • 看英语做游戏的网站wordpress与微信对接
  • 企业网站打不开了看守所加强自身网站建设工作
  • 长汀网站建设做电池的有哪些网站
  • 做软件常用的网站厦门建设局地址
  • 沭阳三剑客做网站科技 公司 响应式 网站
  • 深圳网站建设培训哪家好曲阜网架公司
  • wordpress建立网站实例贵阳网站开发谁家做的好
  • 百度网站推广怎么收费中国科技成果
  • 枣庄企业网站建设wordpress 评论群发
  • 网站视觉设计方案视频制作素材
  • 哪个网站专做民宿wordpress 主题教程
  • 网站后台 设计北京海淀区官网
  • 公司官网网站建设想法wordpress oss
  • 如何自己创建网站招聘网站代理
  • 手机网页视频提取工具seo网站是什么
  • seo网站优化公司龙岩网站设计一般要多久
  • 江苏自助建站系统哪家好go语言网站开发
  • 建设网站 注册与登陆wordpress产品上传
  • 河北省住房与建设厅网站陶瓷刀具网站策划书