你可以用OpenCV下的CvvImage代替CImage,再看你的img1结构是否已经赋好值。
还想问一下:)
我的程序是这样的
void CIctFaceRecogDoc::AddObj(CImage &img, CRect roi, CStringList *otherImages)
{
... ...
CImage *cimg = &img;
IplImage* image = cimg->GetImage();
* img1 = detect_and_draw(image);
CImage img2 ;
img2.CopyOf(img1,-1);
person->AddImage( 0, &img2, roi );
... ...
}
img 是从摄像头上抓取的帧。
以上程序我已经调通了,跟踪到img2,其中的内容是和img1完全相同的,但是调试进入person->AddImage( 0, &img2, roi )后,就出现错误,提示:Image step is wrong in function cvInitMatHeader,C:\\Opencv\\cxcore\\src\\cxarray.cpp(199).
而且img2不是Cimage格式的吗?怎么会合img1完全相同那,也就是都是IplImage的格式? 搞不懂 |