Volume Bin SOPは、指定されたボリュームを走査して、そのボクセル値からヒストグラムを構築します。
このノードには、ボクセル値によってボクセルを破棄したり、追加で Stencil ボリュームを使ってボクセルをフィルタリングするといった、ボクセルのサブセットのみを考慮するためのオプションが用意されています。
Stencil ボリュームを指定した場合、そのステンシル値が0.5
未満のすべてのボクセルが破棄されます。
Volume Bin SOPによって生成されてエクスポートしたヒストグラムジオメトリには、以下のDetailアトリビュートも含まれます。
-
histogram_range
: ヒストグラムで表現されている値の範囲。Note
この範囲を利用することで、内部バケット境界を決めることができます。 ただし、 Keep All を有効にした場合、最初のヒストグラムバケットには、その範囲の最小値を下回るすべての値が含まれます。 同様に、最後のヒストグラムバケットには、その範囲の最大値を上回るすべての値が含まれます。
-
scanned_voxels
: 走査されたボクセルの総数。Note
Stencil ボリュームを指定した場合、この総数には、そのステンシル値によってスキップされたボクセルの数は含まれません。
-
skipped_above
: ボクセル値がヒストグラムの最大値を上回ったことが原因でそのヒストグラムに含まれなかったボクセル数。 -
skipped_below
: ボクセル値がヒストグラムの最小値を下回ったことが原因でそのヒストグラムに含まれなかったボクセル数。Note
Keep All を有効にした場合、ヒストグラムの範囲外にあるボクセル値のボクセルは破棄されません。 そのため、 Keep All が有効な場合は、
skipped_above
とskipped_below
は常にゼロになります。 -
skipped_by_value
: ボクセル値が Ignore Value と同じであったことが原因でそのヒストグラムに含まれなかったボクセル数。 -
value_range
: Volume 内の走査された値の範囲。Note
このアトリビュートは、 Value Range が From Values に設定されている場合にのみ生成されます。
-
voxels_represented
: 最終ヒストグラムで表現されているボクセル数。Note
走査されたボクセルは、何かしらの条件によって、表現されたりスキップされます。 そのため、
voxels_represented
、skipped_above
、skipped_below
、skipped_by_value
の合計は、scanned_voxels
と同じになります。
Note
現在のところ、このノードは、標準のHoudiniボリュームでのみ動作します。 VDBでは動作しません。
パラメータ ¶
Volume
この名前の入力ボリュームに対してヒストグラムが構築されます。
Stencil
Stencilボリュームの名前。
ステンシル値が0.5
以上の Volume のボクセルのみがヒストグラムに含まれます。
Ignore Value
有効にすると、 Ignore Value と同じ値の Volume のボクセルがヒストグラムで考慮されません。
Note
skipped_by_value
Detailアトリビュートには、 Ignore Value が原因でスキップされたボクセル数が格納されます。
Buckets
生成されるヒストグラム内のバケット数を制御します。
Value Range
ヒストグラムの範囲を選択するための方法。 From Values は、 Volume 値の最小値と最大値から自動的に範囲を設定します。 Specified に設定すると、 Range パラメータの値で、ヒストグラムの範囲を制御します。
Range
Value Range を Specified に設定した時のヒストグラムの範囲。
Keep All
このパラメータを有効にすると、( Ignore Value によってスキップされていない)走査されたすべてのボクセルがヒストグラムで考慮されます。 Keep All を無効にすると、指定した相対範囲外の値のボクセルがスキップされます。
Keep in Relative Range
ヒストグラムで表現される値の範囲を制御します。 このサブ範囲は、( Value Range で選択された)メイン範囲の相対範囲です。
これを説明するために、 Value Range が From Values に設定されていて、 Volume には1
以上から5
以下の値が含まれていると仮定しましょう。
すると、この場合の本来のヒストグラムの範囲は1-5
です。
Keep All を無効にし、この Keep in Relative Range パラメータに[0.1, 0.8]
を設定すると、1 + (5 - 1) * 0.1 = 1.4
未満の値と1 + (5 - 1) * 0.8 = 4.2
より大きい値がすべて無視されます。
もう1つ例を挙げると、 Value Range が Specified に設定されていて、 Range が[2, 4]
だと仮定しましょう。
Keep All を有効にすると、2
未満の値のすべてのボクセルは、ヒストグラムの最初のバケットに寄与します。
しかし、 Keep All を無効にし、この Keep in Relative Range パラメータに[0, 1]
を設定すると、その2
未満の値のすべてのボクセルは単に破棄されます。
Note
表現されたすべての値は、指定した相対範囲内に収まります。 そのため、ヒストグラムもその表現された値のみが範囲となるように更新されます。
Note
skipped_above
とskipped_below
のDetailアトリビュートには、ボクセル値が指定した相対範囲外にあったことが原因でスキップされたボクセル数が格納されます。