簡體   English   中英

OpenCV錯誤:斷言失敗(i <src.channels())在cvSplit中

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM