OpenCVのMatの値をCSVで保存する。
char name[256]; //ファイル名 sprintf_s(name, 256, "ディレクトリ名\\ファイル名%d.csv", counter); //処理全体をループ内に入れてcounterを回せば、ファイル名に連番が付く //フォルダがない場合は作成(direct.hをインクルードしておく ) if (_mkdir("ディレクトリ名") == 0); //#include <direct.h>を忘れない ofstream save(name); double output; for (int y = 0; y < height; ++y){ //row:列 for (int x = 0; x < width; ++x){ output = data.at<double>(y, x); //画像というか単純に行列のデータ save << dec << output << ","; } //改行 save << endl; } //解放 save.close();
cv::Mat data はCV_64FC1とかを想定したもの。
で、for文で1ピクセルずつ回しているけど、書くのが面倒だったら↓みたいにOpenCVの関数使えば1行で書ける。
//csv変換して出力 save << cv::format(data, "csv");
以上。
![]() |

![]() |
0 件のコメント:
コメントを投稿