OpenCV学习笔记(四):XML,YAML(.txt,.doc)文件读写操作

一、Write_XML_and_YAML_File(写入XML)

#include <opencv2/opencv.hpp>
#include <time.h>using namespace cv;int main()
{// 1、准备文件写操作FileStorage fs("F:/C++/2. OPENCV 3.1.0/TEST/test.txt", FileStorage::WRITE);// 2、开始文件写入fs << "frameCount" << 5;// 3、写入时间time_t rawtime;  // 64-bit time valuetime(&rawtime);fs << "calibrationDate" << asctime(localtime(&rawtime));// 4、写入矩阵Mat cameraMatrix = (Mat_<double>(3, 3) << 1000, 0, 320, 0, 1000, 240, 0, 0, 1);Mat distCoeffs = (Mat_<double>(5, 1) << 0.1, 0.01, -0.001, 0, 0);fs << "cameraMatrix" << cameraMatrix << "distCoeffs" << distCoeffs;fs << "features" << "[";// 5、写入随机数for (int i = 0; i < 3; i++){int x = rand() % 640;   // 生成 640 随机数 xint y = rand() % 480;   // 生成 640 随机数 yfs << "{:" << "x" << x << "y" << y << "lbp" << "[:";uchar lbp = rand() % 256;       // 生成 256以内 随机数 lbp//fs << "lbp" <<i<<lbp;for (int j = 0; j < 8; j++)fs << ((lbp >> j) & 1);         //  lbp 值右移 j 位(位运算)fs << "]" << "}";}fs << "]";fs.release();printf("\n文件读写完毕,请在工程目录下查看生成的文件~");getchar();return 0;
}

运行结果:
1.写操作

二、Read_XML_and_YAML_File(读取XML)

#include <opencv2/opencv.hpp>
#include <time.h>using namespace cv;int main()
{// 1、准备文件读操作FileStorage fs2("F:/C++/2. OPENCV 3.1.0/TEST/test.yaml", FileStorage::READ);// 2、第一种方法,对FileNode操作(节点操作)// 获取整型数字int frameCount = (int)fs2["frameCount"];std::string date;// 3、第二种方法,使用FileNode运算符> >//  获取字符串fs2["calibrationDate"] >> date;// 4、获取矩阵Mat cameraMatrix2, distCoeffs2;fs2["cameraMatrix"] >> cameraMatrix2;fs2["distCoeffs"] >> distCoeffs2;// 5、控制台输出cout << "frameCount: " << frameCount << endl<< "calibration date: " << date << endl<< "camera matrix: " << cameraMatrix2 << endl<< "distortion coeffs: " << distCoeffs2 << endl;// 6、声明文件节点迭代器FileNode features = fs2["features"];FileNodeIterator it = features.begin(), it_end = features.end();std::vector<uchar> lbpval;// 7、使用FileNodeIterator遍历序列for(int idx = 0 ; it != it_end; ++it, idx++ ){cout << "feature #" << idx << ": ";cout << "x=" << (int)(*it)["x"] << ", y=" << (int)(*it)["y"] << ", lbp: (";// 我们也可以使用使用filenode > > std::vector操作符很容易的读数值阵列(*it)["lbp"] >> lbpval;// 读取数组// 根据 lbpval.size() 读取数组lbpfor( int i = 0; i < (int)lbpval.size(); i++ )cout << " " << (int)lbpval[i];cout << ")" << endl;}fs2.release();//程序结束,输出一些帮助文字printf("\n文件读取完毕,请输入任意键结束程序~");getchar();return a.exec();
}

2.读操作:

OpenCV学习笔记(四):XML,YAML(.txt,.doc)文件读写操作相关推荐

  1. OpenCV学习笔记四-image的一些整体操作

    title: OpenCV学习笔记四-image的一些整体操作 categories: 编程 date: 2019-08-08 12:50:47 tags: OpenCV image的一些操作 sP4 ...

  2. C++学习笔记(六)输入输出与文件读写

    一.输入输出相关的类 对以上数据流相关类的解读: istream用于输入的流类,cin是这类的对象 ostream用于输出的流类,cout是这类的对象 ifstream 用于文件读取数据的流类 ofs ...

  3. Opencv学习笔记四——图像形态学操作

    需要的库和自定义函数 import cv2 import numpy as np import matplotlib.pyplot as pltdef cv_show(name, mat):cv2.i ...

  4. Laravel学习笔记四-数据库迁移和模型文件

    本节将学习使用artisan命令数据库迁移建表,模型文件的学习. 一.数据库迁移 二.模型文件 三.git checkout -f 命令应用 我们在开发中经常会遇到这样的情况,如果一个分支中提交了一个 ...

  5. OpenCV学习笔记:创建/分配图像、图像读写保存、图像像素点访问修改

    环境:CentOS7 g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16) $ pkg-config --modversion opencv 2.4.13 以下程序的 ...

  6. Opencv学习笔记(三) -- 图像压缩与保存

    1.图像压缩 1.1常用图像格式 bmp Windows位图格式.该格式为不压缩格式,缺点是图像文件较大. jpg JPEG是为静态图像所建立的第一个国际数字图像压缩标准,也是至今一直在使用的.应用最 ...

  7. OpenCV学习笔记(四十六)——FAST特征点检测features2D OpenCV学习笔记(四十七)——VideoWriter生成视频流highgui OpenCV学习笔记(四十八)——PCA算

    OpenCV学习笔记(四十六)--FAST特征点检测features2D 特征点检测和匹配是计算机视觉中一个很有用的技术.在物体检测,视觉跟踪,三维常年关键等领域都有很广泛的应用.这一次先介绍特征点检 ...

  8. OpenCV学习笔记(一)(二)(三)(四)(五)

    OpenCV学习笔记(一) 决心开始研究OpenCV.闲言少叙,sourceforge网站最近的版本是2011年8月的OpenCV2.3.1,下载安装,我这里使用的开发环境是vs2008,网上搜了一下 ...

  9. OpenCV学习笔记(四十一)——再看基础数据结构core OpenCV学习笔记(四十二)——Mat数据操作之普通青年、文艺青年、暴力青年 OpenCV学习笔记(四十三)——存取像素值操作汇总co

    OpenCV学习笔记(四十一)--再看基础数据结构core 记得我在OpenCV学习笔记(四)--新版本的数据结构core里面讲过新版本的数据结构了,可是我再看这部分的时候,我发现我当时实在是看得太马 ...

最新文章

  1. 微软Azure AI负责人:OpenAI只能在微软云上训练模型,不懂中台
  2. 车道线检测(opencv)
  3. poj 1611 The Suspects // hoj 1564 The Suspects 并查集
  4. org manual翻译--2.1 大纲
  5. linux-5.12-rc1-dontuse
  6. python读取数据库数据、并保存为docx_Python - 爬取博客园某一目录下的随笔 - 保存为docx...
  7. 汉化:Blocs for Mac(可视化网页设计工具)4.5.0
  8. putty怎么进入文件夹_putty命令
  9. php mysql 博客,PHP操作MySQL
  10. oracle 12c ora 01033,ORA-01033: ORACLE initialization or shutdown in progress(12c中)
  11. itextpdf生成列表基本用法
  12. 大家说说有必要免费建网站吗?
  13. BIP63(隐身地址)
  14. Linux怎么运行lisp,Lisp - Ubuntu 中的编程语言_Linux编程_Linux公社-Linux系统门户网站...
  15. day08 系统篇端口扫描CDN服务负载均衡WAF防火墙
  16. 银行资产业务和负债业务
  17. F5 LTM 常用oid列表
  18. 企业微信可以转移员工名下的好友吗?
  19. 基于FPGA的数字密码锁电路设计(含程序)
  20. Word中的公式显示不全,或许是这个原因

热门文章

  1. java怎吗从磁盘读文件_编写一个Java应用程序,该程序使用FileInputStream类,实现从磁盘读取本应用程序源代码文件,并将文件内容显示在屏幕上。...
  2. 基本功 | Litho的使用及原理剖析
  3. 论文浅尝 | 用增强学习进行推理:问答与知识库完善(KBC)
  4. Pytorch与tensorflow模型转换
  5. Android官方开发文档Training系列课程中文版:动画视图之转场框架介绍
  6. 常用命令之------ln
  7. jsp内置对象(四)-----session对象
  8. RCC 2017 Qual 1 Mail.Ru, April 2, 2017 Problem B. Painting the Wall
  9. 《Cracking the Coding Interview》——第11章:排序和搜索——题目7
  10. 一个简单WCF项目的建立 by wsz