分割アフィンワーピング

独り言。

作文用紙とかエクセルとか公衆便所とか・・・

世界の仕切りは□□□なわけです。

私たちはそれが当然だと思い込まされて生きています。

さて、私は地図上の任意の点から、

少々歪んでもいいから□の格子ネットワークを作りたいと思っていたわけです。

それを別の平面へ射影変換をしたいな、と。

射影変換も□が前提となっていて、計算するには□の頂点がいるわけです。

でも□の格子ネットのつくりかたわかんねー。

とりあえずドロネー三角形網をまずつくって、

それから△同士を貼り合わせて△▽→□を作ろうと思っていたわけです。

・・・バカでした。

実はドロネー三角形による格子網ならそのままアフィン変換でOKなのです。

分割アフィンワーピングっていうらしい。

GISの幾何補正も三角形ばかりなのも、こういうことなのか。。。

そのことを、数式でなくパワポの三角形をいじくって納得してる私w

懺・ならねこ計画。

とりあえず、言語はもうJavaScripだけでいいような気がしてきた。それどころか、もうJavaScript以外はこれの方言でしかないのだ(と自分に言い聞かせる)。フロントエンドのなんちゃってWebデザイナーの言語(笑)・・・なーんて言ってるそこのおじーちゃん、時代は変わりますがな。

ところでいま、私のとあるアイデアを実現するために必要なアルゴリズムとして、ドロネー図と射影変換がいる(っぽい)。

ドロネー図の三角形分割に関してはココのブログが分かりやすかった。もう更新が止まっているけれど、仕事が忙しいのかなあ。良記事が多いブログだけに若手プログラマー管理人の近況が気になる。

射影変換に関してはココの連載で多角的な解説がなされている。でも、そもそも射影変換の行列処理は直感的ではないね。OpenCVの関数で一発で出るようなものをクドく説明する必要もないんだろうか。

しかーしっ、JavaScriptはOpenCVが使えないわけで、うわあああ、これ、ゼロからくまなあかんのかあああ!と思うも、ちょっとググるとそうでないことが分かる。

ドロネー図作成に関してはD3.jsがある。グーグルマップとの相性もよさげだ。D3.jsは二年前にちょっと使ってたなあ。

射影変換に関してはこんなライブラリがある。射影変換は英語で”projective transform”だけど、”homography”とか”perspective transform”も同じ意味で使われるので、目的の情報を探すには、これらのキーワードも用いて検索をかけないといけない。

ところで”perspective transform”の日本語訳は「透視変換」らしいけれど、なんかしっくりこない。単純に「視点変換」でいいでしょ。プロジェクターの台形補正も、レンズからの「視点」を真正面からの投影のように「変換」する機能なわけだし。。。

 

俗・ならねこ計画。

最近、またJavaScriptに戻って、ちょっと粋なこと、考えています。

地図をタダで直接制御できる言語は最強だと思うね。

letで変数スコープもまともになったし、もうコレしかないでしょ。

そこで問題。

ランダムに打った点群から四角形を形成するにはどーしたらいいんだろう??

ドロネー図のようにまず三角形をつくって、そのあと合わせる?

うーん、難しく考えすぎ??

個人的なメモでした。

 

第三次ならねこ計画。

ちょっと良いアイデアをひらめいた。

ってゆーか、去年のアイデアだけど、それを思い出した。

ユニークな発想で、

シンプルなプログラミングで実現できて、

そこそこ実用性と遊び心がある、

そんなアイデア。

パクられたらイヤなのでまだまだ非公開です。

ということで線形代数の本を読み直している今日この頃w

これがすごくいいね。行列の定義だけでなく、

ちゃんと「行列の行間」を解説してくれてる。

ネクスト・ユーチューバーは絵本作家だと思う。

日曜日の奈良公園で、親のスマホを食い入いるようにみつめるチビっ子を横目に、そう思った。そのとき、子供にどの動画を見せるのかは親の価値観が反映される。おそらく選ばれるコンテンツは、過激な内容のものよりも絵本のようなやさしくて温かみのある動画だと思う。

今回は、とりあえずタイトルだけそういう雰囲気をだしてみた。