[英]OpenCV Error: Assertion failed (i < src.channels()) in cvSplit
我正在使用openCV for C ++運行一個基本應用程序。 我試圖使用cvSplit()
將圖像分割成rgb組件,如下所示:
CvMat* mat;
//initialize mat
CvMat* b = cvCreateMat(mat->rows, mat->cols, CV_8UC1);
CvMat* g = cvCreateMat(mat->rows, mat->cols, CV_8UC1);
CvMat* r = cvCreateMat(mat->rows, mat->cols, CV_8UC1);
cvSplit(mat, b, g, r, NULL );
它構建得很好,但是當我嘗試運行它時,我收到以下錯誤:
OpenCV Error: Assertion failed (i < src.channels()) in cvSplit, file /home/username/Downloads/OpenCV-2.4.0/modules/core/src/convert.cpp, line 1196
terminate called after throwing an instance of 'cv::Exception'
這個錯誤意味着什么,我該如何解決這個問題呢?
您用來創建Mat的IplImage應該是彩色的。 您需要三個通道才能使用cvSplit
。 您可以在調試器中使用IplImage->nChannels
進行檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.