用opencv将xml文件(里面存的是100*100的矩阵)读入,并定义一个新的Mat类矩阵,将xml中的矩阵存入其中。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用opencv将xml文件(里面存的是100*100的矩阵)读入,并定义一个新的Mat类矩阵,将xml中的矩阵存入其中。相关的知识,希望对你有一定的参考价值。
要用openCV2或3的语言编程,本人初学,对指令的操作不熟,麻烦各路大神尽量写得详细一点。假设xml文件名为img.xml,新矩阵为 M。
#include<stdio.h>#include<stdlib.h>
typedef struct LNode
int data;
struct LNode *next;
List;
void CreatList(List *&L,int n)
int k = sizeof(List);
List *P, *S;
L = (List *)malloc(k);
L->data = 1;
P = L;
for (int i = 2; i <= n; i++)
S = (List *)malloc(k);
S->data = i;
P->next = S;
P = S;
P->next = L;
void Josef(List *&L, int n, int k)//递归,剩余一个数输出,否则继续执行删除操作
List *P, *Q;
P = L;
for (int i = 1; i < k-1; i++)
P = P->next;
Q = P->next;
P->next = Q->next;
free(Q);
Q = NULL;
L = P->next;//确定起始位置
n -= 1;
if (n == 1)
printf("%d", L->data);
else
Josef(L, n, k);
int main(void)
int n, k;
List *L;
scanf("%d %d", &n, &k);
CreatList(L, n);
Josef(L, n, k);
return 0;
参考技术A Mat mat=load(".xml");追问
不能用。没load这个函数呀
追答百度一下吧,应该会有类似的加载函数。
http://blog.csdn.net/dujian996099665/article/details/8879184
这个博我看过,没有用。我最后找到的解决方法是:用FileStorage 先将随意一个矩阵写入xml或txt,用记事本打开xml或txt文件,修改其中的代码,将矩阵改成自己所需的100*100的矩阵,再用FileStorage读取。100*100的矩阵手动输入肯定不现实,可以用matlab编程输出,然后复制上去。
追答那你的100*100的数据是怎样得到的?
追问用如下程序:(字数限制,排版只能这样了)
load img_b.mat img_B;fid=fopen('matlab_img_B.txt','wt');[m,n]=size(img_B);
for i=1:1:m for j=1:1:n fprintf(fid,'%g., ',a(i,j)); end end fclose(fid);
用如下程序:(字数限制,排版只能这样了)
load img_b.mat img_B;fid=fopen('matlab_img_B.txt','wt');[m,n]=size(img_B);
for i=1:1:m for j=1:1:n fprintf(fid,'%g., ',a(i,j)); end end fclose(fid);
向XML中写入数据
用C#操作XML:(写入)
在textarea中写入文本,带换行符的
在写入XML中时,会被直接写入,就是在XML中的数据还是换行的
用正则把文本中"\n"换成"<br>",在XML中还是换了行
方法是可以用<![CDATA["asfdasfd"]]>来解决。
但是要怎么在写入数据的时候加上<![CDATA[]>?!
还要保证<![CDATA[]>里面不能有换行
谢谢
2 ,利用dataset 的write() 方法写入。 参考技术C XmlDocument doc = new XmlDocument();
XmlElement xe = doc.CreateElement("root");
XmlCDataSection xcs = doc.CreateCDataSection("test");
xcs.InnerText = "<aaaaa><br/>";
xe.AppendChild(xcs);
doc.AppendChild(xe);
doc.Save("c:\\aa.xml");本回答被提问者采纳 参考技术D XmlDocument
doc
=
new
XmlDocument();
XmlElement
xe
=
doc.CreateElement("root");
XmlCDataSection
xcs
=
doc.CreateCDataSection("test");
xcs.InnerText
=
"<aaaaa><br/>";
xe.
AppendChild
(xcs);
doc.AppendChild(xe);
doc.Save("c:\\aa.xml");
以上是关于用opencv将xml文件(里面存的是100*100的矩阵)读入,并定义一个新的Mat类矩阵,将xml中的矩阵存入其中。的主要内容,如果未能解决你的问题,请参考以下文章
excel表里面存的是手机号,python读取出来成了float类型,求助
用opencv定位和识别数字如何识别呢,急求~~~~~~~~~
jdbc 读取oracle long raw 字段,里面存的是文本
ledisDB底层实现——本质上就是用leveldb这样的底层存储,和ssdb一样,meta里存的是hashlist等的元数据