|
按照书上的编程
却出现问题,请高手指点:
void COpenCVTest2Dlg::OnTest()
{
// TODO: Add your control notification handler code here
srcImage=cvLoadImage(path,-1);
grayImage=cvCreateImage(cvGetSize(srcImage),IPL_DEPTH_8U,1);
cout<<"srcImage的信道数目:"<<srcImage->nChannels<<endl;
if(srcImage->nChannels>1)
{
cvCvtColor(srcImage,grayImage,CV_BGR2GRAY);
}
else
{
grayImage=cvCloneImage(srcImage);
}
ROI_rect.x=0;
ROI_rect.y=0;
ROI_rect.width=grayImage->width;
ROI_rect.height=grayImage->height;
cvSetImageROI(grayImage,ROI_rect);
corners1=cvCreateImage(cvGetSize(grayImage),IPL_DEPTH_32F,1);
corners2=cvCreateImage(cvGetSize(grayImage),IPL_DEPTH_32F,1);
cvNamedWindow("image",0);
cvResizeWindow("image",950,768);
cvCreateTrackbar("qualityLevel","image",&qualityLevel,100,re_find_corners);
}
void COpenCVTest2Dlg::re_find_corners(int)
{
int i=0;
int radius=2;
int thickness=2;
double quality_level=(double)qualityLevel/100+0.02;
double min_distance=(double)minDistance;
cvGoodFeaturesToTrack(grayImage,corners1,corners2,corners,&cornerCount,quality_level,min_distance,NULL);
}
结果报错,错误提示:error C2664: 'cvCreateTrackbar' : cannot convert parameter 5 from 'void (int)' to 'void (__cdecl *)(int)'
None of the functions with this name in scope match the target type |
|