Rapid_latex_ocr: より高速で便利な数式画像から Latex への変換ツール

高速ラテックス OCR

PyPI SemVer2.0

  • rapid_latex_ocr式画像をラテックス形式に変換するツールです。
  • ウェアハウス内の推論コードはLaTeX-OCRから変更され、モデルはすべて ONNX 形式に変換され、推論コードが簡素化され、推論がより速く、より簡単に展開できるようになりました。
  • ウェアハウスには、NX 形式に基づくコードONNXRuntimeまたはそのOpenVINO推論のみが含まれており、トレーニング モデル コードは含まれません。独自のモデルをトレーニングしたい場合は、LaTeX-OCRに移動してください。
  • お役に立ちましたら、小さな星 ⭐ を付けるか、一杯のコーヒーをスポンサーしてください (ページ上部のスポンサーのリンクをクリックしてください)
  • このツールをより良くするために、友人全員が積極的に貢献することを歓迎します。

使用

  1. インストール

    1. piprapid_latext_ocrライブラリをインストールします。モデルを whl パッケージにパッケージ化すると pypi 制限 (100M) を超えるため、モデルを個別にダウンロードする必要があります。

      pip install rapid_latex_ocr
      
    2. モデルをダウンロードします ( Google Drive | Baidu Netdisk )。初期化するときは、モデルのパスを指定するだけです。詳細については、次の部分を参照してください。

      モデル名 サイズ
      image_resizer.onnx 37.1M
      encoder.onnx 84.8M
      decoder.onnx 48.5M
  2. 使用

    • スクリプトでは以下を使用します。
      from rapid_latex_ocr import LatexOCR
      
      image_resizer_path = 'models/image_resizer.onnx'
      encoder_path = 'models/encoder.onnx'
      decoder_path = 'models/decoder.onnx'
      tokenizer_json = 'models/tokenizer.json'
      model = LatexOCR(image_resizer_path=image_resizer_path,
                      encoder_path=encoder_path,
                      decoder_path=decoder_path,
                      tokenizer_json=tokenizer_json)
      
      img_path = "tests/test_files/6.png"
      with open(img_path, "rb") as f:
          data = f.read()
      
      result, elapse = model(data)
      
      print(result)
      # {\frac{x^{2}}{a^{2}}}-{\frac{y^{2}}{b^{2}}}=1
      
      print(elapse)
      # 0.4131628000000003
      
    • コマンドラインの使用
      $ rapid_latex_ocr -h
      usage: rapid_latex_ocr [-h] [-img_resizer IMAGE_RESIZER_PATH]
                          [-encdoer ENCODER_PATH] [-decoder DECODER_PATH]
                          [-tokenizer TOKENIZER_JSON]
                          img_path
      
      positional arguments:
      img_path              Only img path of the formula.
      
      optional arguments:
      -h, --help            show this help message and exit
      -img_resizer IMAGE_RESIZER_PATH, --image_resizer_path IMAGE_RESIZER_PATH
      -encdoer ENCODER_PATH, --encoder_path ENCODER_PATH
      -decoder DECODER_PATH, --decoder_path DECODER_PATH
      -tokenizer TOKENIZER_JSON, --tokenizer_json TOKENIZER_JSON
      
      $ rapid_latex_ocr tests/test_files/6.png \
          -img_resizer models/image_resizer.onnx \
          -encoder models/encoder.onnx \
          -dedocer models/decoder.onnx \
          -tokenizer models/tokenizer.json
      # ('{\\frac{x^{2}}{a^{2}}}-{\\frac{y^{2}}{b^{2}}}=1', 0.47902780000000034)
      
  3. 入力と出力の説明

    • 入力 ( Union[str, Path, bytes]) : 数式のみを含む画像。
    • 出力 ( Tuple[str, float]) : (识别结果, 耗时)。詳細については、次の例を参照してください。
      (
         '{\\frac{x^{2}}{a^{2}}}-{\\frac{y^{2}}{b^{2}}}=1',
         0.47902780000000034
      )
      

詳細については、 RapidLatexOCRに移動してください。

おすすめ

転載: blog.csdn.net/shiwanghualuo/article/details/131745242