2

webglで集中的な計算を実行することに興味があるので、GPUで実行します。

ただし、ほとんどのドキュメントでは、グラフィックのレンダリング方法について説明しています。

私は非常に単純なタスクを実行しています。特定の画像について、それをグレースケールに変換し、極大値(隣接するピクセルよりも明るいピクセル)の座標を見つけます。

webglシェーダーで「ループ」を実行したいのですが、ローカル最大ピクセルの(x、y)をjavascriptの世界に出力します。それは実行可能ですか?ピクセルを並列処理することでパフォーマンスが向上するように、それを行うための最良の方法は何ですか?

4

1 に答える 1

3

テクスチャ (画像) からピクセルをいくつかの正方形 (テクスチャ サンプルの最大量によって制限される 4x4 または 16x16 解像度など) でサンプリングし、最大値をフラグメント カラー + 最大ピクセル テクスチャ座標 (必要な場合) として出力するシェーダーを使用してフルスクリーン クワッドをレンダリングできます。 )より低い解像度のテクスチャに。したがって、画像が縮小されます。これを繰り返して、グローバルな最大値を達成できます。

これを読んでください http://www.lcg.ufrj.br/Cursos/GPUProg/GPGPU_Reductions

于 2012-11-21T19:12:20.950 に答える