-开发赛道-海康一定-参赛作品分享
基于Qt框架与海康视觉SDK搭建工业视觉检测平台,主要完成产品条码识别与缺陷检测功能。项目支持多类型、多数量ROI绘制与联动管理,通过容器映射实现界面控件与检测区域数据同步。采用多线程技术解耦UI与耗时算法,提升交互流畅度。针对工业现场连续作业需求,规范SDK资源调用、优化内存与线程管理,新增运行计时功能,经过调优后软件可长时间稳定运行,满足产线质检要求。

一、项目背景与核心业务
本系统是基于 Qt/C++ 并结合海康 VisionDesigner SDK 开发的工业视觉缺陷检测软件,主要面向生产线上的质量检测场景。系统核心能力包括:一维码 / 二维码识别、字符与图案识别,以及产品表面缺陷检测。主要功能模块涵盖模板建模、检测区域配置、批量图像算法检测及结果可视化展示。

二、整体架构与技术选型
技术选型以 C++ 与 Qt 为基础,上层调用海康 VisionDesigner SDK 完成视觉算法计算。整体采用分层设计,共分为四层:

  • UI 交互层:借助 Qt 原生控件与自定义绘图组件,完成界面布局、图像显示、交互式 ROI 圈选及参数面板联动。

  • 业务逻辑层:由核心窗口类负责整体图像数据管理、信号与槽的转发、界面状态控制及索引同步等协调工作。

  • 算法调度层:封装独立的工作线程类,在子线程中运行耗时的视觉算法,避免阻塞 UI。

  • 底层 SDK 层:对接海康视觉库中的仿射变换、特征匹配、缺陷检测等能力,完成底层图像运算与检测任务。

三、核心功能与实现细节

  1. 全局图像统一管理
    设计并实现了一个单例图像管理类 M_IMagemanager,集中负责图片的加载、新增、删除与清空操作,并在数据变化时向外发送相应信号。其他子窗口监听这些信号后,能够自动刷新界面中的图片列表。当某张图片被删除时,系统会自动修正模板索引、当前选中索引以及结果缓存的索引,确保所有数据下标保持一致,杜绝因索引错乱而导致的程序异常。
    此外,利用 QMap 容器构建两级缓存,分别存储已经检测完成的结果图与检测框坐标信息。当用户再次查看某张图片时,系统直接从缓存中读取,无需重复执行检测算法,从而显著提升交互响应速度。

  2. 多类别、多 ROI 交互式绘制与联动
    基于自定义绘图控件实现了可视化 ROI 框选功能,这是项目中关键的交互模块之一:

  • 系统区分一维码、二维码、文字图案三大检测类型,每种类型对应不同的绘制颜色,便于视觉区分。

  • 支持在同一类型下绘制多个 ROI:通过分类计数器为每类检测框分别编号,每新建一个 ROI 都会自动生成其对应的参数配置面板。

  • 借助哈希映射表建立 ROI 唯一标识与参数面板之间的绑定关系,实现双向联动效果:在画布上选中某个检测框,右侧参数面板会自动高亮;反过来,点击参数面板中的条目,画布会定位并选中对应的 ROI;删除 ROI 时,相应的参数控件也会同步销毁,确保生命周期统一管理。

  1. 模板建模流程
    具体操作步骤为:首先加载一张标准无缺陷的样本图像作为模板,然后在模板图像上根据需求绘制各类检测 ROI,完成建模配置。系统会自动保存模板图像以及所有检测区域的定义信息。后续对批量待测图片进行检测时,均基于这套模板执行统一的检测逻辑,实现“单模板 + 多区域 + 多类别”的并行检测。

  2. 多线程批量算法检测
    由于特征匹配、缺陷检测等视觉算法计算量较大,为避免 UI 主线程阻塞和界面卡顿,将所有算法逻辑封装到独立的工作类中,并放置于子线程中运行。
    代码中使用原子状态标记来管控任务状态,避免重复启动检测任务;算法运行期间会自动禁用相关操作按钮,防止用户误触发。检测完成后,通过 Qt 的信号槽机制将结果回传至 UI 层,在原图上绘制检测框,同时完成结果缓存与界面刷新。线程退出时严格遵循退出等待逻辑,保证线程资源正常回收,无残留。

  3. 第三方 SDK 集成
    深度集成了海康 MVD 视觉开发包,涵盖图像读写、矩形区域创建、特征模板匹配、外观缺陷检测等能力。开发过程中严格遵循 SDK 使用规范,对图像、工具、形状句柄等资源做到局部创建、用后立即释放,并配合异常捕获机制,从源头避免资源泄漏。

四、项目总结
整套系统覆盖了从 UI 交互、业务逻辑、多线程编程到第三方 SDK 集成的完整落地流程,不仅实现了多类别、多区域的视觉检测核心业务,还在内存管理、线程调度、资源复用等方面进行了多重优化,能够满足工业现场长时间稳定运行的要求。
通过这个项目,我扎实掌握了 Qt 自定义控件、信号槽机制、多线程开发以及 C++ 第三方 SDK 的集成方法,并积累了工业软件在稳定性保障、异常处理、内存管控等方面的实战经验。



版权声明:本文为V社区用户原创内容,转载时必须标注文章的来源(V社区),文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:v-club@hikrobotics.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
上一篇

【第四届启智杯大赛决赛】+开发赛道+福东三幺队+VM_app

下一篇

第四届启智杯大赛决赛+3D-VM赛道+视觉小分队

评论请先登录 登录
全部评论 0
Lv.0
0
关注
0
粉丝
0
创作
0
获赞
相关阅读
  • 【形状匹配算法系列】从NCC到轮廓匹配:工业视觉的"定位之争",到底争的是什么?
    2026-05-19 浏览 0
  • 【技术分享】VM运行界面之清空图像
    2026-06-10 浏览 0
  • 使用VM算法识别屏幕
    2026-06-05 浏览 0
  • 认证刷题与模拟考试系统
    2026-06-12 浏览 0
  • 移动机器人工程师培训与认证安排-26年6月
    2026-05-18 浏览 0

请升级浏览器版本

您正在使用的浏览器版本过低,请升级最新版本以获得更好的体验。

推荐使用以下浏览器