如何在c中获取bmp图像的像素数据

时间:2012-10-18 12:52:07

标签: c bmp

如何在C中获取bmp图像的像素数据?

我可以读取图像的结构,但有没有办法显示像素数据?

1 个答案:

答案 0 :(得分:1)

在我看来,用C语言而不是C ++最简单的方法是使用OpenCV。该库包含一个C API,可以让您的生活更轻松。您可以在文档中看到更多详细信息,但是执行这样简单任务的代码看起来就像这段代码:

IplImage* img = 0; 
uchar *data;

// load an image  
img=cvLoadImage("filename.bmp");
if(!img)
{
   printf("Could not load image file: %s\n",argv[1]);
   exit(0);
}

// create a window
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE); 
cvMoveWindow("mainWin", 100, 100);

// show the image
while(1)
{
   cvShowImage("mainWin", img );
   if(cvWaitKey(30) > 0)
   break;
}

// release the image
cvReleaseImage(&img);