《OpenCV 4计算机视觉项目实战 》 —2.11 基本数据存储
【摘要】 本节书摘来自华章计算机《OpenCV 4计算机视觉项目实战》 一书中第二章,第2.11节,作者[西班牙]大卫·米兰·埃斯克里瓦(David Millán Escrivá)[西班牙]维尼休斯·G.门东萨(Vinícius G. Mendon)。
2.11 基本数据存储
在结束本章之前,我们将探讨OpenCV用来存储和读取数据的函数。在许多应用程序中(例如校准或机器学习),当我们完成大量计算时,需要保存这些结果,以便在后续操作中检索它们。OpenCV为此提供了XML / YAML持久层。
写入FileStorage
要把一些OpenCV或其他数值数据写入文件,可以用FileStorage类,同时要使用流运算符<<操作STL流:
要创建保存数据的文件,只需调用构造函数,并提供包含所需扩展名格式的路径文件名(XML或YAML),以及第二个要写入的参数集:
如果要保存数据,只需在第一步给出一个标识符,然后提供想要保存的矩阵或值,通过这种方式来使用流操作符。例如,要保存int变量,只需要编写以下代码行:
否则,可以按如下所示写入/保存mat:
上述代码的结果是YAML格式:
从文件中读取先前保存的文件与save函数非常相似:
第一个阶段是通过调用FileStorage构造函数并使用适当的参数、路径和FileStorage::READ来打开一个保存的文件:
要读取任何存储的变量,只需使用公共的流运算符>>并使用FileStorage对象和带[]运算符的标识符:
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)