本文へスキップ
バージョン: 3.1

クラス 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);
static bool Register(XRSemanticsSubsystemCinfo semanticsSubsystemCinfo);
}

詳細資料

セマンティックセグメンテーション機能と対話するためのインターフェースを定義します。

プロパティ

TargetFrameRate

uint ターゲットフレームレート

セマンティックセグメンテーション推論を実行するプラットフォームのターゲットフレームレートを指定します。

目標フレームレート。

    **パラメーター

    System.NotSupportedException - 投げられたフレームレート設定はサポートされていません。

LatestFrameId

uint?最新フレームID

最新のセマンティックセグメンテーション予測のフレーム ID を返します。

フレームID。

    **パラメーター

    System.NotSupportedException - フレーム ID の取得がサポートされていない場合にスローされます。

方法

XRSemanticsSubsystem

XRSemanticsSubsystem()

機能プロバイダを作成してサブシステムを構築する。

TryGetSemanticChannel

bool TryGetSemanticChannel(
string channelName,
out XRTextureDescriptor semanticsChannelDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)

セマンティクスチャネルのテクスチャ記述子と、テクスチャをビューポートにフィットさせるために使用される行列を取得します。

    **パラメーター

    channelName`` - 必要なセマンティクスチャネルの文字列。

    semanticsChannelDescriptor - プロバイダーから利用可能であれば、入力されるセマンティクスチャネルのテクスチャ記述子。

    samplerMatrix - 正規化されたビューポート座標から正規化されたテクスチャ座標に変換します。

    cameraParams - ビューポートを記述する。

    System.NotSupportedException - 実装がセマンティクスチャネルテクスチャをサポートしていない場合にスローされます。

    **返品について

    セマンティクス・チャネルのテクスチャ・ディスクリプタが利用可能で、返される場合はtrue。 False - それ以外

TryAcquireSemanticChannelCpuImage

bool TryAcquireSemanticChannelCpuImage(
string channelName,
out XRCpuImage cpuImage,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)

最新のセマンティクス・チャンネルXRCpuImageの取得を試みる。

    **パラメーター

    channelName`` - 必要なセマンティクスチャネルの文字列。

    cpuImage- このメソッドがtrue`` を返した場合、取得した XRCpuImage を返します。 XRCpuImageは呼び出し元が処分しなければなりません。

    samplerMatrix - ビューポートからテクスチャ座標に変換する行列。

    cameraParams - サンプリングするビューポートのパラメータ。

    **返品について

    XRCpuImage の取得に成功した場合に true を返す。 そうでなければ false を返す。

TryGetPackedSemanticChannels

bool TryGetPackedSemanticChannels(
out XRTextureDescriptor packedSemanticsDescriptor,
out Matrix4x4 samplerMatrix,
XRCameraParams? cameraParams = null
)

パックされたセマンティクス・テクスチャ記述子を取得します。

    **パラメーター

    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画像の取得を試みます。

    **パラメーター

    cpuImage- このメソッドがtrue`` を返した場合、取得した XRCpuImage を返します。 XRCpuImageは呼び出し元が処分しなければなりません。

    samplerMatrix - ビューポートからテクスチャ座標に変換する行列。

    cameraParams - ビューポートを記述する。

    **返品について

TryGetChannelNames

bool TryGetChannelNames(out IReadOnlyList<string> names)

現在のセマンティックモデルのセマンティックチャンネル名のリストを取得します。

    **パラメーター

    System.NotSupportedException - チャネル名の読み込みが実装によってサポートされていない場合にスローされます。

    **返品について

    意味上のカテゴリー・ラベルのリスト。 メタデータがまだ利用可能になっていない場合、リストは空になる。

TrySetChannelConfidenceThresholds

bool TrySetChannelConfidenceThresholds(Dictionary<string, float> channelConfidenceThresholds)

パックされたセマンティックチャンネルバッファに指定されたセマンティックチャンネルを含めるために使用される信頼度のしきい値を設定します。

各意味チャネルは、ARセッション中にこの関数によって新しい値が設定されるまで、モデルによって選択されたデフォルトのしきい値を使用します。

    **パラメーター

    channelConfidenceThresholds - 必要とされるセマンティクスチャネルの名前を指定するキーと、プラットフォームが指定されたチャネルをパックされたセマンティクスバッファに含める閾値を設定する0から1までの値で構成される辞書。 キーは、TryGetChannelNamesが返すリストに存在するセマンティックチャネル名でなければなりません。

    System.NotSupportedException - 信頼度のしきい値の設定が実装によってサポートされていない場合にスローされます。

    **返品について

    閾値が設定されていれば真。 False - それ以外

登録

静的 bool Register(XRSemanticsSubsystemCinfo semanticsSubsystemCinfo)

セマンティクス・サブシステム実装の記述子を登録します。

    **パラメーター

    semanticsSubsystemCinfo - セマンティクス・サブシステムの実装構築情報。

    **返品について

    ディスクリプタが登録されていればtrue。 False - それ以外