工业上要检测螺丝的内外直径、内外牙距、内外角度,现在比较好用的图像处理库,开源的opencv,收费的有halcon。为了实现螺纹检测,和对比螺纹检测拿个库比较好。分别用opencv和halcon实现了螺纹检测,通过对比发现用halcon实现的效果比较。现在用博客把实现过程记录下来:

1、需要检测的螺纹数据如下:

2、为了实现检测螺丝以上数据,螺纹内径、螺纹外径、螺纹外牙距、螺纹内牙距、螺纹内角度和螺纹外角度。算法思路如下:

(1)、算法首先必须把这个螺纹所有凸点和凹点找出来。

(2)、然后把两边的凸点和凹点分为两组。

(3)、然后用两边的点分别拟合两条直线line1和line2。

(4)、接着求这两条直线的中线lineCenter。然后求两边的凸点和凹点到中线的距离就是螺丝直径和外径。

(5)、单边的连续凸点、凹点、凸点求出螺丝内夹角,连续的凹点、凸点、凹点求出螺丝的外夹角。

(6)、单边的连续凸点、凸点连线距离为螺丝外牙距,单边连续的凹点、凹点连线距离为螺丝的内牙距。

QT+Halcon实现螺纹检测相关推荐

  1. QT+Halcon综合示例:clip回形针2D位姿检测

    QT+Halcon综合示例(一):clip回形针2D位姿检测 0.halcon源码: 1.Qt代码: 2.运行结果: 下载:clip回形针2D位姿检测 0.halcon源码: * clip.hdev: ...

  2. Qt Creator使用Heob检测内存泄漏

    Qt Creator使用Heob检测内存泄漏 使用Heob检测内存泄漏 指定Heob设置 记录结果 处理异常 在错误上引发异常 保护页面 处理泄漏数据 使用Heob检测内存泄漏 Qt Creator集 ...

  3. Qt Creator使用Memcheck检测内存泄漏

    Qt Creator使用Memcheck检测内存泄漏 使用Memcheck检测内存泄漏 选择内存分析选项 显示可达和间接丢失的块 抑制错误 使用Memcheck检测内存泄漏 您可以使用Valgrind ...

  4. Halcon学习笔记(一):Qt+Halcon联合开发配置

    Halcon学习笔记(1):Qt+Halcon联合开发配置 首先是新建一个QT项目qtest_hc 方法一: 1)QT项目文件 qtest_hc 添加库: #1.包含目录添加 INCLUDEPATH ...

  5. QT 使用 QTcpSocket来检测 ip 设备的网络状态

    使用QT中 QTcpSocket来检测设备的网络状态: 函数返回true,设备网络状态正常,返回false,设备网络异常. bool TcpIpSocket::sendATcpSocketToIp(Q ...

  6. Halcon——热熔胶质量检测

    点胶质量检测 1. 项目背景 2. 具体需求 3. 代码案例 3.1 halcon代码 3.2 自定义函数 3.3 完整代码和图片下载 1. 项目背景 UV点胶机点热熔胶工位,点胶之后还需要对胶水进行 ...

  7. 螺纹检测案例-螺距测量-大径小径检测-螺牙检测

    齿轮检测分析 Gear inspection and analysis 螺纹结构及检测要素 1 大径(宽径) 2 小径(窄径) 3 中经 4 螺距(间距) 5 螺牙高度(深度) VisionBank ...

  8. Qt实现定时自动检测串口

    Qt实现定时自动检测串口 在学Qt串口使用时,参考了CSDN上挺多的博客,大部分都讲的不错,适合初学者. 串口操作基本介绍 Qt为串口操作提供了两个类QSerialPort和QSerialPortIn ...

  9. (转)Qt+Halcon联合开发配置

    转自:Y忍冬草        Y忍冬草_ http://blog.csdn.net/y363703390    https://blog.csdn.net/y363703390/article/det ...

最新文章

  1. Hadoop基本原理之一:MapReduce
  2. C#日期时间类型格式化大全集 C#DateTime 类型格式化大全集
  3. DIV中文字不换行解决办法
  4. ssh远程执行oracle命令,ssh远程执行命令技巧
  5. 数据结构笔记(二十九)--最小生成树(prim算法思想)
  6. 薪水太低的你,为什么不跳槽?
  7. sqli-labs(19)
  8. 友善的小精灵 Casper
  9. Ubuntu下Gnome修改键盘映射
  10. Python常用模块 之 base64模块
  11. Phyton Flask框架学习记录。
  12. allure报告定制
  13. Excel将多个单元格内容整理到1个单元的2种方法
  14. 计算机基础及word实验原理,大学计算机基础实验3-Word 文档的图文混排
  15. 【App下载安装量】多渠道统计
  16. 华为OD机试 - 荒地(Java JS Python)
  17. Js如何删除所有子元素以及当前元素
  18. Mini RTK | 小巧精致、好测量
  19. CLIP-Adapter:利用Adapter微调CLIP适配下游任务
  20. matlab自带的神经网络例子,MATLAB-network m

热门文章

  1. 我的世界java服务器搭建_Linux搭建我的世界服务端
  2. Magento时代的全球开源网店系统格局(一)
  3. 黑莓8800装不上软件的问题
  4. HDFS文件读写机制思考及图解
  5. 【前端面试】同学,你会手写代码吗?
  6. C语言实现选择排序——简单选择排序算法
  7. 前嗅ForeSpider教程:如何创建新任务 1
  8. 通达信有量化接口吗?
  9. 单纯形法表格法例题详解_第二章 线性规划与单纯形法(补充例题123页开始).ppt...
  10. 数仓中指标-标签,维度-度量,自然键-代理键,数据集市等各名词解析及关系