From 065674f3eea53cd84244dbb7ba1a994f86dde1ab Mon Sep 17 00:00:00 2001
From: C3031 <shitiangui@lanpucloud.cn>
Date: 星期五, 30 一月 2026 09:09:47 +0800
Subject: [PATCH]
---
LB_VisionProcesses/Alogrithms/BaseAlgorithm/TAlgorithm.cs | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 108 insertions(+), 1 deletions(-)
diff --git a/LB_VisionProcesses/Alogrithms/BaseAlgorithm/TAlgorithm.cs b/LB_VisionProcesses/Alogrithms/BaseAlgorithm/TAlgorithm.cs
index 8e76cd9..9ae365b 100644
--- a/LB_VisionProcesses/Alogrithms/BaseAlgorithm/TAlgorithm.cs
+++ b/LB_VisionProcesses/Alogrithms/BaseAlgorithm/TAlgorithm.cs
@@ -304,7 +304,16 @@
Result = true;
bCompleted = false;
Msg = "";
- OutputImage = null;
+ if (OutputImage != null)
+ {
+ if (OutputImage is HObject)
+ ((HObject)OutputImage).Dispose();
+ else if (OutputImage is Mat)
+ ((Mat)OutputImage).Dispose();
+ else if (OutputImage is Bitmap)
+ ((Bitmap)OutputImage).Dispose();
+ OutputImage = null;
+ }
if (Record != null)
Record.Dispose();
@@ -3824,6 +3833,104 @@
}
/// <summary>
+ /// 鍥惧儚澧炲己绠楁硶-杈圭紭澧炲己
+ /// </summary>
+ /// <param name="ho_Image">寰呮祴鍥剧墖</param>
+ /// <param name="hv_Wid">鎺╄啘瀹�</param>
+ /// <param name="hv_High">鎺╄啘楂�</param>
+ /// <param name="hv_Fac">澧炲己鍥犲瓙</param>
+ /// <param name="hv_Row1">璧峰绾靛潗鏍�</param>
+ /// <param name="hv_Column1">璧峰妯潗鏍�</param>
+ /// <param name="hv_Row2">缁撴潫绾靛潗鏍�</param>
+ /// <param name="hv_Column2">缁撴潫妯潗鏍�</param>
+ public static void Emphsize(HObject ho_Image, out HObject ho_OutImage, HTuple hv_ImageEnhancementType, HTuple hv_Wid, HTuple hv_High, HTuple hv_Fac)
+ {
+ HOperatorSet.GenEmptyObj(out ho_OutImage);
+ try
+ {
+ HTuple hv_ImageEnhancementTypeOut = new HTuple();
+ hv_ImageEnhancementTypeOut.Dispose();
+ hv_ImageEnhancementTypeOut = new HTuple(hv_ImageEnhancementType);
+
+ hv_Wid.Dispose();
+ hv_High.Dispose();
+ ho_OutImage.Dispose();
+
+ //璁剧疆鍥惧儚澧炲己绠楁硶
+ if ((int)(new HTuple(hv_ImageEnhancementTypeOut.TupleEqual("emphasize"))) != 0)
+ {
+ hv_ImageEnhancementTypeOut.Dispose();
+ hv_ImageEnhancementTypeOut = "emphasize";
+ HOperatorSet.Emphasize(ho_Image, out ho_OutImage, hv_Wid, hv_High, hv_Fac);
+ }
+ else if ((int)(new HTuple(hv_ImageEnhancementTypeOut.TupleEqual("equHisto"))) != 0)
+ {
+ hv_ImageEnhancementTypeOut.Dispose();
+ hv_ImageEnhancementTypeOut = "equHisto";
+
+ }
+ else
+ {
+ hv_ImageEnhancementTypeOut.Dispose();
+ hv_ImageEnhancementTypeOut = "scaleMax";
+ }
+
+
+
+ HOperatorSet.EquHistoImage(ho_Image, out ho_OutImage);
+
+
+ return;
+ }
+ catch (HalconException HDevExpDefaultException)
+ {
+
+ hv_Wid.Dispose();
+ hv_High.Dispose();
+
+ throw HDevExpDefaultException;
+ }
+ }
+ /// <summary>
+ /// 鍥惧儚澧炲己绠楁硶-姣斾緥澧炲己
+ /// </summary>
+ /// <param name="ho_Image">寰呮祴鍥剧墖</param>
+ /// <param name="hv_Wid">鎺╄啘瀹�</param>
+ public static void ScaleImageMax(HObject ho_Image, out HObject ho_OutImage)
+ {
+ HOperatorSet.GenEmptyObj(out ho_OutImage);
+ try
+ {
+ ho_OutImage.Dispose();
+ HOperatorSet.ScaleImageMax(ho_Image, out ho_OutImage);
+ return;
+ }
+ catch (HalconException HDevExpDefaultException)
+ {
+ throw HDevExpDefaultException;
+ }
+ }
+ /// <summary>
+ /// 鍥惧儚澧炲己绠楁硶-鐩存柟鍥惧潎琛″寲
+ /// </summary>
+ /// <param name="ho_Image">寰呮祴鍥剧墖</param>
+ /// <param name="hv_Wid">鎺╄啘瀹�</param>
+ public static void EquHistoImage(HObject ho_Image, out HObject ho_OutImage)
+ {
+ HOperatorSet.GenEmptyObj(out ho_OutImage);
+ try
+ {
+ ho_OutImage.Dispose();
+ HOperatorSet.EquHistoImage(ho_Image, out ho_OutImage);
+ return;
+ }
+ catch (HalconException HDevExpDefaultException)
+ {
+ throw HDevExpDefaultException;
+ }
+ }
+
+ /// <summary>
/// 鍗″昂绠楁硶
/// </summary>
/// <param name="ho_Image">寰呮祴鍥剧墖</param>
--
Gitblit v1.9.3