Visual c++ CVTColor问题:“opencvsample.exe”中“0x1002e4e4”处未处理的异常:0xC0000005:访问读取冲突“0xFFFFFF”

Visual c++ CVTColor问题:“opencvsample.exe”中“0x1002e4e4”处未处理的异常:0xC0000005:访问读取冲突“0xFFFFFF”,visual-c++,opencv,Visual C++,Opencv,我对OpenCV函数CVTColor有问题。 以下是我使用的代码: #include "cv.h" #include "highgui.h" int main(void) { int g_thresh = 100; CvCapture* capture = cvCreateCameraCapture(0); IplImage* g_image = cvQueryFrame(capture); IplImage* g_image_copy = cvCloneImage(g_i

我对OpenCV函数CVTColor有问题。 以下是我使用的代码:

#include "cv.h"
#include "highgui.h"

int main(void)
{
 int  g_thresh = 100;
 CvCapture* capture = cvCreateCameraCapture(0); 
    IplImage* g_image = cvQueryFrame(capture); 
 IplImage* g_image_copy = cvCloneImage(g_image);
 cvNamedWindow( "Contours", 1 );
 cvShowImage( "Contours", g_image );

 IplImage* g_gray = cvCreateImage( cvSize(g_image->width, g_image->height), g_image->depth, 1 );


 cvCvtColor( g_image_copy, g_gray, CV_BGR2GRAY );
 cvThreshold( g_gray, g_gray, g_thresh, 255, CV_THRESH_BINARY );
 CvMemStorage*  g_storage = cvCreateMemStorage(0);
 CvSeq* contours = 0;

 cvFindContours( g_gray, g_storage, &contours );
 cvZero( g_gray );
 if( contours ){
  cvDrawContours(
   g_gray,
   contours,
   cvScalarAll(255),
   cvScalarAll(255),
   100 );
 }

 cvShowImage( "Contours", g_gray );
 cvWaitKey();

 return 0;
}
opencvsample.exe中0x1002e4e4处存在未处理的异常:0xC0000005:访问读取冲突0xFFFFFF。也许我在翻译时会出错,我有俄语VS2008。 它发生在第二行

cvCvtColor( g_image_copy, g_gray, CV_BGR2GRAY );

我需要做什么来解决这个问题?

我的应用程序中的CVTColor调用也有同样的问题。用它们的调试版本替换建议的库为我解决了这个问题。 我用过:

链接我的应用程序而不是

cv200.lib, cxcore200.lib, highgui200.lib
顺便说一句:切换到OpenCV 2.1后出现了同样的问题-使用调试版本再次起作用

cv200.lib, cxcore200.lib, highgui200.lib