今回は、ファイルに出力。といっても第2回に毛が生えた程度です。
#include "stdio.h"
#include "cv.h"
#include "highgui.h"
// [1] 入力ファイル名
// [2] 出力ファイル名
int main(int argc, char* argv[])
{
if (argc <= 2)
return -1;
// 画像読込み
IplImage* img = cvLoadImage(argv[1]);
// ファイル出力
cvSaveImage(argv[2], img);
cvReleaseImage(&img);
return 0;
}
でOK。
ヘルプより int cvSaveImage( const char* filename, const CvArr* image ); は、ファイルの拡張子をみて自動的にそのフォーマットで保存してくれる。便利です。cvLoadImageで扱う形式の画像をサポートらしい。んでも、画像形式が1チャンネル(8ビット画像)か3チャンネル(24ビットカラー画像)である必要があるよ。それ以外は、cvCvtScale か cvCvtColor 使うようにだって。多分、チャンネルを変換するんだろう。もしくは、cvSave でXMLかYAMLで保存するらしい。
0 件のコメント:
コメントを投稿