背景描述:在应用labviEW vision进行图像处理开发,用于实时采集图片,利用模板图片进行模板匹配,然后利用overlay arc函数将匹配得到的像素坐标在原始图片中做标记。上述程序采用while循环。
现象:程序在大多数情况下,在检出目标的情况下,能成功画出所需标记。但是,有时候,在检出目标的情况下,无法画出标记。在对程序增加 《等待下一个整数毫米》函数,并设定时间为300-500ms情况下,能成功画出标记。
疑问:运用while循环应该是循环内所有函数、数据流均完成后,才完成一次循环。在检出目标的情况下,在不管程序运行一次的时间长度,均应先进入overlay函数后,在退出本次循环。但是,根据实际情况来看,似乎是:单次循环时间短的情况下,则不进入overlay函数;单次循环时间长的情况下,进入overlay函数。
请高手帮忙指导,谢谢。
对采集的图像在显示时增加overlay,在显示时overlay会有闪烁的感觉。可以怎样避免呢?这是正常的现象。每一帧新采集的图像会重写包含overlay信息的IMAQ图像缓冲区,有时重新绘制overlay的时间在图像显示时就能被感觉到。为避免这种现象,您可以将图像显示控件的显示方式更改为快照模式(snapshot),具体来说就是在图像显示控件上右键点击并选择Snapshot。也可以通过图像显示属性节点来设置snapshot模式为开启或关闭。通过设定为snapshot模式就可以避免重新绘制显示图像的行为。
详细参看:
LVision-Snapshot快照_石鑫华视觉网_东莞华视自动化科技有限公司_机器视觉商城_机器视觉网_机器视觉论坛_机器视觉光源_光源控制器_工业相机_工业镜头_视觉方案_机器视觉系统_图像处理_LabVIEW
http://shixinhua.com/imganalyse/2012/12/239.html