Vim*_*R'j 4 opencv image-processing visual-c++ kalman-filter
我正在使用OpenCV库函数进行项目跟踪.通过使用Camshift()
功能,我可以跟踪我的手,但它并不稳定,即使我的手稳定,跟踪运动很少.所以我无法在正确的位置执行鼠标点击操作.有人请帮我解决这个问题.
void TrackingObjects::drawRectangle(CvRect objectLocation){
CvPoint p1, p2,mou;
CvRect crop;
p1.x = objectLocation.x;
p2.x = objectLocation.x + objectLocation.width;
p1.y = objectLocation.y;
p2.y = objectLocation.y + objectLocation.height;
cvRectangle(image,p1,p2,CV_RGB(0,255,0),1,CV_AA,0);
mou.x=(p2.x-p1.x)/2;
mou.x=p1.x+mou.x;
mou.y=(p2.y-p1.y)/2;
mou.y=p1.y+mou.y;
SetCursorPos(mou.x,mou.y);
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我通过obectLocation
参数得到跟踪的对象位置,并且我在跟踪区域上绘制了矩形.通过获得它的中心我做了鼠标移动.
在关闭手掌以进行MouseDown
事件时,跟踪对象的位置已经改变.
归档时间: |
|
查看次数: |
2131 次 |
最近记录: |