(57)【特許請求の範囲】
【請求項１】
動画データを外部の送信先へ送信する送信装置であって、
動画データのフレームを送信待ちフレームとして保存する保存手段と、
複数種類のイベントを検知する検知手段と、
前記検知された複数種類のイベントと前記送信待ちのフレームを対応付ける対応付け手段と、
前記保存手段に保存された送信待ちフレーム数とデータ量とのうち少なくとも一方が予め定められた閾値を超えた場合、前記外部の送信先に応じて設定される前記複数種類のイベントの優先度に応じて、前記対応づけ手段によって対応づけられた送信待ちフレームのうち前記保存手段から優先的に削除するフレームを決定する削除決定手段とを有することを特徴とする送信装置。
【請求項２】
前記検知手段は、前記動画データの解析によりイベントを検知することを特徴とする請求項１に記載の送信装置。
【請求項３】
前記検知手段は、外部センサーによるイベント検知信号に応じてイベントを検知することを特徴とする請求項１に記載の送信装置。
【請求項４】
前記複数種類のイベントのうち第１のイベントに対応付けられた送信待ちフレームと前記第１のイベントよりも優先度が高い第２のイベントに対応付けられた送信待ちフレームとが前記保存手段に保存されている場合、前記削除決定手段は、前記第１のイベントに対応付けられた送信待ちフレームを前記保存手段から優先的に削除するフレームとして決定することを特徴とする請求項１乃至３のうちいずれか１項に記載の送信装置。
【請求項５】
前記削除決定手段は、前記検知手段によって検知された前記複数種類のイベントのうち他のイベントより検知回数が多いイベントに対応づけられた送信待ちフレームを優先的に削除するフレームとして決定することを特徴とする請求項１乃至３のうちいずれか１項に記載の送信装置。
【請求項６】
前記削除決定手段は、前記対応づけ手段によって対応づけられた送信待ちフレームのうち、動き検知に関するイベントに対応づけられたフレームを優先的に削除するフレームとして決定することを特徴とする請求項１乃至３のうちいずれか１項に記載の送信装置。
【請求項７】
動画データを外部の送信先へ送信する送信装置が行う送信方法であって、
動画データのフレームを送信待ちフレームとして保存手段に保存する保存工程と、
複数種類のイベントを検知する検知工程と、
前記検知された複数種類のイベントと前記送信待ちのフレームを対応付ける対応付け工程と、
前記保存手段に保存された動画データの送信待ちフレーム数とデータ量とのうち少なくとも一方が予め定められた閾値を超えた場合、前記外部の送信先に応じて設定される前記複数種類のイベントの優先度に応じて、前記対応づけ工程において対応づけられた送信待ちフレームのうち前記保存手段から優先的に削除するフレームを決定する削除決定工程とを有することを特徴とする送信方法。
【請求項８】
動画データを外部の送信先へ送信するコンピュータに、
動画データのフレームを送信待ちフレームとして保存手段に保存する保存手順と、
複数種類のイベントを検知する検知手順と、
前記検知された複数種類のイベントと動画データのフレームを対応付ける対応付け手順と、
前記保存手段に保存された動画データのフレーム数とデータ量とのうち少なくとも一方が予め定められた閾値を超えた場合、外部の送信先に応じて設定される各イベントの優先度に応じて、前記対応づけ手段によって対応づけられた送信待ちフレームのうち前記保存手段から優先的に削除するフレームを決定する削除決定手順とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介した動画データの送信方法に関する。
【背景技術】
【０００２】
従来、動画データをリアルタイム送信する際に、通信状況に応じて、送信待ちのフレームを削除するフレームスキップが知られている。
【０００３】
特許文献１には、複数の受信装置へ動画データを送信する際に、各受信装置までの通信帯域に応じて、一部のフレームを送信しないようにすることが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特登録０４２５５６８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、フレームスキップにより削除されるフレームによっては、発生したイベントの内容がわからなくなってしまう恐れがあった。
【０００６】
例えば、動きが検知されたフレームと動きが検知されていないフレームとのうち、動きが検知されたフレームが削除されてしまうと、検知された動きの内容を受信側で確認できない恐れがあった。
【０００７】
また、例えば、一定音量以上の音が検知されたときのフレームと検知されていないときのフレームとのうち、一定音量以上の音が検知されたときのフレームがフレームスキップにより削除されてしまう恐れがある。このような場合、動画データの受信側で、一定音量以上の音が発生したときのフレームの内容を確認できなくなる恐れがあった。
【０００８】
本発明は上述した問題点に鑑みてなされたものであり、その目的は、フレームスキップによりイベントの内容がわからなくなる可能性を低減することである。
【課題を解決するための手段】
【０００９】
上記の問題点を解決するために、本発明の送信装置は、例えば以下の構成を有する。すなわち、動画データを外部の送信先へ送信する送信装置であって、
動画データのフレームを送信待ちフレームとして保存する保存手段と、
複数種類のイベントを検知する検知手段と、
前記検知された複数種類のイベントと前記送信待ちのフレームを対応付ける対応付け手段と、
前記保存手段に保存された送信待ちフレーム数とデータ量とのうち少なくとも一方が予め定められた閾値を超えた場合、前記外部の送信先に応じて設定される前記複数種類のイベントの優先度に応じて、前記対応づけ手段によって対応づけられた送信待ちフレームのうち前記保存手段から優先的に削除するフレームを決定する削除決定手段とを有する。
【発明の効果】
【００１０】
本発明によれば、フレームスキップによりイベントの内容がわからなくなる可能性を低減できる。
【図面の簡単な説明】
【００１１】
【図１】送信装置１００の機能構成を示すブロック図
【図２】送信装置１００の処理を説明するためのフローチャート
【図３】動画データとイベントの関係を示す図
【図４】送信装置４００の機能構成を示すブロック図
【図５】送信装置４００の処理を説明するためのフローチャート
【発明を実施するための形態】
【００１２】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１３】
＜第１の実施形態＞
図１は、本実施形態の送信装置１００の機能構成例を示すブロック図である。図１に示すように、送信装置１００は、バッファ１０１、検知部１０２、対応付け部１０３、削除決定部１０４、削除部１０５、送信部１０６を有する。なお、送信装置１００が撮像部やマイクを備えるようにしてもよい。また、送信装置１００は、例えば、ネットワークカメラ装置により実現可能である。また、送信装置１００は、例えば、撮像装置により撮像された撮像画像をネットワークを介して受信してほかのコンピュータへ配信するサーバ装置によっても実現可能である。
【００１４】
バッファ１０１は、データ１０７を保存する保存部として機能する。データ１０７には、例えば、カメラ部により撮像された動画データが含まれる。すなわち、バッファ１０１は、送信待ちの動画データのフレームを保存する。また、データ１０７には、動画データのほかに、音声入力部により入力された音声データ、イベントを検知する外部センサーなどからのセンサーデータ（イベント検知信号）、カメラの制御権や撮像方向の変更を通知するためのカメラ制御データなどが含まれる。ただしデータ１０７は、これらに限らない。外部センサーは、例えば、温度を検知する温度センサーや、カメラに対するいたずらを検知するいたずら検知センサーなどがある。外部センサーは、送信装置１００と一体であっても、ネットワーク等を介して接続されていても良い。
【００１５】
検知部１０２は、バッファ１０１に保存されたデータ１０７からイベントを検知する。すなわち、検知部１０２は、バッファ１０１に保存されたセンサーデータやカメラ制御データからイベントの発生を検知する。また、検知部１０２は、バッファ１０１に保存された動画データを解析してイベントの発生（例えば動きの発生）を検知する。また、検知部１０２は、バッファ１０１に保存された音声データからイベントの発生（例えば爆発音の発生）を検知する。
【００１６】
対応付け部１０３は、検知部１０２により検知されたイベントと、動画データのフレームとを対応付ける。本形態の対応付け部１０３は、イベントの検知時刻に撮像時刻が近いフレームを、当該イベントと対応付ける。ただし、対応付けの方法は上記の方法に限らず、例えば、イベントの発生時刻よりも後に撮像されたフレームのうち、最も撮像時刻が前のフレームを当該イベントと対応付けるようにしてもよい。なお、１つのフレームに複数のイベントを対応付けることも可能である。
【００１７】
削除決定部１０４は、バッファ１０１の状況に応じて、バッファ１０１から削除するフレームを決定する。すなわち、本形態の送信装置１００は、送信待ちのフレームをバッファ１０１に保存しておき、送信が完了したフレームを、バッファ１０１から削除するが、通信状況によっては、送信待ちのフレームでバッファ１０１が溢れてしまう恐れがある。そこで本形態の削除決定部１０４は、バッファ１０１に保存されている動画データのフレーム数が閾値を超えると、バッファ１０１に保存されているフレームから削除するフレームを決定し、削除フレームの識別情報を削除部１０５へ通知する。なお、削除決定部１０４は、バッファ１０１内の動画データのデータ量が閾値を超えるとバッファ１０１内の削除フレームを決定するようにすることも可能である。削除決定部１０４による削除フレームの決定方法は後述する。
【００１８】
削除部１０５は、削除決定部１０４により決定された削除フレームをバッファ１０１から削除する。すなわち、削除部１０５は、バッファ１０１に保存されている動画データのフレーム数とデータ量とのうち少なくとも一方に応じてフレームを削除する。
【００１９】
送信部１０６は、バッファ１０１内に保存されているデータ１０７を外部へ送信する。外部へ送信されるデータ１０７は、例えば、動画データ、音声データ、イベントデータ、カメラ制御データなどである。データ１０７の送信先は、動画データを記録するストレージサーバや、動画データを表示するビューワクライアントなどがありうる。
【００２０】
次に、送信装置１００の動作について図２を用いて説明する。
図２は、本形態の送信装置１００の処理を説明するためのフローチャートである。なお、送信装置１００は、ＣＰＵが図２に係る処理を実行するためのプログラムをＲＯＭからＲＡＭへ読み出して処理を実行することが可能である。ただし、図２の処理の少なくとも一部を専用のハードウェアによって行うようにすることも可能である。
【００２１】
送信装置１００のバッファ１０１は、動画データのフレームを保存する（保存手順Ｓ２０１）。また、検知部１０２は、イベントを検知する（検知手順Ｓ２０２）。検知部１０２は、外部センサーからのセンサーデータ（イベント検知信号）、カメラを遠隔制御する制御権や撮像方向やズーム倍率などの変更に関するカメラ制御データがバッファ１０１から検知されると、イベントが発生したと判定する。また、本形態の検知部１０２は、Ｓ２０１で保存された動画データを解析することで、イベントを検知する。検知部１０２は、動画データの解析により、動き検知、うろつき検知、置き去り検知、持ち去り検知、いたずら検知をすることが可能である。検知部１０２は、例えば、フレーム全体の輝度が急激に変化した場合にいたずらのイベントが発生したと判定する。
【００２２】
対応付け部１０３は、Ｓ２０１で保存されたフレームと、Ｓ２０２で検知されたイベントとを対応づける（対応付け手順Ｓ２０３）。本形態の対応付け部１０３は、動画データの解析によりイベントが検知された場合、イベントが検知されたフレームをイベントと対応づける。また、対応付け部１０３は、センサーデータによりイベントを検知した場合、各フレームの撮像時刻と、イベントの検知時刻とに基づいて、イベントとフレームを対応づける。
【００２３】
削除決定部１０４は、バッファ１０１の状況に基づいてバッファ１０１内のフレームを削除すべきか否かを決定する（Ｓ２０４）。すなわち、削除決定部１０４は、バッファ１０１に保存されている送信待ちのフレーム数が閾値を超えた場合、バッファ１０１内のフレームを削除すべきと決定する。ただし、削除決定部１０４は、バッファ１０１に保存されている送信待ちの動画データのデータ量が閾値を超えた場合に、バッファ１０１内のフレームを削除すべきと決定しても良い。
【００２４】
フレームを削除すべきでないと決定された場合、送信部１０６は、バッファ１０１内の動画データのフレームを読み出して外部へ送信する（Ｓ２０５）。Ｓ２０５へ進んだ場合は、フレームの削除は行われない。本形態において、動画データの送信先は、ネットワークを介した録画サーバやビューワクライアントを想定しているが、ローカルに接続された機器へ送信するようにしても良い。
【００２５】
フレームを削除すべきと決定された場合、削除決定部１０４は、バッファ１０１から削除する削除フレームを決定する（Ｓ２０７）。削除決定部１０４は、Ｓ２０７において、イベントに対応づけられていないフレームがバッファ１０１に保存されている場合、イベントに対応づけられていないフレームを削除フレームとして決定する。そして、削除部１０５は、削除決定部１０４により決定された削除フレームをバッファ１０１から削除する（削除手順Ｓ２０８）。すなわち、削除部１０５は、イベントと対応付けられていないフレームを、バッファ１０１に保存された動画データのフレーム数とデータ量とのうち少なくとも一方に応じてバッファ１０１から削除する。また、イベントに対応づけられていないフレームがバッファ１０１に複数保存されている場合、削除決定部１０４は、時間的に古いフレームを削除フレームとして決定する。
【００２６】
また、削除決定部１０４は、Ｓ２０７において、イベントに対応づけられているフレームのみがバッファ１０１に保存されている場合、以下に説明するような方法で削除フレームを決定する。
【００２７】
削除フレームの決定方法について、図３を用いて説明する。図３において、Ｖ１〜Ｖ８は、時間的に連続する動画データのフレームであり、現在バッファ１０１に保存されているフレームである。また、また、Ｉａ−１〜Ｉａ−５は、センサーデータにより検知されるイベントＡの発生時刻を示している。また、Ｉｂ−１〜Ｉｂ−５は、検知部１０２の動画データの解析により検知されるイベントＢの発生時刻を示している。また、Ｉｃ−１〜Ｉｃ−４は、カメラ制御データにより検知されるイベントＣの発生時刻を示している。ただし、例えば外部センサーを複数設けることで複数種類のイベントを検知するようにしても良いし、動画データの解析により複数種類のイベントが検知されるようにしてもよい。
【００２８】
また、図３において、Ｖ１はＩａ−１とＩｃ−１、Ｖ２はＩｂ−１、Ｖ３はＩａ−２とＩｂ−２とＩｃ−２、Ｖ４はＩｂ−３、Ｖ５はＩａ−３とＩｃ−３に対応づけられている。また、Ｖ６はＩｂ−４とＩｃ−４、Ｖ７はＩａ−４、Ｖ８は、Ｉａ−５とＩｂ−５に対応づけられている。
【００２９】
図３は、バッファ１０１に保存されているすべてのフレームが、イベントと対応づけられていることを示している。また、本形態のバッファ１０１は、送信待ちフレームとして保存可能なフレーム数の閾値が７枚であるとする。すなわち、フレームＶ８が保存されたことにより、保存中のフレーム数が閾値を超えたため、バッファ１０１内のフレームが削除される。
【００３０】
まず、ユーザにより設定された各イベントの優先度に基づいて削除フレームを決定する方法について説明する。この方法では、動画データの受信側のユーザが、検知すべきイベントと共に、各イベントの優先度を決定する。例えば、センサーデータにより検知されるイベントＡの優先度を他のイベントの優先度よりも高く設定された場合、削除決定部１０４は、イベントＡに対応づけられていないフレームＶ２やＶ６を削除フレームとして決定する。すなわち、削除部１０５は、イベントＢに対応付けられたフレームと、イベントＢより優先度が高いイベントＡに対応付けられたフレームがバッファ１０１に保存されている場合、イベントＢに対応付けられたフレームをバッファ１０１から削除する。なお、ユーザによるイベントの優先度の設定は、途中で変更することも可能である。
【００３１】
次に、各イベントの発生回数に基づいて削除フレームを決定する方法について説明する。この方法では、バッファ１０１に保存されているフレームに対応する期間において各イベントが検知された回数に応じて削除するフレームが決定される。すなわち、フレームＶ１〜Ｖ８の期間において、イベントＡが５回、イベントＢが５回、イベントＣが４回、検知されている場合、削除決定部１０４は、イベントＡとＢに対応付けられたフレームから削除フレームを決定する。このようにすることで、検知回数が少ないイベントに対応付けられたフレームをなるべく外部へ送信できるようになる。
【００３２】
次に、送信装置１００又は動画データの送信先の動作モードに応じて設定される各イベントの優先度に基づいて削除フレームを決定する方法について説明する。例えば、動画データの送信先が動体監視モードに設定されている場合、動画データの解析により検知されるイベントの優先度がほかのイベントの優先度よりも高くなる。この場合、削除決定部１０４は、フレームＶ１やＶ５を削除フレームとして決定する。また、例えば、動画データの送信先が、カメラ遠隔制御モードに設定されている場合、カメラ制御イベントにより検知されるイベントの優先度がほかのイベントの優先度よりも高くなる。この場合、削除決定部１０４は、フレームＶ２やＶ４を削除フレームとして決定する。なお、１回に削除するフレーム数は、１フレームであっても、複数フレームであっても良い。１回に１フレームのみを削除する場合、削除フレームとなりうるフレーム（フレームＶ２とＶ４）のうち、時間的に古いフレームＶ２が削除される。すなわち、削除決定部１０４は、１回に削除するフレーム数が、削除フレームの候補となるフレーム数よりも多い場合、時間的に古いフレームを優先的に削除フレームとして決定する。
【００３３】
次に、対応づけられているイベントの数に基づいて削除フレームを決定する方法について説明する。この方法では、バッファ１０１に保存されているフレームのうち、ほかのフレームよりも対応づけられているイベントの数が少ないフレームが削除フレームとして決定される。図３の例では、削除決定部１０４は、フレームＶ２やＶ４を削除フレームとして決定する。
【００３４】
次に、対応づけられているイベントの数と、イベントの優先度とに基づいて削除フレームを決定する方法について説明する。この方法では、優先度に応じて各イベントにポイントを設定し、各フレームに対応づけられたイベントのポイントの合計がほかのフレームよりも低いフレームが削除フレームとして決定される。例えば、イベントＡのポイントが１点、イベントＢのポイントが２点、イベントＣのポイントが３点と設定されている場合、削除決定部１０４は、フレームＶ７やＶ２を削除フレームとして決定する。
【００３５】
次に、イベントの内容が前後のフレームから予測可能であるか否かに基づいて削除フレームを決定する方法について説明する。この方法では、例えば、イベントＢが動き検知に関するイベントであった場合、削除決定部１０４は、イベントＢに対応付けられているフレームの中から削除フレームを決定する。すなわち、動き検知に関するイベントＢに対応付けられるフレームは、一部を削除しても前後のフレームからイベントの内容を予測できることが多いため、ほかのイベントに対応付けられているフレームよりも優先的に削除される。言い換えると、動き検知に関するイベントは、通常、連続する複数のフレームに対応づけられるため、一部のフレームを削除しても、他のフレームからイベントの内容を予測することができることが多い。従って、削除決定部１０４は、イベントＢに対応付けられたフレームを、他のイベントに対応付けられたフレームよりも優先的に削除フレームされる。つまり、削除部１０５は、連続する複数のフレームに対応付けられるイベントＢに対応付けられたフレームと、連続する複数のフレームに対応づけられないイベントＡ、Ｃに対応付けられたフレームが保存されていた場合、イベントＢに対応するフレームを削除する。
【００３６】
なお、イベントＢに対応付けられたフレームＶ２、Ｖ３、Ｖ４のうち中間に存在するフレームＶ３を削除するようにしても良いし、例えば、各フレームＶ２、Ｖ３、Ｖ４の変化量に基づいて削除フレームを決定するようにしても良い。例えば、フレームＶ２、Ｖ３、Ｖ４のうち、フレームＶ２とＶ３の変化量が、フレームＶ３とＶ４との変化量よりも大きい場合、削除決定部１０４は、フレームＶ４を削除フレームとして決定することも可能である。
【００３７】
なお、削除フレームの決定方法は、上記の例に限らない。また、上記の方法を組み合わせて削除フレームを決定することも可能である。
【００３８】
Ｓ２０５のフレームの送信完了後、及び、Ｓ２０８の削除フレームの削除後、動画データの送信処理を終了するか否かが判定され（Ｓ２０６）、送信処理を終了しないと判定された場合はＳ２０１へ戻り、送信処理を終了すると判定された場合は処理を終了する。
【００３９】
なお、図２では、動画データの送信処理を中心に説明したが、送信部１０６は、イベントデータを外部へ送信することも可能である。外部へ送信されるイベントデータには、例えば、動き物体の位置や外接矩形のデータ、カメラのパン角、チルト角、ズーム倍率などのデータや、カメラ制御権を有するユーザの識別情報、爆発音やいたずらなどのイベントの発生時刻のデータなどがある。ただし、例えば、動き物体の検知を、削除フレームの決定のためだけに用いる場合は、動き物体に関するデータを外部へ送信しないようにしても良い。また、送信部１０６は、動画データと共に音声データが存在する場合は、動画データと共に音声データも送信する。
【００４０】
なお、上記の実施形態では、外部からの入力データ（センサーデータ、カメラ制御データ）などから検知されるイベントと、動画データの解析により検知されるイベントと、フレームとの対応関係に基づいて削除フレームを決定する例について説明した。しかし、上記で示したイベントのうち、少なくとも１つのイベントとフレームとの対応関係に基づいて削除フレームを決定することが可能である。例えば、外部からの入力データから検知されるイベントとフレームとの対応関係に基づいて削除フレームを決定する場合は、動画データの解析をしないように構成することも可能である。図４は、送信装置１００の検知部１０２を、イベントデータ取得部４０１とフレーム解析部４０２に分けて示した図である。送信装置４００のイベントデータ取得部４０１は、バッファ１０１に保存されたデータ１０７に含まれるカメラ制御データやセンサーデータを取得して、イベントの発生を検知する。また、フレーム解析部４０２は、データ１０７に含まれる動画データを解析してイベントの発生を検知する。フレーム解析部４０２により検知されるイベントは、例えば、動き検知イベント、うろつき検知イベント、持ち去り検知イベント、置き去り検知イベント、いたずら検知イベントである。
【００４１】
レーム解析部４０２は、動き物体が画面内に一定時間以上、存在する場合、うろつき検知イベントの発生を検知する。また、フレーム解析部４０２は、例えば、画面内の人物が、置いてあるかばんを持ち去った場合に、持ち去り検知イベントの発生を検知する。また、フレーム解析部４０２は、例えば、画面内の人物が、かばんを置いて立ち去った場合に、置き去り検知イベントの発生を検知する。イベントデータ取得部４０１とフレーム解析部４０２によるイベントの検知方法は、図１の検知部１０２と同様である。
【００４２】
図５は、図２のＳ２０２を、イベントデータ取得部４０１によるイベント検知（Ｓ５０２）と、フレーム解析部４０２によるイベント検知（Ｓ５０３）に分けて示した図である。ただし、イベントデータ取得部４０１によるイベント検知と、フレーム解析部４０２によるイベント検知は、並列に実行しても構わない。また、フレーム解析部４０２によるイベント検知をイベントデータ取得部４０１によるイベント検知よりも先に行うようにしても良い。
【００４３】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005765920.tif 000002
【図２】
0005765920.tif 000003
【図３】
0005765920.tif 000004
【図４】
0005765920.tif 000005
【図５】
0005765920.tif 000006