注册登陆后可查看附件和大图,以及购买相关内容
您需要 登录 才可以下载或查看,没有账号?注册会员
x
本帖最后由 石鑫华视觉 于 2014-9-11 11:41 编辑
LabVIEW中黑白灰度图像转换成二值图像-手动阈值法视觉论坛
在LabVIEW中,要将黑白图像/灰度图像转换成二值图像(只有两个值的图像,通常是0和1或0和255),是有许多个函数的,有手动阈(念yù,不念fá)值Threshold函数,多重手动MultiThreshold阈值,自动阈值AutoBThreshold,自动多重阈值AutoMThreshold,局部阈值Local Threshold等许多个函数可以实现。
LabVIEW中的二值化函数在程序函数选项卡中的位置
LabVIEW中的二值化函数在程序函数选项卡中的位置 IMAQ Threshold阈值函数(手动阈值函数)
IMAQ Threshold阈值函数
IMAQThreshold阈值函数 Keep/Replace Value(Replace):为保持/替换值(替换)选项。即符合Range阈值范围内的值,是被替换成指定的值Replace Value,还是保持不变。替换成指定的值,是指将阈值范围内的值统一替换成某一种颜色,如红色,这时图像显示控件的调色板类型Palette Type需要设置成Binary二值模式才可以正常的显示,不在阈值范围内的值,则变成黑色。保持不变,则将阈值范围内的值保持原有值不变,而不在阈值范围内的值则变成黑色。这时Threshold函数的Replace Value是无效的。这是要正常显示,因为其包含了灰度值,则需要将Image显示控制的调色板类型Palette Type设置成Grayscale灰度模式。 Image Src:原始图像,即需要转换的灰度图像。 Image Dst:目标图像,即转换后的二值图像。原始图像、目标图像,都是指图像缓存的地址引用。并不指图像数据本身。NI所有的视觉函数中的Image Src、Image Dst都是如此定义的。 Range:阈值范围。是一个簇元素,里面有两个值,一个Lower Value较低值,一个Upper Value较高值。在指定的较低值、最高值范围内的值为目标特征,而不在此范围内的值,全部变黑(值为0) Replace Value:替换值。即将阈值范围内的值替换成什么值。替换值包含了15个值,在灰度256级范围内,可以有17个循环。下表中的g为替换值,也表示了灰度值。即当使用替换值时,如果调色板没有设置成Binary模式,则会将替换值显示了灰度值。如替换值为1,则其使用的调色版是红色的,为2时,则为绿色的,……,为15时,为长春花色;16时,则又变成红色,17是为绿色……,当g=255时,则直接显示为白色,不再使用调色板中的颜色显示。如果使用Grayscale灰度模式显示时,则替换值g=1时,则替换值的灰度值为1,替换值为2时,则为2……g=100时,灰度值为100,g=255时,则灰度值也为255。另外 g值不要设置为0。如果为0时,则和背景是一样的颜色,无法区分阈值效果。
Replace Value:替换值
扩展阅读: LabVIEW中二值化后图像显示全黑的解决办法_视觉开发模块NIVision_编程|图像处理|机器视觉_机器视觉论坛_石鑫华视觉_商城_方案_系统_光源_控制器_工业相机_镜头_石鑫华视觉_机器视觉论坛
Iamge Dst Out:目标图像输出。如果Image Dst没有连接,则转换后的图像存储在Image Src的地址中,而Image Src中的原来的灰度图像则被覆盖掉。因此,如果要保留Src中的图像,则Dst必需另外指定缓存。 程序使用方法
阈值函数使用效果
阈值函数使用效果
程序下载:
|