'foreground_regions' 问题

来源:互联网 发布:淘宝网安全控件下载 编辑:程序博客网 时间:2024/05/17 23:23
报错如下:

C:/Program Files/OpenCV/cvaux/src/cvbgfg_acmmm2003.cpp(411) : error C2039: 'foreground_regions' : is not a member of 'CvFGDStatModel'
../../cvaux/include/cvaux.h(1240) : see declaration of 'CvFGDStatModel'
C:/Program Files/OpenCV/cvaux/src/cvbgfg_acmmm2003.cpp(416) : error C2039: 'foreground_regions' : is not a member of 'CvFGDStatModel'
../../cvaux/include/cvaux.h(1240) : see declaration of 'CvFGDStatModel'
C:/Program Files/OpenCV/cvaux/src/cvbgfg_gaussmix.cpp(343) : error C2039: 'foreground_regions' : is not a member of 'CvGaussBGModel'
../../cvaux/include/cvaux.h(1300) : see declaration of 'CvGaussBGModel'


其所在行代码如下:
411: model->foreground_regions = first_seq;
416: model->foreground_regions = NULL;
1240:typedef struct CvFGDStatModel
{
CV_BG_STAT_MODEL_FIELDS();
CvBGPixelStat* pixel_stat;
IplImage* Ftd;
IplImage* Fbd;
IplImage* prev_frame;
CvFGDStatModelParams params;
}
CvFGDStatModel;
343: bg_model->foreground_regions = first_seq;
1300:typedef struct CvGaussBGModel
{
CV_BG_STAT_MODEL_FIELDS();
CvGaussBGStatModelParams params;
CvGaussBGPoint* g_point;
int countFrames;
}
CvGaussBGModel;

解决方法:
通过搜索关键字foreground_regions,发现在cvaux.h文件中,第1137行注释没有闭合,且有不明原因的

乱码,导致下一行定义的foreground_regions成为注释的一部分,源文件原始代码如下:
CvMemStorage* storage; /*storage for 揻oreground_regions?/ /
CvSeq* foreground_regions /*foreground object contours*/
改为如下形式:
CvMemStorage* storage; /*storage for foreground_regions?*/ /
CvSeq* foreground_regions /*foreground object contours*/
编译通过。在生成Release版的cvauxL.lib时0 error(s), 0 warning(s)
但在生成Debug版的cvauxDL.lib时0 error(s), 8670 warning(s)
原创粉丝点击