使用 openCV,您可以使用 YML 或 XML 格式保存/加载数据。cv::FileStorage
使用 c++ API很容易。我不能让它与 python API 一起工作。`
这是使用 opencv c++ API 创建的 YML 文件的示例。
如果有人成功使用 openCV python API 加载它,请告诉我!
我迟到了,但我没有找到任何方法在纯 Python 中做到这一点,因为 OpenCV(YAML 1.0)创建的 YAML 文件不完全兼容,也不容易与 Python 中可用的 YAML 库读取(YAML 1.1)。
Python/OpenCV 绑定存在,但只是一堆完全没有文档的 C 方法,因此它们在这一点上几乎无法使用。
但是,编写一个小的 C 扩展并将其包装在一个类中非常容易,因此我建议您尝试一下。如果您(或其他任何人)仍然需要它,我也许可以发布我编写的小模块的代码,我会在周五的工作中询问。
为了给你一些想法,这里是我如何使用我的模块:
with FileStorage("my/file.yml") as fs:
print(fs["string"]) # Prints the "string" string key
print(fs["int"]) # Prints the "int" integer key
print(fs["matrix”]) # Prints a matrix (read as a NumPy array)