2011-01-01から1ヶ月間の記事一覧

シンプレックス・タブロー

シンプレックス・タブローで線形計画を解くコードです。 自分の理解のため作りました。見れ分かると思いますが、適当です。 制約条件を 教科書に載っているような3×3程度の問題ならこのコードで解けますが、 大規模(10000列とか)になると掃き出してい…

組み合わせの列挙

nCrを列挙するコードです。こちらのサイトを参考にしました。 http://park7.wakwak.com/~efc21/cgi-bin/exqalounge.cgi?print+201004/10040015.txt 再帰でこんなにシンプルに書けるとは驚きです。 こういうアルゴリズムを考えつく人は本当にすごいと思います…

一枚超解像度

学習タイプの超解像処理のテスト。 基本的にテクスチャ合成とほとんど同じ処理が使いまわしできるので 3時間ほどでできました。入力画像の各画素のパッチに対して、学習画像とのパッチを比較して 誤差が最小となるパッチの高周波成分を足すだけです。 近似…

NMRFテクスチャ合成

入力 ↓ ↓ 合成結果。WL法作りました。ランダム初期化、多重解像度。 絶対誤差が小さなパッチ(9x9)を張り付けているだけだけど、結構自然に見えます。参考: http://research.microsoft.com/en-us/projects/texturesynthesiseg09star/

おまけ

3x3行列の逆行列を計算するルーチンです。意外と使えます。 // 逆行列の公式による3x3の逆行列計算 // A:入力行列, B:出力行列, 戻り値=0:逆行列なし、=1:あり int mat_inv_3x3(double *A, double *B) { double detA; // サラスの公式による行列式の計算 …

結果

入力画像と入力ラベル(手書き) 変換結果(左から第1成分、第2成分、第3成分、RGBに割り当てた結果) 通常のグレースケール変換(RGBの平均)通常のグレースケール変換に比べて変換結果(第1成分)のほうが はっきりと色が分かれているのが分かる…

判別分析法による色変換(教師あり線形変換)

与えたラベル間の色の分布間の分離度が最大になるような座標軸を 求める方法です。教師ありの線形変換です(PCAは教師なし変換になる) 一般化固有値問題を解くことで変換行列が得られます。 (Sb:クラス間分散行列、Sw:クラス内分散行列)