碧波液压网 欢迎你,游客。 登录 注册

基于数字图像处理技术的工程检测软件设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  一、 概述

  利用工业数码相机拍摄照片,获取模拟图像,再通过图像采集卡,对图像进行离散化 后传送给计算机,计算机将得到的数字图像按一定的图像文件格式保存;然后调用该图像处理系统对图像处理分析,根据需要提取的特征值,最后对得到的特征数值进行数据重构分析,获取精度公差结果。

  二、 该软件的构件关系

  本软件的设计是以VB6.0为客户,MATLAB6.5与AUTOCAD为服务器来共同完成的。利用VB的可视化设计构建人机对话界面,利用MATLAB的图形处理功能和强大的编程功能完成软件核心处理,而后利用AUTOCAD的图形标注和测量功能完成图像数据的获得。

  对AutoCAD对象控制[1]:acaddoc.sendcommand "符合Autocad 的指令" ;该命令可以向AutoCAD发出指令调用且执行该指令。

  对MATLAB的对象控制[2]:在将MATLAB作为服务器利用ActiveX技术进行调用时,在操作系统的注册表中只有以下三个函数可以用。

  1) matlab.execute “ MATLAB格式的程序”;该句用于执行MATLAB的命令

  2) matlab.getfullmatrix(“a”, “base”, “mreal”,“mimag”);该句用于执行从MATLAB中读出距阵的数值,放在数组a中,mreal为距阵的实部,mimag为距阵的虚部。

  3) matlab.putfullmatrix(“a”, “base”, “mreal”,“mimag”);该句用于执行把外部的数组读入到MATLAB中距阵的数值,放在距阵a中,mreal为距阵的实部,mimag为距阵的虚部。

  在VB中应用符合MATLAB与AutoCAD的命令,首先必须建立VB与MATLAB,VB与AutoCAD之间的联系。这是通过在VB中书写公用变量声名的方式来实现的。

  其核心程序为:

  Public matlab As Object ;全局变量声名

  Public acaddoc As Object

  Public mdspace As Object

  Public acadapp As Object

  Public acadutil As Object

  On Error Resume Next ;对于matlab的打开、声明和错误处理

  Set matlab = GetObject( "matlab.application"

  If Err Then

  Err.Clear

  Set matlab = CreateObject("matlab.application"

  If Err Then

  MsgBox "软件不能打开MATLAB,请重试!"

  Exit Sub

  End If

  End If

  以下是autocad的引用,对AutoCAD的打开、声明和错误处理

  On Error Resume Next

  Set acadapp = GetObject(, "autocad.application"

  If Error Then

  Err.Clear

  Set acadapp = CreateObject("autocad.application"

  If Err Then

  MsgBox "无法引导AUTOCAD,请检查是否已安装了AUTOCAD2000."

  End If

  End If

  Set acaddoc = acadapp.activedocument ;设置autocad的具体工作情况

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论