- 本课程为精品课,您可以登录eeworld继续观看:
- 德州仪器 DLP<sup>®</sup> 3D机器视觉技术研讨会 (3)
- 登录
- 课程目录
- 相关资源
- 课程笔记
这是我们最后一个部分了
应该很快就会结束
之后就是查线
查线完了以后我会做demo
demo呢会cover刚才有个同事说的calibration
校准的这个步骤
接下来我们讨论一下
如何使用TI开发的这个SDK的软件包
去进行机器视觉的软件开发
这个SDK包你可以在网上下载下来
它是包括了我们刚刚谈到的五个模块里所有的处理
过去呢,我们这五个模块
分得不是特别清楚
所以你不是3000或4500
或者是这个6500
它的代码是没有很模块化的
那未来呢,我们会比如说
精确点源的数据分析
会做一个demo的模块
去产生这个结构的pattern也是单独的模块
这样在你换DLP的平台的时候
有一些代码都不需要去更改了
如果你需要修改我们的原始代码
当中的某一个模块
你会需要OpenCV这个开发环境
这个OpenCV是开放的软件的一个编译环境
你可以在网上下载得到
会有一些简单的指令
让你怎么样安装CMake
怎么样去做编译
在TI的信息视觉的参考设计的User's Guide里面’
会有非常详细的信息
你会一步一步怎么样去编译
编译我们的这个source code
Scalable Solution就是可扩展的解决方案
就是我们刚才谈到的几个系统要分成五个模块
我们希望软件的架构也是每个模块都是相对独立的
然后有标准的API函数可以调用的
我们现在网上已经有的
是DLP LightCrafter4500整个的设计文件包
将来我们会有这个3000或者6500
这个DLP的chipset
这个时候,可能你其他的模块都不需要重新编译
其他的模块不需要做太多的改动
你只要在网上下载3000或6500的库
在你的系统变量里面
把4500改成6500
那整个的系统就可以突击了新的平台
这个就还是一个模块化的设计
然后有一个标准的结构函数
你可以互相调用
就是在c++里面是非常容易做这样模块化的设计
这个它还是在重复信息
我想做过的人都知道每个module都会有相应它自己的函数
和对外的接口函数
刚才谈到的geometry
它是生产点源的
geometry部分的算法在做calibration的时候会用得到
这个DLP平台的时候也会用得到
所以这部分的module可能会分到一点点到别的模块去
就是说各个模块必须有一个标准
或统一的接口函数去访问别的模块
你自己做的时候不能影响别的接口函数
这里面就谈到了系统变量还有它整个的数据结构的定义
那么你能够在各个子模块之间的沟通
因为参考设计是选用了某一个品牌的摄像头嘛
其实只是方便而已
所以如果你更改摄像头的话
一定要去看camera软件的模块里面
它对camera的各种数据结构是怎样定义的
各种处理函数是怎样定义的
有多少变量,不需要follow相同的模块和格式
否则的话你的camera module就很难built到整个系统里面去
别的模块就很难调用到你camera的一些函数
他说三维的机器视觉整个系统相对来说
还是比较复杂的
TI的这一套参考设计,它设计的初衷和最终的结果
都是希望把这个复杂的系统分成相对独立的子模块
就是肢解嘛,把这个系统进行肢解
TI的三维机器视觉整套的参考设计呢
从最开始到现在我相信有两三年甚至更长的时间
在过程当中其实我们一直都有在不断完善和修改
我个人觉得这套系统相对来说是比较稳定和成熟的
这句话我觉得我们就是
还是比较有信心的
整套系统相对来说还是比较容易
让一个新手很快的搭建起来
然后用来评估这种方法对你的三维扫描或者三维重建
评估你将来的这个是不是适合的
这是如何选择不同DLP的套片组
来组件这个机器视觉的系统是由你的
对系统的要求,尤其是性能
性能或者你的系统的应用所决定的
包括你要扫描的物体的尺寸
你对分辨率的要求,速度的要求等等
因为我们的每颗芯片的大小、分辨率和速度
都有可能会是不一样的
最后就是我们整个SDK的软件包
它试图去做成一个可扩展性比较强的
相对来说比较容易使用的架构
可以让客户在这个需求上去做别的开发
比如说我们要换摄像头,比如说我们要换DLP平台
课程介绍
共计3课时,42分7秒
猜你喜欢
换一换
推荐帖子
- 刚开机程序有误,跑上一阵就正常了,求思路。
- M430f149跑程序,IO口模拟串口,刚开始的时候数据总是和规定的不符,但是跑上2,3分钟后,就与规定的相符,可以实现工作的需求了。很奇怪。。求高手给个思路,谢谢了。。...
-
hider
微控制器 MCU
- 新手求助:定时器可以在中断过程中修改中断时间吗??
- 我想用timeB中断,开始的时候中断时间控制在1024,下一个中断时间控制在2048,然后不断的反复。我试着在中断中修改中断时间,#pragma vector = TIMERB0_VECTOR__interrupt void Timer_B (void){ P3OUT ^= 0x10; if( c(外部定义的)%2==0) ...
-
aahellaa
微控制器 MCU
- 请教:关于MSP430中断嵌套问题
- MSP430的中断嵌套据说是需要在中断程序中开启总中断EINT才能实现。 如果我程序中用到两个中断程序A和B,A的中断频率是B的10倍,这该如何实现中断嵌套呢? 也就是说B的中断函数执行过程中,A可能会需要响应多次中断。 是否在A,B的中断函数开始都需要开启总中断来执行?...
-
cotwin
微控制器 MCU
- 430USB通信及软件升级方案,感兴趣的顶一下,共同探讨。
- 2011年,今年新出的430USB解决方案,支持型号是MSP430X5XX和MSP430X6XX系列,TI提供软件软件,硬件支持,PC端数据收发软件,源代码也提供,可以直接用VS2010编译,改写成自己的目标软件,同时提供MAC和LINUX的软件方案。感觉非常划算,有兴趣的跟帖,讨论下,附(每只带USB接口的430方案价格在8元人民币左右,利尔达报价)。...
-
格物致知熊
微控制器 MCU