cvCvtColor(...),是Opencv裡的顏色空間轉換函數,可以實現RGB顏色向HSV,HSI等顏色空間的轉換,也可以轉換為灰度圖像
cvtColor for Mat ;
參數CV_RGB2GRAY是RGB到gray,
參數CV_GRAY2RGB是gray到RGB .處理結果是彩色的,則轉灰色就是了:
cvCvtColor無效(* const的CvArr SRC,DST CvArr *,INT代碼);
SRC
輸入的8-bit,16-bit或32-bit單倍精度浮點數影像。
DST
輸出的8-bit, 16-bit或32-bit單倍精度浮點數影像。
 
函數使用範例:
這裡給出將RGB圖像轉換為灰度和HSV的例子:
的IplImage *的src = cvLoadImage(“4085_1.jpg”,1); //原圖
IplImage結構* dst_gray = cvCreateImage(cvGetSize(SRC),src->深入,1); //灰度圖
IplImage結構* dst_image和= cvCreateImage(cvGetSize(SRC),32,src-> N溝道);
IplImage結構* src_image_32 = cvCreateImage(cvGetSize(SRC),32,src-> N溝道);
//這兩個圖需要是32浮點位的,因為對原圖進行歸一化後得到的是浮點數
cvCvtColor(src,dst_gray,CV_BGR2GRAY);//得到灰度圖
cvConvertScale(src,src_image_32,1.0/255.0,0);//將原圖RGB歸一化到0-1之間
cvCvtColor(src_image_32,dst_image和,CV_BGR2HSV); //得到HSV圖
 
ref:
http://baike.baidu.com/view/2816025.htm
arrow
arrow
    全站熱搜

    大玩家闖天涯 發表在 痞客邦 留言(0) 人氣()