OCRのデータを電書用のテキストに変換する

2026/4/8 [09:34:43] (水) 天気

国立国会図書館のOCRデータをepub3のリフロー型電子書籍にするためにテキスト化する下準備の覚え書き、が今回のエントリ。


印刷書籍から電子書籍にする時のボトルネックが「改行」処理。OCRうんぬんだけじゃなくて、インデザなんかのデータも一緒。

(いわゆる「空行」の扱いなんかも面倒くさい)


image

画像の出典:ボブ・ショウ 著 ほか『去りにし日々、今ひとたびの幻』,サンリオ,1981.10. 国立国会図書館デジタルコレクション https://dl.ndl.go.jp/pid/12632736 (参照 2026-04-08)


↑ このページをOCRで出力したテキスト↓

image

「一行」の扱い。

OCRでテキスト化したものは印刷書籍の「見た目の一行」が、そのまんま。


印刷書籍は「版面」という箱に、決まったサイズの文字を流しこんで並べるので問題はない。でも、電子書籍は「版面」みたいな決まった大きさの箱はなくて、文字サイズも決まっていない。


なもんで、見た目の一行通りに並べると、下のテキスト画像のように、文字の長さと表示部分の長さの不一致で無駄な余白が出たり、折り返しが不自然になったりする。


印刷書籍は「表示行」(物理行、レイアウト行とも言われる)

→ 一行は見た目の一行。

電子書籍は「論理行」

→ 一行は「改行」で区切られる/終了する。


電子書籍では、表示部分の幅や高さとは関係なく、「文章」が完結したところまでで一行になる「論理行」が必要。


【表示行1】「なかなかいいアイディアじゃないか」つやつやと光る壁を見まわしながら言う。「だけど、ひ

【表示行2】とつ欠点があるな、ジョン。これではどんどん部屋が狭くなっていく。そのうちすっかり隙間が

【表示行3】なくなってしまうぞ」


↑という3行の表示行を一行の論理行にする↓


【論理行】「なかなかいいアイディアじゃないか」つやつやと光る壁を見まわしながら言う。「だけど、ひとつ欠点があるな、ジョン。これではどんどん部屋が狭くなっていく。そのうちすっかり隙間がなくなってしまうぞ」


うまいやり方、これで決まり! というのも思いついてなくて、データの表示行(1行の文字数43字)を一行ずつを見て

  • 表示行の文字数いっぱいなら、次の表示行に繋っている
  • 表示行の文字数より短かかったら、そこに「改行」が入る

ということで、期待したところで「改行」された論理行の一行になる。

(表示行の文字数と「文章」の文字数がたまたま同じだったら、改行されなきゃいけないところなのに繋がってしまう…これはもう目視確認するしかないかなあ)


もうひとつ「空行」問題がある。

データに「改行」がないんだから、当然「空行」など存在しない。


そのために、OCRが出力するデータはテキストだけじゃなくて、JSON、XML形式のものがある。

以下はXML形式。

<LINE TYPE="本文"
 X="1178" Y="362" WIDTH="129" HEIGHT="5430" CONF="0.935" PRED_CHAR_CNT="1.000" ORDER="25" STRING="「なかなかいいアイディアじゃないか」つやつやと光る壁を見まわしながら言う。「だけど、ひ" />


JSONもXMLも「表示行」のX座標Y座標が入っているし、XMLの方には「TEXTBLOCK」というテキストの塊ごとに、そのエリアのサイズについての情報がある。

→ 最初のスクリーショットの赤囲み部分。

<SHAPE>
  <POLYGON POINTS="6500,551,6500,5820,7038,5820,7038,551" />
</SHAPE>

エリア四隅「左上,左下、右下、右上」のXY座標


このX座標(タテ書きの場合)の間隔を見て「空行」を判断するしかない、ここが広ければ空行。

基本、見開き単位の一段組とすると、ひとつのXMLデータには2つのTEXTBLOCK。


TEXTBLOCKの数が2つ以上あったら、タイトルや空行が入ったページ、ということでwarningを出して注意喚起。元の画像やPDFを目視確認して手作業で空行を入れる。


以上で、コマンドライン一発で完成とはいかないけど、ある程度流れ作業にすることができた。

この手順で、電子書籍化したのが先日のエントリ。

『去りにし日々、今ひとたびの幻』の表紙絵

https://t2aki.doncha.net/?id=3078

image


もう少し納得いくものになったらホームページの方にコードを掲載しておこう。


それよりなにより、こんなのをSNSに投稿したら多くのリアクションいただく今のご時世。

次々と公共の資源を潰していってる政府だし、国立国会図書館といえど安心してられない、かも。
新自由主義?ネオリベだっけ?とかでいつ有料になるかわからないし、なんならKPIがどーたらいいだして閉鎖されたらかなわない。
今のうちに所蔵・公開してくれてる本をPDFでダウンロードだけしておこうと思う。


国立国会図書館の膨大で貴重なデータをぜひ! 活用させてもらいましょう!!

<<2026/4>>
   1234
567891011
12131415161718
19202122232425
2627282930

【最近の10件】

日常読書映画アニメゲーム健康料理グルメカメラ写真ネタ仕事パソコンインターネットperlEPUB3電子書籍ActivityPub還暦生活
検索: