TA的每日心情 | 开心 半小时前 |
---|
签到天数: 3412 天 连续签到: 14 天 [LV.Master]2000FPS
|
发表于 2015-3-26 21:04:00
|
显示全部楼层
|阅读模式
来自:广东省东莞市 移动
注册登陆后可查看附件和大图,以及购买相关内容
您需要 登录 才可以下载或查看,没有账号?注册会员
x
NI LabVIEW Vision中,使用IMAQ Add函数,对两幅图像相加,或一幅图像与常量相加,从而得到另外一幅图像。实际中图像加法应用比较少,但是学习一下,可以了解一些常用图像函数的用法。
图1为图像加范例的前面板。主要控件有图像A路径输入框、图像B路径输入框、图像A浏览按钮、图像B浏览按钮、Load加载、Add加、Return返回停止、图像A显示控件、图像B显示控件、图像A+B显示控件。加法运算时,每个像素的值单独通道进行数学相加,最大值为255。
下面来看一下范例的程序框图。
程序框图,主要使用的是顺序结构这种最简单的结构。顺序的第0帧使用的作用是创建图像缓存。创建图像缓存时,需要注意一下图像的类型。需要符合图2右边的各项目等式规定的要求。如灰度图U8加灰度图U8仍然是灰度图U8,而灰度图U8加彩色图U32则得到彩色图U32。
顺序结构的第1帧里是使用了默认的两幅图像为图像A、图像B的路径。如果是为了演示,这个步骤是可以省略的。
图像加顺序结构的第2帧,这帧里完成了加法范例的主要功能,如选择图像、加载图像、加法运算、停止返回等。里面又包含了一个5帧的顺序结构。其中第0帧用于选择图像A。第1帧用于选择图像B,如下图所示:
第2帧为加载已经选择好的图像。
第3帧为执行加法运算。这里的选择图像、加载图像、执行加法运算,都是通过判断相应的布尔控件的真假然后执行相应的分支。这种结构的效率那是相当的低的。不推荐。
第4帧为延时功能,这个作用并不是十分明显,可以考虑去掉。
图9所示为最外面的大顺序结构的第3帧,这个作用是关闭图像窗口。在这里这个过程是完全没有必要的,因为并没有打开过图像浏览器,因此没有窗口可以关闭。
第4帧为关闭所有的图像引用,并释放图像内存。LabVIEW通常可以自动释放自己创建的图像引用。因此也可以不需要这个关闭指令,不过出于好的编程习惯,最好还是在程序结束时,加上释放指令。
下面是修改后一个图像加法运算,可以针对不同图像类型,以及针对不同分辨率的图像进行加法运算。主结构使用事件结构。程序请往论坛下载。
|
|