、次のようになります。読み取りデータ - OpenCVの私は.ymlファイル形式のデータを持っている
は%YAML:1.0
rotMatrix1:
- !!opencv-matrix
rows: 3
cols: 1
dt: d
data: [ -2.3829520379560337e-01, -3.7857313177578661e-01, -1.2002438267340013e-01 ]
- !!opencv-matrix
rows: 3
cols: 1
dt: d
data: [ -1.9532717166408006e-01, -1.9842197713512208e-01, -2.4142492122139054e-02 ]
- !!opencv-matrix
rows: 3
cols: 1
dt: d
data: [ 7.0848561493555007e-02, -1.5300625945509461e-01, -2.2789227495909796e-03 ]
- !!opencv-matrix
rows: 3
cols: 1
dt: d
data: [ -6.4432249078642076e-02, 2.6156730119463567e-01, -1.0216960054886982e-01 ]
ファイルは一つだけのノード名(rotMatrix1)が、このノード例えば下の10種類が含まれていますデータが保存されます。 opencvを使用して個々の1x3マトリックスにアクセスするにはどうすればよいですか?私はすでに試した何
は:: CVを使用するFileNodeIteratorですが、私は任意のヘルプ
FileStorage fs(inputData, CV_STORAGE_READ)
FileNode fn= fs["rotMatrix1"];
for(cv::FileNodeIterator it= fn.begin(); it!= fn.end(); ++it)
{
cv::FileNode node= *it;
double data= (double)node
}
fs.release();
おかげ
に注目しました!
あなたは_exact_ YAMLファイルを投稿することができますか? OpenCVはyamlがフォーマットされていないと言っています – Miki
おそらくコピー&ペーストの問題です。質問の書式設定のためにスペース/タブを削除しないようにしてください – Miki
実際に.ymlファイルは、OpenCVで10個の画像から 'calibrateCamera'機能を使ってカメラ較正を行った後、' cv :: FileStorage'によって作成されます。ファイル全体は[link](http://www.filedropper.com/calib)または[link](http://s000.tinyupload.com/index.php?file_id=07914558306087960523) – nasil122002