印刷した紙に書き込み、それをスキャンすると、傾き等の歪みが発生する。この傾き等を補正するのを自動化したい。 今回は、そのために傾き補正用のマーカーを紙の四隅に事前に印刷しておき、スキャン画像に含まれるマーカーを元に傾き補正を行う。 次のような手順による。 与えられた画像内でマーカーを検出する マーカーの重心の座標を調べる 4点の座標と印刷位置から射影変換の変換行列を求め、変換する プログラムは Python 3.5 から OpenCV 3.1.0 を利用した。コードは最後に。 0. 準備 マーカの用意と紙への印刷 マーカ 今回は図の様な同心円状のマーカを利用することにした。これは回転によっても形が変わらず、回転に弱い様なパターンマッチアルゴリズムを用いても上手く検出されるようにとの意図である。マーカは上図右の様に縞の幅が全て同じになるようにした。 マーカの印刷 次の図の様な寸法でA4用紙の