0

OpenCL の read_imagef によって返される値は 0 から 1 の範囲ですが、ピクセル強度の範囲は 0 から 255 です...強度値のみに基づいてイメージ セグメンテーションを行うために、強度値をさらに処理したい (実行される操作は、2 つの強度値の差を見つける、並べ替え、最小値の検出、シャッフルなどのようなものです)。これらの値を 0 から 255 の範囲の整数形式で取得する方法 (便宜上)...? すべての値に 255 を掛けることはできますか、それとも他に何かする必要がありますか?

4

1 に答える 1

2

read_imagefはfloat4を返し、チャネル データ型 UNORM_INT8、UNORM_INT16、SNORM_INT8、SNORM_INT16、HALF_FLOAT、および FLOAT で作成されたイメージに使用できます。変換規則はOpenCL 仕様の一部であり、セクション 8.3.1 に記載されています。

あなたの質問に答えるには、はい、画像データ型が UNORM_INT8 の場合、単純に 255 を掛けることができます。

一般に、GPU は UNSIGNED_INT8 イメージよりも UNORM_INT8 の方が高速です。

于 2013-03-27T15:50:15.163 に答える