テクスチャ合成プログラム
ソース&実行ファイル一式:texsynthe_WL.zip
(255KB)
|
|
|
|
(a)入力 |
(b)出力(レベル3) |
(c)出力(レベル2) |
(d)出力(レベル1) |
|
|
|
|
(a)入力 |
(b)出力(レベル3) |
(c)出力(レベル2) |
(d)出力(レベル1) |
【内容】
WL法[1]と同じような方法でテクスチャ画像を合成するプログラムです。
相違点は、WL法では近傍探索にベクトル量子化を用いていますが、本プログラムでは近似近傍探索(ANN)を
用いています。ANNは[2]のライブラリをそのまま用いています。
[1]Li-Yi Wei and Marc Levoy,
"Fast Texture Synthesis using Tree-structured Vector Quantization",
In Proceedings of SIGGRAPH 2000.
http://graphics.stanford.edu/projects/texture/
[2]ANNライブラリ,
http://www.cs.umd.edu/~mount/ANN/
【ファイル】
srcにソースプログラムとANNライブラリ[2]が入っています。
VC++2010とgccでコンパイルできることを確認しています。
コンパイルの際は、VC++ではANN.libを、gccではlibANN.aをリンクしてください。
【使い方】
>texturesynthe.exe [入力画像ファイル] [出力ファイル名] [出力画像サイズ]
[解像レベル] [近傍サイズ....]
で実行できます。
近傍サイズは解像レベルがLだとすると、L*L個指定する必要があります。
例えば、L=3の場合は 2 1 1 0 2 1 0 0 2 を指定します。
これの意味は以下です。
2 1 1 // レベル1(原サイズ)での近傍サイズ
0 2 1 // レベル2での近傍サイズ
0 0 2 // レベル3での近傍サイズ
近傍サイズが大きいほど学習画像に似た結果が得られますが、計算時間が多くなります。
また、近傍サイズが大きいと学習サンプル数が少なくなるので、うまくいかなくなる場合もあります。
【その他】
このプログラムの著作権は上瀧にあります。
プログラムは自由に改変して使って貰ってかまいませんが、自己責任でお使い下さい。
なお、ANNライブラリはGNU LESSER
GENERAL PUBLIC LICENSEとのことです。
2012/02/29