视觉论坛VISIONBBS_视觉之家VISIONHOME微信公众号:石鑫华视觉网

 找回密码
 注册会员
查看: 55|回复: 0

[原创] LabVIEW Vision图像处理开发宝典-第二章 结构框架-第四节 通用图像处理平台流程图

[复制链接]
  • TA的每日心情
    慵懒
    昨天 20:09
  • 签到天数: 1847 天

    [LV.Master]2000FPS

    发表于 2020-5-11 17:48:24 | 显示全部楼层 |阅读模式

    LabVIEW Vision图像处理开发宝典-第二章 结构框架-第四节 通用图像处理平台流程图

    第四节通用图像处理平台流程图
    1 通用图像处理平台VI层次结构
    本平台的VI调用层次相对比较简单,大部分的VI调用都在三层以内,即主程序调用子VI,子VI再调用底层VI。一般来讲,程序编写,不需要有太深的调用关系,这样会非常麻烦,也不是很好理解程序的逻辑。最佳的方法就是主程序调用功能VI,然后功能VI调用实现这些功能的相关子VI、节点、属性、方法等。这样通过简单三层关系,来实现程序,是比较合理的。
    图中有些许函数的调用关系比较复杂,如OpenG中的INI文件操作的VI,这里面就有太多复杂的调用,如果要想明白其中的关系,不花点时间,是很难搞明白的。OpenG的原则是尽可能多的实现通用性,因此其中就会有许多的可能性,每种可能性就会有一个VI,所以才会有比较复杂的调用关系。而在图像处理中,一般不会有太多复杂的调用关系,一切以简单高效为准。
    图像处理程序,与其它测试测量程序的编写方法类似。其主要的流程为初始化(参数、硬件、界面等)>响应前面板用户事件>执行事件>图像采集>图像处理>数据判断>保存数据结果、图片>图像采集>图像处理……保存数据>退出。
    2 通用图像处理平台简易流程图
    通用图像处理平台使用生产者消费者(事件)模式为主要结构,生产者中的事件结构用于响应前面板的所有事件,如登陆、登出、参数设置、参数另存为、打开参数、运动、连续采集、单帧采集、图像处理、自动运行、缩小图像、放大图像、原始大小、适合窗口、帮助、最小化、退出等事件。同时也可以响应图像显示控制中的事件,如ROI变换;参数值改变的事件等,所有前面板事件。
    3 生产者(事件结构)
    在主生产者消费者模式中的消费者,使用的是出队列+状态机的模式。用于响应生产者生成的队列元素。
    4 事件消费者+数据生产者
    在消费者中,为了提高采集图像与图像处理的效率 ,会将采集图像与图像处理两部分的内容分开并行执行,这样就又增加了一个附加的生产者消费者(数据)结构。其中生产者在主生产者消费者(事件)结构的消费者中,而附加的生产者消费者(数据)模式的消费者,则另外再建了一个队列+状态机。
    5 数据消费者
    根据以上的流程以及结构分类,即可方便的完成一个相机的图像采集与分析处理任务。如果需要支持多相机,则只需要将生产者消费者(数据)结构,即后面的两个WHILE循环中的内容复制一份,并将其中的VI、控件等,根据情况复制一份复本即可完成多相机的图像处理任务。整个程序的主程序的框架如下图所示:
    6 通用图像处理平台主程序框架


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?注册会员

    x
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW图像处理教程
    机器视觉商城淘宝店铺
    视觉论坛充值赞助方法

    QQ|视觉论坛VISIONBBS.COM|视觉之家VISIONHOME.CN|东莞市华动智能科技有限公司 ( 粤ICP备17078359号-2 )|网站地图

    GMT+8, 2020-5-31 05:52

    Powered by shixinhua.com X3.4

    © 2009-2020 VISIONBBS.COM 浏览量:

    快速回复 返回顶部 返回列表