ailia  1.6.0.0
公開メンバ関数 | 限定公開メンバ関数 | 全メンバ一覧
ailia.AiliaPoseEstimatorModel クラス
ailia.AiliaPoseEstimatorModel の継承関係図
Inheritance graph
[凡例]
ailia.AiliaPoseEstimatorModel 連携図
Collaboration graph
[凡例]

公開メンバ関数

bool Settings (uint set_algorithm)
 モデル設定を行います。 [詳解]
 
override bool OpenFile (string prototxt, string model_path)
 モデルファイルからネットワークオブジェクトを作成します。 [詳解]
 
override bool OpenEx (Ailia.ailiaFileCallback callback, IntPtr arg1, IntPtr arg2)
 ファイルコールバックからネットワークオブジェクトを作成します。 [詳解]
 
override bool OpenMem (byte[] prototxt_buf, byte[] model_buf)
 メモリからネットワークオブジェクトを作成します。 [詳解]
 
bool SetThreshold (float threshold)
 検出閾値を設定します。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectPoseComputePoseFromImage (Color32[] image, int image_width, int image_height)
 画像から骨格検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectPoseComputePoseFromImageB2T (Color32[] image, int image_width, int image_height)
 上下反転の画像から骨格検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectUpPoseComputeUpPoseFromImage (Color32[] image, int image_width, int image_height)
 画像から上半身骨格検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectUpPoseComputeUpPoseFromImageB2T (Color32[] image, int image_width, int image_height)
 上下反転の画像から上半身骨格検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectFaceComputeFaceFromImage (Color32[] image, int image_width, int image_height)
 画像から顔特徴点検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectFaceComputeFaceFromImageB2T (Color32[] image, int image_width, int image_height)
 上下反転画像から顔特徴点検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectHandComputeHandFromImage (Color32[] image, int image_width, int image_height)
 画像から手の検出を行います。 [詳解]
 
List< AiliaPoseEstimator.AILIAPoseEstimatorObjectHandComputeHandFromImageB2T (Color32[] image, int image_width, int image_height)
 上下反転画像から手の検出を行います。 [詳解]
 
override void Close ()
 検出オブジェクトを破棄します。 [詳解]
 
override void Dispose ()
 リソースを解放します。 [詳解]
 
- 基底クラス ailia.AiliaModel に属する継承公開メンバ関数
bool Environment (int type)
 指定した種類の計算環境を選択します。 [詳解]
 
string EnvironmentName ()
 選択された環境名を表示します。 [詳解]
 
int GetEnvironmentCount ()
 利用可能な計算環境(CPU, GPU)の数を取得します。 [詳解]
 
Ailia.AILIAEnvironment GetEnvironment (int idx)
 指定したインデックスの計算環境を取得します。 [詳解]
 
bool SelectEnvironment (int idx)
 計算環境を選択します。 [詳解]
 
Ailia.AILIAEnvironment GetSelectedEnvironment ()
 選択された計算環境を取得します。 [詳解]
 
bool SetMemoryMode (uint set_memory_mode)
 メモリモードを設定します [詳解]
 
bool DisableLayerFusion ()
 レイヤー統合による高速化を無効化します。 [詳解]
 
bool Predict (float[] output_data, float[] input_data)
 推論を行い推論結果を取得します。 [詳解]
 
Ailia.AILIAShape GetInputShape ()
 推論時の入力データの形状を取得します。 [詳解]
 
uint[] GetInputShapeND ()
 推論時の入力データの形状を取得します。 [詳解]
 
bool SetInputShape (Ailia.AILIAShape shape)
 推論時の入力データの形状を設定します。 [詳解]
 
bool SetInputShapeND (uint[] shape, int dim)
 推論時の入力データの形状を変更します。 [詳解]
 
Ailia.AILIAShape GetOutputShape ()
 推論時の出力データの形状を取得します。 [詳解]
 
uint[] GetOutputShapeND ()
 推論時の出力データの形状を取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (string layer_name)
 推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。(Obsolete) [詳解]
 
int FindBlobIndexByName (string name)
 推論時の内部データ(Blob)のインデックスを名前で探し取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (uint idx)
 推論時の内部データ(Blob)の形状(レイヤー形式)を取得します。 [詳解]
 
Ailia.AILIAShape GetBlobShape (int idx)
 
bool GetBlobData (float[] output_data, uint idx)
 推論時の内部データ(Blob)を取得します。 [詳解]
 
bool GetBlobData (float[] output_data, int idx)
 
bool SetInputBlobData (float[] input_data, uint idx)
 指定したBlobに入力データを設定します。 [詳解]
 
bool SetInputBlobData (float[] input_data, int idx)
 
bool SetInputBlobShape (Ailia.AILIAShape shape, uint idx)
 指定した入力データ(Blob)の形式を設定します。(4次元以下) [詳解]
 
bool SetInputBlobShape (Ailia.AILIAShape shape, int idx)
 
bool SetInputBlobShapeND (uint[] shape, uint dim, uint idx)
 入力データ(Blob)の形式を設定します。(5次元以上) [詳解]
 
bool SetInputBlobShapeND (uint[] shape, int dim, int idx)
 
uint[] GetInputBlobList ()
 入力データ(Blob)のインデックスのリストを取得します。 [詳解]
 
uint[] GetOutputBlobList ()
 出力データ(Blob)のインデックスのリストを取得します。 [詳解]
 
bool CopyBlobData (uint dst_blob_idx, uint src_blob_idx, AiliaModel src_model=null)
 指定したBlob間でデータをコピーします [詳解]
 
bool Update ()
 事前に入力したデータで推論を行います。 [詳解]
 
string GetStatusString (int status)
 ステータスコードに対応する文字列を返します。 [詳解]
 
string GetErrorDetail ()
 エラーの詳細を返します。 [詳解]
 
bool SetProfileMode (uint profile_mode)
 プロファイルモードを有効にします。 [詳解]
 
string GetSummary ()
 ネットワーク情報およびプロファイル結果を取得します。 [詳解]
 

限定公開メンバ関数

override void Dispose (bool disposing)
 

その他の継承メンバ

- 基底クラス ailia.AiliaModel に属する継承限定公開変数類
IntPtr ailia = IntPtr.Zero
 
bool logging = true
 
- 基底クラス ailia.AiliaModel に属する継承プロパティ
int Status [get, protected set]
 ステータスコード @detail ライブラリのステータスコードを取得します。 [詳解]
 

関数詳解

◆ Close()

override void ailia.AiliaPoseEstimatorModel.Close ( )
inlinevirtual

検出オブジェクトを破棄します。

戻り値
なし。

骨格検出オブジェクトを破棄します。

ailia.AiliaModelを再実装しています。

733  {
734  if(ailia_pose_estimator!=IntPtr.Zero){
735  AiliaPoseEstimator.ailiaDestroyPoseEstimator(ailia_pose_estimator);
736  ailia_pose_estimator=IntPtr.Zero;
737  }
738  base.Close();
739  }

◆ ComputeFaceFromImage()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectFace> ailia.AiliaPoseEstimatorModel.ComputeFaceFromImage ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

画像から顔特徴点検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から顔特徴点検出を行い結果をリストで返します。

497  {
498  return ComputeFaceFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA);
499  }

◆ ComputeFaceFromImageB2T()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectFace> ailia.AiliaPoseEstimatorModel.ComputeFaceFromImageB2T ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

上下反転画像から顔特徴点検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から顔特徴点検出を行い結果をリストで返します。

523  {
524  return ComputeFaceFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA_B2T);
525  }

◆ ComputeHandFromImage()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectHand> ailia.AiliaPoseEstimatorModel.ComputeHandFromImage ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

画像から手の検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から手の検出を行い結果をリストで返します。

618  {
619  return ComputeHandFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA);
620  }

◆ ComputeHandFromImageB2T()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectHand> ailia.AiliaPoseEstimatorModel.ComputeHandFromImageB2T ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

上下反転画像から手の検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から手の検出を行い結果をリストで返します。

644  {
645  return ComputeHandFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA_B2T);
646  }

◆ ComputePoseFromImage()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectPose> ailia.AiliaPoseEstimatorModel.ComputePoseFromImage ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

画像から骨格検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から骨格検出を行い、検出結果をリストで返します。

236  {
237  return ComputePoseFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA);
238  }

◆ ComputePoseFromImageB2T()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectPose> ailia.AiliaPoseEstimatorModel.ComputePoseFromImageB2T ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

上下反転の画像から骨格検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から骨格検出を行い、検出結果をリストで返します。

262  {
263  return ComputePoseFromImageWithFormat(image,image_width,image_height,AiliaFormat.AILIA_IMAGE_FORMAT_RGBA_B2T);
264  }

◆ ComputeUpPoseFromImage()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectUpPose> ailia.AiliaPoseEstimatorModel.ComputeUpPoseFromImage ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

画像から上半身骨格検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から上半身の骨格検出を行い、検出結果をリストで返します。

360  {
361  return ComputeUpPoseFromImageWithFormat(image, image_width, image_height, AiliaFormat.AILIA_IMAGE_FORMAT_RGBA);
362  }

◆ ComputeUpPoseFromImageB2T()

List<AiliaPoseEstimator.AILIAPoseEstimatorObjectUpPose> ailia.AiliaPoseEstimatorModel.ComputeUpPoseFromImageB2T ( Color32[]  image,
int  image_width,
int  image_height 
)
inline

上下反転の画像から上半身骨格検出を行います。

引数
image検出対象画像
image_width画像幅
image_height画像高さ
戻り値
検出結果のリスト

画像から上半身骨格検出を行い、検出結果をリストで返します。

387  {
388  return ComputeUpPoseFromImageWithFormat(image, image_width, image_height, AiliaFormat.AILIA_IMAGE_FORMAT_RGBA_B2T);
389  }

◆ Dispose() [1/2]

override void ailia.AiliaPoseEstimatorModel.Dispose ( )
inlinevirtual

リソースを解放します。

ailia.AiliaModelを再実装しています。

749  {
750  Dispose(true);
751  }
override void Dispose()
リソースを解放します。
Definition: AiliaPoseEstimatorModel.cs:748

◆ Dispose() [2/2]

override void ailia.AiliaPoseEstimatorModel.Dispose ( bool  disposing)
inlineprotectedvirtual

ailia.AiliaModelを再実装しています。

754  {
755  if (disposing){
756  // release managed resource
757  }
758  Close(); // release unmanaged resource
759  base.Dispose(disposing);
760  }
override void Close()
検出オブジェクトを破棄します。
Definition: AiliaPoseEstimatorModel.cs:733

◆ OpenEx()

override bool ailia.AiliaPoseEstimatorModel.OpenEx ( Ailia.ailiaFileCallback  callback,
IntPtr  arg1,
IntPtr  arg2 
)
inlinevirtual

ファイルコールバックからネットワークオブジェクトを作成します。

引数
callbackユーザ定義ファイルアクセスコールバック関数構造体
alg1AILIA_USER_API_FOPEN に通知される引数ポインタ
alg2AILIA_USER_API_FOPEN に通知される引数ポインタ
戻り値
成功した場合は ture を、失敗した場合は false を返す。

ファイルコールバックからネットワークオブジェクトを作成します。

ailia.AiliaModelを再実装しています。

114  {
115  Close();
116  bool status=base.OpenEx(callback,arg1,arg2);
117  if(status==false){
118  if(logging){
119  Debug.Log("ailiaModelOpenEx failed");
120  }
121  return false;
122  }
123  return OpenPoseEstimator();
124  }
bool logging
Definition: AiliaModel.cs:33

◆ OpenFile()

override bool ailia.AiliaPoseEstimatorModel.OpenFile ( string  prototxt,
string  model_path 
)
inlinevirtual

モデルファイルからネットワークオブジェクトを作成します。

引数
prototxtprototxtファイルのパス名(MBSC or UTF16)
model_pathprotobuf/onnxファイルのパス名(MBSC or UTF16)
戻り値
成功した場合は ture を、失敗した場合は false を返す。

モデルファイルからネットワークオブジェクトを作成します。

ailia.AiliaModelを再実装しています。

80  {
81  Close();
82  bool status=base.OpenFile(prototxt,model_path);
83  if(status==false){
84  if(logging){
85  Debug.Log("ailiaModelOpenFile failed");
86  }
87  return false;
88  }
89  return OpenPoseEstimator();
90  }

◆ OpenMem()

override bool ailia.AiliaPoseEstimatorModel.OpenMem ( byte[]  prototxt_buf,
byte[]  model_buf 
)
inlinevirtual

メモリからネットワークオブジェクトを作成します。

引数
prototxtprototxtファイルのデータへのポインタ
model_pathprotobuf/onnxファイルのデータへのポインタ
戻り値
成功した場合は ture を、失敗した場合は false を返す。

メモリからネットワークオブジェクトを作成します。

ailia.AiliaModelを再実装しています。

146  {
147  Close();
148  bool status=base.OpenMem(prototxt_buf,model_buf);
149  if(status==false){
150  if(logging){
151  Debug.Log("ailiaModelOpenMem failed");
152  }
153  return false;
154  }
155  return OpenPoseEstimator();
156  }

◆ SetThreshold()

bool ailia.AiliaPoseEstimatorModel.SetThreshold ( float  threshold)
inline

検出閾値を設定します。

引数
threshold検出閾値 0.0以上1.0以下の値で、値が小さいほど検出しやすくなります。
戻り値
成功した場合は true を、失敗した場合は false を返す。

検出閾値を設定します。

203  {
204  int status=AiliaPoseEstimator.ailiaPoseEstimatorSetThreshold(ailia_pose_estimator,threshold);
205  if(status!=Ailia.AILIA_STATUS_SUCCESS){
206  if(logging){
207  Debug.Log("ailiaPoseEstimatorSetThreshold failed "+status);
208  }
209  return false;
210  }
211  return true;
212  }

◆ Settings()

bool ailia.AiliaPoseEstimatorModel.Settings ( uint  set_algorithm)
inline

モデル設定を行います。

引数
set_algorithmアルゴリズム
戻り値
成功した場合 true を返す。

モデルのアルゴリズムを指定します。

注釈
Open系API呼び出し後の呼び出しは無効です(falseを返却します)
50  {
51  if (ailia_pose_estimator != IntPtr.Zero)
52  {
53  Debug.Assert(false, "Ailia Pose Estimator instance is already initialized.");
54  return false;
55  }
56  algorithm=set_algorithm;
57  return true;
58  }

このクラス詳解は次のファイルから抽出されました: