Aggressive Style 5

Aggressive Style 5

昨今はコミケ関係を中心に書いています。同人やニコニコ動画方面で活躍される方の相互リンクをお待ちしています。

ピクセルを曲線で近似してみる




上の図のようなピクセルの集合(上図の)を一つの近似曲線としてあらわす方法を考えている。現状では上図のようなピクセルの曲がり角の点を(x_n,y_n)としたとき、(n+1)個の曲がり角。つまり点(x_0,y_0),...(x_n,y_n)を下の式に代入し、連立方程式を立てる。

 f(x)=\sum_{k=0}^{n} a_kx^k=a_0+a_1x+...+a_nx^n

実際に代入すると下のようになる。




ここから係数a_0,a_1,...,a_nを求める方法を考える。当然これを行列の知識を使って解く訳だ。しかしプログラムに起こす上で代入する点の個数を自由に変えられるようにしたいので、クラーメルの公式やx_nの一般解にたよることはできない。そこでガウスジョルダン法という方法が一番有力らしく、この方法を使っていきたい。

話変わってなんのためにこんな話をしているかって?人間の顔の輪郭の曲線を数式で近似することで、輪郭抽出できないかを検討しているというわけ。PCでいうならトレースを自動で行う。つまりIllustratorのライブトレースのような機能を自作しているともいいかえることができる。