Cでbmp画像のピクセルデータを取得するにはどうすればよいですか?
画像の構造を読み取ることはできますが、ピクセルデータを表示する方法はありますか?
私の意見では、C ++ではなくCでそれを行う最も簡単な方法は、OpenCVを使用することです。このライブラリには、作業を楽にするCAPIが含まれています。ドキュメントで詳細を確認できますが、そのような単純なタスクを実行するためのコードは、次のコードのようになります。
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);