class XRSemanticsSubsystem
(Niantic.Lightship.AR.XRSubsystems.XRSemanticsSubsystem)
概要
セマンティックセグメンテーション機能と対話するためのインターフェースを定義します。
class XRSemanticsSubsystem:SubsystemWithProvider< XRSemanticsSubsystem, XRSemanticsSubsystemDescriptor, XRSemanticsSubsystem.Provider > {
public:
class Provider;
// プロパティ
uint TargetFrameRate;
uint?LatestFrameId;
bool IsMetadataAvailable;
// methods
XRSemanticsSubsystem();
bool TryGetSemanticChannel(
string channelName,
out XRTextureDescriptor semanticsChannelDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams?cameraParams = null
);
bool TryAcquireSemanticChannelCpuImage(
string channelName,
out XRCpuImage cpuImage,
out Matrix4x4 samplerMatrix,
XRCameraParams?cameraParams = null
);
bool TryGetPackedSemanticChannels(
out XRTextureDescriptor packedSemanticsDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams?cameraParams = null
);
bool TryAcquirePackedSemanticChannelsCpuImage(
out XRCpuImage cpuImage,
out Matrix4x4 samplerMatrix,
XRCameraParams?cameraParams = null
);
bool TryGetChannelNames(out IReadOnlyList<string> names);
bool TrySetChannelConfidenceThresholds(Dictionary<string, float> channelConfidenceThresholds);
bool TryResetChannelConfidenceThresholds();
static bool Register(XRSemanticsSubsystemCinfo semanticsSubsystemCinfo);
};
詳細資料
セマンティック・セグメンテーション機能と対話するためのインターフェースを定義します。
プロパティ
TargetFrameRate
uint TargetFrameRate
セマンティック・セグメンテーション推論を実行するプラットフォームのターゲットフレームレートを指定します。
目標フレームレート。
Parameters:
System.NotSupportedException
- スローされたフレームレート設定はサポートされていません。
LatestFrameId
uint? LatestFrameId
最新のセマンティックセグメンテーション予測のフレーム id を返します。
フレームid。
Parameters:
System.NotSupportedException
- フレーム ID の取得がサポートされていない場合にスローされます。
IsMetadataAvailable
bool IsMetadataAvailable
現在のデバイスでメタデータがダウンロードされ、復号化されていれば真。 この値がtrueの場合のみ、セマンティック・セグメンテーションのラベル名や推論結果を取得できる。
メタデータがあれば。
Parameters:
System.NotSupportedException
- スローされたフレームレート設定はサポートされていません。
メソッド
XRSemanticsSubsystem
XRSemanticsSubsystem()
機能プロバイダを作成してサブシステムを構築する。
TryGetSemanticChannel
bool TryGetSemanticChannel(
string channelName,
out XRTextureDescriptor semanticsChannelDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)
セマンティクスチャネルのテクスチャ記述子と、テクスチャをビューポートにフィットさせるために使用される行列を取得します。
Parameters:
channelName
- 必要なセマンティクスチャネルの文字列。
semanticsChannelDescriptor
- プロバイダーから利用可能であれば、入力されるセマンティクスチャネルのテクスチャ記述子。
samplerMatrix
- 正規化されたビューポート座標から正規化されたテクスチャ座標に変換します。
cameraParams
- ビューポートを記述する。
System.NotSupportedException
- 実装がセマンティクスチャネルテクスチャをサポートしていない場合にスローされます。
戻り値:
セマンティクス・チャネルのテクスチャ・ディスクリプタが利用可能で、返される場合はtrue。 それ以外の場合False。
TryAcquireSemanticChannelCpuImage
bool TryAcquireSemanticChannelCpuImage(
string channelName,
out XRCpuImage cpuImage,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)
最新のセマンティクス・チャンネルXRCpuImageの取得を試みる。
Parameters:
channelName`` - 必要なセマンティクスチャネルの文字列。
cpuImage
- このメソッドが true
を返した場合、取得した XRCpuImage を返します。 XRCpuImageは呼び出し元が破棄される必要があります。
samplerMatrix
- ビューポートからテクスチャ座標に変換する行列。
cameraParams
- サンプリングするビューポートのパラメータ。
戻り値:
XRCpuImage の取得に成功した場合に true
を返す。 そうでなければ false
を返す。
TryGetPackedSemanticChannels
bool TryGetPackedSemanticChannels(
out XRTextureDescriptor packedSemanticsDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)
パックされたセマンティクス・テクスチャ記述子を取得します。
Parameters:
packedSemanticsDescriptor
- プロバイダから利用可能であれば、入力されるパックされたセマンティクス・テクスチャ記述子。
samplerMatrix
- ビューポートからテクスチャ座標に変換する行列。
cameraParams
- ビューポートを記述する。
System.NotSupportedException
- packed semantics texture をサポートしていない場合にスローされます。
戻り値:
packed semantics texture descriptorが利用可能であればtrueを返す。 それ以外の場合False。
TryAcquirePackedSemanticChannelsCpuImage
bool TryAcquirePackedSemanticChannelsCpuImage(
out XRCpuImage cpuImage,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)
パックされたセマンティックチャ ンネルの最新のCPU画像の取得を試みます。
Parameters:
cpuImage
- このメソッドが true
を返した場合、取得した XRCpuImage を返します。 XRCpuImageは呼び出し元が破棄される必要があります。
samplerMatrix
- ビューポートからテクスチャ座標に変換する行列。
cameraParams
- ビューポートを記述する。
戻り値
TryGetChannelNames
bool TryGetChannelNames(out IReadOnlyList<string> names)
現在のセマンティックモデルのセマンティックチャンネル名のリストを取得します。
Parameters:
System.NotSupportedException
- チャネル名の読み込みが実装によってサポートされていない場合にスローされます。
戻り値:
セマンティックカテゴリーのラベルリスト。 メタデータがまだ利用可能になっていない場合、リストは空になる。
TrySetChannelConfidenceThresholds
bool TrySetChannelConfidenceThresholds(Dictionary<string, float> channelConfidenceThresholds)
パックされたセマンティックチャンネルバッファに指定されたセマンティックチャンネルを含めるために使用される信頼度の閾値を設定します。
各セマンティックチャネルは、ARセッション中にこの関数によって新しい値が設定されるまで、モデルによって選択されたデフォルトの閾値を使用します。
Parameters:
channelConfidenceThresholds
- 必要とされるセマンティクスチャネルの名前を指定するキーと、プラットフォームが指定されたチャネルをパックされたセマンティクスバッファに含める閾値を設定する0から1までの 値で構成される辞書。 キーは、TryGetChannelNamesが返すリストに存在するセマンティックチャネル名でなければなりません。
System.NotSupportedException
- 信頼度の閾値の設定が実装によってサポートされていない場合にスローされます。
戻り値:
閾値が設定されていればtrue。 それ以外の場合False。
TryResetChannelConfidenceThresholds
ブール TryResetChannelConfidenceThresholds()
すべてのセマンティック・チャンネルの信頼しきい値を、現在のモデルのデフォルト値にリセットする。
これは、TrySetChannelConfidenceThresholdsで行った変更をすべて元に戻します。
Parameters:
System.NotSupportedException
- 信頼度のしきい値のリセットが実装でサポートされていない場合にスローされます。
戻り値:
閾値がリセットされた場合は真。 それ以外の場合False。
Regiter
static bool Register(XRSemanticsSubsystemCinfo semanticsSubsystemCinfo)
セマンティクス・サブシステム実装の記述子を登録します。
Parameters:
semanticsSubsystemCinfo
- セマンティクス・サブシステムの実装構築情報。
戻り値
ディスクリプタが登録されていればtrue。 それ以外の場合False。