为什么在视觉助手中可以使用彩色图像,生成VI后就出错。
有些同志会经常有这样的疑问,在视觉助手、VBAI中使用彩色图像,然后再使用抽取颜色平面函数,得到灰度图像,都是可以正常使用的。但是生成VI后,在LabVIEW中总是显示图像无效的错误提示。其实这个问题,通常是提取颜色平面函数的原始图像已经变成了灰度图像所致。
而造成原始图像变成灰度图像的原因,第一种原因是由于在创建图像缓存时,并没有指定缓存的数据类型,而函数的默认图像类型为U8的灰度图。因此在加载彩色图像时,则只会显示红色平面。
要想解决此问题,只需要在Create函数Image Type中选择适合的类型RGB即可。
另一种原因,则是在WHILE循环中,循环处提取颜色平面。这种情况通常第一次是正常的,因为第一次加载的是彩色图像,而提取颜色平面函数为了方便,没有使用Image Dst,这时提取的灰度图像将放置到Image Src中,会将原始的彩色图像用提取后的灰度图像替换。这时Image SRC中也就变成了灰度图像,这时再提取Image Src,则会出现类型错误。这里只需要连接Image Dst(U8图像类型),不覆盖原始图像的空间,即可解决该问题。可参考以下主题:
LabVIEW Vision同一彩色图片多次抽取不同的颜色平面
http://visionbbs.com/thread-1824-1-1.html
机器视觉,专业的石鑫华视觉http://shixinhua.com,专业的机器视觉论坛http://visionbbs.com 机器视觉,专业的石鑫华视觉http://shixinhua.com,专业的东莞华视自动化科技有限公司http://visionbbs.com
页:
[1]