QQ登录

只需一步,快速开始

halcon check_difference函数介绍

[ 复制链接 ]
check_difference(Image, Pattern : Selected : Mode, DiffLowerBound, DiffUpperBound, GrayOffset, AddRow, AddCol : )
check_difference从输入图像Image中选择满足条件的像素(g_{o} = g_{image}),
其与Pattern 中相应像素的灰度值差在区间[ DiffLowerBound, DiffUpperBound]内或外。
Pattern 的像素由(AddRow,AddCol)相对于图像Image进行转换。
g_{p}为来自由(AddRow,AddCol)根据g_{o}转换后的Pattern 的灰度值。


如果Mode = diff_inside
像素 g_{o}如果满足下面条件,则被选中
DiffLowerBound <=g_o-g_p-GrayOffset >= DiffUpperBound
如果Mode  = diff_outside
像素 g_{o}如果满足下面条件,则被选中
g_o-g_p-GrayOffset<DiffLowerBound 或g_o-g_p-GrayOffset>DiffUpperBound

该测试对图像Image域(区域)的所有点进行测试,
这些点与平移后的Pattern 域相交。
所有满足上述条件的点都聚合在输出区域中。
这两幅图像可能大小不同。通常,Pattern 比图像小。


例程:
read_image (Traffic1, 'traffic1')
read_image (Traffic2, 'traffic2')
get_image_size (Traffic1, Width, Height)
dev_close_window ()
dev_open_window (0, 0, 2 * Width, 2 * Height, 'black', WindowHandle)
check_difference (Traffic1, Traffic2, Selected1, 'diff_outside', -15, 255, 0, 0, 0)
dev_display (Traffic2)
dev_set_draw ('margin')
dev_set_color ('yellow')
dev_display (Selected1)


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索