WebGLを使った2次元FFTを行なうWEBアプリです. 画像を読み込んで「FFT」ボタンを押すと,FFTパターンが表示されます. FFTパターンは,中心付近に原点が来るようにしてあります. 画像はサーバーにはアップロードされず,FFTはWebAssemblyを用いてクライアント側で行なわれます. すなわち,このサイトが読み込まれたあとは,オフラインでも動作します. データ点数はx方向,y方向ともに2の整数乗となるようにゼロ埋めされます. また,カラー画像はFFT計算時にはグレースケールに変換されます. 画像サイズが大きすぎると,GPU側で計算に必要なメモリが足りなくなり,実行できません. そのような場合は画像幅の入力欄で画像幅を調整してください. 画像幅の欄が,空欄の場合はオリジナルのサイズとなります. 表示サイズが大きすぎる場合は,表示スケールの入力欄で調整してください. また,明るさの値を変更すると,表示されている画像の明るさを変更できます.
2次元FFT画像中でドラッグまたはタッチ操作するとフィルタリングする範囲を選択できます. 二本指でタッチ操作すると,選択が無効化できます. 「対称」にチェックをいれると,対称の位置もフィルタリング対象になります. また,「反転」にチェックをいれると,選択範囲外をフィルタリングできます. 範囲およびフィルターの種類を選択したのち,「フィルタリング」ボタンを押すと,選択領域以外がカットされます. このFFTパターンに対して,追加でフィルタリングすることもできます. フィルタリングが終わったあと,最後に「逆FFT」ボタンを押すと, フィルタリングされた画像が表示されます. 「逆FFT」ボタンの前に「画像表示」ボタンを押すと,元の入力画像に戻ります.
フィルタリング画像が表示されている状態で「入力データに設定」ボタンを押すと,このデータを次の入力データに設定できます. フィルタリング結果を確認しながら,さらにフィルタリングを行なう際に有効です. また,ファイル名を入力して「保存」ボタンを押せば,表示されている画像を保存できます.