Skip to content

ndl-lab/ndlocr-lite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1b3706d · Mar 3, 2026

History

58 Commits
Feb 25, 2026
Mar 3, 2026
Feb 20, 2026
Mar 2, 2026
Feb 24, 2026
Feb 19, 2026
Feb 24, 2026
Feb 24, 2026
Mar 2, 2026
Feb 19, 2026
Mar 2, 2026
Mar 2, 2026

Repository files navigation

NDLOCR-Liteアプリケーションのリポジトリ

NDLOCR-Liteを利用してテキスト化を実行するためのアプリケーションを提供するリポジトリです。

NDLOCR-Liteは、NDLOCRの軽量版を目指して開発したOCRであり、ノートパソコン等の一般的な家庭用コンピュータやOS環境で、図書や雑誌といった資料のデジタル化画像からテキストデータが作成できるOCRです。

GPUを必要としないOCR処理に特徴があり、ノートパソコン等の一般的な家庭用コンピュータやOS環境において高速に実行可能です。

Windows(Windows 11)、Mac(Apple M4, macOS Sequoia)及びLinux(Ubuntu 22.04)環境において動作確認しています。

本プログラムはNDLラボにおけるこれまでの調査研究活動によって得られた知見、特にNDL古典籍OCR-Liteの開発経験を踏まえて職員が内製で開発しました。

本プログラムは、国立国会図書館がCC BY 4.0ライセンスで公開するものです。詳細についてはLICENCEをご覧ください。なお、本アプリケーションの実行時に利用するライブラリ等のライセンスについてはLICENCE_DEPENDENCIESをご覧ください。

デスクトップアプリケーションによる利用

デスクトップアプリケーションを利用する際には、日本語(全角文字)を含まないパスにアプリケーションを配置してください。全角文字を含む場合に起動しないことがあります。

releasesからお使いのOS環境(Windows/Mac/Linux)に合ったファイルをダウンロードしてください。

デスクトップアプリケーションの操作方法についてはNDLOCR-Liteの使い方、ビルド方法についてはデスクトップアプリケーションの利用方法を参照してください。

次のgifアニメーションは、

国立国会図書館総務部総務課 編『国立国会図書館年報』昭和27年度,国立国会図書館,1954. 国立国会図書館デジタルコレクション https://dl.ndl.go.jp/pid/3048008"

をNDLOCR-Liteの画面キャプチャ機能によって、画像ファイルを介さずにテキスト化するデモを示しています。

キャプチャモードのデモ動画

コマンドラインからの利用

※コマンドラインから操作を行うにはPython 3.10以上が必要です。

事前準備

git clone https://github.com/ndl-lab/ndlocr-lite
cd ndlocr-lite
pip install -r requirements.txt
cd src

実行例1.(同階層にある「9892834_0001」という名称のディレクトリ内の画像を一括処理し、tmpdirという名称のディレクトリに結果を出力する。)

python3 ocr.py --sourcedir 9892834_0001 --output tmpdir 

実行例2.(同階層にある「digidepo_1287221_00000002.jpg」という名称の画像を処理し、tmpdirという名称のディレクトリに結果を出力する。)

python3 ocr.py --sourceimg digidepo_1287221_00000002.jpg --output tmpdir

uv(https://github.com/astral-sh/uv)をお使いの環境であれば、以下のようにしても導入・実行可能です。この場合、「ndlocr-lite」というコマンドから実行できます。

導入方法

git clone https://github.com/ndl-lab/ndlocr-lite
cd ndlocr-lite
uv tool install .

実行例

ndlocr-lite --sourceimg digidepo_1287221_00000002.jpg --output tmpdir 

パラメータの説明

--sourcedirオプション

処理したい画像の含まれるディレクトリを絶対パスまたは相対パスで指定する。ディレクトリ内の"jpg(jpegも可)"、"png"、"tiff(tifも可)"、"jp2"及び"bmp"の拡張子のファイルを順次処理する。

--sourceimgオプション

処理したい画像を絶対パスまたは相対パスで直接指定する。"jpg(jpegも可)"、"png"、"tiff(tifも可)"、"jp2"及び"bmp"の拡張子のファイルを処理することが可能。

--outputオプション

OCR結果を保存する出力先ディレクトリを相対パスまたは絶対パスで指定する。

--vizオプション

--viz Trueを指定することで、文字認識箇所を青枠で表示した画像を出力先ディレクトリに出力する。

--deviceオプション(ベータ)

対応GPUを搭載したサーバかつonnxruntime-gpuがインストールされている環境に限り、--device cudaを指定することでGPUを利用した処理に切り替える。

OCR結果の例

資料画像 OCR結果の冒頭(誤認識を含む) OCR結果のxml
レイアウト認識結果
国立国会図書館総務部 編『国立国会図書館スタッフ・マニュアル』E-2,国立国会図書館,1963.8. 国立国会図書館デジタルコレクション https://dl.ndl.go.jp/pid/2531162/1/23
(ヱ)気送子送付管気送子送付には、上記気送響にて送付するものと、空気の圧縮を使用せず,直接落下させる装置の二通りがある。後者の送付管は山納台左側に設置されており.5 OCR結果(xmlファイル)
レイアウト認識結果
館内スコープ 次世代室の謎に迫れ!. 国立国会図書館月報. 2018, (683),  p.20. http://dl.ndl.go.jp/info:ndljp/pid/11048278
はじめまして!私は2017年4月に就職後、次世代システム開発研究室(次世代室)という場所で仕事をしています。でも、「次世代室」って何をするところか想像しにくいですよね。次世代室は、図書館の役割がインターネット等の情報技術で変化する中、より先進的なサービスを検討していくために作られた比較的新しい部署です。 OCR結果(xmlファイル)
レイアウト認識結果
国立国会図書館総務部総務課 編『国立国会図書館年報』昭和27年度,国立国会図書館,1954. 国立国会図書館デジタルコレクション https://dl.ndl.go.jp/pid/3048008/1/25
第8章職員、庁舍、財政、記念行事等1.職員A.司書職員の研修昭和26年度(第4回)研修に引続き、昭和27年度(第5回)司書職員研修を27年6月2日から28年4月10日まで320時間、研修生50名に実施した。本年度は、東京学芸大学の協力を得て、講師は、本館職員が専門分野の科目を担当した外、東京学芸大学の教授が担当した。本年度も單位科目ごとに試験を実施し、必修科目(11單位)選択科目(4單位)合わせて15單位以上の試験に合格した43名が修了した。 OCR結果(xmlファイル)

モデルの再学習及びカスタマイズについて(開発者向け情報)

学習及びモデル変換手順をご覧ください。

技術情報について(開発者向け情報)

NDLOCR-Liteは「レイアウト認識」、「文字列認識」、「読み順整序」の3つの機能(モジュール)を組み合わせて実現しています。

レイアウト認識にはDEIMv2[1]、文字列認識にはPARSeq[2]をそれぞれ用いており、読み順整序については当館が公開しているNDLOCRと同様のモジュールを用いています。

[1]Shihua Huang and Yongjie Hou and Longfei Liu and Xuanlong Yu and Xi Shen. Real-Time Object Detection Meets DINOv3. arXiv preprint arXiv:2509.20787, 2025.(https://arxiv.org/abs/2509.20787)

[2]Darwin Bautista, Rowel Atienza. Scene text recognition with permuted autoregressive sequence models. arXiv:2212.06966, 2022. (https://arxiv.org/abs/2207.06966)

レイアウト認識及び文字列認識の機械学習モデルは、いずれもpytorchをフレームワークとした学習を行った後にONNX形式に変換して利用しています。詳しくは学習及びモデル変換手順をご覧ください。

About

NDLOCR‑Lite application repository (including source code)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages