私は.yamlファイルから行列を読み込むしようとしていますが、OpenCVのは私に次のエラーを与える:OpenCVのStoragefileエラー:
OpenCV Error: Parsing Error (myFile.yaml(1): valid xml should start with ') OpenCV Error: Parsing Error (myFile.yaml(1): Tag should start with '<'> in unknown function)
これが正常に動作whcihストレージファイル、に私の書き込みです:
cv::FileStorage fs("myFile.yaml", cv::FileStorage::APPEND);
while(counter<_imgPtrVector.size()){
unsigned char* _pointer=(unsigned char*)_imgPtrVector.at(counter);
cv::Mat _matrixImage(cv::Size(width,height), CV_8UC1,_pointer , cv::Mat::AUTO_STEP);
fs <<"Matrix"<<_matrixImage;
counter++;
}
しかし、同じファイルからデータをロードしたいとき、私はそれらのエラーを受け取りました。これはストレージファイルから読み取るためのコードです:
cv::FileStorage f("myFile.yaml", cv::FileStorage::READ);
cv::Mat mat(cv::Size(width,height), CV_8UC1);
if(f.isOpened()){
cv::FileNode n = f["Matrix"];
if (n.type() != cv::FileNode::SEQ){
std::cout << "error!";
}
f["Matrix"] >> mat;
}
追加する情報がある場合は、独自の質問を編集して追加してください。あなたが実際に書いたものを書いたように見えるので、他人の答えを編集しないでください。 –
こんにちはルーク申し訳ありませんが、私は意図していませんでした。 – user261002
あなた自身の質問を編集するもう1つの点は、編集内容がすぐに表示されることです。他のユーザーの回答を編集すると、それらの編集内容は他のユーザーが表示する前に承認する必要があり、編集内容が拒否された場合は表示されません。カールの答えに対するあなたの編集が実際に拒否されたようです。 –