From 4091d5009b63ba1d6f24788ca79877c37001e0f6 Mon Sep 17 00:00:00 2001
From: C3032 <1057644574@qq.com>
Date: 星期五, 20 三月 2026 11:08:39 +0800
Subject: [PATCH] 华睿读码器集成完成,使用抽象接口-基类-各品牌子类的架构,实现可插拔设计,遵循开闭原则,方便后续集成其他品牌读码器

---
 LB_VisionProcesses/Alogrithms/Halcon/2D/HFindLineTool/HFindLineTool.cs |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindLineTool/HFindLineTool.cs b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindLineTool/HFindLineTool.cs
index 2ced791..2b7ce05 100644
--- a/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindLineTool/HFindLineTool.cs
+++ b/LB_VisionProcesses/Alogrithms/Halcon/2D/HFindLineTool/HFindLineTool.cs
@@ -68,27 +68,28 @@
                     {
                         using (HImage hImage = new HImage())
                         {
-                            Rectangle rect = new Rectangle(0, 0, ((Bitmap)InputImage).Width, ((Bitmap)InputImage).Height);
-                            BitmapData srcBmpData = ((Bitmap)InputImage).LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format32bppRgb);
-                            hImage.GenImageInterleaved(srcBmpData.Scan0, "rgbx", ((Bitmap)InputImage).Width, ((Bitmap)InputImage).Height, 0, "byte", ((Bitmap)InputImage).Width, ((Bitmap)InputImage).Height, 0, 0, -1, 0);
-                            ((Bitmap)InputImage).UnlockBits(srcBmpData);
-                            ((Bitmap)InputImage).Dispose();
+                            Bitmap bitmap = (Bitmap)InputImage;
+                            Rectangle rect = new Rectangle(0, 0, ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height);
+                            BitmapData srcBmpData = ((Bitmap)bitmap).LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format32bppRgb);
+                            hImage.GenImageInterleaved(srcBmpData.Scan0, "rgbx", ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height, 0, "byte", ((Bitmap)bitmap).Width, ((Bitmap)bitmap).Height, 0, 0, -1, 0);
+                            ((Bitmap)bitmap).UnlockBits(srcBmpData);
+                            bitmap.Dispose();
+                            bitmap = null;
+                            InputImage = null;
                             InputImage = hImage.Clone();
                         }
                     }
                     catch (Exception ex)
                     {
-                        Msg = "杞浘鍑洪敊锛�" + ex.Message;
-                        Result = false;
-                        return;
                     }
                 }
                 if (!(InputImage is HObject))
                 {
-                    Msg = "杈撳叆鍥剧墖鏍煎紡涓嶄负Mat";
+                    Msg = "杈撳叆鍥剧墖鏍煎紡涓嶄负HObject";
                     Result = false;
                     return;
                 }
+
                 #region 瑁佸壀鍖哄煙
                 if (!(Params.ROI is HSegment))
                 {

--
Gitblit v1.9.3