Halcon直线检测

这篇具有很好参考价值的文章主要介绍了Halcon直线检测。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Halcon最常用的直线检测算子,add_metrology_object_line_measure,利用Halcon封装好的模型不仅可以检测直线,还可以检测圆,椭圆,矩形等。下面介绍下其余的直线检测的算子,需要配合
skeleton (SelectedRegions, Skeleton)
gen_contours_skeleton_xld (Skeleton, Contours, 5, ‘filter’)
fit_line_contour_xld (Contours, ‘tukey’, -1, 0, 5, 2, RowBegin, ColBegin, RowEnd, ColEnd, Nr, Nc, Dist)
gen_region_line (RegionLines, RowBegin, ColBegin, RowEnd, ColEnd)
等算子拟合直线。
2.算子如下

  1. bandpass_image

功能:使用带通滤波器提取边缘。

  1. lines_color

功能:检测色线和它们的宽度。

  1. lines_facet

功能:使用面模型检测线。

  1. lines_gauss

功能:检测线和它们的宽度。
3.案例解释
3.1 bandpass_image

dev_close_window ()
dev_open_window (0, 0, 512, 512, ‘black’, WindowHandle)
dev_set_draw (‘margin’)
read_image (Image, ‘C:/Users/Dell/Desktop/2022_11_28_15_44_14_0588_id_36429.bmp’)
median_rect (Image, ImageMedian, 9, 9)
bandpass_image (ImageMedian, ImageBandpass, ‘lines’)
threshold (ImageBandpass, Regions, 21, 255)
connection (Regions, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, ‘area’, ‘and’, 536.53, 1000)
skeleton (SelectedRegions, Skeleton)
gen_contours_skeleton_xld (Skeleton, Contours, 5, ‘filter’)
fit_line_contour_xld (Contours, ‘tukey’, -1, 0, 5, 2, RowBegin, ColBegin, RowEnd, ColEnd, Nr, Nc, Dist)
gen_region_line (RegionLines, RowBegin, ColBegin, RowEnd, ColEnd)
原图
Halcon直线检测
bandpass_image结果图
Halcon直线检测
拟合直线
Halcon直线检测
3.2 lines_color

read_image (Image, 'cable' + J)
dev_display (Image)
disp_message (WindowHandle, 'Color image', 'window', 12, 12, 'black', 'true')
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
lines_color (Image, Lines, 3.5, 0, 12, 'true', 'false')
select_contours_xld (Lines, LongLines, 'contour_length', 450, 100000, 0, 0)
原图

Halcon直线检测
结果图
Halcon直线检测
3.3 lines_facet
read_image (Bk45, ‘bk45’)
dev_set_colored (6)
lines_facet (Bk45, Lines, 5, 3, 5, ‘light’)
原图
Halcon直线检测
结果图
Halcon直线检测
3.4 lines_gauss
dev_update_off ()
dev_close_window ()
dev_close_window ()
*

  • Read an aerial image
    read_image (Image, ‘mreut4_3’)
    dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle1)
    set_display_font (WindowHandle1, 16, ‘mono’, ‘true’, ‘false’)
    dev_display (Image)
    disp_message (WindowHandle1, ‘Extract the roads from an aerial image’, ‘window’, 12, 12, ‘black’, ‘true’)
    disp_continue_message (WindowHandle1, ‘black’, ‘true’)
    stop ()
  • Segment the image and reduce the domain
    threshold (Image, Region, 160, 255)
    reduce_domain (Image, Region, ImageReduced)
  • Detect the lines that represent the road centers
    MaxLineWidth := 5
    Contrast := 70
    calculate_lines_gauss_parameters (MaxLineWidth, Contrast, Sigma, Low, High)
    lines_gauss (ImageReduced, RoadCenters, Sigma, Low, High, ‘light’, ‘true’, ‘bar-shaped’, ‘true’)

原图
Halcon直线检测

结果图
Halcon直线检测文章来源地址https://www.toymoban.com/news/detail-465983.html

到了这里,关于Halcon直线检测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenCV如何实现直线检测

    本文主要介绍OpenCV自带的直线检测函数HoughLines()的用法,这个函数的第一个参数是一个二值化图像,所以在进行霍夫变换之前要首先进行二值化,或者进行Canny 边缘检测。第二和第三个值分别代表beta; 和 theta; 的精确度。第四个参数是阈值,只有累加其中的值高于阈值时才被

    2024年02月14日
    浏览(38)
  • Matlab实现Hough直线检测

    基于Matlab实现图像的直线识别 代码如下:(有些参数需要自己根据图像情况调整)

    2024年02月04日
    浏览(40)
  • 霍夫变换直线检测原理和应用

    今天我们将重点讨论霍夫变换,这是一种非常经典的线检测的算法,通过将图像中的点映射到参数空间中的线来实现。霍夫变换可以检测任何方向的线,并且可以在具有大量噪声的图像中很好地工作。 闲话少说,我们直接开始吧! 为了理解霍夫变换的工作原理,首先我们需

    2024年02月06日
    浏览(94)
  • opencv 直线检测 HoughLines HoughLinesP

    2024年02月16日
    浏览(38)
  • 【OpenCv • c++】几何检测 —— 霍夫变换 | 霍夫直线检测 | 霍夫线变化

    🚀 个人简介:CSDN「 博客新星 」TOP 10 , C/C++ 领域新星创作者 💟 作    者: 锡兰_CC ❣️ 📝 专    栏: 【OpenCV • c++】计算机视觉 🌈 若有帮助,还请 关注➕点赞➕收藏 ,不行的话我再努努力💪💪💪

    2024年02月06日
    浏览(39)
  • 图像处理之Hough变换检测直线

    霍夫变换是一种特征检测(feature extraction),被广泛应用在图像分析(image analysis)、计算机视觉(computer vision)以及数位影像处理(digital image processing)。由RichardDuda和PeterHart在公元1972年发明,并称之为广义霍夫变换(generalizedHoughtransform),广义霍夫变换和更早前1962年的PaulHough的专利

    2024年02月15日
    浏览(43)
  • 霍夫变换直线检测算法实现OpenCV(C++)

    一、原理 对于霍夫变换的原理这里就不进行描述啦,感兴趣的可以自行搜索。也可以看知乎上面的这篇贴文通俗易懂理解——霍夫变换原理。 二、算法代码 三、效果测试 测试代码 上述代码中的drawLine()函数是《OpenCV4快速入门》一书的代码清单 7-2中的原函数,只用于画线。

    2024年02月05日
    浏览(45)
  • 基于opencv的直线检测(python&C++)

    提供了直线检测python与C++版本,用于检测竖直线与横线,主要流程为:图像二值化+Canny边缘检测+霍夫直线变换直线检测 cmake 编译运行:

    2024年01月17日
    浏览(36)
  • 【OpenCV】cv2.HoughLines()霍夫直线检测

    霍夫直线检测(Hough Line Transform)是一种在图像中检测直线的经典算法。它通过将二维图像空间中的点映射到极坐标空间中,将直线检测问题转化为在参数空间中找到交点的问题。 原理: 对于图像空间中的每个边缘点,计算其对应在极坐标空间中可能的直线。 极坐标空间中

    2024年02月05日
    浏览(55)
  • halcon脚本-深度学习【目标检测】

    本文讲解使用halcon的目标检测是使用步骤,标注工具不使用halcon提供的标注工具,而是使用各个深度学习框架都使用的labelImg工具,然后使用hde脚本以及python脚本转化为标准的halcon训练及文件 本文涉及数据标注、数据转化、训练、评估、预测几个模块。   首先我是用的是

    2024年02月10日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包