logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Prism 事件订阅回调不执行?小心 Lambda 表达式和弱引用的陷阱

摘要 本文记录了在 WPF 项目中使用 Prism 事件聚合器时遇到的订阅回调未执行问题。问题表现为事件发布后订阅者回调未被触发,排查发现是 Prism 默认使用弱引用保存 Lambda 表达式委托,导致 GC 提前回收。通过三种解决方案对比分析,推荐最佳实践是:1) 使用 keepSubscriberReferenceAlive: true 参数强制强引用;2) 将委托存储在字段中防止回收;3)

#wpf
C# 封装工业相机SDK:海康Halcon无缝对接

本文介绍了为Halcon测量软件开发的一套通用工业相机SDK库CameraLib的设计思路,该库旨在解决多品牌相机接口差异、图像格式转换和触发模式管理等痛点。文章详细阐述了采用接口+抽象基类+具体实现的三层架构:通过ICamera定义统一接口,BaseCamera封装通用逻辑,HiKCamera实现海康相机对接。重点展示了同步取图、软触发和双格式输出(Bitmap/HObject)等核心功能的设计

#c#
2D标定没那么神秘:仿射变换帮你搭建像素↔毫米的桥梁

本文介绍了如何利用仿射变换实现2D平面标定,将图像像素坐标转换为实际物理尺寸。文章首先解释了仿射变换适用于相机光轴垂直且无畸变的理想情况,指出其在视场不大、精度要求不高的场景中的实用性。随后列举了像素当量标定、机器人手眼标定和多相机拼接三个典型应用场景,并提供了Halcon软件中实现仿射变换标定的四个步骤。文章还指出了使用中的常见问题和适用场景判断标准,强调仿射变换是连接像素与物理坐标的最简单桥梁

#图像处理#机器学习
Halcon字符分割失败?用find_text一键搞定

本文记录了一个字符分割问题的解决过程。原Halcon脚本的分割功能在移植到.NET后失效,筛选后区域数量为0。通过逐层排查发现二值化和形态学处理生成了横向噪声而非有效字符区域。对比Halcon脚本后,改用find_text算子重构分割流程:创建文本模型并设置字符参数,简化预处理步骤,直接定位字符区域。最终C#实现通过初始化文本模型并调整识别参数,解决了分割失败问题。这种方法比手动分割更稳健,减少了

#c##图像处理
在Prism中使用DialogHost,使用接口扩展方法优雅的实现

本文介绍了如何在.NET Core中实现Prism与MaterialDesignThemes的DialogHost集成。通过自定义MaterialDialogService服务,替代Prism默认的对话框服务,实现在WPF应用中调用Material Design风格的对话框。文章详细说明了项目结构、NuGet包引用、App.xaml配置、对话框视图模型定义以及核心服务实现步骤。关键点包括注册自定义

#c##wpf
计算两组数据的斜率、截距和R^2

Console.WriteLine("截距: " + intercept);Console.WriteLine("斜率: " + slope);// 计算R-squared。

文章图片
#算法#c##线性回归
到底了