本をカメラで電子化 2

昨日の本をカメラで電子化の続き。

たくさんのJPEGファイルを結合して一つのPDFにしたい。ImageMagickconvert *.jpg hoge.pdf とすればいいと思ったが,何百枚のJPEGをメモリに読み込んだのか,他の作業ができないほど遅くなり,いくら待っても終わらないので,中断した。

次に jpeg2pdf というRubyのプログラムを試した。開発サイトは消失していたが,キャッシュに残っていたものをいただいてきてインストール。これならほぼ一瞬で数百枚のJPEGをマージしたPDFができる。やってみたが,元のJPEGファイルがやや暗かったので,ImageMagickのconvertも併用して,次のようなことをした。

mkdir hoge
for x in *.jpg; do convert $x -normalize hoge/$x; done
jpeg2pdf hoge hoge.pdf

これで約200MバイトのPDFが完成。

ただ,ScanSnapで作るPDFより読みにくい。2値画像(PNGかGIFかJBIGか…)に直してPDFにマージできたらいいのだが。そういう話は以前も書いた。Snapter(Windows専用,$49),scanR(Web),Qipit(Web)のようなソフトやサービスがあるようだ。MacかLinuxで使えるオープンソースのものがあればいいのだが。

カメラをマウントする方法も改良を要する。例えばこんな方法とか。

[2010-04-04追記] ハードウェアについては,コメントで教えていただいた マインドストームNXTで作る自動ページめくりブックスキャナ はすばらしい。ほかには corrugate iPhone document scanner - free template! というのも見つけた。

ソフトウェアについては,Javaで書かれていてMacでも使える Cam to Scan というシェアウェアを見つけて試してみたが,あまりしっくり来ない。やはり本命は Snapter かというわけで渋々Windowsを立ち上げて試してみたが,使い方が悪いのか,グニャグニャになってしまう。

やっぱりオープンソースでないと不具合があっても中を見て調整することもできない。というわけで Scanning and Photocopying Documents With a Digital Camera のシェルスクリプトを参考にして,次回は自前で工夫してみよう。

これを卒業研究にしてくれる学生いませんか?

[2010-04-04追記2] 上の convert の使い方を少し手直しして for x in *.jpg; do convert -colorspace gray -quality 40 $x -normalize -level 40,60% hoge/$x; done のようにすると格段と見やすくなった。数値は適宜調整する。

[2010-04-04追記3] HoverCamという製品を見つけた。これを買えば解決なのか。日本ではまだ売っていないようだ。

[2010-05-14追記] Willard Cope BrintonのGraphic Methodsというすばらしい本をスキャンしたものがArchive.orgにある(使用カメラはCanon 5D)。同じ本の一部をコンデジFinePix F100fdで見開きごとに撮影したものがFlickrにある。比較するとおもしろい。

[2010-12-11追記] SourceForgeに jpeg2pdf というプロジェクトができていた。これはWindows用コマンドラインツールのようだ。

[2012-08-03追記] SourceForgeの jpeg2pdf を久々に見に行ったら,gccで簡単にコンパイルできるようになっていた。使ってみたらたいへん高速軽快。

[2013-03-19追記] @tay07212さんがいろいろ参考になることをつぶやいておられる。ImageMagickのconvertにlocal adaptive thresholdのオプション -lat があった。各種2値化の比較Image Threshold Research and Testingも参考になる。

[2013-06-14追記] ScanSnap SV600 の登場で非破壊電子化はトリビアルになった。

Docuworks

を使うのはどうでしょうか?

Re: Docuworks

ありがとうございます。名前しか知りませんでした。
でもWindowsオンリーという時点で候補から外れそうです。

LEGOでブックスキャラにチャレンジされている方がいますよ

いきなりURLを張るのもspamぽくて恐縮なのですが、「やねうらお」さんという方がLEGOでブックスキャナにチャレンジされていた時期があります。

ttp://d.hatena.ne.jp/yaneurao/searchdiary?word=%a5%de%a5%a4%a5%f3%a5%c9%a5%b9%a5%c8%a1%bc%a5%e0NXT%a4%c7%ba%ee%a4%eb%bc%ab%c6%b0%a5%da%a1%bc%a5%b8%a4%e1%a4%af%a4%ea%a5%d6%a5%c3%a5%af%a5%b9%a5%ad%a5%e3%a5%ca

先生の研究も楽しみにしています!

Re: LEGOでブックスキャラにチャレンジされている方がいますよ

ありがとうございます。存じませんでした。これはおもしろいですね!

裁断機で裁断して取り込むみたいな方法もあるようです。 それ

裁断機で裁断して取り込むみたいな方法もあるようです。
それらしいキーワードでGoogleで検索すると出てきました。

http://d.hatena.ne.jp/yaneurao/20091001

Re: 裁断機で…

はい,それならScanSnapで簡単にできます(研究室にも自宅にもScanSnapを買い,隣の事務室にも買ってもらったほど愛用しています)。

今回は非破壊的に取り込む必要があったので苦労しました。

Book Flipping Scanning

YouTube - Book Flipping Scanning

http://www.youtube.com/watch?v=tCOXC5PTJj8

東大が開発した世界最速ブックスキャナは性能がいいらしいです。

Re: Book Flipping Scanning

Slashdotかどこかで話題になっていたものですね。
これはほんとにすごいです。

JPEG? と二値化

JPEG は、圧縮アルゴリズムの性質として高周波数成分(つまり、線やエッジ)の近くにサイドローブが現れてしまうので、写真画像には適していても、文字やグラフを主とする書類や書物のスキャンには適していないと思っていました。
 さらに、一般に、スキャンしたグラフや文字が、グレイスケールでアンチエイリアスで見かけ上きれいな画像になっているものを、きれいに二値化する手順を知りたいとずっと思っていました。
 2010-04-04 追記のconvert コマンドのパラメーターがその秘訣でしょうか。

Re: JPEG? と二値化

実はこれはコントラストの大きい(見かけ上2値にかなり近い)グレースケールJPEGにしているだけで,本物の2値にはなっていません。
うまく本物の2値にして束ねてPDFにできるようなコマンドラインツールがあればいいのですが。自分で作ればいいのかな。時間がなくて取り組んでいません。どなたか同じことをどこかでやっておられると思うので,ご存じでしたらお教えください>皆様。

Simply Scan 7/23 発売

http://www.novac.co.jp/products/hardware/nv-capture/nv-ps200u/index.html
Simply Scan 7/23 発売だそうです。
これも使えそう?
ボーナス出たから買おうかと思います。

Re: Simply Scan 7/23 発売

こちらにつなげるべきでしたね。 本をカメラで電子化のほうに補記してしまいました。 JPEG出力なので普通のカメラに近く,しかもMac対応とは書かれていないので,ちょっと様子見です。

Simply Scan A3

Simply Scan A3 という上位機種が出るようです。2メガピクセルのカメラが5メガピクセルになりました。買う気はありませんが。

ImageMagick/convert -lat

つぶやきを拾っていただいてありがとうございます。
Gimpにもlocal adaptive threshold(局所適応二値化と訳せば良いのでしょうか)Plug-inがあるといいのですが。

Re: ImageMagick/convert -lat

このブログ,大量にスパムが来る(特に英語だけの件名はほぼすべてスパム)ので,うっかり見落としていました。すみません。
文字だけならlocal adaptive thresholdでいいと思うのですが,絵が入るとグレイスケールのまま文字の部分が読みやすいようにトーンカーブを調整してくれればありがたいところです。

コメントの表示オプション

お好みの表示方法を選択し、「設定の保存」をクリックすると、表示方法を変更することができます。