C++数据文件存储与加载(利用opencv)

首先请先确认已经安装好了opencv3及以上版本。

#include <opencv2/opencv.hpp>
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
1
2
3
4
5
存储
then

int main()
{
//创造一些要存的数据先
string words = "hello, my guys!";
float n = 3.1415926;
Mat m = Mat::eye(3, 3, CV_32F);
//开始创建存储器
FileStorage save("data.yml", FileStorage::WRITE);// 你也可以使用xml格式
save << "words" << words;
save << "number" << n;
save << "matrix" << m;
save.release();
//存储完毕
cout << "finish storing" << endl;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
加载
//加载数据,类似Python字典的用法,创建加载器
FileStorage load("data.yml", FileStorage::READ);

float nn;
Mat mm;
string ww;
load["words"] >> ww;
load["number"] >> nn;
load["matrix"] >> mm;
cout<< ww << endl << nn << endl << mm;
cout << endl << "That's the end";
load.release();

return 0;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
完整代码
#include <opencv2/opencv.hpp>
#include <iostream>
#include <string>

using namespace cv;
using namespace std;

int main()
{
string words = "hello, my guys!";
float n = 3.1415926;
Mat m = Mat::eye(3, 3, CV_32F);
FileStorage save("data.yml", FileStorage::WRITE);
save << "words" << words;
save << "number" << n;
save << "matrix" << m;
save.release();
cout << "finish storing" << endl;

FileStorage load("data.yml", FileStorage::READ);

float nn;
Mat mm;
string ww;
load["words"] >> ww;
load["number"] >> nn;
load["matrix"] >> mm;
cout<< ww << endl << nn << endl << mm;
cout << endl << "That's the end";
load.release(http://www.my516.com);

return 0;
}

---------------------

posted @ 2019-06-24 10:06  水至清明  阅读(755)  评论(0编辑  收藏  举报