テンセグリティ

>> demo (※要FlashPlayer10 マウス操作で回転を制御できます) 引き続きVector3D/Matrix3Dを使う練習。 今回はTensegrity – Wikipedia を作ってみます。 圧縮する力と引っ張る力がちょうど釣り合って安定した構造体を形成するそうです。 参考:テンセグリティの作り方 How to make a Tensegrity    テンセグリティ(Tensegrity) また、CiNiiでもテンセグリティに関する論文(主に日本建築学会)を何本も…

Vector3D/Matrix3Dの練習

>> demo (※要FlashPlayer10 マウス操作で回転を制御できます) ここ最近のエントリーはフーリエ変換とか小難しい内容が多かったので少し息抜き。 遅ればせながらFlashPlayer10で追加された3D関連の機能を使う練習です。 今回はVector3D/Matrix3Dクラスを使いました。 Matrix3Dクラスには平行移動/回転/拡大・縮小などの基本的な操作を行うメソッドが用意されていて、 変換行列の前掛けと後掛けでprepend~、append~に分かれています。 今回のデモ…

位相画像

引き続き、空間周波数領域での画像処理について。 前回、前々回と扱っていたスペクトル画像は周波数成分の振幅特性を表したものでした。 今回は画像の位相特性に注目し、位相画像を生成します。 (位相画像は位相限定画像とも呼ばれる) FFT演算用クラスはこれまで利用してきたものと同じものです。 (ここではスペクトル位置の並び替え部分は不要なのでその部分の処理は省略できます) ・位相画像の生成

・出力結果 スペクトルを振幅で正規化することによ…

ハイパス/ローパスフィルタ

前回の続き。 今回はフーリエ変換で得られた周波数スペクトルにハイパスフィルタ(HPF)/ローパスフィルタ(LPF)をかけます。 Flashだとサウンド関連でよく耳にするフィルタかもしれませんが、画像でも基本は同じです。 前回作ったクラスにフィルタ処理等を追加します。 ・1D/2D-FFT + HPF/LPF (追記 2008 12/19) バンドパスフィルタ(BPF)の処理を追加。 (追記 2009 2/20) 空間周波数フィルタのメソッドを少し修正。処理内容は変わってません。 [crayon-…

二次元離散フーリエ変換 – AS3.0

前回の続き。今回は画像に対するフーリエ変換です。 前回は一次元の話でしたが、画像の場合は平面なので水平/垂直方向の2つの周波数を持つことになります。 実際に画像に対して二次元フーリエ変換を行うには、  x軸方向に一次元フーリエ変換 → y軸方向に一次元フーリエ変換 という手順で処理します。 ここでは、前回作ったクラスを少し拡張します。 ・2D-FFT

入力画像を二次元フーリエ変換して振幅特性を輝度とするスペクトル画像を生成します。…

離散フーリエ変換 – AS3.0

“画像” に対する離散フーリエ変換について。 ”音” は扱わないので注意。 また、一度で書くには分量が多いので何回かに分けて書こうと思います。 ・離散フーリエ変換 (DFT) フーリエ変換についてはFlasherの間でも音関連でよく話題に出ているようなので理論的な説明は省きます。 画像の場合も音の周波数解析と基本は同じ。 ただ、音と違って画像は二次元なので空間周波数領域への変換を行うことになります。 (音の信号 x(t)は一次元、画像の信号 f(x,y) は二次元になる)…

ヒルベルトスキャン – AS3.0

Flashで画像のヒルベルトスキャン。 ヒルベルト曲線順に画素を走査します。 Hilbert Curve – Flex(AS3.0)で書いたスクリプトを画像に適用しました。 基本的にdrawPath()で線を引く代わりに、パスに沿って画像データをコピーするように変更しただけです。 ここではヒルベルトスキャンをFlashで視覚的に示します。

Flash Text Layout Framework 3

adobe.comにFlash Text Layout Frameworkチームのブログができたみたいです。 Text Layout Framework Team – Adobe Blogs リファレンスだけだと分かりづらいので、実用的なサンプルをたくさん載せていって欲しいですね。 それはそうとspecial thanksにRest Termが載ってる!びっくり。 今回はflashx.textLayout.formatsについて(Adobe Flex Gumbo Language R…