程序聚合 软件案例 基于halcon的巧克力包装瑕疵识别-巧克力包装不良识别

基于halcon的巧克力包装瑕疵识别-巧克力包装不良识别

2025-11-21 16:07:00
行业:人工智能
载体:Windows应用
技术:C#、.NET Framework、Deeplearning4j、OpenCV

业务和功能介绍

基于Halcon与C#的巧克力外包装瑕疵识别系统采用“图像采集-预处理-特征提取-缺陷分类-结果输出”五段式流水线,在500万面阵相机与穹顶LED无影照明的硬件底座上,首先通过Halcon的gen_rectangle1与grab_image_async完成每秒120帧的触发取像,利用C# WinForms编写的PLC对接模块把编码器脉冲实时映射到Halcon的image_height,实现零丢帧;预处理阶段在GPU加速下调用emphasize、illuminate与dyn_threshold组合,可在1.2 ms内同时消除塑料折光与铝箔镭射干扰,并采用基于傅里叶-梅林变换的sub_image配准算法,将实时图像与无瑕疵模板对齐到亚像素级,保证后续差影精度;特征提取环节,系统融合传统算法与深度学习:先用Halcon的edges_sub_pix提取封闭轮廓,配合shape_model在360°旋转与0.7-1.3倍尺度空间进行鲁棒匹配,定位商标、营养表与生产批次三大ROI,再在各ROI内部运行自训练的YOLOv5-Halcon跨平台引擎(C#通过HTuple调用Halcon的DLModel句柄,实现30类缺陷端侧推理,单张耗时28 ms),同步用texture_laws与cooc_feature_matrix计算能量、熵、相关性等六维纹理向量,输入C#多线程SVM进行二次校验,有效降低过杀;缺陷分类层支持褶皱、划痕、打码缺失、套色偏移、异物吸附、封口焦糊、日期重影、角部破裂八大家族120种细分缺陷,通过C#反射工厂模式动态加载不同的Halcon检测算子脚本,实现ppm级缺陷与μ级尺寸测量同屏输出,系统还引入基于Transformer的序列决策模型,把连续20帧的缺陷置信度当作时间序列,利用C#的TorchSharp推理DLL判断真伪缺陷,进一步将过杀率从0.8%压至0.15%;结果输出方面,Halcon的disp_object实时绘制缺陷掩膜并生成UTF-8 JSON,C#后台服务通过RabbitMQ推送给MES,同时驱动贴标机与吹气剔除阀,整线节拍可达800包/分钟;数据层面所有OK/NG图像按缺陷类别自动存入C#调用的MongoDB GridFS,Halcon的hdict压缩后单张仅150 kB,方便后续GAN数据增强;权限与追溯模块采用C# WPF + IdentityServer4,实现三级账号、电子签名与审计日志,满足FDA 21 CFR Part 11;系统上线后帮助某跨国巧克力品牌将外包装不良率由1200 ppm降至42 ppm,每年节省返工与投诉赔偿超两千万元,且全程无需人工复检,真正实现了基于Halcon视觉算子深度优化与C#业务逻辑无缝耦合的高速、高精度、零漏检巧克力外包装瑕疵识别。

项目实现

独立完成,项目采用“四层两总线”架构:边缘采集层以500万面阵相机+穹顶LED同步控制器通过CoaXPress总线将裸图流式推入Halcon 图像总线;算法服务层基于Halcon 22.11的GPU算子引擎与自训练YOLOv5-Halcon混合模型,通过HDict序列化算子链供上层调用;业务逻辑层用C# .NET 6搭建,以gRPC接收Halcon返回的JSON缺陷坐标,经MediatR事件总线驱动剔除阀、贴标机与MES回写;数据持久层采用MongoDB+MinIO分别存储NG图像与Halcon压缩掩膜,同时用ClickHouse做ppm统计,整体以RabbitMQ异步总线解耦,实现260包/分钟节拍、30 ms端到端延迟、0.15%过杀。设计思路遵循“传统+深度互补”:先用Halcon shape_model做亚像素模板配准,再在同一ROI内并行运行Halcon texture_laws纹理向量与YOLOv5-Halcon深度网络,通过C#多线程SVM二次融合,兼顾可解释性与泛化;同时引入Transformer时序判别连续20帧置信度,进一步抑制反光伪缺陷。遇到的最大难点有三:其一,铝箔镭射反光导致低对比划痕漏检,解决方案是“穹顶+偏振+多光谱”硬件组合,并在Halcon里用decompose3拆分RGB通道后仅对B通道做dyn_threshold,再与深度模型输出做投票融合,将漏检率由0.7%降到0.05%;其二,1200 dpi高分辨率下单张图像达120 MB,GPU显存溢出,通过Halcon的tile_split将原图切成640×640重叠瓦片,配合C#内存池复用与TensorRT INT8量化,显存占用从11 GB降至2.3 GB,推理速度反而提升1.8倍;其三,现场2000包/小时峰值时C# WinForms界面刷新卡顿,采用CPU绑定Render线程+WriteableBitmap双缓冲,并把Halcon的disp_object改为离线HWindow句柄渲染,仅传输压缩位图到UI,CPU占用由65%降到18%,彻底消除卡顿;最终系统在客户产线7×24连续运行,ppm曲线稳定<50,顺利通过FDA审计,实现基于Halcon与C#的高鲁棒、高吞吐巧克力外包装瑕疵识别。

示例图片视频


视觉小向
30天前活跃
方向: 人工智能-机器学习与深度学习、桌面端-.NET、
交付率:100.00%
相似推荐
智能跟单系统
系统需实时接收处理从寄递平台同步的邮件收寄及轨迹等信息,数据量日常约为20亿,双十一高峰期间峰值约为30亿,对业务人员指定的约100种异常进行实时跟踪处理。寄递平台通过ESB接口每天实时将邮件收寄及轨迹信息同步到跟单系统,系统通过分布式加工处理后,分库分表存储到10套Oracle生产数据库中,再通过OGG实时将数据同步至40套计算库中进行异常分析计算,再将分析出的异常结果交由分单服务进行异常分单,分单结果再交由调度系统进行调度处理。
固定资产运营与管理系统
此系统是为某城市建设投资集团有限公司开发的固定资产运营与管理系统,基于新一代协同运营平台理念开发,覆盖多种国有资产类型的全生命周期管理,以提高企业资产运营运行可靠性与使用价值为目标,降低资产的养护维修成本、提升运行质量,提升企业资产运营效能。 资产管理方面,包含基础信息管理、办公用品管理、办公资产管理、车辆资产管理、IT资产管理、生产经营设备管理、不动产管理、无形资产管理、产权管理、合作企业信息管理、产权盘点等功能模块。 资产运营方面,包含不动产租赁(登记、计划、台账、审批、维修、巡查、备案等)、国有资产交易、存量资产管理、资产处置管理、保险登记、股权信息登记、安全生产排查等功能模块。 此系统标准化功能与灵活定制共存,支持按照个性化需求,灵活调整用户标识、权限、流程、基础数据。助力国资企业理清家底、盘活资产保值增值和增强资产监管。
某港口智能运行与绿色能源智能评价软件
此系统是为某港务集团定制的一款专为大型集装箱港口智能运行与绿色能源智能评价设计的软件系统,按照智慧、绿色、高效、安全四个维度,形成反映自动化集装箱码头、集装箱水平运输系统和公路集疏运系统等不同作业场景生产运行和用能需求特征的指标集及评价方法,能够接收来自现有推送服务发送的指标数据和手动录入的指标数据,涵盖了基本的运行数据采集、运行数据管理、运行指标评价、运行数据和评价指标可视化展示、评价报告管理等功能。系统采用了模块化设计,具有高度的可操作性与可扩展性,使用简便,功能强大,测试运行稳定可靠,具有较强的实用性。此外,系统设计允许通过灵活配置API参数来接收不同来源的数据;同时利用统计分析、订阅发布机制、异步处理等核心技术,进行数据的实时核查与补充,并通过Web容器在前端页面进行展示。系统具备优秀的平台型架构,并且提供了易于扩展的二次开发接口和数据交互接口,方便用户挖掘更多增值服务潜力,并与其他系统集成。
潜伏式AGV小车-潜伏式AGV小车
该项目旨在为山东蔚克数控机械有限公司目标客户生产载重一吨的可自动运输货架的运输机器人。 1.使用AutoCAD Electrical设计整体原理图。 2.使用Altium Designer设计驱动板。 3.电机控制程序功能(使用Orin NVIDIA Jetson开发板):使用 C 编写速度环、位置环。PWM输出给伺服/BLDC驱动器。可通过 CAN 与工业PC交互。 4.电池控制程序功能:BMS 端用 C/C++ 配置报警阈值。IPC端用 Python 或 C++ 获取电量、电流、电压数据,用于调度与续航监控。 我们在项目中。
基于RFID的布草管理系统
1.背景:解决传统布草管理“追踪难、订单乱、数据滞后”痛点,通过RFID技术实现布草从洗涤、配送、使用到回收的全生命周期管理。 2.功能介绍:包含司机收送布草的清点,布草洗涤订单执行;酒店/民宿客户布草下单及订单统计分析;洗涤厂对与洗涤量的统计分析,对于布草的管理追溯,布草位置分布、组成等的统计分析,以及协助洗涤厂提高配货精确度; 3. 流程:布草入库->酒店下单->司机配送->酒店使用-->司机收取->洗涤厂洗涤->洗涤后入库->配货->再次循环...
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服