opencv三帧差法的追踪

妖啊先生 2017-04-17 11:14:16
opencv三帧差法的追踪,已经检测到运动物体并绘制出而至图像,怎么用最小矩形在原视屏中标记出运动物体。opencv新手求解答,谢谢!
...全文
933 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2017-05-24
  • 打赏
  • 举报
回复
参考C:\OpenCV31\opencv\sources\samples\cpp\facedetect.cpp
沐阳2100 2017-05-24
  • 打赏
  • 举报
回复
不知道现在回复是否晚了! 首先三帧差做动态目标追踪 得到的目标空洞很明显 形状信息不完整 建议使用opencv封装的backgroundsubstractmog2 然后 你得到了二值图像就可以找轮廓了,找轮廓之前最好先形态学处理一下 假设你的二值图像为下面的foreGround Mat findc;//备份 foreGround.copyTo(findc); vector<vector<Point>> contours; cv::findContours(findc, contours, RETR_EXTERNAL, CHAIN_APPROX_NONE); const int maxArea = 800;//筛选一下轮廓 size_t s = contours.size(); for (size_t i = 0; i < s; i++) { double area = abs(contourArea(contours[i])); if (area > maxArea) { Rect mr = boundingRect(Mat(contours[i])); rectangle(src,mr,Scalar(0,0,255),2,8,0); } } 大概就是这个样子 如果回答的不是你要的答案 勿喷 谢谢!
赵4老师 2017-04-17
  • 打赏
  • 举报
回复
建议先编译链接调试OpenCV自带的相关例子代码。

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧