2013年3月6日水曜日

OpenCVのFileStrageではまってしまった


プログラムの変数に設定しようと、各種設定データを.ymlに保存し、FileStrageに読み込もうとした。
ここで、あることにはまったので忘れないようにメモ

症状

パラメータ識別用に文字情報を入れ、起動時にコンソールに表示するために

cv::FileStorage fs(INI_FILE, cv::FileStorage::READ);
if (fs.isOpened()) {
fs["message"] >> s;

のようなコードを書き、ymr内に

%YAML:1.0
message: 25% scale

と書いていたが、プログラムを実行すると、

cv::FileStorage fs(INI_FILE, cv::FileStorage::READ);

で落ちる

最初のパスの問題かと思ったが何度見直しても問題がないので、試行錯誤の結果、原因がわかるまでに非常に時間を要した


原因
YAML内の要素に、数字文字の順の並びを記載すると落ちる

対策
YAML内の要素に、文字数字の順の並び変更

0 件のコメント:

コメントを投稿