メインコンテンツまでスキップ
バージョン: v24.05

フレーム数の取得

このチュートリアルでは、ion-kitを使用してカメラからフレーム数を取得する方法について学びます。

前提条件

  • OpenCV(sensing-dev SDKと一緒に-InstallOpenCVオプションでインストール)
  • ion-kit(sensing-dev SDKと一緒にインストール)

チュートリアル

パイプラインの設定プロセスは、前のチュートリアルとまったく同じです。ただし、フレーム数をBBから取得するために追加の出力ポートとバッファを設定する必要があります。

フレーム数の取得

画像を表示している間に、フレーム数情報も取得したいと思います。前のチュートリアルとの唯一の違いは、フレーム数の値を新しいポートにバインドする必要があることです。

std::vector<Halide::Buffer<uint32_t>> fc;
for (int i = 0; i < num_device; ++i){
fc.push_back(Halide::Buffer<uint32_t>(1));
}
n["frame_count"].bind(fc);

パイプラインの実行

builder.run()を実行してパイプラインを完了します。

フレームカウントディレクトリは、numpy配列frame_counts[i]にi番目のデバイスのフレームカウントを格納するので、各フレームカウントは次のように出力できます。

std::cout << fc[i](0) << " " << std::endl;
備考

最新のSDKのAPIでは、出力の framecount は、デバイスの数に対応する長さの配列として返されます。各要素はHalide Bufferで、[0]framecountが格納されています。一方、バージョン24.01.04では、framecount の出力はデバイスの数に等しい長さの単一のHalide Bufferとして返されます。

完全なコード

このチュートリアルで使用される完全なコードはこちらです。

動かない時は
  • もしお使いのOpenCVがSensing-Devインストール時に-InstallOpenCVオプションをつけてインストールしたものでない場合、プログラムに正しくリンクされているかを確認してください。