5.4.1. 概要

ONVIF対応IPカメラ及びUSB接続でVideo4Linux2ドライバを経由してアクセス可能なカメラから映像を取得し、 Node-REDフロー上で様々に活用することができます。

注釈

カメラを複数台接続する場合、エッジの性能や設定によってはCPU能力が不足する場合があります。 その場合には接続するカメラを減らすか、設定を見直してください。 性能の目安としてはエッジゲートウェイエントリモデルで1280x720の画像を1FPSで取得する場合、約60%程度(1コア)のCPU使用率となります。 後述するデコード/エンコードを実行しない設定にするとCPU負荷を大きく下げることができます。 カメラを複数台接続する場合はこちらの設定を推奨します。

5.4.2. 機能一覧

主な機能を以下に列挙します。

  • カメラデバイスの登録

    カメラデバイスにIDを割り当て、ICE Backendに登録する機能です。

  • ONVIF対応IPカメラの自動映像取得

    ONVIF対応カメラ連携用ノードと連携をすることで、 自動発見したカメラから映像取得することが可能です。

  • 指定のIPカメラ・USBカメラの映像取得

    接続先が既知であるIPカメラ及びUSBカメラを指定して、指定されたカメラから映像を取得することも可能です。

  • カメラ映像の録画

    自動発見されたカメラや指定されたカメラの映像を録画する機能です。

5.4.3. 提供ノード一覧

本機能を使用するためにNode-REDエディタから利用可能なノードを提供しています。 詳細はビデオデバイス映像取得用ノードを参照ください。

  • ice video

    カメラの映像をNode-REDフローに出力するためのノード。

5.4.4. 機能概要

ビデオデバイス映像取得用ノードを使用して実行できる機能について以下で説明します。

5.4.4.1. デバイスの登録

カメラに対してObject IDを割り当て、ICE Backendへデバイスの登録を行います。 Object IDはICE Backendでカメラからのイベントデータを識別するために利用できます。

ただし、ONVIF対応カメラ連携用ノードで登録したデバイスについては、登録をせず、 ONVIF対応カメラ連携用ノードで振り出したObject IDを使用します。 (ice videoノードにpayload.object_idが入力された場合に限ります)

なお、カメラ接続台数分のデバイスアダプタが自動的にICE Backendに登録されます。 ONVIF対応カメラ連携用ノードで自動発見されたカメラに対しては2つのデバイスアダプタが登録されますが、 この場合、ONVIF対応カメラ連携用ノードにより登録されたデバイスアダプタを、 ICE Backend APIを利用する際のパラメータに使用してください。

注釈

ONVIF対応カメラ連携用ノードにより登録されたデバイスアダプタかどうかは、 uniqueフィールドがnodered:で始まるかどうか、 payload.camerasフィールドを持つかどうかで判別が可能です。

5.4.4.2. ONVIF対応IPカメラからの映像取得

ice onvif discoveryノードとice videoノードを接続することで、 自動発見されたIPカメラからの映像取得を開始できます。 1つのice videoノードで複数のカメラと接続することが可能です。

映像を取得する際、動画コーデックは自動的に判別され、適切にデコードされます。 接続するプロトコルはデフォルトではRTSPのみ対応しています。 自動発見されたカメラのストリーム用URLがHTTPであった場合、接続できません。

また、映像を取得する際の動画コーデックはデフォルトではrawdata, Motion JPEG, H.264に対応しており、 動画取得時に自動判別して適切にデコードされます。

注釈

ONVIF対応カメラ連携用ノードを利用する場合には、事前にカメラに対してユーザ名、パスワードの設定をお願いします。

5.4.4.3. 指定のIPカメラ・USBカメラからの映像取得

ice videoに何らかの形でデバイスのアドレスを入力すると、 指定されたデバイスからの映像を取得します。 指定できるデバイスのアドレスはrtsp://...で開始するIPカメラのストリーム用URLと、 /dev/video0等で指定されるvideo4linux2ドライバ経由でアクセス可能なカメラになります。

映像を取得する際、動画コーデックは自動的に判別され、適切にデコードされます。 映像を取得する際の動画コーデックはデフォルトではrawdata, Motion JPEG, H.264に対応しており、 動画取得時に自動判別して適切にデコードされます。

5.4.4.4. 出力される画像データ

画像はImage Typeで指定された形式及びWidthHeightに指定されたサイズにエンコードして出力されます。 また、カメラから取得するFPSより指定されたFPSの値が小さい場合、指定のFPSになるようにフレームを間引きして出力されます。 カメラから取得するFPSより大きい値が指定された場合にはカメラのFPSのまま出力されます。

なお、以下のケースではデコード/エンコードの必要がないため、処理負荷を低減するためにデコード/エンコードを実行しません。

  • Motion JPEG 形式の映像を,JPEG画像に、ピクセル数(Height, Width)の変更なく出力する場合
  • RAWVIDEO 形式の映像を、rawdata画像に、ピクセル数(Height, Width)の変更なく出力する場合

5.4.4.5. 出力可能な画像形式一覧

出力する画像の形式は以下のコーデックに対応しています。

  • JPEG
  • PNG
  • RAWVIDEO

5.4.4.6. カメラ映像の録画

接続したカメラの映像をファイルとして録画することができます。 録画フォーマットとしてはMJPEGでエンコードされたAVIファイルのみ対応しています。 指定された時間間隔で映像データをファイル出力します。 より高機能な録画を行いたい場合はVMS等を別途ご用意ください。

注釈

録画データは容量が大きくなりますので、 録画時間やFPSの指定、出力するディレクトリには注意が必要です。 ICE Coreが存在するパーティションと同じパーティションにあるディレクトリを指定しないことを推奨します。

5.4.4.7. 動作確認済みカメラ

以下のカメラで動作確認を行っています。

  • Sony SNC-XM632
  • ELECOM UCAM-C750FBBK