📚DH Weekly Topics — 2026年6月7日週
DH Weekly Topics — 2026年6月7日週
DH Weekly Topics — 2026年6月7日週
DH Weekly Topics — 2026年5月31日週
DH Weekly Topics — 2026年5月24日週
A record of porting kuzushiji/historical-document character detection (YOLOv11) and NDL's koten-OCR-Lite (RTMDet + PARSeq) to JS/Next.js with onnxruntime-node — no Python. Covers ONNX export, SAHI, line detection, an int8 quantization accuracy comparison, why it is hard to run on Vercel, and extracting the core into a shared library.
DH Weekly Topics — 2026年5月17日週
DH Weekly Topics — 2026年5月10日週
I built TEI Scanner, a macOS desktop app that runs Apple's Vision OCR over a folder of scanned page images and emits a single TEI/XML document. This post records the SwiftUI implementation, project management via xcodegen, notarization driven by an App Store Connect API key, and .dmg distribution through GitHub Releases.
I delivered IIIF Presentation 3 OCR text annotations with `motivation: "supplementing"`, and they showed up in Annona and other viewers but not in Mirador 4.0.0's Annotations side panel. Reverse-engineering the deployed Mirador bundle revealed that the released default for `config.annotations.filteredMotivations` is `['oa:commenting', 'oa:tagging', 'sc:painting', 'commenting', 'tagging']` — `supplementing` isn't in the allowlist. This post walks through how I found that, the `['commenting', 'supplementing']` array workaround, and the relevant spec / Cookbook references.

We applied two OCR engines — Japan's National Diet Library NDL Koten OCR-Lite and Cloud Vision API DOCUMENT_TEXT_DETECTION — to 105 IIIF images of fascicles 571–575 of the Mahāprajñāpāramitā Sūtra in the Jiaxing Tripitaka held by Yūrenja (formerly the Hōonzō of Zōjōji), and compared the patterns of error in their outputs. NDL produced phantom kana lines on 12 pages; Vision picked up color charts, rulers, and shelf labels as if they were body text on all 105.
DH Weekly Topics — 2026年4月19日週
DH Weekly Topics — 2026年4月12日週
DH Weekly Topics — 2026年4月5日週
How to import and call NDLOCR-Lite, a Japanese OCR engine published by the National Diet Library, directly from a Python script instead of using the CLI.
Development log of building the KotenOCR Android app with Flutter, then migrating to Kotlin Native. Performance benchmarks, API fix for 18x speedup, and framework selection with AI-assisted development.
DH Weekly Topics — 2026年3月28日週
Fixing duplicate detection results in KotenOCR's modern-script OCR mode (NDLOCR-Lite) by adding NMS and filtering to line_* classes, achieving detection accuracy on par with the reference ndlocr-lite implementation.

KotenOCR v1.3.0 adds NDLOCR-Lite support for modern printed text OCR alongside the existing classical text (kuzushiji) mode, with one-tap mode switching and parallelized recognition for up to 6.7x speedup.
DH Weekly Topics — 2026年3月21日週

Using withThrowingTaskGroup to parallelize OCR recognition in an iOS app, achieving 1.4x to 6.7x speedup depending on the number of detected text regions.

KotenOCR is a free iOS app that runs the NDL Koten OCR-Lite model entirely on-device, enabling offline recognition of kuzushiji (classical Japanese cursive script) from photos.

An introduction to Transkribus, an AI-based handwritten text recognition platform supporting 100+ languages, and its applications in Digital Humanities research for transcribing historical documents.
DH Weekly Topics — 2026年2月22日週

BDRC Tibetan OCR: Introduction and Implementation Examples of a Tibetan OCR Tool

Azure OpenAI GPT-4 vs Document Intelligence: Comparative Evaluation of Japanese Vertical Text OCR

LLM-Based Manuscript Paper OCR Performance Comparison: Verification of Vertical Japanese Recognition Accuracy

Challenges and solutions for preserving order in PDF transparent text extraction

TEI ODD File Customization: A Case Study with NDL Classical Book OCR

Development of the NDL Kotenseki OCR-lite Next.js version

A Scalable OCR Processing System Using NDL Classical Japanese OCR Lite on Azure Container Apps

Trying DToC: Dynamic Table of Contexts

Creating TEI/XML files from IIIF manifest files using NDL Kotenseki OCR-Lite

Part 2: Creating Annotated IIIF Manifest Files and TEI/XML Files Using NDL Classical Book OCR-Lite

A program to create TEI/XML files with OCR results from IIIF manifest files

Created a Similar Text Search App for the Koui Genji Monogatari

Building an NDLOCR Gradio App Using Azure Virtual Machines

Created a Gradio app to try ndlocr_cli (NDLOCR ver.2.1) application

Building a Gradio app using NDL Kotenseki OCR-Lite

Using NDL Classical Book OCR-Lite (ndlkotenocr-lite) on Mac OS

Creating a transparent text PDF from a single page using Google Cloud Vision API

Mirador Repository with Vertical Text Support for the Text Overlay Plugin

Applying Google Cloud Vision to Image Files to Create IIIF Manifests and TEI/XML Files

Handling Shared Memory Shortage When Running ndlocr_cli and Other Issues

Disk space after installing ndlocr_cli with Docker

Created Notebooks Using NDLOCR and NDL Classical Japanese OCR ver.2

Running NDL Classical Japanese OCR on mdx

Mirador 3 plugin development: adding vertical text support to the Text Overlay plugin

About ALTO (Analyzed Layout and Text Object) XML

Bug fixes and feature additions to the NDL classical book OCR tutorial using Google Colab

Web Application for NDL Classical Book OCR Using Hugging Face Space

Running NDL Classical Japanese OCR on Amazon EC2 CPU Environment

Running NDL Classical Text OCR Using Amazon SageMaker Studio

NDL classical text OCR using Google Colab

Building a layout extraction model using the NDL-DocL dataset and YOLOv5

NDL OCR Now Supports Ruby (Furigana) Text Extraction

Created a Video on How to Use the NDLOCR App with Google Colab

Running gcv2hocr on Google Colab: Creating searchable PDFs with transparent text using Google Vision API

Created Version 2 of the NDLOCR App Using Google Colab

Execution time for NDLOCR using Google Colab

Running NDLOCR App with Google Colab (Image Input and Result Saving via Google Drive)

Running the NDLOCR Application Using Google Cloud Platform Compute Engine

Added TEI/XML Download Functionality to the "NDL OCR x IIIF" App

[Development guide] I created an app to view OCR results published by the National Diet Library's Next-Generation Digital Library in an IIIF viewer

An App for Viewing OCR Results from the NDL "Next-Generation Digital Library" in an IIIF Viewer