OpenCV功能cvtColor轉換矩陣的顏色空間(例如,從RGB轉換爲灰度)。該函數的C++簽名是可以使用OpenCV函數cvtColor來轉換矩陣嗎?
void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0)
能該功能可以與src
相同的對象dst
使用轉換矩陣代替,即?
cv::Mat mat = getColorImage();
cvtColor(mat, mat, CV_RGB2GRAY);
(我知道,無論哪種方式,作爲目的地有不同數目的通道比源極,它仍然需要分配一個新的內存塊的目標。)
更多一般來說,OpenCV API中是否有一個約定來確定何時可以以這種方式使用函數?
當源和目標具有相同的通道數時可以完成。例如RGB到YUV,RGB到YCbCr,反之亦然等等。 – sgarizvi 2013-03-11 17:23:10