期
第
2009
3
年
月
9
宋凡峰等:LabVIEW
调用
MATLAB
进行图像处理的实现
19· ·
LabVIEW 调用 MATLAB 进行图像处理的实现
宋凡峰 1 王开福 2
山东水利职业学院
山东 日照
,
(1.
276826 2.
南京航空航天大学
江苏 南京
,
210016)
摘 要:LabVIEW
过
MATLAB Script
发虚拟仪器的效率
理的过程
关键词:
。
虚拟仪器
。
本文基于
是一种高性能的图形化虚拟仪器编程软件
节点调用
利用
MATLAB,
本文首先介绍了几种
MATLAB
与
LabVIEW
,MATLAB
是一种高效率的工程计算软件
,
图像处理工具箱中的函数进行图像处理
可以大大增强
,
MATLAB
混合编程技术
然后详解
,
MATLAB Script
在
LabVIEW
中通
开
节点用于图像处
LabVIEW
LabVIEW
与
MATLAB
给出了电子散斑测试系统的实例
。
;LabVIEW;MATLAB Script;
图像处理
,
它以通用计算机 为硬件平台
虚拟仪器是 一个按照仪 器需求组织 的数 据 采
集系统
利用虚拟仪
器软件在计 算机的屏幕 上设计出 仪器的面板 以及
人们通过鼠标或键盘操作虚拟仪器面
相应的功能
板上的旋钮
开关和按键
设置各
、
种 工 作 参 数
启 动 或 停 止 一 台 仪 器 的 工 作
去选用仪器功能
,
,
,
,
是基于图形化编程
G
它包括丰富的用于数据采集
编程简单
,
,
LabVIEW
件
存储的库函数
控制
以容易地制作各种界面
面
应用程序的快速开发
,LabVIEW
、
。
数据分析以及数据表达
的工具箱非常有限
,
、
、
分析
。
语言的高效开发软
表达和数据
特别适合于 数据采集 和
可
但在对各种算法的支持方
这就限制了大型
它图形界面丰富
。
,
,
,
MATLAB
可靠的算法库
图形显示于一体
图像处理
处理
,
矩阵运算
具有强大的科学计算功能
集数值分析
大量稳定
、
信号处理和
、
针对 不同领域的 应用
具有 信号
神经网络等几十个专用工具箱
;
并且数据
,
,
、
、
的缺点在于界面开发能力较差
、
。
MATLAB
输入
网络通信
、
基于以上理由
、
硬件控制等方面都比较繁琐
,
。
,
利用混合编程技术在
就可以相 互补 充
MATLAB,
,
开发出高效率的虚拟仪器[1]。
中调用和操 作
挥两者的优势
1 LabVIEW 中调用和操作 MATLAB 的方
法
LabVIEW
充 分 发
,
LabVIEW
和
MATLAB
混合编程的实现主要有
以下几种方法[2][3]。
1.1 利用 MATLAB Script 节点调用 MATLAB 算
法
在
MATLAB
MATLAB Script
程 序
程序
,
并在
,
节 点 中
用 户 可 以 编 辑
也 可 以 直 接 调 入 已 经 存 在 的
用户可
应 用 程 序 中 使 用
环境下运行
LabVIEW
。
LabVIEW
编写的算法和功能丰富的工具箱
MATLAB
以 很 方 便 地 在 自 己 的
,
MATLAB
MATLAB Script
有明确的要 求
节点对输入
输出数据的类型
目前两者 之间的数据 通信仅支持
、
。
。
Real、Real Vector、 Real Matrix、Complex、Vector Complex、
而且还必须根据具体情况
六种格式的数据
,
Matrix
进行选择
。
、
,
用该方法实现
与
其缺点是没有脱离
LabVIEW
MATLAB
的混合编
的环境
,
所以这种方法必须在计算
MATLAB
实用
程简单
而只是将它在后台执行
机中安装有
1.2 利用 COM 组件调用 MATLAB 算法
技术的核心就是二进制接口规范
MATLAB。
,
COM
独立于编程语言和操作系统
增加
将用
MATLAB COM Builder
语言开发的算法自动
M
组件对象
生成的
。
COM
COM
支持
从
。
功能
,
此规范
开始
MATLAB6.5
它可以帮助用户
快速地转变为独立的
组件对象可以在任何
,
、
对象的应用程序中使用
如
COM
Visual Basic、LabWindows/ CVI、LabVIEW。
Visual C++、
通 过
可以同其他用户共享已经开发的算法
,
组件
COM
,
,
20· ·
山东水利职业学院院刊
第
2009
3
年
期
月
9
并且可以免费地随同
算法
。
在 其
应用程序发布
COM
MATLAB
LabVIEW
Function》Communication》
模 块 中 提 供 了 一 组 与 组 件 操 作 相 关 的 子
对
能够被传递给模
对象
Automation Open
然后该
节点打开一个与
从而实现具体的
Refnum
ActiveX
其中
VI,
象相连的
块中的其他函数节点
操作
Refnum,
节点关闭
COM
COM
,
Close Automation
Refnum。
最后
,
利 用
COM
技 术
,MATLAB Builder for COM
文 件 编 译 成 二 进 制 的
程序中
能
组
这种方法对于规模较
应
COM
。
内存管 理 要 求 较 高 的
LabVIEW
,
M
嵌入到
性能
够 将 低 速 执 行 的
件
大
用程序来说
是非常有利的
1.3 利用动态链接库技术
LabVIEW
速度
,
、
、
,
。
动态链接库
是基于
(DLL)
一个重要的组成部分
术调用
将
MATLAB,
首先是用
的源文件翻译为
在
。
m
Windows
LabVIEW
下利用
文件翻译器
程序设计的
技
DLL
Matcom
并编译 为
代码
,
cpp
提供的调用库函数
MATLAB
文件
然后用
dll
;
LabVIEW
节 点
在
,
LabVIEW
(Call
中 实 现
Library Function,CLF)
DLL
函数的调用
该方法必须安装
。
类和图形窗口的支持不够
能不能使用
像
无法画出像
,
。
但是
对
Matcom,
Matcom
class
使得图像处理的一些功
中那样精细的图
,
MATLAB
比较以上三种方法可知
利用动态链接库的方
,
法不适合调用
MATLAB
进行图像处理
利用
;
COM
,
,
但比
图像处理的功能
MATLAB
适合于大型系统设计
组件可以完成调用
较繁琐
节点可以方便地完成
一般需求
2 LabVIEW 与 MATLAB 混合编程图像处
理的实现
利用
图像处理功能
开发出小型高效的虚拟仪器系统
MATLAB Script
满足
MATLAB
;
,
,
。
的每个程序就是一个
LabVIEW
面板和框图程序窗口两部分
实现
MATLAB Script
框 图 程 序 窗 口 中
MATLAB
通 过
VI,
在
图像处理方法为
LabVIEW
它包括前
中利用
在
。
:
一般情况下推荐使用后者
Mathematics -Formula -MATLAB Script,
MATLAB Script
图像处理程 序
。
,
M
在弹出菜单中选择
MATLAB
键
导入的图像处理
写入
下编译通过的
提高开发效率
每一条语句的完整性
行要有连接符
否则
M
。
,
,
,
,
节 点
“import”,
Functions Palette -
打 开
可 以 直 接 在 其 框 图 中 写 入
也可以在 框图 中 点 击 右
在对话框中选择要
程序文件即完成了节点程序的
环境
文件导入节点可以节省调试时间
,
在框图内书写或调用文件时要保证
或者分
MATLAB
在
,
。
,
或 者完整写在 一行
,
程序运行会产生错误
,
节点的参数传递可通过添加输
在弹出
,
注意数
“Add Output”,
所以输入输出图像的
,
图
为调用
Real Matrix。
1
MATLAB
在节点边框上单击鼠标右键
MATLAB Script
。
入输出完成
或
式菜单中选择
字图像是以矩阵格式存储的
数据格式选择为
“Add Input”
Script
的框图程序
。
图
1
调用
MATLAB Script
的框图程序
期
第
2009
3
年
月
9
宋凡峰等:LabVIEW
调用
MATLAB
进行图像处理的实现
21· ·
在此程序框图中
通过三个
Input
图像信息赋值给
,
,
入
中
低通滤波后
点 传 出
形 成
簇
,
,Flatten Pixmap
,
节点传至
图像通过
Read BMP File
读
节点
频域
节
将 此 时 的 图 像 矩 阵 打 包 成
MATLAB Script
执行余弦变换
F1、F2、F3
Output
经
、
L1、L2、L3,
滤波后的图像
图 像 数 据 包
然 后 通 过
。
,
,
,
),
与
MATLAB
LabVIEW
LabVIEW
从而完成
在使用时
image date(
的混合编程
Flatten Pixmap
绘 图 显 示 在
Draw
的 前 面 板
注
调色板一定要与需要
位位图格式 需要设置调 色板
Flattened Pixmap
上
意
显示图像的格 式对应
位
像调色板不需要设置
置的是前面图像读入时的调色板
3 基于 LabVIEW 和 MATLAB 的电子散斑
测试系统
,4
位真彩 色图
里面放
,16
这里局部变量
否则 图像无法 正确显示
colors
、8
,
。
。
,
,
当物体的漫反射表面被激光照射时
漫反射的
由于漫反射光的
光波在物体表面的前方相互干涉
从而形成随机分布的亮点和暗点
位相逐点不同
,
,
将物面前方空间的散斑用摄像设备记
统称为散斑
这些随
录下来
机分布的散斑图也随之在空间按一定的规律运动
,
因此能用记录的散 斑图在计 算机上分析 物体的运
动和变形
当物体运动或由 于受力而变 形时
这就是电子散斑技术
,
,
。
,
。
电子散斑干 涉技术是一 种现代光力 学测试 方
它具有全场非接触
不需光学平滑表
、
高精度和高灵敏度
、
不需 要特殊防振
、
、
可用在检测各种工
刚度和
粗糙 度
、
水利 设施的变形
集成电
成为
、
、
、
、
、
、
、
,
,
振动
。
冲击
还可用在土木结构
结构简单
法
面
不避光
快速实现并可在线检测等优点
程机械及设备的变形
强度等特性
测量[4][5]。
路
、
射线
的补偿手段
。
航空航天
器
中具有非常重要的地位
、
、
、
该技术也可以用来检测复合材料
压力容器 和焊接物体 表面或内部 缺陷
X
红外和超声等传统无损检测方法的一种有效
电
因此
兵器工业 及生物医学 等领域的检 测
该技术在机械
水利
土木
,
,
、
、
、
。
本系统将虚拟仪器技术引入光测领域
加 部 分 功 能 模 块 实 现 一 机 多 用 的 目 的
。
下 设 置 测 试 参 数 和 界 面 设 计
LabVIEW
MATLAB Script
完成散斑图的处理
MATLAB
得到被测物的变形信息
节 点 调 用
,
。
通过添
,
系 统 在
通 过
图 像 处 理 程 序
,
测试系统的框图如图
所示
,
2
主要包括文件模
图像采集模块和图像处理模块
通过
混合编 程 得 到 散 斑 图 的 位 相 分 布
。
MATLAB
进
示意 给出测试系 统的前面
,
图
。
3
、
块
和
而得到变形 分布
板
LabVIEW
图
,
4
为处理所得的位相分布图
。
图
2
测试系统示意框图
图
3
测试系统的前面板
图
4
中值滤波位相分布图
(25×25)
解包裹前的位相图
解包裹后的位相图
解包裹前空间位相分布图
解包裹后空间位相分布图
,(b)
,(d)
(a)
(c)
4 结束语
通过
处理
秀的
,
LabVIEW
MATLAB
与
本套电子散斑测试系统取得了良好效果
混合编程完成图像
优
。
MATLAB
LabVIEW
图形化编程语言与强大的
22· ·
山东水利职业学院院刊
第
2009
G71 在生产中的新应用
宋凤敏 郭勋德 李学营
山东水利职业学院
山东 日照
,
276826)
(
期
3
年
月
9
G71
本文以济南二机床厂数控加工车间一轴套类零件淬火前的粗加工为例
G71
,
在生产中可以加工外圆和内孔
但
。
轴向粗车复合循环指令
摘 要:
人知
加工余量取为零进行编程可以减少尺寸换算工作量
关键词:G71
精加工余量为零
尺寸换算
粗加工
;
;
在精加工余量为零的情况下加工零件却鲜为
介绍了
精
精加工余量为零的加工情况
,
G71
。
避免了不必要的失误
,
,
提高了车削编程速度和生产效率
。
,
1 引言
指令是数控系统中的轴向粗车复合循环指
G71
适合于使刀具从当前点以系统预先设定好的速
令
度移动定位 至所指定的 循环起点 用圆柱 棒 料 粗 车
将
阶梯轴的外圆或内孔需切除较多余量时的情况
粗加工的刀具路径
工件切削至精加工之前的尺寸
,
由系统根据精加工尺寸自动设定
系统执行这些指
进刀量等数 据自动计算
令时
切削次数和 切削轨迹
退
刀
2 G71 的格式[1]
、
进行多次进 刀
→
自动完成毛坯的粗加工
,
再进刀的加工循环
根据精 车编程轨迹
切 削
→
→
。
。
。
,
,
在
精加工余量
指令程序 段内要指定 精加工程序 段的
刀
粗加工每次切深和
功能等
G71
序号
、
F
。
、
具循环路径如图
所示
。
1
图
1 G71
指令的刀具循环路径
:G71 U(△d) R(e);
G71 P (ns) Q (nf) U (△u) W (△w) F (f)
格式
S(s) T(t);
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
工程计算语言结合
效率
必将大大提高虚拟仪器的开发
[5] K.F.Wang,A.K.Tieu.Volume -grating phase -shifting digital
计算机辅助光学测量
清华大学出版社
金观昌
,1997.
[M].
[4]
,
.
。
speckle pattern interferometry used for measurement of out-of-
plane displacement. Optics & Laser Technology [J].2004,36:
117~120.
.LabVIEW
程序设计与应用
北京
:
[M].
杨磊
李海涛
参考文献:
杨乐平
[1]
,
电子工业出版社
汪翠英
自动化仪表
裴锋
[2]
决方案
,
,
,
,2005.
李 资 荣
[J].
唐 建 锋
67.
基 于
.
LabVIEW
的 虚 拟 仪 器 算 法 解
,2005,26(8):63-65.
罗 湘 南
基 于
与
混 合 编 程 的
[3]
虚 拟 仪 器 设 计 及 实 现
,
.
LabVIEW
湖 南 文 理 学 院 学 报
MATLAB
[J].
,2004,6(1):66-
收稿日期:2009-06-06
作者简介 :
职业学院教师
宋凡峰
(1981-),
主要 从 事 电 子
,
男
山 东 济 宁 人
硕 士
,
,
山 东 水 利
自 动 检 测 等 方 面 的 教 学 与 研
,
、
究工作
。