user2735131
質問する
801 次
1 に答える
2
うーん.. cvCvtColorを探していると思います:
void cvCvtColor(const CvArr *src, CvArr *dst, int code)
イメージをある色空間から別の色空間に変換します。
http://opencv.willowgarage.com/documentation/c/miscellaneous_image_transformations.html
たとえば、RGBA 画像があり、それを BGR に変換して保存したい場合:
cvCvtColor(rgba_src, bgr_dst, CV_RGBA2BGR)
実際のコードでは、次のようになります。
/* Create an IplImage with 3 channels and 8 bits per channel,
with the same dimensions that rgba_src*/
IplImage *bgr_dst = cvCreateImage(cvGetSize(rgba_src), IPL_DEPTH_8U, 3);
cvCvtColor(rgba_src, bgr_dst, CV_RGBA2BGR);
cvReleaseImage(&rgba_src);
そんな感じ。キャプチャ デバイスからのフレームである場合は、rgba_src を解放しないでください。
于 2013-09-17T05:27:52.557 に答える