2017-08-16 13 views
0

多くのSO Tesseract OCR関連の投稿specifically this oneのおかげで、今ではTesseractをアプリに、具体的にはOCRの食料品の領収書に統合する途中です。しかし、私はガベージの結果を得ているので、理由を理解できません。私はバージョン3.04/3.05の英国キューブデータファイルであるtessdata言語ファイルを三重チェックしました。機能toGrayScaleなどが、SOのポストから、この記事の最初の文ににリンクされていることをSwift 3 Tesseract OCRはゴミの返品を認識します

  if let tesserect = G8Tesseract(language: "eng") { 

      self.receiptPhoto.image = UIImage(named: "TradersReceipt")?.g8_blackAndWhite() 
      self.receiptPhoto.image = self.receiptPhoto.image?.toGrayScale() 
      self.receiptPhoto.image = self.receiptPhoto.image?.binarise() 
      self.receiptPhoto.image = self.receiptPhoto.image?.scaleImage() 

      // OCR the receipt in receiptPhoto 
      tesserect.delegate = self as G8TesseractDelegate 
      tesserect.engineMode = .tesseractCubeCombined 
      tesserect.pageSegmentationMode = .singleBlock 
      tesserect.image = self.receiptPhoto.image 
      tesserect.recognize() 

      // Update the UITextField in the destination VC being segued to 
      textOfReceipt.text = tesserect.recognizedText 

     } 

注:ここでは

は、私のコードの中核です。図から分かるように、私はテストのためにトレーダー・ジョーズ領収ハードコードされてきたが、その領収書はここにある:

Trader Joe's Receipt

しかし、ここでは私の問題、(textOfReceipt.text)が表示されますUITextViewです、私は、単純な何かが欠けてるように私は感じ

Garbage Results from tesseract.recognize

:ごみです。すべてのヘルプが感謝しています。

答えて

0

コードはうまくいきました。 Tesseractは単にTrader Joeの領収書をうまく処理しません。おそらく、TesseractはTrader Joeの使い方をうまく処理できない、または領収書の特殊文字の一部と混乱してしまうからです。領収書をOCRする際には、結果の品質は幅広くありますが、他の領収書は優れています。書籍などの通常のテキストをOCRでOCRすると、結果は素晴らしいものになります。

関連する問題