CV_IMPL RotatedRect
CamShift2(Mat imgProb, CV_IN_OUT Rect& windowIn, TermCriteria criteria)
//CvConnectedComp* _comp,
//CvBox2D* box ) ///_comp:保存运算结果,包括新的search window的位置和面积,box: 包含被跟踪物体的最小矩形
{
const int TOLERANCE = 10; ///算法自适应窗口变化时每次扩大的范围
Moments muu; ///用于计算多边形的最高达三阶的所有矩以及用于查找多边形中心
double m00 = 0, m10, m01, mu20, mu11, mu02, inv_m00; ///m00:表示0阶矩,m01:表示1阶水平矩,m10:表示一阶垂直矩
double a1, b1, c1, xc, yc;
double rotate_a, rotate_c;
double theta = 0, square;
double cs, sn;
double length = 0, width = 0;
RotatedRect itersUsed; ///返回的旋转Rect(成员变量center,size,angle)
// CvConnectedComp comp; ///保存运算结果,包括新的search window的位置和面积
Mat cur_win, mat = imgProb;
CV_FUNCNAME( "cvCamShift2" );
{///Begin///
if (imgProb.empty())
cout<<"don't get image"<<endl; ///检验是否得到有效图像
CV_CALL( meanShift( mat, windowIn, criteria)); ///移动固定搜索框的中心到质心
windowIn.x -= TOLERANCE; ///扩大搜索框
if( windowIn.x < 0 )
windowIn.x = 0;
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余4页未读,立即下载