У меня проблема с функцией OpenCV cvCvtColor.
Вот код, который я использовал:
#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;
}
Это «необработанное исключение в« 0x1002e4e4 »в« opencvsample.exe »: 0xC0000005: нарушение прав доступа чтения« 0xffffffff ». (возможно я делаю ошибки в переводе, у меня русский VS2008).
Это происходит на линии
cvCvtColor( g_image_copy, g_gray, CV_BGR2GRAY );
Что мне нужно сделать, чтобы решить проблему?