麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

.NET中兩種OCR方式對(duì)比

2019-11-11 07:47:58
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
1.使用 Tesseract Install-Package Tesseract2.從這里下載實(shí)例項(xiàng)目(為了獲得訓(xùn)練數(shù)據(jù))tessdata目錄下的就是訓(xùn)練數(shù)據(jù),等下初始化Tesseract引擎對(duì)象會(huì)使用。測(cè)試代碼:  
PRivate static void TesseractSample()        {            var testImagePath = "phototest.tif";            try            {                using (var engine = new TesseractEngine(@"../../tessdata", "eng", EngineMode.Default))                {                    using (var img = Pix.LoadFromFile(testImagePath))                    {                        using (var page = engine.Process(img))                        {                            var text = page.GetText();                            Console.WriteLine("Mean confidence: {0}", page.GetMeanConfidence());                            Console.WriteLine("Text (GetText): /r/n{0}", text);                            Console.WriteLine("Text (iterator):");                            using (var iter = page.GetIterator())                            {                                iter.Begin();                                do                                {                                    do                                    {                                        do                                        {                                            do                                            {                                                if (iter.IsAtBeginningOf(PageIteratorLevel.Block))                                                {                                                    Console.WriteLine("<BLOCK>");                                                }                                                Console.Write(iter.GetText(PageIteratorLevel.Word));                                                Console.Write(" ");                                                if (iter.IsAtFinalOf(PageIteratorLevel.TextLine, PageIteratorLevel.Word))                                                {                                                    Console.WriteLine();                                                }                                            } while (iter.Next(PageIteratorLevel.TextLine, PageIteratorLevel.Word));                                            if (iter.IsAtFinalOf(PageIteratorLevel.Para, PageIteratorLevel.TextLine))                                            {                                                Console.WriteLine();                                            }                                        } while (iter.Next(PageIteratorLevel.Para, PageIteratorLevel.TextLine));                                    } while (iter.Next(PageIteratorLevel.Block, PageIteratorLevel.Para));                                } while (iter.Next(PageIteratorLevel.Block));                            }                        }                    }                }            }            catch (Exception e)            {                Console.WriteLine("Unexpected Error: " + e.Message);                Console.WriteLine("Details: ");                Console.WriteLine(e.ToString());            }            Console.WriteLine("Press anykey to end");            Console.ReadKey();        }使用MS cognitive做OCR1. 有一個(gè)Cognitive 的賬號(hào)。2. 準(zhǔn)備一個(gè)測(cè)試圖片

3. 測(cè)試代碼:

... MS_OCRApi("phototest.tif");...    static async void MS_OCRApi(string pathOfImage)        {                        var client = new HttpClient();            var queryString = HttpUtility.ParseQueryString(string.Empty);            const string API_KEY = "{your key}";            // Request headers            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", API_KEY);            // Request parameters            queryString["language"] = "unk";            queryString["detectOrientation "] = "true";            var uri = "https://westus.api.cognitive.microsoft.com/vision/v1.0/ocr?" + queryString;            HttpResponseMessage response;            // Request body            byte[] byteData = File.ReadAllBytes(pathOfImage);            using (var content = new ByteArrayContent(byteData))            {                content.Headers.ContentType =                    new MediaTypeHeaderValue("application/octet-stream");                response = await client.PostAsync(uri, content);                var s = new MemoryStream();                await response.Content.CopyToAsync(s);                var str = Encoding.UTF8.GetString(s.ToArray());                var results = JsonConvert.DeserializeObject<MsOCRResult>(str);                Console.WriteLine("Results :");                var lines = results.regions.SelectMany(x => x.lines);                foreach (var ocrLine in lines)                {                    Console.WriteLine(ocrLine);                }                Console.ReadKey();            }        }

對(duì)比兩種OCR:1. MS Cognitive Service是RESTful api based,支持多種客戶端而且不用關(guān)心機(jī)器學(xué)習(xí)過(guò)程,但是收費(fèi)(每月5000個(gè)call,1分鐘20個(gè)call免費(fèi))。不過(guò)可考慮使用緩存來(lái)降低成本。2. Tesseract是dll based。因此需要不斷更新訓(xùn)練數(shù)據(jù),如果需要支持多客戶端,需要自己wrap一個(gè)RESTful。好處就是免費(fèi)。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 九九热精品在线视频 | 欧美成人黄色小视频 | 精品三区视频 | 日韩精品久久久久久久电影99爱 | 毛片在线视频免费观看 | 天天躁狠狠躁夜躁2020挡不住 | 国产精品久久久久久久久久久久午夜 | 午夜视频在线观看91 | 精品久久久久久久久亚洲 | 在线视频a| 国产69精品久久久久久 | 国产一级小视频 | 中文字幕网在线 | 99精品视频免费看 | 女人久久久www免费人成看片 | 精国产品一区二区三区 | 久久国产精品系列 | 7777视频 | lutube成人福利在线观看污 | 成人在线精品视频 | 大学生一级毛片在线视频 | 成人性生活视频在线播放 | 一级毛片免费观看在线 | 欧美成人一区二区三区电影 | qyl在线视频精品免费观看 | 成人啪啪色婷婷久 | 国产视频在线一区 | 久久精品视频黄色 | 人人舔人人舔 | 三级国产三级在线 | 国产午夜精品一区二区三区免费 | 一级黄色淫片 | 黑人三级毛片 | 色视频在线 | 国产亚洲精品久久久久久大师 | 天天透天天狠天天爱综合97 | 天天草夜夜骑 | 中文字幕精品在线观看 | 红杏网站永久免费视频入口 | 久热久操 | 欧美一级淫片免费视频1 |