2009年4月28日星期二

OpenCV1.1 使用时遇到的几个问题

在安装目录下的_make文件夹中可以找到solution文件

1,OLE初始化错误

U have to disable videoInput: go to _highgui.h, comment line 96
("#define HAVE_VIDEOINPUT 1") and recompile

2, 编译cvaux错误:error C2039: 'foreground_regions' : is not a member of 'CvFGDStatModel

据说这是个古老的bug

在cvaux.h文件中,

搜索关键字foreground_regions,

第1137行
CvMemStorage* storage; /*storage for 揻oreground_regions?/ \
CvSeq* foreground_regions /*foreground object contours*/

改为如下形式:

CvMemStorage* storage; /*storage for foreground_regions*/ \
CvSeq* foreground_regions /*foreground object contours*/

这样错误就消失了.开源的果然有bug呀.真是需要不断探索了

而且每一行后面的这些"\"是表下一行是上一行的接续.如

define可以替代多行的代码,例如MFC中的宏定义(非常的经典)

#define MACRO(arg1, arg2) do { \
/* declarations */ \
stmt1; \
stmt2; \
/* ... */ \
} while(0) /* (no trailing ; ) */
关键是要在每一个换行的时候加上一个"\"

没有评论:

发表评论