我正在使用OpenCV 2.4.6。我正試圖將4通道RGB IplImage轉換爲4通道HSV圖像。以下是我的代碼。哪個給出錯誤「OpenCV錯誤:斷言未知功能失敗」。我認爲cvCvtColor支持3通道圖像。有沒有辦法將4通道RGB轉換爲HSV或4通道RGB轉換爲3通道RGB?將4通道圖像轉換爲3通道圖像
IplImage* mCVImageColor = cvCreateImageHeader(cvSize(640,480), IPL_DEPTH_8U, 4);
/*Doing something*/
IplImage* imgHSV = cvCreateImage(cvGetSize(mCVImageColor), IPL_DEPTH_8U, 4);
cvCvtColor(mCVImageColor, imgHSV, CV_BGR2HSV); //This line throws exception
我現在正在做這個..但仍然cv :: COLOR_BGRA2HSV是未定義mat b(mCVImageColor); Mat matHSV(mCVImageColor); cv :: cvtColor(b,matHSV,cv :: COLOR_BGRA2HSV); – Tonmoy
但我已經找到COLOR_BGRA2BRG.after,我可以做BGR2HSV。輸出是否與COLOR_BGRA2HSV相同? – Tonmoy
您可以使用直接編碼(BGRA ---> HSV)或按步驟執行(BFRA ---> BGR ---> HSV)。除此之外,結果將是相同的(OpenCV忽略alpha通道)。 – sansuiso