アフィン変換の真価を知ったら実はかなり強かった、という話。我々はアフィン変換の本当のすごさを知らない。 サンプル 非常に複雑な変換に見えますが、たった1回のアフィン変換でやっています。この記事の処理を組み合わせていけばこの処理が実装できます。 平面のアフィン変換とは三角形の移動(写像)を与えることで決まる変換のこと(証明は末尾参照)。 画像の回転処理にアフィン変換がよく用いられますが、アフィン変換≠回転です。アフィン変換はもっと広く処理ができますし、回転処理はその一部です。最初に回転を考えると理解しにくくなります。 OpenCVでの実装 今回は数学的にあまり突っ込まずに「PythonのOpenCVで自分で実装できればOK」レベルを目指します。OpenCVでは次のようにアフィン変換を行います。 import cv2 af = cv2.getAffineTransform(src, dest)
![完全に理解するアフィン変換 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/8aa4e3396a1b751331e8d267f6421143875b07c1/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU1JUFFJThDJUU1JTg1JUE4JUUzJTgxJUFCJUU3JTkwJTg2JUU4JUE3JUEzJUUzJTgxJTk5JUUzJTgyJThCJUUzJTgyJUEyJUUzJTgzJTk1JUUzJTgyJUEzJUUzJTgzJUIzJUU1JUE0JTg5JUU2JThGJTlCJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1lYzVlNGVkYjM4NTM2NzAzNGRhMGRiYjhmYjVkNmMxMw%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwa29zaGlhbjImdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTE0NzVlN2RlNzIyNDdlNDY0ZjFkZTRkMWJjYWVkY2E5%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D1cfaa5275cf4792fb085590756053f63)