【OpenCV学习】XML的读写

简介:

 

#include "highgui.h"
#include "cv.h"
#include <iostream>
#include <iomanip>
using namespace std;
int main(void)
{
    int a=1;
    float b=2.;
    double c[]={4.5,6.7,8.9};
    CvMat *mat=cvCreateMat(3,3,CV_32SC1);
    cvSetIdentity(mat);//初始化这个矩阵
    CvFileStorage *fs=cvOpenFileStorage("test.xml",0,CV_STORAGE_WRITE);
    cvWriteComment(fs,"my data",1);
    //开始写数据
    cvStartWriteStruct(fs,"DATA",CV_NODE_MAP,0,cvAttrList(0,0));
   
    //写入数据c数组
    cvStartWriteStruct(fs,"c",CV_NODE_SEQ,0,cvAttrList(0,0));
    cvWriteRawData(fs,c,3,"d");
    cvEndWriteStruct(fs);
    //写入单位矩阵mat
    cvSave("mat.xml",mat);
    //写入整型数据a
    cvWriteInt(fs,"a",a);
    //写入浮点型数据b
    cvWriteReal(fs,"b",b);
    cvStartWriteStruct(fs,"c",CV_NODE_SEQ,0,cvAttrList(0,0));
    cvWriteRawData(fs,c,3,"d");
    cvEndWriteStruct(fs);
    cvEndWriteStruct(fs);
    cvReleaseFileStorage(&fs);
    cvReleaseMat(&mat);
/**********读取XML***********/
    int i,j;
    CvMat *readbyname,*readbynode;
    CvFileNode *mat_node;//文件结点
    CvFileStorage *fs_read=NULL;//文件存储
    fs_read=cvOpenFileStorage("mat.xml",0,CV_STORAGE_READ);
    readbyname = (CvMat *)cvReadByName(fs_read,NULL,"mat",NULL);
    mat_node = cvGetFileNodeByName(fs_read,NULL,"mat");
    readbynode = (CvMat *)cvRead(fs_read,mat_node);
    for (i=0;i<3;i++)
    {
        for (j=0;j<3;j++)
        {
            cout<<CV_MAT_ELEM(*readbynode,int,i,j);
        }
        cout<<endl;
    }
    cvReleaseFileStorage(&fs_read);
    cvReleaseMat(&readbynode);
    cvReleaseMat(&readbyname);
   
    return 0;
}


本文转自gnuhpc博客园博客,原文链接:http://www.cnblogs.com/gnuhpc/archive/2012/10/08/2715892.html,如需转载请自行联系原作者
相关文章
|
2月前
|
XML SQL 数据处理
学习 XQuery:XML数据查询的关键
XQuery是用于查询XML数据的语言,类似SQL对数据库的操作。它基于XPath构建,用于从XML文档中提取和排序元素。FLWOR表达式(For, Let, Where, Order by, Return)是其核心,用于处理和过滤数据。例如,示例代码展示了如何选取&quot;books.xml&quot;中价格大于30的书籍并按标题排序。XQuery还可用于Web服务、生成报告、XML到XHTML转换及搜索文档等场景。了解XPath能帮助更好地掌握XQuery,两者有相似的数据模型和函数。
56 0
|
29天前
|
XML Java 数据格式
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
27 1
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
OpenCV与AI深度学习之常用AI名词解释学习
AGI:Artificial General Intelligence (通用人工智能):是指具备与人类同等或超越人类的智能,能够表现出正常人类所具有的所有智能行为。又被称为强人工智能。
35 2
|
23天前
|
计算机视觉 Python
opencv 处理图像去噪的几种方法学习
OpenCV 提供了多种图像去噪的方法,以下是一些常见的去噪技术以及相应的 Python 代码示例: 均值滤波:使用像素邻域的灰度均值代替该像素的值。
11 0
|
1月前
|
机器学习/深度学习 开发框架 TensorFlow
### 如何系统化学习OpenCV4
### 如何系统化学习OpenCV4
27 0
|
1月前
|
存储 计算机视觉
OpenCV3.1中读写图像与读写像素
OpenCV3.1中读写图像与读写像素
16 0
|
2月前
|
算法 计算机视觉 Python
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
【OpenCV】-算子(Sobel、Canny、Laplacian)学习
|
2月前
|
存储 计算机视觉
OpenCV—学习基本绘图
OpenCV—学习基本绘图
|
1月前
|
XML Java 数据格式
java创建xml文件内容
java创建xml文件内容
19 0
|
1月前
|
XML Java 数据格式
java解析xml文件内容
java解析xml文件内容
27 0

相关课程

更多