
C#
文章平均质量分 91
发布一些C#、C#联合Halcon案例,即是分享,也是备份。
编程笔记in
分享一些C#编程,openCV、Halcon等相关的视觉知识、案例。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C#实现ROI管理器案例(四)
本文将介绍如何使用C# 绘制和管理不同形状的ROI功能案例。代码实现了绘制矩形、旋转矩形、椭圆、圆形、多边形**等形状的ROI。同时实现了状态变更后的**撤销、重做**功能,以及删除、清除全部**内容的功能。原创 2025-06-12 13:47:30 · 380 阅读 · 0 评论 -
C#自定义创建与ROI绘制管理(三)- 旋转矩形优化
- 本文介绍如何使用C#实现自定义图像窗体控件,并在图像窗体控件中绘制和管理不同形状图形的功能,后面都将形状图形描述为ROI。今天更新的是旋转矩形URectangle2: 优化旋转矩形旋转后拖动位置变化过大的问题,实现基于某个点拖动调整大小。原创 2025-06-05 10:05:05 · 595 阅读 · 0 评论 -
C#自定义图像控件和ROI绘制管理(二)
本文将介绍如何使用C#实现自定义图像窗体控件,并在图像窗体控件中绘制和管理不同形状图形的功能,后面都将形状图形描述为ROI。UImage实现基本的图像显示功能,在UImageWindow中实现ROI管理。、ROI跟随图像功能,即图像拖动、平移时,ROI跟随移动。原创 2025-06-02 23:39:38 · 770 阅读 · 0 评论 -
C#实现矩形跟随图像平移、缩放
本文描述在WinForm程序中自定义图像控件实现图像的显示、拖动、缩放、矩形绘制、矩形拖动功能,以及矩形会跟随图像一起移动和缩放,控件名称UImageRectFollow。 - 对于之前的UImage自定义图像控件就个人感觉代码有点多,容易干扰理解,所以此案例仅用100多行代码实现一个简单的图像控件,并绘制一个矩形跟随图像移动、缩放。简洁便于理解。 - 内容会用于之后的ROI绘制管理案例中,实现ROI跟随图像移动缩放功能。原创 2025-06-01 09:51:08 · 266 阅读 · 0 评论 -
C#实现自定义图像控件 及 ROI的绘制与管理
本文将介绍如何使用C#实现自定义图像窗体控件,并在图像窗体控件中绘制和管理不同形状图形的功能,后面都将形状图形描述为ROI。- 自定义图像窗体控件UImageWindow,继承UImage。- 主要介绍的是如何实现在图像控件上绘制及管理ROI。代码中使用的是List集合存储ROI。- 通过创建ROI基类,并使用List集合存储管理,在创建不同的ROI对象后将其添加到集合即可。- 如果需要实现创建新的ROI形状类型,可以通过继承ROI基类实现,达到统一管理的效果。原创 2025-05-30 16:56:33 · 958 阅读 · 0 评论 -
C#自定义控件图像放大后的RGB值填充像素效果
本文介绍使用 C# 实现自定义图像控件,该控件提供了图像显示、缩放、平移、像素级查看的视觉辅助功能。 - 控件启用了双缓冲优化绘制性能,支持高精度图像的详细信息展示。 - 该控件是在之前的WinForm图像控件的基础上增加了一些功能。添加了像素格显示、放大RGB值填充像素的炫酷效果。 - 使用可视化方式可以直观地显示图像中每个像素的RGB分量值,同时保持颜色分离显示,便于分析像素颜色组成。原创 2025-05-26 10:50:06 · 586 阅读 · 0 评论 -
C#实现WPF绘制网格图像背景...
本文描述如何使用WPF实现自定义的网格控件UGridControl。该控件是通过使用两种颜色交替填充形成的网格,一般作为图像显示控件的背景。控件支持自定义网格大小和颜色配置,并通过高效的绘图机制实现平滑渲染。原创 2025-05-23 14:00:30 · 834 阅读 · 0 评论 -
C#实现WPF自定义图像控件UImage...
本文介绍了如何基于WPF实现自定义图像控件UImage,该控件支持图像加载、缩放、平移、像素信息查看等功能。控件包含状态栏显示图像尺寸、缩放比例、鼠标位置坐标和像素颜色值,并提供简洁的界面交互。原创 2025-05-23 13:52:55 · 737 阅读 · 0 评论 -
C#系统桌面截图功能实现(三)
本文描述了如何使用C# 实现WinForms桌面截图程序。该程序实现了截图模式:全屏截图、工作区截图和区域选择截图,并包含简单的图片保存功能。核心内容包括:屏幕区域选择、DPI感知处理、实时尺寸显示、图片保存等。原创 2025-05-18 00:21:38 · 923 阅读 · 0 评论 -
C#自定义图像显示控件UVCanvas
本文介绍了一个名为UVCanvas的自定义C#图像显示控件,该控件实现了以下核心功能:支持图像显示、缩放(鼠标滚轮)、平移(鼠标拖拽)和双击重置。棋盘格背景绘制(可自定义网格大小和颜色。实时显示鼠标位置对应的图像坐标及像素RGB值。提供图像坐标变化的事件回调(ImagePixPointEvent)原创 2025-05-16 21:24:42 · 868 阅读 · 0 评论 -
C#实现Windows桌面截图功能(二)...
本文描述如何使用C#实现Windows桌面截图功能,允许局部截图。通过设置窗体透明度实现截图窗体,创建SetProcessDPIAware方法并在初始化时调用,实现使用桌面缩放时获取正确的截图区域。原创 2025-05-12 23:58:31 · 365 阅读 · 0 评论 -
C#实现Windows桌面截图功能...
本文介绍了如何使用C#开发一个简单的Windows桌面截图程序。通过该案例,读者可以学习到Windows窗体应用(WinForms)的开发知识,包括GDI+绘图技术、文件对话框的使用以及事件驱动编程的核心概念。程序实现了基本的屏幕截图功能,如捕获全屏、预览图像和保存截图文件。文章详细描述了实现步骤,包括获取屏幕边界、创建位图对象、屏幕内容捕获、内容传递和显示截图编辑器窗口。此外,还提供了主窗体和截图编辑窗体的代码示例,展示了如何通过点击按钮截图、显示图像并保存截图文件。原创 2025-05-12 10:45:15 · 751 阅读 · 0 评论 -
C#实现Window系统桌面锁定效果
本文介绍了如何在C#中实现Windows系统锁定屏幕的效果。通过使用Windows API中的SetForegroundWindow和GetForegroundWindow方法,程序能够强制将指定窗口设置为前台窗口,从而锁定屏幕。原创 2025-05-10 10:15:28 · 706 阅读 · 0 评论 -
C#如何实现Image无损转Icon
本文介绍了如何使用C#实现图像无损转换为图标(Icon)。通常使用Icon.FromHandle(image.GetHicon())方法转换图标会导致图像模糊,而通过自定义方式可以避免这一问题。文章详细说明了如何通过手动填写ICO文件的头部信息,并结合图像数据生成高清图标。代码示例展示了两种转换方式:自定义转换和直接使用Icon类转换,并比较了它们的视觉效果。自定义方式通过写入ICO文件头、图像数据等步骤,确保生成的图标与原图一致。最后,文章提供了完整的C#代码实现,并鼓励读者点赞、留言讨论或关注公众号获取原创 2025-05-10 10:04:18 · 609 阅读 · 0 评论 -
C#实现ModbusTCP主站通讯(二)
本文在《C#实现ModbusTCP通讯》的基础上,扩展了读写int和float数据的功能,并支持多种字节序(ABCD、BADC、CDAB、DCBA)的读写操作。文章详细介绍了字节序的概念及其在数据存储中的不同排列方式,如大端序和小端序。通过C#代码示例,展示了如何在ModbusTCP通讯中实现int和float数据的读写,并提供了界面操作说明。运行环境为Windows11、Visual Studio 2022和.Net Framework 4.8.0。文章还提供了相关代码片段,包括按钮事件处理、数据转换方法原创 2025-05-03 15:59:44 · 852 阅读 · 0 评论 -
C#实现ModbusTCP主站通讯...
Modbus TCP 是一种基于 TCP/IP 协议的工业通信协议。废话不多说,本文描述如何使用System.Net.Sockets库实现ModbusTCP通讯,通过Socket对象发送报文请求、接收响应数据实现ModbusTCP数据的读写功能,详细内容下面展开描述。至此本案例展示了如何使用Scoket实现ModbusTCP通讯功能。大概就是基于TCP通讯,将数据按照指定MBAP格式填入发送即可。最后稍微做一些数据验证处理就可以了,通过案例学习编程是ge有趣的。原创 2025-05-01 14:39:28 · 1127 阅读 · 0 评论 -
C#实现Modbus RTU主站通信...
MainForm类代码大概实现如下功能:(二)ModbusRtuMaster类Mobus主站类实现如下功能:结语通过此案例学习基本的ModbusRTU功能,刚开始学习,暂时不想它的实现原理,先实现功能。通过使用Winform中自带的控件,编写一个简单的界面,通过完成案例的反馈,获取学习的兴趣感。希望文章能对你有帮助,既是分享,也是备份。原创 2025-04-26 23:10:11 · 788 阅读 · 0 评论 -
C#实现ModbusTCP从站(三)
本文描述如何使用C#原生的Socket类实现ModbusTCP从站功能,ModbusTCP从站是作为响应设备(服务器端)被动接收并处理主站(客户端)的请求,通过使用Socket创建从站服务,用于侦听主站(客户端)连接,获取请求及数据响应。项目实现了线圈(Coils)和保持寄存器(Holding Registers)的数据临时缓存功能,其中线圈是2进制数据,寄存器是16位整形数据。所以可以创建bool数组(boo[])和ushort数组(ushort[])存储数据。原创 2025-05-06 18:56:30 · 1390 阅读 · 0 评论 -
C#实现封装HALCON图像显示窗口的操作功能
示例代码主要实现了两个类ViewWindow和WindowTool,用于封装HALCON图像显示窗口的各种操作,提供了图像显示、交互和控制功能。目前仅定义了对显示HObject在窗体上显示的颜色的功能。WindowTool类实现图像填充窗体、图像自适应窗体、鼠标经过窗体时的实时位置及灰度值、鼠标滚轮滑动缩放等,显示HObject颜色、选择图像等。原创 2023-04-07 00:34:44 · 482 阅读 · 0 评论 -
C#实现串口通讯功能
自动获取本地串口。根据传入串口基本属性参数打开串口。串口数据的发送接收功能(ASCII和HEX格式)。ASCII和HEX相互转换。[Category[ Category("UserProperty") ] [ Description("轮廓半径") ] public int Radius {set {if(radius!= value) {原创 2025-04-23 10:55:34 · 1285 阅读 · 0 评论 -
C#使用Winform实现简单的编辑器:编译、运行、关键字、注释高亮显示。
简单的编辑器。原创 2023-06-04 17:04:20 · 5154 阅读 · 0 评论 -
【C#】Halcon实现卡尺找圆
如何使用C#联合Halcon实现卡尺找圆,主要思路是通过在绘制圆形ROI对象时,给绘制的对象绑定事件:如附加(OnAttach)、拖拽(OnDrag)、调整大小(OnResize),当触发这些操作时,获取计量模型轮廓结果,即可实现圆形卡尺的拖动调整位置、大小。通过此案例学习C#联合Halcon实现卡尺找圆功能。学习如何创建绘制对象、获取绘制对象的参数,根据这些参数创建卡尺。匹配图像中的圆,卡尺可以拖动实现调整位置、大小。如有疑问,欢迎留言讨论!原创 2025-04-11 21:52:37 · 557 阅读 · 0 评论 -
【C#】学习之图形绘制:圆形卡尺
本文描述了如何在Form窗体程序上的控件绘制圆形带卡尺图形。支持调整位置、大小、卡尺数量、卡尺宽度、卡尺长度。功能实现思路:通过提取卡尺的基本属性,通过窗体界面控件调整参数值,实现卡尺工具的动态绘制。原创 2025-04-03 19:06:27 · 357 阅读 · 0 评论 -
【C#】C#学习之OpenCv实现模版匹配案例
本文使用C#结合OpenCV实现基本的模版匹配功能。通过自定义图像显示控件显示原图,使用OpenCvSharp库实现模版匹配功能。通过该案例既能学习到如何自定义控件、又能学习图像匹配相关的知识,应该是个不错的项目。如有疑问,欢迎留言讨论!也可以加入微信公众号 [编程笔记in] ,一起交流学习!原创 2025-04-03 18:57:54 · 582 阅读 · 0 评论 -
【C#】Winform窗体任意控件绘制形状图形(实现添加、删除、选中、移动、缩放功能)
本文描述了如何使用Winform窗体中的控件,绘制形状(如:矩形),实现添加、删除、选中、移动、缩放。原创 2025-03-31 13:44:31 · 641 阅读 · 0 评论 -
【C#】Winform自定义图像控件实现滚动缩放效果、拖动显示图像。
PictureBox 是 Windows Forms (WinForms) 中的一个内置控件,专门用于在窗体上显示图像,其可以显示多种格式的图像(如:BMP、JPEG、GIF、PNG、ICO 等)。使用方法,将自定义控件创建在同一个命名空间下,点击生成无报错后,即可在工具箱中查看选择自定义控件。拖拽到当前窗体即可。如果是创建自己的类库,并引用这个类库,引用时可能得报错原因,目标框架不同。编程笔记in你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。原创 2025-03-29 11:40:38 · 778 阅读 · 0 评论 -
【C#】WinForm自定义控件及窗体
本文介绍了如何创建Winform窗体、控件,自定义窗体或控件的样式和窗体的基本功能。原创 2025-03-22 11:47:07 · 696 阅读 · 0 评论 -
【C#】CS学习之Modbus通讯
Modbus 从站广泛应用于工业自动化领域:1、传感器数据采集(如温度、压力等)2、执行器控制(如电机、阀门等)3、设备监控与故障诊断。Modbus 从站(Slave)是 Modbus 通信协议中的响应设备,负责接收并执行来自主站(Master)的请求。Modbus 从站是被动设备,它不能主动发起通信,只能响应主站的请求。从站的主要功能包括:1、接收主站的指令(如读取数据或执行操作)。2、执行相应的操作(如读取寄存器值或设置参数)。3、返回响应数据或错误码给主站。原创 2025-03-20 22:18:19 · 602 阅读 · 0 评论 -
【C#】Winform + Halcon实现直线查找
此案例使用实现Winform + halcon直线查找功能1、创建计量模型2、添加计量对象3、设置计量对象参数4、应用计量模型5、获取测量结果6、显示结果原创 2023-02-14 00:17:55 · 908 阅读 · 0 评论 -
【C#】Winform调用NModbus实现Modbus TCP 主站通讯
C#调用NModbus实现Modbus TCP 主站通讯,Modbus是一种串行通信协议,是工业领域全球最流行的协议之一。原创 2025-03-19 17:12:16 · 887 阅读 · 4 评论 -
【C#】WPF+ Ollama实现本地Deepseek模型对话v1.4
C#实现本地AI会话功能 。1. 新增根据聊天记录回复的功能。2. 优化了部分ViewModel,将对应Model字段、属性移到Model中,方便后续扩展。3. 新增读取外部数据回复问题功能,目前支持txt文件。4. 新增添加图片提问题功能,模型需要支持视觉(如:minicpm-v:latest)。5. 优化了类结构,创建对应的Model(MainWindowModel),将所有字段、属性移到Model。6. 新增聊天记录窗体,修改了窗体加载时,加载聊天记录的功能。将其拆分成一个视图。原创 2025-03-12 17:25:34 · 600 阅读 · 0 评论 -
【C#】如何实现手写Ollama服务交互,实现本地模型对话。
案例代码实现了与Ollama的HTTP交互,通过使用HttpClient、JSON序列化和错误处理,提供了一个简洁的异步文本生成接口。适合直接调用本地Ollama服务的场景,更多功能,可以后续拓展。原创 2025-03-10 10:40:22 · 1385 阅读 · 0 评论 -
【C#】WPF给ListBox中的每一项添加右键菜单功能
可以使用ContextMenu 在控件上实现右键点击显示菜单。可以给菜单添加多个菜单项(MenuItem),每个菜单项可以绑定事件或命令。ContextMenu 默认不继承父控件的,但可以使用逐级向上绑定到。原创 2025-03-07 09:34:08 · 1412 阅读 · 0 评论 -
【C#】WPF实现命令绑定
C# 命令绑定,实现有些控件不支持直接绑定命令,调用其他依赖实现命令的绑定。原创 2025-02-28 17:51:35 · 561 阅读 · 0 评论 -
【C#】WPF+ Ollama 实现本地 Deepseek模型对话
1、创建新的聊天。2、记录保存的功能。3、模型选择功能。原创 2025-02-25 15:18:07 · 1596 阅读 · 0 评论 -
【C#】特性
C#特性学习、主要是用在数据库连接时如何动态创建对应的表,正常开发应该使用如Entity Framework等ORM框架实现自动创建生成。原创 2024-12-28 17:32:14 · 485 阅读 · 0 评论 -
【C#】Winform + Halcon实现绘制ROI功能
C#联合halcon实现绘制ROI功能:C#联合Halcon,使用HDrawingObject、HDrawingObjectXld,绘制矩形、方向矩形、圆形、椭圆、自定义ROI。支持拖动、重设大小、选中,右键复制、粘贴、删除功能。原创 2024-12-25 18:47:50 · 2086 阅读 · 0 评论 -
【C#】Winform联合Halcon 获取图像灰度值
C#联合halcon 鼠标移动获取图像灰度值。通过 HWindowControl 控件的 HMouseMove 事件来捕获鼠标移动事件。获取鼠标的当前坐标,并使用GetGrayval 算子提取该位置的灰度值。使用 ReadImage 读取图像,并通过 DispObj 显示图像。原创 2024-12-21 19:58:49 · 538 阅读 · 1 评论 -
【C#】使用 Winform 联合 TibcoRV中间件通信项目
TIBCO RV是一款高性能的中间件,适用于对延迟极度敏感的场景。本文将用C# Winform实现TIBCO RV的通信功能,实现连接、侦听、发送与接收全流程,文中附上完整源码及安装测试步骤原创 2024-05-07 00:00:31 · 1678 阅读 · 4 评论 -
【C#】WPF + halcon实现二维码识别
1、此项目是学习halcon联合C#实现二维码识别功能…2、实现了异步执行条码,超出指定时间退出。3、在编写此项目时,了解到在扫码完成后,销毁对象时,如果把传入模型参数对象(CodeParameterModel)中识别模式RecognitionMode的也销毁,会造成报错;主要原因是使用CreateDataCode2dModel创建的模型数据对象已经被销毁了,使用FindDataCode2d查找二维码时传入了空的模型对象。4、…原创 2024-12-09 11:06:40 · 1296 阅读 · 1 评论