上次例程中,介绍了Opencv例程中FileStorage 的基本用法,包括自定义类型的读写操作。这里做一个扩展,介绍Opencv中另外一个例程(EXAMPLE) imagelist_creator,它通过FileStorage 实现文件夹中图片的扫描,创建一个xml的文件列表,这个功能对于需要遍历读取一个文件夹中的所有图片文件十分管用,使用也相当方便。
我们先来看下例程中的程序如何使用。
可以看出如果直接使用例程中的程序,我们需要手动一个一个文件名输入,这将会很麻烦,特别是当图片量很大时,这是个不可能的工作。观察源代码中操作可以发现,FileStorage其实是通过main函数的av参数传递文件名,那如果我们有一个文件事先存储了图片文件名,要输入到FileStorage中就会十分方便,利用ifstream读一个文件名,在利用FileStorage写一个文件名,则这个例程的第二个参数可以换成一个存储了图片文件名的文本文件。那么如何生成这样的一个txt文件呢?幸运地是,dos命令提供了这样的操作。