From 66d995d55f9c122328b4eceb99bc20aca3a42c10 Mon Sep 17 00:00:00 2001 From: wells <123> Date: 星期日, 12 七月 2020 21:04:16 +0800 Subject: [PATCH] debug --- src/Bro.M071.Process/M071Process.cs | 39 ++++++++++++++++++++++++++++++--------- 1 files changed, 30 insertions(+), 9 deletions(-) diff --git a/src/Bro.M071.Process/M071Process.cs b/src/Bro.M071.Process/M071Process.cs index 300a146..a0e47ae 100644 --- a/src/Bro.M071.Process/M071Process.cs +++ b/src/Bro.M071.Process/M071Process.cs @@ -647,8 +647,16 @@ int i = 0; u.KeyImages?.ForEach(image => { - string fileName = Path.Combine(dir, $"{measureName}_{u.Key}{(i == 0 ? "" : $"-{i}")}_{DateTime.Now.ToString("HHmmss")}.tiff"); - image.WriteImage("tiff", 0, fileName); + string fileName = ""; + try + { + fileName = Path.Combine(dir, $"{measureName}_{u.Key}{(i == 0 ? "" : $"-{i}")}_{DateTime.Now.ToString("HHmmss")}.tiff"); + image.WriteImage("tiff", 0, fileName); + } + catch (Exception) + { + LogAsync(DateTime.Now, "鍒囧浘淇濆瓨澶辫触", fileName); + } i++; }); @@ -668,6 +676,7 @@ string toolKey = (opConfig as CameraOprerationConfigBase).AlgorithemPath; HObject images = imgSet.HImage; LaserScanParam scanParam = JsonConvert.DeserializeObject<LaserScanParam>(imgSet.ImageData); + LogAsync(DateTime.Now, $"鎵弿鍙傛暟:{imgSet.ImageData}", ""); if (!string.IsNullOrWhiteSpace(toolKey)) { @@ -691,6 +700,7 @@ } HOperatorSet.CountObj(images, out HTuple count); + LogAsync(DateTime.Now, $"{snapshotName}鍒囧浘{count.I}寮�", ""); if (count == 0) { @@ -699,7 +709,7 @@ return; } - var excludeKeys = keys.Where(u => u.ImageSeq > count).ToList(); + var excludeKeys = keys.Where(u => u.ImageSeq > count.I).ToList(); if (excludeKeys.Count > 0) { LogAsync(DateTime.Now, $"{string.Join(" ", excludeKeys.Select(u => u.AliasName))}鏈湪鍥剧墖鑾峰彇搴忓垪涓�", ""); @@ -709,9 +719,19 @@ }); } - Parallel.For(1, count.I, (i) => + string dir = Path.Combine(Config.ImageSaveFolder, "Clips", $"{snapshotName}_{DateTime.Now.ToString("HHmmss")}"); + if (!Directory.Exists(dir)) + { + Directory.CreateDirectory(dir); + } + + Parallel.For(1, count.I + 1, (i) => + //for (int i = 1; i <= count.I; i++) { HOperatorSet.SelectObj(images, out HObject image, i); + + string fileName = Path.Combine(dir, $"{i}.tif"); + image.ConvertHObjectToHImage().WriteImage("tiff", 0, fileName); keys.Where(u => u.ImageSeq == i).ToList().ForEach(k => { @@ -727,8 +747,8 @@ else { _halconToolDict[keyToolKey].InputImageDic["INPUT_Image"] = image; - _halconToolDict[keyToolKey].InputTupleDic["INPUT_Resolution_X"] = scanParam.Resolution_X; - //_halconToolDict[keyToolKey].InputTupleDic["INPUT_Resolution_Z"] = scanParam.Resolution_Z; + _halconToolDict[keyToolKey].InputTupleDic["INPUT_Resolution_X"] = scanParam.Resolution_X / 1000000.0; + _halconToolDict[keyToolKey].InputTupleDic["INPUT_Resolution_Z"] = scanParam.Resolution_Z / 1000000.0; if (!_halconToolDict[keyToolKey].RunProcedure(out string error)) { LogAsync(DateTime.Now, $"{k.AliasName}妫�娴嬬畻娉曞紓甯革紝{error}", ""); @@ -753,13 +773,14 @@ keyBindList.ForEach(kb => { - kb.KeyImages.Add(image.Clone() as HImage); + kb.KeyImages.Add(image.ConvertHObjectToHImage()); kb.FillKeyValues(resultDict); }); }); - image.Dispose(); - }); + //image.Dispose(); + } + ); //if (count.I != 1) //{ -- Gitblit v1.8.0