hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

近デジをトリミングしながらダウンロードする

近デジダウンロードするやつ.rbに機能追加して,トリミングできるようにした.
ImageMagickで余白を取ってから,中心で左右のページに分割する.


こうすると,

% ruby kindai.rb http://kindai.da.ndl.go.jp/info:ndljp/pid/885782/ --divide

こういう感じになる.見開きの画像は削除される.
http://gyazo.com/a88e7497b795a96cbdacdbbcde64cce7.png
簡単に使えるし,本文が削られることもないので,よいと思う.

仕組み

ImageMagickの,trimっていう機能と,cropっていう機能を使った.

% convert -trim -fuzz 25% a.jpg a.jpg

ってやると,画像の周囲の余白をなるべく取ってくれる.-fuzz 25%とかやると,ノイズに強くなるらしい.

% convert -crop 50%x100% a.jpg a.jpg

ってやると,画像が横に2分割されて,a-0.jpgとa-1.jpgができる.
左が0で右が1になるので気をつける.縦書きの本の場合は,右が0で左が1のほうがうれしいので,あとでmvとかして入れ替える必要がある.

あと,余白を取ってから横に2分割したいときは

% convert -trim -fuzz 25% -crop 50%x100% a.jpg a.jpg

ではだめで,これではうまくいかない.trimされた小さい画像に対して,もとの画像のサイズの50%でcropされて,ずれてしまう.

% convert -trim -fuzz 25% a.jpg a.jpg
% convert -crop 50%x100% a.jpg a.jpg

として,2回に分けてやる必要がある.1回でやる方法知ってるひとがいたら教えてください.

GitHubに置いてある.
hitode909/kindairb · GitHub