テクスチャ合成プログラム

 

ソース&実行ファイル一式: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++2010gccでコンパイルできることを確認しています。

コンパイルの際は、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