要約 紙の端を利用して自炊画像が何度傾いてるか検知できたというお話。 緑色の線が紙の端として検知した直線です。この直線の傾きが画像の傾きそのものです。 最下部にソース(Java)を掲載しています。 【追記】 この記事の手法で検知できるのはスキャン時の「紙の傾き」です。「印刷の傾き」は検知できません。 印刷の傾きを検出するにはもう少し高度な画像処理手法(特徴抽出とか)が必要になると思います。 背景 最近、自炊(本のほう)をはじめました。が、どうも傾きが気になることがあります。スキャナの本体、もしくは読み取りソフトに傾き補正機能がついているのですが、精度がいまいちな気がします。そこで、自分で傾き検知用のプログラムを書いてみたのでメモします。 手順 (1)紙の端を走査 (2)最小二乗法で直線近似 (3)誤差の集計 (4)誤差平均が許容範囲内なら(7)へ (5)誤差の大きい点を除去 (6)(2)に