Visual c++ 如何使用OpenCV将拜耳转换为RGB,反之亦然

Visual c++ 如何使用OpenCV将拜耳转换为RGB,反之亦然,visual-c++,opencv,Visual C++,Opencv,OpenCV提供了将拜耳转换为RGB的功能,但如何使用此CV_BayerBG2BGR,以及其他类似功能? 我使用了下面的代码,但错误显示为无效通道号。既然我使用RGB图像作为原始图像,那么这个函数实际上是如何工作的呢 void main(){ // Declare and load the image // Assume we have sample image *.png IplImage *originalImage = cvLoadImage("bayer-image.jpg",-1);

OpenCV提供了将拜耳转换为RGB的功能,但如何使用此CV_BayerBG2BGR,以及其他类似功能? 我使用了下面的代码,但错误显示为无效通道号。既然我使用RGB图像作为原始图像,那么这个函数实际上是如何工作的呢

void main(){
// Declare and load the image
// Assume we have sample image *.png
IplImage *originalImage = cvLoadImage("bayer-image.jpg",-1);

// The image size is said to be 320X240
IplImage *bayer2RGBImage;
bayer2RGBImage = cvCreateImage(cvSize(100,100),8,3);
cvCvtColor(originalImage,bayer2RGBImage,CV_BayerBG2BGR);

//Save Convertion Image to file.
cvSaveImage("test-result.jpg",bayer2RGBImage);

//Release the memory for the images that were created.
cvReleaseImage(&originalImage);
cvReleaseImage(&bayer2RGBImage);}
此外,我还想将普通RGB图像转换为拜耳格式(比如双线性),openCV是否也提供此功能

任何帮助都将不胜感激


提前感谢。

不幸的是,OpenCV没有向拜耳转化提供BGR。只有向后转换可用


如果您需要转换为拜耳格式,那么您应该自己实现此转换或使用其他库。

我明白了,谢谢。您对哪家图书馆提供此服务有何经验/建议?