Halcon区域集合运算及变换

difference(Region, Sub : RegionDifference : : )

示例:difference (RegionUnion, ObjectSelected1, RegionDifference)

RegionUnion(输入对象):输入大的区域对象

ObjectSelected1(输入对象):输入小的区域对象

RegionDifference(输出对象):输出大的区域减去小的区域对象的区域

两个区域的交集:intersection

算子:

intersection(Region1, Region2 : RegionIntersection : : )

示例:intersection (Rectangle, Rectangle1, RegionIntersection)

Rectangle(输入对象):输入第一个区域对象

Rectangle1(输入对象):输入第二个区域对象

              RegionIntersection(输出对象):输出两个区域相交的区域对象

        区域变换

             断开不相连的区域:connection

              算子:connection(Region : ConnectedRegions : : )

              示例:connection (Region1, ConnectedRegions)

                     Region1(输入对象):输入一个连成一块的对象

ConnectedRegions(输出对象):输出断开不相连的各个区域

           区域填充:fill_up

              算子:fill_up(Region : RegionFillUp : : )

              示例:fill_up (Region, RegionFillUp)

                     Region(输入对象):输入需要填充的对象

                     RegionFillUp(输出对象):输出填充好的区域对象

              抠图:reduce_domain

                 算子:reduce_domain(Image, Region : ImageReduced : : )

示例:reduce_domain (GrayImage, RegionFillUp, ImageReduced)

GrayImage(输入对象):输入灰度图对象

RegionFillUp(输入对象):输入二值化区域

ImageReduced(输出对象):输出灰度图图像

              区域变换为矩形或者是圆 内接或者是外接 参数控制shape_tran

              算子:shape_trans(Region : RegionTrans : Type : )

              示例:shape_trans (ObjectSelected1, RegionTrans, 'rectangle1')

                     ObjectSelected1(输入对象):输入一个区域对象

                     RegionTrans(输出对象):输出变换后的区域对象

'rectangle1'(输入控制参数):输入需要变换成什么类型 内接外接矩形 内接外接圆等等

              求取区域骨架:skeleton

              算子:skeleton(Region : Skeleton : : )

              示例:skeleton (RegionTrans, Skeleton)

                     RegionTrans(输入对象):输入一个区域对象

Skeleton(输出对象):输出这个区域的骨架  骨架是由单个像素连接起来的

              对多个区域进行排序:sort_region

算子:sort_region(Regions : SortedRegions : SortMode, Order, RowOrCol : )

              示例:sort_region (SelectedRegions, SortedRegions, 'first_point', 'true', 'column')

                     SelectedRegions(输入对象):输入多个区域

                     SortedRegions(输出对象):输出排序后的多个区域

                     'first_point'(输入控制参数类型):排序模式

                     'true'(输入控制参数顺序):是否是按顺序

 'column'(输入控制参数方向):low是从上到下 column是从左到右排序 方向选择

              对多个队形进行数数:count_obj

              算子:count_obj(Objects : : : Number)

              示例:count_obj (SortedRegions, Number)

                     SortedRegions(输入对象):输入多个区域对象

Number(输出控制参数):输出区域的个数