Halcon知识:segment_contours_xld算子
一、案例说明
边界提取:以前的边缘提取都建立在前景通过thresold将区域提取出,然后从区域提出XLD,但是,如果区域无法提出就不好办了。此例子告诉大家,不必二值化提取,也能取出边缘来,edges_sub_pix 就能做到。
本案例主要给出一种对比度不明显的图中,提取出圆、椭圆、直线的例子。
在用Halcon进行图像处理的过程中,必须对轮廓进行分割,将轮廓分为直线段、圆(或圆弧)、椭圆弧不同的段,轮廓分割最常用的算子是segment_contours_xld。
二、算子介绍
segment_contours_xld——Segment XLD contours into line segments and circular or elliptic arcs(将一个XLD轮廓分割为直线段、圆(圆弧)、椭圆弧。)
MaxLineDist1 第一次用Ramer算法(即用直线段递进逼近轮廓)时的MaxLineDist,在逼近完成之后,再用圆弧或椭圆弧对相邻分割线段进行拟合,如果拟合圆弧到轮廓的距离小于逼近线段到轮廓的距离,就用圆弧替代逼近线段,这个过程一致迭代直到所有的线段拟合完毕。
三、轮廓分割的例子:
read_image (Image, 'pumpe')
edges_sub_pix (Image, Edges, 'canny', 1.5, 15, 40)
segment_contours_xld (Edges, ContoursSplit, 'lines_circles', 5, 4, 2)
count_obj (ContoursSplit, Number)
gen_empty_obj (Lines)
gen_empty_obj (Circles)for I := 1 to Number by 1select_obj(ContoursSplit, Contour, I)get_contour_global_attrib_xld (Contour, 'cont_approx', Type)if (Type == -1)concat_obj (Lines, Contour, Lines)elseconcat_obj (Circles, Contour, Circles)endif
endforfit_line_contour_xld (Lines, 'tukey', -1, 0, 5, 2, RowBegin, ColBegin, RowEnd, ColEnd, Nr, Nc, Dist)
fit_circle_contour_xld (Circles, 'atukey', -1, 2, 0, 3, 2, Row, Column, Radius, StartPhi, EndPhi, PointOrder)
Halcon知识:segment_contours_xld算子相关推荐
- 【Halcon知识】外轮廓线的算子
一.提要 这里介绍,如何将图像的对象返回成图形的几何元素问题.Halcon中对应的算子很多,这里将从最重要的开始介绍,然后逐一揭示其它算子的用途.好了,就开始吧! 二.算子001:将轮廓线分割成线段和 ...
- halcon知识:hough变换检出图像的直线
一.说明 用hough变换查找直线:hough的原理见文章: 图像处理:Hough变换原理分析 此文专门介绍halcon的具体算子实现. 二.示例代码 * Detect lines in an im ...
- halcon知识:圆度和紧凑度
一.说明 本文是halcon知识:select_shape究竟怎么用(1)的继续,关于select_shape的用途说的还不够,因为这些属性很多,有必要分开介绍. 二.圆度和紧凑度的直观演示 2.1 ...
- halcon知识:select_shape究竟怎么用(1)?
说明 select_shape是halcon的强大算子,需要重点研究,本例按照Features='area',对Operation进行说明,但是更多的案例将在一个更大的文档中说明. 一. 测试sele ...
- Halcon之segment_contours_xld
Halcon之segment_contours_xld segment_contours_xld:将轮廓分割成线段.圆形.椭圆形轮廓段 segment_contours_xld (Edges, Con ...
- 【Halcon知识】select_contours_xld算子的环境
一.提要 每个halcon的算子都有一个生态,它是生态一个环节:花点时间了解清楚是非常必要的.本文着重对算子select_contours_xld进行解刨. 二.生态前半部分 在调用select_co ...
- halcon知识:图像纹理特征提取cooc_feature_matrix
一.关于共生矩阵 如果不懂啥叫共生矩阵,将无法阅读该文.如果试图搞明白啥叫共生矩阵,请看我的另一篇博文,<hjalcon知识:共生矩阵> 本片介绍共生矩阵产生的其它属性:能量.相关性.同质 ...
- halcon知识:差分模板variation_model
一.差分模板 这个示例程序展示了如何使用 HALCON 的变分模型算子执行典型的打印质量检查.程序检测在笔夹上的不正确打印.该程序类似于程序 print_check.hdev.主要区别是每个字符都是单 ...
- Halcon知识 : 乘法图像融合
1 算子mult_image halcon提供的关于融合图像的问题mult_image算子是图像融合的工具: 其中:g1是图像omage1的像素,g2是图像omage2的像素,Mult是一个系数,Ad ...
最新文章
- JAVA-Socket通信笔记
- bluecam连接步骤说明_磊科路由器登录设置及默认密码说明
- 宝塔服务器环境好不好_服务器环境怎么搭建?(宝塔环境搭建教程)
- iOS 注册密码加密 添加了时间戳 遇到的问题...
- 对java多线程里Synchronized的思考
- python列表中的冒号_python 列表中[ ]中冒号‘:’的作用
- 浅谈块级元素和行级元素的相对定位和绝对定位问题
- linux 编译3g驱动_linux重新编译内核
- 使用screen的时候出现了如下错误: Cannot open your terminal '/dev/pts/0' - please check.
- windows无法访问指定设备_恢复 你的电脑/设备需要修改 未连接或无法访问所需设备。...
- Akka Remote Actor_简单示例二
- python 获取当前日期和时间_如何在Python中获取当前日期和时间?
- c语言有趣小程序,c语言小程序代码大全(9个经典的C语言小程序)
- asp.net网上书店系统
- 是否可以将现有图表导入到 think-cell?
- 自动化和半自动矢量化提取地物矢量轮廓
- Fingerprint 解锁流程
- 附件英文计算机英语,详情请参见附件的英文说法
- 金三银四,给大家肝一下面试题~
- 概率论在实际生活的例子_日常生活中的概率统计
热门文章
- MCMC笔记Metropilis-Hastings算法(MH算法)
- torch_geometric 笔记: 数据集Cora 简易 GNN
- 文巾解题 523. 连续的子数组和
- MATLAB应用实战系列(四十五)-matlab任意图形轮廓坐标提取【含源代码】
- Pandas实战教程 | DataFrame连接 pd.concat()
- #论文 《Wide Deep Learning for Recommender System》翻译
- numpy.argsort详解
- Hyperledger Fabric 1.4 Kafka集群部署教程
- 亚马逊:区块链模块化,造币流水线化
- 汤晓鸥谈深度学习三大核心要素:算法设计、高性能的计算能力以及大数据