本文主要阐述XML/YAML文件在OpenCV3中如何实现输入输出操作。
<1>:
XML/YAML文件,顾名思义指的是文件的格式,即以.XML为后缀的文件和以.YAML为后缀的文件。
<2>
所谓XML(英文全称eXtensible Markup Language)翻译成中文为“可扩展标示语言”。首先,XML 是一种元标记语言。所谓“元标记”,就是开发者可以根据自身自身需要定义自己的标记。
<3>
所谓YAML,YAML是可读性高,用来表达资料序列的格式。.yml和.yaml同为YAML格式的后缀名。
总之,XML和YAML是使用非常广泛的文件格式,可以利用XML或者YAML格式的文件存储和还原各式各样的数据结构,当然,它也可以存储和载入任意复杂的数据结构。
<4> 写入和读取数据到XML和YAML文件中的步骤:
1—实例化一个FileStorage类的对象,利用带参数的构造函数完成初始化,或者利用FileStorage::open()成员函数辅助初始化。
2—使用流操作符<<进行文件写入操作,或者>>进行文件读取操作,类似于C++中文件的输入输出流。
3—使用FileStorage::release()函数析构掉FileStorage类对象,同时关闭文件。
<5> 下面分别对<4>中的三个步骤进行详解:
【第一步】XML/YAML文件的打开
(1)准备文件的写操作
FileStorage是OpenCV中XML和YAML文件的存储类,封装了所有相关的信息,FileStorage类是 OpenCV从文件中读取数据或像文件中写数据时必须使用的一个类。<