OpenCV和Matlab 通过XML传递数据
因为现在下到的数据集大部分都使用了Matlab的Calibration toolbox 进行标定,其结构大部分是.mat结构的,所以它和opencv中数据传递需要一个中间过程,网上也有直接调用matlab的dll的方法,但是中间件方法必然会受到版本限制,所以我最后还是选择了使用xml来作为中间文件传递数据。
name,fc,kc,alpha_c,cc,om,t )
file
used to convert matrix information from matlab to
cc(2);0 0 1];
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',fc(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',kc(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',alpha_c(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',cc(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',kk(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',om(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
for j=1:n
data.a(xdoc.createTextNode(sprintf('%d',t(i,j))));
data.a(xdoc.createTextNode(sprintf('%s','
')));
end
std;
Example*********
Example
*mat=cvCreateMat(3,3,CV_32SC1);
*fs=cvOpenFileStorage("test1.xml",0,CV_STORAGE_WRITE);
data",1);
XML
*writemat=cvCreateMat(3,3,CV_64FC1);
Example*********
//1. Direct read sigle CvMat Example
*)cvLoad("test.xml");
";
Example
fc,cc,kc,alpha_c,kk,om,t;
上经过模块化是非常方便的,尤其是有大量的矩阵需要传递的时候,在传递中采用了逐个mat读取的方法,当然,要传递的矩阵不多的时候,可以采用合并矩阵,
用cvload读取后再分割出所需数据的方法,这种方法的效率应该更高,但是需要已知传递的矩阵结构
OpenCV和Matlab 通过XML传递数据的更多相关文章
- ajax 用xml传递数据
页面代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Index.aspx. ...
- 使用XML传递数据
HTML <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF- ...
- Android中Service通信(一)——启动Service并传递数据
启动Service并传递数据的小实例(通过外界与服务进行通信): 1.activity_main.xml: <EditText android:layout_width="match_ ...
- activity与fragment之间传递数据
总结:无论是activity给fragment传递数据,还是fragment给activity传递数据,都把activity和fragment都当做一个普通的对象,调用它的方法,传递参数. 1.Fra ...
- 3.SpringMVC修改配置文件路径和给界面传递数据
1.修改配置文件路径 达到 配置多文件的目的 web.xml文件中基础配置有springMVC配置的servlet路径 <servlet-name>SpringMVC</serv ...
- 通过Application传递数据代码
使用Application传递数据步骤如下:创建新class,取名MyApp,继承android.app.Application父类,并在MyApp中定义需要保存的属性 在整个Android程 ...
- WCF分布式开发步步为赢(8):使用数据集(DataSet)、数据表(DataTable)、集合(Collection)传递数据
数据集(DataSet).数据表(DataTable).集合(Collection)概念是.NET FrameWork里提供数据类型,在应用程序编程过程中会经常使用其来作为数据的载体,属于ADO.NE ...
- MVC中前台如何向后台传递数据------$.get(),$post(),$ajax(),$.getJSON()总结
一.引言 MVC中view向controller传递数据的时候真心是一个挺让人头疼的一件事情.因为原理不是很懂只看一写Dome,按葫芦画瓢只能理解三分吧. 二.解读Jquery个Ajax函数 $.ge ...
- Android 消息广播Intent传递数据
1.创建布局文件activity_broadcast.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk ...
随机推荐
- [你必须知道的.NET]第二十一回:认识全面的null
发布日期:2008.7.31 作者:Anytao © 2008 Anytao.com ,Anytao原创作品,转贴请注明作者和出处. 说在,开篇之前 null.nullable.??运算符.null ...
- day2 列表中常用的方法
列表中有很多方法,下面来看看常用的方法,我们知道,字符串是以字符列表形式存储的.因此上面学习的字符串中的很多方法在列表中也有. 1.extend() extend()列表的扩展,把两个列表进行 ...
- github 笔记(一)
笔记预留 0. echo "# Try" >> README.md git init git add README.md git commit -m "fir ...
- Ngnix的日志管理和用定时任务完成日志切割
一.日志管理 先来看看ngnix的配置文件的server段 接下来我们解释一下默认格式的具体意思 #log_format main '$remote_addr(远程IP) - $remote_user ...
- python爬虫实战(四)--------豆瓣网的模拟登录(模拟登录和验证码的处理----scrapy)
在利用scrapy框架爬各种网站时,一定会碰到某些网站是需要登录才能获取信息. 这两天也在学习怎么去模拟登录,通过自己码的代码和借鉴别人的项目,调试成功豆瓣的模拟登录,顺便处理了怎么自动化的处理验证码 ...
- Mybatis使用入门
一.Mybatis简介 1.传统JDBC的不足 我们首先看一下JDBC的一般操作流程.比如,我想从user表中获取根据name获取数据,下面是传统JDBC代码: package lkb.webchat ...
- Dfs【P2052】 [NOI2011]道路修建
Description 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1条双向道 ...
- GDB 调试工具高级用法
解决core核心文件转出问题 ulimit -c #查看core文件的生成开关,若为0则关闭 ulimit -c unlimited #打开开关,只在当前shell生效 sudo sh -c 'ech ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
- 范浩强treap——可持久化
当平衡树需要可持久化的时候,意味着我们需要访问以前的某个时间点的平衡树,就要保持以前的树形态不变,新建一个时间戳,构建一棵新的树. 如果用以前的旋转treap可能就不方便做到(又要打时间戳,又要新建节 ...