コード例 #1
0
        public TrademarkRepository(string inputDirPath, IImagePreprocessor imagePreprocessor)
        {
            AllTrademarkClasses = new List <string>();
            AllTrademarks       = new List <ClassifiedTrademark>();

            var inputDir = new DirectoryInfo(inputDirPath);
            var classes  = inputDir
                           .GetDirectories().Where(x => (x.Attributes & FileAttributes.Hidden) == 0)
                           .Where(x => !x.Name.Contains("F"));

            foreach (var subdir in classes)
            {
                AllTrademarkClasses.Add(subdir.Name);

                var pics = subdir.GetFiles().Where(x => !x.Name.Contains("F"));
                foreach (var pic in pics)
                {
                    var classified = new ClassifiedTrademark
                    {
                        Image          = imagePreprocessor.Process(new Bitmap(pic.FullName)),
                        TrademarkClass = AllTrademarkClasses.Count - 1,
                        FilePath       = pic.FullName
                    };
                    AllTrademarks.Add(classified);
                }
            }
        }
コード例 #2
0
 public ProcessedBitmap(IImagePreprocessor imageProcessor)
 {
     this.imagePreprocessor = imageProcessor;
 }
コード例 #3
0
 public OcrService(IImagePreprocessor processor)
 {
     this.engine         = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default);
     this.imageProcessor = processor;
     DefaultSettings();
 }