HALCON示例程序rim.hdev轮圈孔检测提取字符

小哥哥小姐姐觉得有用点个赞呗!在这里插入图片描述

HALCON示例程序rim.hdev轮圈孔检测提取字符

示例程序源码(加注释)

  • 关于显示类函数解释
    dev_update_off ()
    dev_close_window ()
    dev_open_window (0, 0, 768, 576, ‘black’, WindowID)
    set_display_font (WindowID, 16, ‘mono’, ‘true’, ‘false’)
    read_image (Rim, ‘rim’)
    dev_display (Rim)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 二值化
    threshold (Rim, Dark, 0, 128)
    dev_display (Rim)
    dev_set_color (‘green’)
    dev_set_draw (‘fill’)
    dev_display (Dark)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 分割连通域
    connection (Dark, DarkRegions)
  • 使用圆度与面积筛选区域
    select_shape (DarkRegions, Circles, [‘circularity’,‘area’], ‘and’, [0.85,50], [1.0,99999])
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (Circles)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用圆形膨胀
    dilation_circle (Circles, ROIOuter, 8.5)
  • 使用圆形腐蚀
    erosion_circle (Circles, ROIInner, 8.5)
  • 求不同
    difference (ROIOuter, ROIInner, ROI)
  • 合并区域
    union1 (ROI, ROIEdges)
    dev_display (Rim)
    dev_set_draw (‘margin’)
    dev_set_line_width (3)
    dev_set_color (‘green’)
    dev_display (ROIEdges)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 缩减定义域,求取边缘
    reduce_domain (Rim, ROIEdges, RimReduced)
    edges_sub_pix (RimReduced, Edges, ‘canny’, 4, 20, 40)
  • 筛选边缘
    select_contours_xld (Edges, RelEdges, ‘length’, 30, 999999, 0, 0)
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (RelEdges)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 拟合椭圆
    fit_ellipse_contour_xld (RelEdges, ‘ftukey’, -1, 2, 0, 200, 3, 2, Row, Column, Phi, Ra, Rb, StartPhi, EndPhi, PointOrder)
    display_ellipses (Rim, Row, Column, Phi, Ra, Rb, WindowID)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用高斯平滑滤波
    gauss_filter (Rim, RimGauss, 11)
  • 动态阈值分割区域
    dyn_threshold (Rim, RimGauss, SmallAndDarkerRegion, 5, ‘dark’)
    dev_display (Rim)
    dev_set_draw (‘fill’)
    dev_set_color (‘green’)
    dev_display (SmallAndDarkerRegion)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 分割连通域
    connection (SmallAndDarkerRegion, SmallAndDarker)
  • 通过面积筛选区域
    select_shape (SmallAndDarker, CharCandidates, ‘area’, ‘and’, 40, 400)
  • 使用长短轴筛选区域
    select_shape (CharCandidates, PossibleChar, [‘ra’,‘rb’], ‘and’, [10,5], [20,30])
    dev_display (Rim)
    dev_set_colored (12)
    dev_display (PossibleChar)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 合并区域
    union1 (PossibleChar, ROI)
  • 使用圆形元素进行闭运算
    closing_circle (ROI, CharRegion, 17.5)
  • 分割连通域
    connection (CharRegion, CharBlocks)
    dev_display (Rim)
    dev_set_draw (‘margin’)
    dev_display (CharBlocks)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
  • 使用面积对区域进行筛选
    select_shape (CharBlocks, CharRegion, ‘area’, ‘and’, 400, 99999)
  • 对区域进行型转变换,求取最小外接矩形
    shape_trans (CharRegion, ROIChar, ‘rectangle2’)
    dev_display (Rim)
    dev_set_color (‘green’)
    dev_display (ROIChar)
    disp_continue_message (WindowID, ‘black’, ‘true’)
    stop ()
    display_ellipses (Rim, Row, Column, Phi, Ra, Rb, WindowID)
  • 求取交集
    intersection (CharCandidates, ROIChar, Characters)
    dev_set_colored (12)
    dev_display (Characters)
  • 求最小外接矩形
    smallest_rectangle2 (ROIChar, RowChar, ColumnChar, PhiChar, Length1Char, Length2Char)
  • 创建标准转换矩阵
    hom_mat2d_identity (HomMat2DIdentity)
  • 旋转
    hom_mat2d_rotate (HomMat2DIdentity, rad(180) - PhiChar, RowChar, ColumnChar, HomMat2DRotate)
  • 平移
    affine_trans_region (Characters, CharRotated, HomMat2DRotate, ‘constant’)
  • 进行仿射变换
    affine_trans_image (Rim, RimRotated, HomMat2DRotate, ‘weighted’, ‘false’)
    dev_open_window (0, 800, 192, 144, ‘black’, WindowChar)
  • 合并区域
    union1 (CharRotated, CharRotatedAll)
  • 求区域最小外接矩形
    smallest_rectangle1 (CharRotatedAll, Row1, Column1, Row2, Column2)
    ZoomHeight := Row2 - Row1 + 1
    ZoomWidth := Column2 - Column1 + 1
    ZoomFactor := min([768 / ZoomWidth,576 / ZoomHeight])
    ZoomRow := (Row1 + Row2) / 2
    ZoomColumn := (Column1 + Column2) / 2
    dev_set_part (ZoomRow - 576 / ZoomFactor / 2, ZoomColumn - 768 / ZoomFactor / 2, ZoomRow + 576 / ZoomFactor / 2 - 1, ZoomColumn + 768 / ZoomFactor / 2 - 1)
    dev_display (RimRotated)
    dev_set_draw (‘fill’)
    dev_set_colored (12)
    dev_display (CharRotated)

处理思路

这个例子是主要讲解了使用blob方法进行孔洞测量;使用动态阈值进行字符区域提取。

后记

大家有什么问题可以向我提问哈,我看到了第一时间回复,希望在学习的路上多多结交良师益友。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jquery 全选、反选问题解析

最近工作中&#xff0c;需要使用Jquery实现复选框的全选和反选&#xff0c;本人虽然不是专职撸前端的&#xff0c;但这个小问题感觉也没什么难度&#xff0c;下面直接上代码&#xff1a; <div id"list"> <ul class"mui-table-view textOverflow"…

分层

1. UI&#xff08;用户层&#xff09;&#xff0c;BLL&#xff08;业务逻辑层&#xff09;&#xff0c;DAL&#xff08;数据访问层&#xff09;. UI是用来显示的&#xff0c;比如说一些显示的样式还有界面设计。 BLL是用来处理业务逻辑的问题。 DAL是和数据库打交道的。 2.数…

德国汽车厂发生机器人杀人事件 人机协作是大势所趋

OFweek机器人网讯&#xff1a;《金融时报》报道称&#xff0c;德国大众汽车制造厂中一个机器人杀死了一名人类工作人员。当时这名21岁的工人正在安装和调制机器人&#xff0c;后者突然“出手”击中工人的胸部&#xff0c;并将其碾压在金属板上。这名工人当场死亡。 调查人员正对…

H264 视频文件 帧格式 传输封装等 杂碎

H264 视频文件 帧格式 传输封装等 杂碎 rfc3984 Standards Track [Page 2] RFC 3984 RTP Payload Format for H.264 Video February 2005 1. 按照RFC3984协议实现H264视频流媒体nalu单元 包起始 0x 00 00 00 01H&#xff0e;264 NAL格式及分析器http://hi.baidu.com/zsw%5Fdavy…

Tomcat 调优及 JVM 参数优化

Tomcat 的缺省配置是不能稳定长期运行的&#xff0c;也就是不适合生产环境&#xff0c;它会死机&#xff0c;让你不断重新启动&#xff0c;甚至在午夜时分唤醒你。对于操作系统优化来说&#xff0c;是尽可能的增大可使用的内存容量、提高CPU 的频率&#xff0c;保证文件系统的读…

HALCON示例程序sequence_diff.hdev通过两张连续图像进行车辆流量监控

小哥哥小姐姐觉得有用点个赞呗&#xff01; HALCON示例程序sequence_diff.hdev通过两张连续图像进行车辆流量监控 示例程序源码&#xff08;加注释&#xff09; 关于显示类函数解释 Thresh : 35 dev_update_window (‘off’) dev_update_pc (‘off’) dev_update_var (‘of…

PID与伺服驱动器

1、开环控制系统 开环控制系统(open-loop control system)是指被控对象 (被控量)对控制器(controller)的输出没有影响。在这种控制系统中&#xff0c;不依赖将被控量反送回来以形成任何闭环回路。 2、闭环控制系统 闭环控制系统(closed-loop control system)的特点是系统被控…

最新IP数据库 存储优化 查询性能优化 每秒解析上千万

高性能IP数据库格式详解每秒解析1000多万ip qqzeng-ip-ultimate.dat 3.0版编码&#xff1a;UTF8 字节序&#xff1a;Little-Endian 返回规范字段&#xff08;如&#xff1a;亚洲|中国|香港|九龙|油尖旺|新世界电讯|810200|Hong Kong|HK|114.17495|22.327115&#xff09; -…

HALCON示例程序stamp_catalogue.hdev分割图片与文字

小哥哥小姐姐觉得有用点个赞呗&#xff01; HALCON示例程序stamp_catalogue.hdev分割图片与文字 示例程序源码&#xff08;加注释&#xff09; 关于显示类函数解释 gen_rectangle1 (Rect, 0, 0, 5, 5) dev_update_var (‘off’) dev_update_window (‘off’) dev_close_win…

[BZOJ]1023: [SHOI2008]cactus仙人掌图

Time Limit: 1 Sec Memory Limit: 162 MB Description 如果某个无向连通图的任意一条边至多只出现在一条简单回路&#xff08;simple cycle&#xff09;里&#xff0c;我们就称这张图为仙人掌图&#xff08;cactus&#xff09;。所谓简单回路就是指在图上不重复经过任何一个顶…

实现RTP协议的H.264视频传输系统

1. 引言 随着信息产业的发展&#xff0c;人们对信息资源的要求已经逐渐由文字和图片过渡到音频和视频&#xff0c;并越来越强调获取资源的实时性和互动性。但人们又面临着另外一种不可避免的尴尬&#xff0c;就是在网络上看到生动清晰的媒体演示的同时&#xff0c;不得…

机器人网首页应用实例工业自动化 EtherCAT 技术在库卡机器人控制系统上的应用

自 2010 年以来&#xff0c;库卡一直采用 EtherCAT 技术作为所有库卡机器人控制系统中的系统总线。最新的 KR AGILUS 机器人和 LBR iiwa 轻型机器人的紧凑型控制器也是在 EtherCAT 基础上实施的。Beckhoff 基于工业以太网的 EtherCAT因而可以作为整个当前库卡控制系统范围内的…

KVM虚拟机共享存储动态迁移与冷迁移

运行环境一、 配置nfs共享服务器二、 配置KVM虚拟化三、 创建桥接网卡四、 配置kvm服务器并实现动态迁移五、 配置冷迁移运行环境KVM虚拟机两台&#xff08;linux 7.4&#xff09;IP地址&#xff1a;192.168.80.100&#xff08;KVM01&#xff09;IP地址&#xff1a;192.168.80.…

HALCON示例程序surface_scratch.hdev提取划痕

小哥哥小姐姐觉得有用点个赞呗&#xff01; HALCON示例程序surface_scratch.hdev提取划痕 示例程序源码&#xff08;加注释&#xff09; 关于显示类函数解释 dev_update_off () dev_close_window () read_image (Image, ‘surface_scratch’) get_image_size (Image, Width…

MySQL--SQL中的安全问题

---恢复内容开始--- 1) SQL 注入简介 SQL 注入(SQL Injection) 就是利用某些数据库的外部接口将用户数据插入到实际的数据库操作语言(SQL)当中&#xff0c;从而达到入侵数据库乃至操作系统的目的。他的产生主要是由程序对用户输入的数据没有进行严格的过滤&#xff0c;导致非法…

伺服驱动器的 三环控制 电流环 速度环 位置环

运动伺服一般都是三环控制系统&#xff0c;从内到外依次是电流环速度环位置环。 1、电流环&#xff1a;电流环的输入是速度环PID调节后的那个输出&#xff0c;我们称为“电流环给定”吧&#xff0c;然后呢就是电流环的这个给定和“电流环的反馈”值进行比较后的差值在电流环内做…

理解LSTM/RNN中的Attention机制

转自&#xff1a;http://www.jeyzhang.com/understand-attention-in-rnn.html&#xff0c;感谢分享&#xff01; 导读 目前采用编码器-解码器 (Encode-Decode) 结构的模型非常热门&#xff0c;是因为它在许多领域较其他的传统模型方法都取得了更好的结果。这种结构的模型通常将…

linux下基于jrtplib库的实时传送实现

linux 下基于jrtplib库的实时传送实现一、RTP 是进行实时流媒体传输的标准协议和关键技术实时传输协议&#xff08;Real-time Transport Protocol&#xff0c;PRT&#xff09;是在 Internet 上处理多媒体数据流的一种网络协议&#xff0c;利用它能够在一对一&#xff08;unicas…

[BZOJ2326] [HNOI2011] 数学作业 (矩阵乘法)

Description Input Output Sample Input Sample Output HINT Source Solution 递推式长这样&#xff1a;$f[n]f[n-1]*10^kn$ 对于每一段位数个数相同的$n$&#xff08;如$10\sim99,100\sim999,23333\sim66666,1018701389\sim2147483647$&#xff09;&#xff0c;$k$是个定值 然…

HALCON示例程序texture.hdev检测树木

小哥哥小姐姐觉得有用点个赞呗&#xff01; HALCON示例程序texture.hdev检测树木 示例程序源码&#xff08;加注释&#xff09; 关于显示类函数解释 dev_close_window () Interactive : 0 dev_close_window () read_image (MreutHill, ‘mreut_y’) get_image_size (MreutH…