Halcon学习教程(一) 之提取十字线中心 图像分割

yizhihongxing

  原文作者:aircraft

  原文链接:https://www.cnblogs.com/DOMLX/p/17266405.html

  

 

废话不多说,因为毕业后工作原因比较忙,好久没更新博客了,直接上图。。。

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

上图有个十字线,我们要提取出十字线的中心(Hhhh这个线是我随手画的 没画直!!)

第一步:肯定是读取图像进行灰度提取处理啦。

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

 

目前我们已经把十字线提取出来了。

 

第二步:单独提取横线和竖线的区域出来

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

 

 

 

这里提取有很多种方法,我们用的是开运算,通过控制滤波核的尺寸将横线,和竖线都进行一次单独的过滤。这样我们就分别得到了十字线的横线区域

 

和竖线区域了。

 

 

 

第三步:求两线的交集部分即十字线的交点位置

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

 

 

 

那么这里我们就将十字线的中心提取出来了。然后可以看看中心的坐标位置是什么

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

 

 

 

代码如下:

 

 

read_image (Image, 'C:/Users/xujh131042/Pictures/十字线.PNG')
threshold(Image, Region, 0, 10)


opening_rectangle1 (Region, RegionOpening1, 1, 5)
opening_rectangle1 (Region, RegionOpening2, 5, 1)

intersection (RegionOpening1, RegionOpening2, RegionIntersection)

area_center (RegionIntersection, Area, Row, Column)

 

 

当然这里也可以用局部阈值分割来提取出十字线

 

Halcon学习教程(一) 之提取十字线中心 图像分割

 

 

代码如下:

read_image (Image, 'C:/Users/xujh131042/Pictures/十字线.PNG')
mean_image (Image, ImageMean, 6, 6)
dyn_threshold (Image, ImageMean, RegionDynThresh, 5, 'dark')

opening_rectangle1 (RegionDynThresh, RegionOpening1, 1, 5)
opening_rectangle1 (RegionDynThresh, RegionOpening2, 5, 1)

intersection (RegionOpening1, RegionOpening2, RegionIntersection)

area_center (RegionIntersection, Area, Row, Column)

 

 

 

 

 

 

 

 

 

若有兴趣交流分享技术,可关注本人公众号,里面会不定期的分享各种编程教程,和共享源码,诸如研究分享关于c/c++,python,前端,后端,opencv,halcon,opengl,机器学习深度学习之类有关于基础编程,图像处理和机器视觉开发的知识

Halcon学习教程(一) 之提取十字线中心 图像分割

 

原文链接:https://www.cnblogs.com/DOMLX/p/17266405.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Halcon学习教程(一) 之提取十字线中心 图像分割 - Python技术站

(0)
上一篇 2023年4月18日
下一篇 2023年4月18日

相关文章

  • C语言中数据结构之链式基数排序

    C语言中数据结构之链式基数排序 概述 链式基数排序是基数排序的一种实现方式。基数排序是一种桶排序算法,它通过将需要排序的数据分成多个桶,并且按照一定的顺序将数据从桶中取出来,以达到排序的目的。链式基数排序则使用了链表结构来实现桶的功能。 实现步骤 链式基数排序的实现步骤如下: 申请链表节点数组,并初始化链表头结点数组。链表的数量等于指定的基数,例如10进制的…

    数据结构 2023年5月17日
    00
  • 【ACM算法竞赛日常训练】DAY4题解与分析【树】【子序列】| 组合数学 | 动态规划

    DAY4共2题: 树(组合数学) 子序列(dp,数学) ? 作者:Eriktse? 简介:19岁,211计算机在读,现役ACM银牌选手?力争以通俗易懂的方式讲解算法!❤️欢迎关注我,一起交流C++/Python算法。(优质好文持续更新中……)?? 原文链接(阅读原文获得更好阅读体验):https://www.eriktse.com/algorithm/109…

    算法与数据结构 2023年4月18日
    00
  • python 密码学示例——理解哈希(Hash)算法

    以下是关于“Python密码学示例——理解哈希(Hash)算法”的完整攻略: 简介 哈希(Hash)算法是一种常用的密码学算法,它可以将任意长度的数据转换为固定长度的数据,通常用于数据的完整性验证和数字签名等场景。在本教程中,我们将介绍如何使用Python实现哈希算法,并提供两个示例。 算法1:MD5哈希算法 MD5哈希算法是一种常用的哈希算法,它可以将任意…

    python 2023年5月14日
    00
  • C语言数据结构之迷宫问题

    C语言数据结构之迷宫问题 迷宫问题是一种基本的搜索问题,其中需要在一个矩阵中寻找从起点到终点的路径。在本篇文章中,我们将以C语言为例,介绍迷宫问题的完整攻略。 准备工作 在开始之前,我们先要准备好数据结构。为了表示迷宫,我们使用一个二维数组。其中,0表示可以通过的路,1表示障碍物不可通过。为了记录路径,我们还需要使用一个二维数组来表示每个格子是否已经被访问过…

    数据结构 2023年5月17日
    00
  • Python实现简单遗传算法(SGA)

    下面是详细讲解“Python实现简单遗传算法(SGA)”的完整攻略,包括算法原理、Python实现和两个示例说明。 算法原理 简单遗传算法(SGA)是一种基于自然选择和遗传进化的优化算法,其基本思想是通过模拟生物进化过程,不断优化的。SGA的步骤如下: 初始化种群,随机生成一组初始解。 评估种群中每个个体的度,根据适应度选择优的个体。 通过交叉和变异操作,产…

    python 2023年5月14日
    00
  • 数据结构C语言链表的实现介绍

    数据结构C语言链表的实现介绍 1. 什么是链表? 链表是一种常见的数据结构,它由一系列的节点(Node)通过链接(Link)组成,每个节点包含两个部分:数据域(Data)和指针(Pointer),数据域用来存储数据,指针用来链接下一个节点。链表最重要的优点就是支持动态扩展,占用内存比较灵活,相比于数组,链表在增加和删除元素时更加高效。 2. 链表的实现 链表…

    数据结构 2023年5月17日
    00
  • JavaScript队列数据结构详解

    JavaScript队列数据结构详解 本文将为大家详细讲解JavaScript队列数据结构的相关知识。 什么是队列数据结构 队列是一种线性数据结构,它只允许在队列的两端进行插入和删除操作。在队列中,新元素插入到队列的末尾,也称为队尾。而删除操作则是从队列的前面删除元素,也称为队首。 将元素插入队列的操作称为入队,将元素删除队列的操作称为出队。除此之外,还有一…

    数据结构 2023年5月17日
    00
  • C语言深入讲解链表的使用

    C语言深入讲解链表的使用 什么是链表? 链表是一种常用的数据结构,它的存储方式是通过指针相互连接实现的。链表是由若干个节点(node)构成的,每个节点都存储着一些信息和指向下一个节点的指针。 链表实现的基本操作 链表的基本操作包括插入节点、删除节点以及遍历链表。我们下面将通过代码示例详细介绍这些操作。 插入节点 链表的插入节点操作是指在链表的某一位置插入一个…

    数据结构 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部