From 71c7a27b36735296914902b67fde9f534389053b Mon Sep 17 00:00:00 2001 From: Simon Date: Sun, 7 Jan 2024 21:33:01 +0100 Subject: [PATCH] Adjustments for BA --- Examples/CLI/Processor/EvaluationProcessor.cs | 38 +++++++++---------- Examples/CLI/Program.cs | 1 + Examples/Common/Distance/Calculator.cs | 2 +- 3 files changed, 21 insertions(+), 20 deletions(-) diff --git a/Examples/CLI/Processor/EvaluationProcessor.cs b/Examples/CLI/Processor/EvaluationProcessor.cs index be21bf7..7f57225 100644 --- a/Examples/CLI/Processor/EvaluationProcessor.cs +++ b/Examples/CLI/Processor/EvaluationProcessor.cs @@ -20,7 +20,7 @@ internal class EvaluationProcessor /// expression for extracting whole words from scan results /// private static readonly Regex wordRegex = new( - @"[\w'\-]{2,}", + @"[\w'\-äöüÄÖÜß]{2,}", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.IgnoreCase ); @@ -42,6 +42,24 @@ internal class EvaluationProcessor .Use(new DuplicateFilter()) .Complete(new RegexFilter(wordRegex)); + private IProcessorChain MakeProcessor() + { + var preprocessing = new ProcessorChainConfiguration() + .Use(new CloneImageProcessor()) + .Use(new ResizeProcessor(FilterType.Lanczos2Sharp, PixelInterpolateMethod.Mesh)) + .Use(new NormalizeProcessor()) + .Use(_thresholdProcessor) + .Use(new AddBorderProcessor(10)) + .Use(new BinarizeProcessor()) + .Use(new NegateCloneProcessor()) + .Complete(OnPreprocessed); + + return new ProcessorChainConfiguration() + .Use(preprocessing) + .Use(tesseractProcessor) + .Complete(postProcessor); + } + private static readonly TesseractProcessor tesseractProcessor = new(tesseractConfig); private readonly StopwatchProcessor _thresholdProcessor; @@ -75,24 +93,6 @@ internal class EvaluationProcessor await JsonSerializer.SerializeAsync(file, result); }); - private IProcessorChain MakeProcessor() - { - var preprocessing = new ProcessorChainConfiguration() - .Use(new CloneImageProcessor()) - .Use(new ResizeProcessor(FilterType.Lanczos2Sharp, PixelInterpolateMethod.Mesh)) - .Use(new NormalizeProcessor()) - .Use(_thresholdProcessor) - .Use(new AddBorderProcessor(10)) - .Use(new BinarizeProcessor()) - .Use(new NegateCloneProcessor()) - .Complete(OnPreprocessed); - - return new ProcessorChainConfiguration() - .Use(preprocessing) - .Use(tesseractProcessor) - .Complete(postProcessor); - } - private IEnumerable OnPreprocessed(IEnumerable images) { var tImages = images.ToArray(); diff --git a/Examples/CLI/Program.cs b/Examples/CLI/Program.cs index 1d7da95..133fd62 100644 --- a/Examples/CLI/Program.cs +++ b/Examples/CLI/Program.cs @@ -20,6 +20,7 @@ public class Program select (Key: path, Task: processor.Process(new MagickImage(path))) ).ToArray(); + // return new CliTaskMonitor(scans) { Interval = TimeSpan.FromMilliseconds(500) }.Run(); return new CompactCliTaskMonitor(scans) { Interval = TimeSpan.FromMilliseconds(500) }.Run(); } diff --git a/Examples/Common/Distance/Calculator.cs b/Examples/Common/Distance/Calculator.cs index cb06960..b928a8d 100644 --- a/Examples/Common/Distance/Calculator.cs +++ b/Examples/Common/Distance/Calculator.cs @@ -5,7 +5,7 @@ namespace Common.Distance; public static class Calculator { /// - /// Calculates the levenshtein distance between + /// Calculates the levenshtein distance between two enumerables /// /// ///