32
OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ作成の試み 2019年9月8日 Code4Lib JAPANカンファレンス 2019 株式会社ブレインテック 南雲知也

OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OpenBookCameraを用いた

書影およびOCRデータによる

図書館蔵書の大量一括遡及

データ作成の試み2019年9月8日

Code4Lib JAPANカンファレンス 2019

株式会社ブレインテック

南雲知也

Page 2: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

自己紹介• 株式会社ブレインテック 2006年入社

• 図書館システム「情報館」のサポート担当

2

Page 3: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

背景

専門図書館

BICライブラリのお悩み

書庫に寄贈された未整理の資料が大量に眠っている。

活用できるようにOPACに公開したい。でも人手も予算も全然ない。

3

Page 4: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

概要

【目的】

書庫に眠っている灰色文献などの資料のデータを手早く作成したい。

【手法】

資料の表紙画像を撮影し、その書影を元に機械的に書誌データを作成する。

4

Page 5: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

作業の流れ

1. バーコード貼付(ID付与)

2. OpenBookCameraによる撮影

3. 表紙画像のトリミング

4. OCR処理

5. データの解析と加工

5

Page 6: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

1. バーコード貼付(ID付与)

✓ 表紙の識別のため、バーコードの貼付位置を統一

6

Page 7: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

2. OpenBookCameraによる撮影

•OpenBookCameraの特徴

✓表、裏、背表紙3面同時撮影

✓バーコードの読み取り

7

Page 8: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

撮影結果

表紙裏表紙背表紙(3パターン)バーコード撮影情報

8

Page 9: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

背景が映り込む

9

Page 10: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

3. 表紙画像のトリミング

10

Page 11: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

トリミングの手法

•Adobe Photoshopを使用した被写体

選択機能によるトリミング

•OpenCVを使用したエッジ検出機能に

よるトリミング

11

Page 12: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

Adobe Photoshopを使用した被写体選択機能によるトリミング

・ノイズを背景色で

塗りつぶし

・自動処理機能でバッチ処理

成功率 94.5%

12

Page 13: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

失敗例

13

Page 14: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OpenCVを使用したエッジ検出機能

によるトリミング

•ノイズの除去

•メディアンフィルタによる平滑化

成功率 97.0%

14

Page 15: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

トリミングの失敗例

15

Page 16: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

4. OCR処理OCR処理

16

Page 17: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

Cloud Vision API

https://cloud.google.com/vision/?hl=ja

Googleの提供する画像分析

サービス

•プログラミングとの相性が良

く、自動化処理に向いている

•言語の種類も自動判別で幅広

くサポート

•段落や単語の位置情報を識別

• $1.50/1000枚 (5,000,000 枚/

月まで)17

Page 18: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OCR処理のモードの比較

•TEXT_DETECTION

画像内のテキストに対して光学式文字認識(OCR)を

実行します。

•DOCUMENT_TEXT_DETECTION

ドキュメントなどの高密度テキスト画像に対して OCR

を実行します。

18

Page 19: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OCR処理のモードの比較

•TEXT_DETECTION克都大阪兵 書誌研究懇話会編 [付〕地方史主要文献一覧| 全国図書館案内 【や 改訂 新版 三一書房

•DOCUMENT_TEXT_DETECTION經中山區张 長野草靜 愛知三重滋賀京都大阪兵庫奈良和歌島取島根岡山広島 山口徳島原愛媛高知福岡質長時匪本大分時價 撤期全国区書館案内書誌研究懇話会編 付」地方史主要文献一覽

19

Page 20: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OCRの評価

東京大学社会科学研究所 編

戦後改革

3政治過程

東京大学出版会

人手で作成 OCR結果

※一致ブロック数3 / 正解ブロック数 4 75%20

Page 21: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

TEXT_DETECTION

・表示に文字のない資料は対象外

・半角・全角スペースや記号の取り除いた· ・ • []「」[] etc

・所蔵情報は対象外請求記号、受入番号、所蔵印

・ブロックの順序は考慮しない

232

73

352

463 461

282

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

件数

一致率

ブロック単位の一致率 53.0%一致ブロック数4,397/正解ブロック数 8,287対象資料1863冊

21

Page 22: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

DOCUMENT_TEXT_DETECTIONブロック単位の一致率 57.4%一致ブロック数4,397/正解ブロック数 8,287対象資料1863冊

232

73

352

463 461

282

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

件数

一致率

・表示に文字のない資料は対象外

・半角・全角スペースや記号の取り除いた· ・ • []「」[] etc

・所蔵情報は対象外請求記号、受入番号、所蔵印

・ブロックの順序は考慮しない

22

Page 23: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

OCR処理前の画像の加工

トリミンググレースケール 文字方向に回転

元画像

23

Page 24: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

画像加工後のOCR結果例

元画像 克都大阪兵 書誌研究懇話会編 [付〕地方史主要文献一

覧| 全国図書館案内 【や 改訂 新版 三一書房

グレースケール KIKRSly |書誌研究懇話会編 〔付〕地方史主要文献一

覧一 全国図書館案内や 改訂 新版 三一書房

文字方向に回転 新改 三一書房 画及え逊大阪央 書誌研究懇話会編

[〔付〕地方史主要文献一覧一 設町全国図書館案内

【下1

トリミング 国翠算动淤大阪央周 R KEK 書誌研究懇話会編|

(付〕地方史主要文献一覧一 全国図書館案内一 新版

三一書房24

Page 25: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

TEXT_DETECTION

232

73

352

463 461

282

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

元画像 53.0%

233

76

362

478437

277

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

グレースケール 52.6%

219

81

381

435461

286

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

回転 53.1%

232

69

364

450 467

281

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

トリミング 53.3%

25

Page 26: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

DOCUMENT_TEXT_DETECTION

278

69

319294

481422

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

元画像 57.4%

284

77

310280

473439

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

グレースケール 57.6%

255

71

316 294

499

428

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

回転 58.4%

272

71

313 290

478439

0

100

200

300

400

500

600

0% 20% 40% 60% 80% 100%

トリミング 57.9%

26

Page 27: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

5. データの解析と加工

27

Page 28: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

標題など書誌事項の推定

• 標題

検出座標を元に文字サイズを計算し、表紙の文字列で最大のものを標題と推定

表紙に情報が無い場合は、背表紙の情報を標題と推定

• 年代等

「明治」「大正」「昭和」の文字列のあとに数字がくる場合数字の連続が4桁の

場合で、先頭が“1”か“2”の場合

• ISBN

ハイフンを除く数字が13桁、数字が10桁、数字が9桁+Xの場合、チェックデ

ジットを計算してISBNと判定できるもの

28

Page 29: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

図書館システム登録からOPAC公開へ

29

Page 30: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

まとめ

•書誌項目ごとのデータを機械的に作成するのは

難しい

•内部利用のための簡易データを短期間で

作成するのには有用そう

•非公開のままにするよりは、書影+簡易データ

だけでも公開する意味がある(図書館員さんからの声)

30

Page 31: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

これからやりたいこと

•既存の書誌データからの補完

ISBN、標題などキーに各種Marcから

画像検索をキーにWebから

•誤読のパターンを集計して、データ修正に活かしたい

戦 → 戰 産 → 產

図 → 因 、國、区

31

Page 32: OpenBookCameraを用いた 書影およびOCRデータによる 図書館蔵書の大量一括遡及 データ … · •書誌項目ごとのデータを機械的に作成するのは

参考

• 株式会社ブレインテック - お知らせ - ニュースリリース:

(株)ブレインテック、(一財)機械振興協会 BICライブラリと

Open Book Cameraを使った灰色文献の一括遡及データ入力の実証

実験を開始

https://braintech.co.jp/news/top/2018/1030-01.html

• 一般財団法人機械振興協会 BICライブラリ

http://www.jspmi.or.jp/biclibrary/

• BICライブラリ OPAC

https://bicl.opac.jp/opac/top

32