在不知道矩阵名称的情况下读取YML
Read YML in OpenCV without knowing the matrix name
是否可能在OpenCV中YML文件并在文件中检索第一个矩阵而不知道其名称?我这样做是这样做的:
cv::FileStorage fs("foo.yml", cv::FileStorage::READ);
cv::Mat bar;
fs["A"] >> bar;
如何在不知道a命名的情况下实现这一目标?
我对不手动解析文件并弄清楚名称的解决方案感兴趣。
如果您知道YML的结构,则可以使用FileNode
导航,然后检索元素:
#include <opencv2opencv.hpp>
int main()
{
cv::Mat1b src(2, 3);
cv::randu(src, 0, 256);
{
// Create a simple YML file
cv::FileStorage fs("test.yml", cv::FileStorage::WRITE);
fs << "foo" << src;
}
// Read the saved data without knowing the name
cv::FileStorage fs("test.yml", cv::FileStorage::READ);
// Get first node
cv::FileNode fn = fs.getFirstTopLevelNode();
// Get its name
cv::String name = fn.name();
// Retrieve data as usual
cv::Mat res;
fs[name] >> res;
// Or directly from the FileNode
cv::Mat res2;
fn >> res2;
return 0;
}
相关文章:
- 有没有办法在不使用 getline() 的情况下从.csv文件中读取?
- 在没有密钥的情况下读取密文的剩余噪声预算
- 在 c++ 中连接字符串和整数,以便在 C++ 11 不支持计算机的情况下读取多个文件
- 如何在不知道大小的情况下读取文本文件并存储到数组中
- 在不使用getline的情况下读取C 中的stdin
- 如何迭代在不知道其大小的情况下读取的字符串?
- 在不知道矩阵名称的情况下读取YML
- 我可以在不知道文本文件的列数的情况下读取二维数组中的文件吗?
- C++在不使用字符串流的情况下读取具有任意长度和格式的行的多行文件
- Windows:如何让子进程在不关闭输入匿名管道的情况下读取它
- 如何在不显示十六进制的情况下读取dat文件中的文本?C++
- 有没有办法在不加载的情况下读取 .so 文件的内容
- 如果我在键不存在的情况下读取地图的值,会发生什么情况?
- 如何在不按ENTER和不使用getch()或getche()的情况下读取C++中的字符
- 在不使用临时文件的情况下读取linux命令的输出
- 是否可以在没有安装 Office Excel 或其他先决条件框架的情况下读取 Qt 或 C++ Excel
- 我想在写入过程完成后从二进制文件中读取数据,也可以在没有写入过程的情况下读取数据
- 在未按enter确认的情况下读取组合
- 如何在没有换行符的情况下读取CSV记录"rn"?
- 如何在不知道一行文本有多少元素的情况下读取每个元素?(c++)