(57)【要約】      （修正有）【課題】カメラによってキャプチャされたシーンの画像に基づいてビデオストリームを形成する方法および画像処理ユニットを提供する。【解決手段】カメラによってキャプチャされた画像フレームを符号化し（Ｓ１）、時間的に先行する画像フレームに対するサンプル画像フレームとの間の相対的動きの量を示す動きの長さを判定する（Ｓ３）。動きベクトル探索範囲に基づいて動きの長さしきい値を設定し（Ｓ２）、判定された動きの長さを設定された動きの長さしきい値と比較する（Ｓ４）。比較の結果に基づいてビデオストリームの調整部分が、符号化された部分中または時間的に後の符号化された部分中に含まれ、追加の画像フレームが連続画像フレームの間に位置するように、時間フレーム距離を調整する（Ｓ５）。【選択図】図９
2018201189.tif 000002
【特許請求の範囲】
【請求項１】
カメラによってキャプチャされたシーンの画像に基づいてビデオストリームを形成するための方法であって、前記方法は、
前記カメラによってキャプチャされた画像に基づいて、エンコーダによって、画像フレームを符号化し（Ｓ１）、前記ビデオストリームの符号化された部分を形成することと、
前記符号化された部分中の前記符号化された画像フレームのうちの１つである、サンプル画像フレームのための動きの長さを判定する（Ｓ３）ことであって、前記動きの長さが、時間的に先行する画像フレームに対する前記サンプル画像フレームにおける、前記カメラと前記シーンとの間の相対的動きの量を示す、動きの長さを判定することと、
前記エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定する（Ｓ２）ことと、
前記判定された動きの長さを、前記設定された動きの長さしきい値と比較する（Ｓ４）ことと、
前記比較の結果に基づいて、前記ビデオストリームの少なくとも調整部分（ＰＡ）の選定された時間フレーム距離を調整する（Ｓ５）ことであって、前記調整部分が、前記符号化された部分中に、または時間的に後の符号化された部分中に含まれる、時間フレーム距離を調整することと
を含む、方法。
【請求項２】
前記選定された時間フレーム距離を前記調整することは、
前記判定された動きの長さが、前記設定された動きの長さしきい値を上回るときに、Ｎ≧１個の（１つまたは複数の）追加の画像フレーム（３０）を符号化することによって、前記調整部分の前記選定された時間フレーム距離を減少させることであって、前記１つまたは複数の追加の画像フレームが前記調整部分の連続画像フレーム（１０、２０）の間に位置する、時間フレーム距離を減少させること
を含む、請求項１に記載の方法。
【請求項３】
前記１つまたは複数の追加の画像フレーム（３０）が、前記サンプル画像フレーム（２０）と先行する画像フレーム（１０）との間に位置する、請求項２に記載の方法。
【請求項４】
前記１つまたは複数の追加の画像フレーム（３０）が、動きベクトルを用いて、および残差を用いずにインターフレーム符号化される、請求項２または３に記載の方法。
【請求項５】
前記１つまたは複数の追加の画像フレーム（３０）は、前記１つまたは複数の追加の画像フレーム（３０）が前記ビデオストリームの受信機によって表示されるべきでないことを示す非表示マーカーに関連付けられ、前記１つまたは複数の追加の画像フレーム（３０）が、動きベクトルを用いて、および残差を用いずに符号化される、請求項２から４のいずれか一項に記載の方法。
【請求項６】
前記選定されたフレームレートを前記調整することは、
前記判定された動きの長さが、前記設定された動きの長さしきい値を下回るときに、前記ビデオストリームの符号化された画像フレームを削除することによって、前記調整部分の前記選定された時間フレーム距離を増加させること
を含む、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記サンプル画像のための前記動きの長さが、最長動きベクトル長さとして判定され、少なくとも所定の数のブロックが前記最長動きベクトルを用いて符号化される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記判定された動きの長さを上側動きの長さしきい値と比較することと、
前記判定された動きの長さが前記上側動きの長さしきい値を下回るという条件に基づいて、前記選定された時間フレーム距離を調整することと
をさらに含む、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記符号化された部分中の前記サンプル画像フレームの動きの長さを前記判定することが、
前記サンプル画像フレーム（２０）を時間的に先行する画像フレーム（１０）と比較すること
を含む、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記比較することの前に、前記サンプル画像フレーム（２０）と前記先行する画像フレーム（１０）とをスケールダウンすることをさらに含む、請求項９に記載の方法。
【請求項１１】
前記カメラの動きを示すデータを受信すること
をさらに備え、
前記サンプル画像フレームの動きの長さを前記判定することが、前記受信されたデータに基づく、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
動きを示す前記データが、前記カメラの動きセンサーまたはパンチルトズーム（ＰＴＺ）制御ユニットから受信される、請求項１１に記載の方法。
【請求項１３】
処理能力を有するデバイスによって実行されたとき、請求項１から１２のいずれか一項に記載の方法を行うように適応された命令をもつ非一時的コンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
【請求項１４】
ビデオストリームを形成するように構成された画像処理ユニットであって、前記画像処理ユニットは、
画像センサー（１０２）によってキャプチャされたシーンの画像を受信するように配置された受信機（９１）と、
前記受信された画像に基づいて、前記ビデオストリームの符号化された部分を形成するために、画像フレームを符号化するように構成されたエンコーダ（９２）と、
前記符号化された部分中の前記符号化された画像フレームのうちの１つである、サンプル画像フレーム（２０）の動きの長さを判定することであって、前記動きの長さが、時間的に先行する画像フレーム（１０）に対する前記サンプル画像フレーム（２０）における、前記カメラと前記シーンとの間の相対的動きの量を示す、動きの長さを判定することと、
前記エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定することと、
前記判定された動きの長さを、前記設定された動きの長さしきい値と比較することと、
前記比較の結果に基づいて、前記ビデオストリームの少なくとも調整部分（ＰＡ）の選定された時間フレーム距離を調整することであって、前記調整部分が、前記符号化された部分中に、または時間的に後の符号化された部分中に含まれる、時間フレーム距離を調整することと
を行うように構成されたフレームレートコントローラ（９３）と
を備える、画像処理ユニット。
【請求項１５】
請求項１４に記載の画像処理ユニット（９０）を備えるカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はビデオ符号化の分野に関し、より詳細には、符号化のためにビデオストリームがどのように形成されるかに関する。
【背景技術】
【０００２】
ネットワークカメラ監視システムなどのデジタルビデオシステムでは、ビデオシーケンスは、様々なビデオ符号化方法を使用して送信および／または記憶の前に圧縮される。多くのデジタルビデオ符号化システムでは、ビデオフレームのシーケンスのビデオフレームを圧縮するために、２つの主要なモード、すなわち、イントラモードおよびインターモードが使用される。イントラモードでは、ルミナンスチャネルおよびクロミナンスチャネルは、予測、変換およびエントロピーコーディングを介して単一のフレームの所与のチャネル中のピクセルの空間的冗長性を活用することによって符号化される。符号化されたフレームはイントラフレームと呼ばれ、Ｉフレームと称されることもある。イントラフレーム内では、マクロブロック、コーディングユニット、またはコーディングツリーユニットとも称される、ピクセルのブロックは、イントラモードで符号化され、これは、それらが同じ画像フレーム内の類似するブロックを参照して符号化されるか、またはまったく参照なしで未加工コーディングされることを意味する。インターモードは、代わりに、別個のフレーム間の時間的冗長性を活用し、ピクセルの選択されたブロックのためにあるフレームから別のフレームへのピクセルの動きを符号化することによって、１つまたは複数の前のフレームからフレームの一部を予測する、動き補償予測技法に依拠する。符号化されたフレームはインターフレームと呼ばれ、復号順序で前のフレームを指すことができるＰフレーム（順方向予測フレーム）、または２つまたはそれ以上の前に復号されたフレームを指すことができ、予測のために使用されるフレームの任意の表示順序関係を有することができるＢフレーム（双方向予測フレーム）と称されることがある。インターフレーム内では、ピクセルのブロックは、それらが前に復号された画像中の類似するブロックを参照して符号化されることを意味するインターモードで、あるいは、それらが同じ画像フレーム内の類似するブロックを参照して符号化されるか、またはまったく参照なしで未加工コーディングされることを意味するイントラモードでのいずれかで符号化され得る。
【０００３】
インターフレームは、概して、イントラフレームよりも画像を表すためにより少ないビットを必要とする。同様に、インターフレームのインターコード化ブロックは、イントラコード化ブロックよりも少ないビットを必要とする。記憶スペースと送信帯域幅とを節約することの重要性において、それゆえ、インターフレームを使用すること、およびインターフレーム中で少数のイントラコード化ブロックを使用することは有益である。
【０００４】
ピクセルのブロックがインターコーディングされるべきであるとき、参照フレーム中の十分に類似するピクセルのブロックについて探索が行われる。すでに述べられたように、参照フレームは、前に符号化および復号された画像フレームである。参照フレーム中のブロックが、参照ブロックとして使用されるべき現在画像中の符号化されるべきブロックに十分に類似すると見なされるために、現在画像フレーム中のブロックと参照フレーム中の潜在的ブロックとの間の差分は、所定の類似度しきい値を下回らなければならない。差分は、たとえば、絶対差分和（ＳＡＤ）として表され得る。ＳＡＤは、現在画像フレーム中のピクセルと参照フレーム中の比較されたブロック中の対応するピクセルとの間の絶対差分をとることと、ブロック中のすべてのピクセルについてすべてのそのような差分の和を計算することとによって計算される。したがって、ＳＡＤは、以下のように表され得る。
2018201189.tif 000003
【０００５】
ここで、Ｎは、検討されるブロック中のピクセルの数であり、Ｖｃ，ｎは、現在画像フレーム中のピクセルｎのピクセル値であり、Ｖｒ，ｎは、参照フレーム中の対応するピクセルｎのピクセル値である。
【０００６】
探索が開始されるブロックが、符号化されるべきブロックに類似すると見なされる場合、この第１のブロックは参照ブロックとして使用され、符号化すべきブロックが、参照フレーム中の参照ブロックと比較して画像フレーム中でどのくらい変位されるかを説明する動きベクトルが計算される。
【０００７】
一方、探索が開始されるブロックが、符号化されるべきブロックとあまりに多く異なる場合、すなわち、ＳＡＤが所定のしきい値を上回る場合、探索は別のブロックに進む。どのブロックに進むべきかは、探索のために使用される探索パターンによって判定される。スパイラルパターン探索、３ステップ探索、４ステップ探索、全数探索、２分探索、ダイヤモンド探索、２次元対数探索、直交探索、ワンアットアタイム（ｏｎｅ  ａｔ  ａ  ｔｉｍｅ）探索、相互探索、適応ルードパターン（ａｄａｐｔｉｖｅ  ｒｏｏｄ  ｐａｔｔｅｒｎ）探索、階層探索、または空間的依存探索など、多くの可能な探索パターンがある。ゴールデンスパイラルパターン、すなわち、フィボナッチスパイラルパターンなど、スパイラル探索パターンの変形態が使用され得る。類似するブロックが見つけられるとすぐに、探索は中止され、類似するブロックは参照ブロックとして使用される。概して、エンコーダは、さもなければ、リアルタイムで実施されるべき符号化についての探索を実施するのにあまりにも長い時間がかかり得るので、探索がどのくらい長く続き得るかに対して限定を有する。探索の最大長は、たとえば、ブロックの行または列の数として設定され得る。類似するブロックを見つけることなしに探索の最大長に達した場合、現在画像フレーム中のブロックはイントラコード化ブロック、すなわち、Ｉブロックとして符号化され、これは、概して、大きい残差を用いて、すなわち、あまり類似していないブロックを参照ブロックとして使用して、それをＰブロックとして符号化することよりもビット効率がよくなるからである。探索および符号化は、現在画像中のすべてのブロックについて、このようにして繰り返される。
【０００８】
キャプチャされたシーン中に多くの明らかな移動があるとき、それは、シーン中に実際の移動があるので、シーン中に照明変化があるので、またはパンニングまたはチルティング移動中、ズーム動作、またはぶれ移動中のシーンに対してカメラが移動しているので、あるフレームから次のフレームまでに発生する移動が、しばしば、探索の最大長内に収まる最長動きベクトルよりも大きくなることから、インターフレーム中のＩブロックを符号化する確率が増加する。これは、参照フレーム中に十分に類似するブロックが極めて都合よくあり得るが、それが最大探索範囲外にあることを意味する。それゆえ、多くのブロックは、イントラコーディングされる必要があることになる。これは、より多くの帯域幅および記憶容量を必要とする、より大きい画像ファイルにつながる。画像品質を不必要に犠牲にすることなしに、また、画像フレームをキャプチャするカメラが移動しているとき、およびキャプチャされたシーン中に多くの移動または変化があるとき、画像フレームを表すために必要とされるビット数を低減することができることが望ましいであろう。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、シーン中に多くの明らかな移動があるとき、効率的なビットレート使用を用いてビデオストリーム中の画像フレームを符号化することを可能にする方法を提供することである。
【００１０】
ビデオストリームの効率的な符号化を有効にする画像処理ユニットを提供することも本発明の目的である。
【課題を解決するための手段】
【００１１】
第１の態様によれば、これらおよび他の目標は、カメラによってキャプチャされたシーンの画像に基づいてビデオストリームを形成するための方法によって、全体的にまたは少なくとも部分的に達成され、本方法は、カメラによってキャプチャされた画像に基づいて、エンコーダによって、画像フレームを符号化し、ビデオストリームの符号化された部分を形成することと、符号化された部分中の符号化された画像フレームのうちの１つである、サンプル画像フレームのための動きの長さを判定することであって、動きの長さが、時間的に先行する画像フレームに対するサンプル画像フレームにおける、カメラとシーンとの間の相対的動きの量を示す、動きの長さを判定することと、エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定することと、判定された動きの長さを、設定された動きの長さしきい値と比較することと、比較の結果に基づいて、ビデオストリームの少なくとも調整部分の選定された時間フレーム距離を調整することであって、調整部分が、符号化された部分中に、または時間的に後の符号化された部分中に含まれる、時間フレーム距離を調整することとを含む。そのような方法は、シーン中に動きがあるとき、またはシーンをキャプチャするカメラが移動しているとき、符号化を適応させることを可能にする。これは、ビットレート節約を行うことを可能にする。
【００１２】
本明細書で使用される「カメラとシーンとの間の相対的動き」は、シーン中の動き、ならびにカメラの移動を意味する。シーン中の動きは、シーン中で実際に移動しているオブジェクトによって引き起こされ得るが、光の変化によっても引き起こされ得る。カメラの移動は、カメラのパニング、チルティング、または回転移動、ならびにズーム動作であり得る。カメラの移動はまた、カメラが完全には固定されていない場合、ぶれによって引き起こされ得る。
【００１３】
選定された時間フレーム距離を調整することは、判定された動きの長さが、設定された動きの長さしきい値を上回るときに、Ｎ≧１個の（１つまたは複数の）追加の画像フレームを符号化することによって、調整部分の選定された時間フレーム距離を減少させることであって、１つまたは複数の追加の画像フレームが調整部分の連続画像フレームの間に位置する、時間フレーム距離を減少させることを含み得る。追加の画像フレームを符号化することによって、ピクセルブロックがＰブロックとして符号化され得る尤度は、ブロックの移動がより多くの画像フレーム上で拡散されるので増加する。
【００１４】
１つまたは複数の追加の画像フレームは、サンプル画像フレームと先行する画像フレームとの間に位置し得る。
【００１５】
本方法のいくつかの変形態では、１つまたは複数の追加の画像フレームは、動きベクトルを用いて、および残差を用いずにインターフレーム符号化される。これによって、残差が符号化されないので、ビットレートはさらに低減され得る。
【００１６】
１つまたは複数の追加の画像フレームは、１つまたは複数の追加の画像フレームがビデオストリームの受信機によって表示されるべきでないことを示す非表示マーカーに関連付けられ得る。このようにして、受信端におけるフレームレートは維持され得る。これは、符号化されたビデオストリームの受信側、たとえば、ビデオ管理システムが、表示されたフレームレートを変化させることが可能でない場合、必要であり得る。
【００１７】
本方法のいくつかの変形態では、選定されたフレームレートを調整することは、判定された動きの長さが、設定された動きの長さしきい値を下回るときに、ビデオストリームの符号化された画像フレームを削除することによって、調整部分の選定された時間フレーム距離を増加させることを含む。これによって、動きがほとんどまたはまったくないとき、ビットレートは節約され得る。
【００１８】
動きの長さしきい値は、動きベクトル探索範囲内で検出され得るピクセルのブロックのための動きの最も長い長さであるように設定され得る。このようにして、動きが、動きベクトル探索範囲を考慮して、インターコーディングを用いて符号化されるのに大きすぎるとき、フレームレートは調整され得る。
【００１９】
本方法は、判定された動きの長さを上側動きの長さしきい値と比較することと、判定された動きの長さが上側動きの長さしきい値を下回るという条件に基づいて、選定された時間フレーム距離を調整することとをさらに含み得る。これによって、時間フレーム距離、または言い換えるとフレームレートの調整は、動きが、追加の画像フレームを符号化することによって補償されるのに大きすぎるとき、回避され得る。
【００２０】
符号化された部分中のサンプル画像フレームの動きの長さを判定することは、サンプル画像フレームを時間的に先行する画像フレームと比較することを含み得る。
【００２１】
いくつかの変形態では、本方法は、比較することの前に、サンプル画像フレームと先行する画像フレームとをスケールダウンすることをさらに含む。これによって、より長い動きベクトルが、同じ動きベクトル探索範囲内で見つけられ得る。
【００２２】
本方法は、カメラの動きを示すデータを受信することをさらに備え、サンプル画像フレームの動きの長さを判定することは、受信されたデータに基づく。動きを示すデータは、カメラの動きセンサーまたはパンチルトズーム（ＰＴＺ：ｐａｎ−ｔｉｌｔ−ｚｏｏｍ）制御ユニットから受信され得る。
【００２３】
第２の態様によれば、これらおよび他の目標は、処理能力を有するデバイスによって実行されたとき、第１の態様の方法を行うように適応された命令をもつ非一時的コンピュータ可読記憶媒体を備えるコンピュータプログラム製品によって、全体的にまたは少なくとも部分的に達成される。
【００２４】
第３の態様によれば、これらおよび他の目標は、ビデオストリームを形成するように構成された画像処理ユニットによって、全体的にまたは少なくとも部分的に達成され、画像処理ユニットは、画像センサーによってキャプチャされたシーンの画像を受信するように配置された受信機と、受信された画像に基づいて、ビデオストリームの符号化された部分を形成するために、画像フレームを符号化するように構成されたエンコーダと、符号化された部分中の符号化された画像フレームのうちの１つである、サンプル画像フレームの動きの長さを判定することであって、動きの長さが、時間的に先行する画像フレームに対するサンプル画像フレームにおける、カメラとシーンとの間の相対的動きの量を示す、動きの長さを判定することと、エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定することと、判定された動きの長さを、設定された動きの長さしきい値と比較することと、比較の結果に基づいて、ビデオストリームの少なくとも調整部分の選定された時間フレーム距離を調整することであって、調整部分が、符号化された部分中に、または時間的に後の符号化された部分中に含まれる、時間フレーム距離を調整することとを行うように構成されたフレームレートコントローラとを備える。
【００２５】
第３の態様の画像処理ユニットは、概して、付随する利点をもつ第１の態様の方法と同じやり方で具現され得る。
【００２６】
第４の態様によれば、これらおよび他の目標は、第３の態様による画像処理ユニットを備えるカメラによって、全体的にまたは少なくとも部分的に達成される。
【００２７】
本発明の適用可能性のさらなる範囲は、以下の発明を実施するための形態から明らかになろう。しかしながら、本発明の範囲内の様々な変更および改変が、発明を実施するための形態から当業者に明らかになるので、発明を実施するための形態および具体的な例は、本発明の好ましい実施形態を示すが、例示として与えられるものにすぎないことを理解されたい。
【００２８】
それゆえに、そのようなデバイスおよび方法は変わり得るので、本発明は、説明されるデバイスの特定の構成要素部分、または説明される方法のステップに限定されないことを理解されたい。本明細書で使用される用語は、特定の実施形態を説明するためのものにすぎず、限定するものではないことも理解されたい。本明細書および添付の特許請求の範囲において使用される、冠詞「ａ」、「ａｎ」、「ｔｈｅ」、および「ｓａｉｄ」は、コンテキストが別段に明白に規定しない限り、要素のうちの１つまたは複数があることを意味するものとすることに留意されなければならない。したがって、たとえば、「ａｎ  ｏｂｊｅｃｔ」または「ｔｈｅ  ｏｂｊｅｃｔ」への言及は、数個のオブジェクトなどを含み得る。その上、「ｃｏｍｐｒｉｓｉｎｇ（含む／備える）」という単語は、他の要素またはステップを除外しない。
【００２９】
次に、本発明を、例として、および添付の概略図を参照しながらより詳細に説明する。
【図面の簡単な説明】
【００３０】
【図１】カメラによって監視されるシーンの透視図である。
【図２ａ】カメラによってキャプチャされた図１のシーンの画像の説明図である。
【図２ｂ】カメラによってキャプチャされた図１のシーンの別の画像の説明図である。
【図３】符号化のためにピクセルのブロックに分割された図２ａおよび図２ｂの画像を示す図である。
【図４】図３の画像と追加の画像とを示す図である。
【図５】符号化された画像フレームのシーケンスの説明図である。
【図６】本発明の変形態に従ってフレームレートが調整された、符号化された画像フレームのシーケンスの説明図である。
【図７】本発明の別の変形態に従ってフレームレートが調整された、符号化された画像フレームのシーケンスの説明図である。
【図８ａ】動きベクトルのヒストグラムの例を示す図である。
【図８ｂ】動きベクトルのヒストグラムの例を示す図である。
【図９】発明的方法の変形態のフローチャートである。
【図１０】本発明の一実施形態による、ビデオ処理ユニットのブロック図である。
【図１１】本発明の一実施形態による、カメラのブロック図である。
【発明を実施するための形態】
【００３１】
図１では、カメラ２によって監視されるシーン１が示されている。シーン１では、車３が確認され得る。カメラ２は、シーン１の画像のシーケンスをキャプチャするビデオカメラである。図２ａは、第１の時点におけるシーン１のキャプチャされた第１の画像１０を示す。ここで、車３は、画像１０において左側に見える。図２ｂは、より遅い第２の時点においてキャプチャされた第２の画像２０を示す。車３は、今ではある距離を右側に走ったところにあり、それゆえ、画像２０において右側に見える。
【００３２】
図３は、符号化のためのピクセルのブロック１１、２１に概略的に分割された２つの画像１０、２０を示す。各画像は、たとえば、１９２０×１０８０ピクセルからなり得、ピクセルは、たとえば、６４×６４ピクセルのブロックにグループ化され、３０×１７ブロックを生じ得る。しかしながら、図面の明快のために、低減された数のブロックのみが、図３に示されている。
【００３３】
第２の画像２０が符号化されるべきであるとき、第１の画像１０の符号化および復号されたバージョンが参照フレームとして使用され、インターコーディングが使用される。第２の画像２０中の各ピクセルブロック２１の場合、探索は、第１の画像１０中の十分に類似するブロックについて行われる。一例として、チェックのパターンによってマークされた、後輪に近い車の一部を表すブロック２２が検討されることになる。車の本質的に同じ一部を表す対応するブロック１２が、第１の画像１０中でマークされている。参照ブロックとして使用するのに十分に類似するブロックについて探索が行われるとき、探索は、第２の画像２０中で符号化されるべきであるブロック２２の位置に対応する第１の画像１０中の位置において開始する。第１の画像では、符号化されるべきブロック２２に対応する位置におけるブロック１３がハッチングによってマークされている。探索は、対応して位置するブロック１３において開始し、たとえば、開始ブロック１３からスパイラルパターンに従う。簡単のために、ブロックへのピクセルの同じグループ化が、第２の画像２０にあるように第１の画像１０に図示されていることに留意され得る。しかしながら、探索は、同等のグループ化に限定される必要はなく、サブピクセルレベルで行われ得る。この簡略化された例では、探索は、図３中で点線を用いてマークされた、高さが７ブロックおよび幅が７ブロックである探索エリア１４に限定される。このようにして、探索が、類似するブロック１２に達しないであろうということが確認され得る。それゆえ、符号化すべきブロック２２は、イントラコーディングを使用して、すなわち、Ｉブロックとして符号化されなければならないことになる。背景技術のセクションにおいてすでに論じられたように、多くのＩブロックをもつインターフレームは、概して、より少数のＩブロックをもつインターフレームよりも多くのビットを必要とする。したがって、第１の画像１０と第２の画像２０とを含んでいるビデオシーケンスを符号化するエンコーダからの出力ビットレートは、おそらく不必要に高くなる。
【００３４】
本発明によれば、この問題は、画像フレームが符号化されるフレームレートを増加させることによって解決され得る。これは、より多くの画像フレームが、より少ない数の画像フレームよりも符号化するためのより多くのビットを必要とすることが予想されることになるので、直観に反しているように見え得る。しかしながら、本発明の発明者は、画像フレームが符号化されるフレームレートを増加させることによって、オブジェクトが２つの連続フレーム間で移動したであろう距離が、より低いフレームレートが使用された場合よりも短くなるであろうことを了解した。それにより、Ｐブロックの比は増加され得、増加されたビットレートによって引き起こされるビットレートの増加を超え得るビットレートの減少を許容する。また、フレーム毎秒またはｆｐｓで表されるフレームレートは、秒で表される時間フレーム距離に関して考慮され得る。たとえば、画像フレームが３０ｆｐｓのレートにおいて符号化された場合、連続フレーム間の時間距離は１／３０秒である。したがって、フレームレートおよび時間フレーム距離は、同じ物、すなわち、どのくらいの頻度で画像フレームが符号化されるか、を制御する２つのパラメータである。
【００３５】
一例として画像１０、２０中の車では、２倍のフレームレートが使用された場合、第１の画像１０と第２の画像２０との間に追加の画像があるであろうことが理解され得る。第１の画像１０のキャプチャ時間と第２の画像２０のキャプチャ時間との中間でキャプチャされた、そのような追加の画像では、キャプチャフレームレートと比較して適度に一定である速度において車が移動すると仮定すると、車は、第１の画像フレーム１０から追加の画像フレームまでに、車が第１の画像フレーム１０から第２の画像フレーム２０までに移動した距離の半分のみ移動したことになる。これは、追加の画像３０が第１の画像１０と第２の画像２０との間に追加された図４に例示されている。図面を乱雑にしないために、符号化されるべきブロック２２と、本発明の説明のために必要とされる他の画像中のブロックとを除いて、ブロック境界は図４に示されていない。
【００３６】
第２の画像２０中でマークされたブロック２２が符号化されるべきであるとき、追加の画像３０の符号化および復号されたバージョンが参照フレームとして使用される。ここで、ブロック２２によって表される車の一部が、追加の画像３０のキャプチャの時間から第２の画像２０のキャプチャの時間までに、その車の一部が第１の画像１０のキャプチャと第２の画像２０のキャプチャとの間で移動したほどの距離は移動しなかったことが確認され得る。探索が、追加の画像３０中の十分に類似するブロックについて行われ、対応して位置するブロック３３において開始する。前述のように、動きベクトル探索エリア３４のために同じ限定がある場合、符号化されるべきブロック２２と同じ、車の一部を表す類似するブロック３２が、探索エリア３４内で実際に見つけられる。それゆえ、符号化されるべきブロック２２は、類似するブロック３２と、現在ブロック２２が参照ブロック３２と比較してどのくらい変位されるかを示す動きベクトルと、現在ブロック２２のピクセル値が参照ブロック３２のピクセル値とどのくらい異なるかを示す残差とを参照して、Ｐブロックとしてインターコーディングを用いて符号化され得る。概して、Ｐブロックが符号化のためにＩブロックよりも少数のビットを必要とするので、エンコーダからの出力ビットレートは、符号化されるフレームの数が増加されても低減され得る。
【００３７】
図５では、符号化された画像フレームのビデオシーケンスまたはビデオストリーム５０の一例が示されている。この例では、ビデオシーケンス５０は、第１の画像フレーム１０で開始し、第２の画像フレーム２０が続き、今度は、画像フレームのシーケンスが続く。ビデオストリーム５０は、図５において第１の時間フレーム距離ｄｔ１によって例示されている第１のフレームレートにおいて符号化される。
【００３８】
上記で説明されたように、Ｐブロックとしてすべてのブロックを符号化するために第１の画像フレーム１０と第２の画像フレーム２０との間にあまりに多くの移動がある。どのくらい多くのブロックがＩブロックとして符号化される必要があることになるかに応じて、第１の画像フレームと第２の画像フレームとの間に追加の画像フレーム３０を導入することが有益であり得る。ほんの少数のブロックがＩブロックとして符号化される必要があることになる場合、たとえば、小さいオブジェクトがシーン中で高速に移動している場合、追加の画像によって追加されるビットレートは、Ｉブロックによって追加されるビットレートよりも高くなり得、そのため、追加の画像フレーム３０を導入することが有益でなくなる。しかしながら、多くのブロックがＩブロックとして符号化される必要があることになる場合、たとえば、大きいオブジェクトがシーン中で高速に移動している場合、またはカメラが移動している場合、追加の画像フレームによって追加されるビットレートは、Ｉブロックによって追加されるビットレートよりも小さくなり得、そのため、ビットが全体で節約され得る。
【００３９】
いつフレームレートを増加させるべきか、または言い換えると、いつ時間フレーム距離を減少させるべきかを判定するやり方が、次に説明される。図５では、調整部分ＰＡと称されることになるビデオストリームの第１の部分がマークされている。調整部分ＰＡは、第１のビデオストリームの部分、すなわち、いくつかの連続画像フレームによって構成される。第２の画像フレーム２０は、ここでは、サンプル画像フレームとして使用されることになる。サンプル画像フレーム２０のための動きの長さが判定される。動きの長さは、時間的に先行する画像フレーム、この場合、第１の画像フレーム１０とサンプル画像フレーム２０との間の、カメラとシーンとの間の相対的動きの量を表す。相対的動きが多くのソースを有し得ることに留意されたい。カメラとシーンとの間の相対的動きは、シーン中の１つまたは複数のオブジェクトの移動によって引き起こされ得る。また、シーンの光変化は、動きとして見え得る。さらに、カメラがパンニングおよび／またはチルティングの動きで移動している場合、これは、キャプチャされた画像の動きとして見える。同様に、カメラがズームインまたはズームアウトしている場合、これは動きとして見えることになる。加えて、カメラが、非意図的に、ぶれ移動で移動している場合、これも、キャプチャされた画像中の動きとして見えることになる。
【００４０】
時間フレーム距離が減少されるように、追加の画像が追加されるべきかどうかを判定する１つやり方は、第２の画像２０を符号化するとき、計算される動きベクトルを検討することである。それらの多くが、動き探索エリアによって限定される最大長にあるかまたは最大長に近くなるように長い場合、これは、多くの高速移動があることを示し得る。異なる長さの動きベクトルがビンに分類されるヒストグラムが製作され得る。そのようなヒストグラムの例が、図８に示されている。各ビンは動きベクトル長さを表す。ヒストグラムは、動きベクトルの特定の長さで符号化されている画像フレーム中に多くのブロックがあることを暗示するピークがあるかどうかを確認するために検討され得る。図３に例示されている例における動きベクトル探索範囲の限定は、幅７ブロック、高さ７ブロックのエリアであるので、符号化され得る最長動きベクトルは、垂直方向に３ブロックの長さ、および水平方向に３ブロックの長さである。それゆえ、動きの長さしきい値は、３ブロックにおいて設定される。図８ａは、たいていの動きベクトルが最大動きベクトル長さＭＶｍａｘの約半分の長さを有する画像フレームを表すヒストグラムを示す。図８ａおよび図８ｂに示されているヒストグラムは単に例示的なものであり、そこに示されている最大動きベクトル長さＭＶｍａｘは必ずしも３ブロックとは限らないことに留意されたい。図８ｂに示されているように、第２の画像フレーム２０中の多くのブロックが、いかなる方向でも長さが３ブロックの動きベクトルで符号化されていた場合、わずかにより長い動きベクトルで符号化され得たブロックもあったか、より大きいエリア中での探索が可能であったかまたは許容されたエンコーダがあったことが疑われ得る。図６の場合のように、追加の画像３０を挿入することによって、第２の画像フレーム２０中のピクセルブロックをＰブロックとして符号化するより良い機会が達成される。同様に、フレームレートが２倍にされ、時間フレーム距離が、第１のビデオシーケンス５０の第１の時間フレーム距離ｄｔ１から第２のビデオシーケンス６０の第２の時間フレーム距離ｄｔ２に１／２にされるように、追加の画像が、調整部分ＰＡ中の連続画像フレームの各ペア間に挿入される。調整部分ＰＡの後に、時間フレーム距離が第１の時間フレーム距離ｄｔ１に戻るように、フレームレートは元のフレームレートに戻り得る。
【００４１】
符号化がリアルタイムで行われた場合、サンプル画像フレーム２０の前に追加の画像フレーム３０を追加することが可能でないことあることに留意され得る。代わりに、追加の画像フレームの追加は、サンプル画像フレームの後に開始し得る。これは、サンプル画像フレーム２０の後に追加の画像フレーム３０の追加によってフレームレートが増加されるビデオストリーム７０を示す図７に例示されている。
【００４２】
フレームレートをいつ増加させるべきか、すなわち、時間フレーム距離をいつ減少させるべきかという決定に対する異なる手法が行われ得る。これらの手法の各々では、カメラとシーンとの間の相対的動きの量を示す動きの長さが考慮に入れられる。動きの長さは、サンプル画像フレーム中で符号化された最長動きベクトルとして判定され得、そのため、ブロックが、動きベクトル探索範囲内に収まる最大長のものである動きベクトル用いて符号化されるとすぐに、フレームレートは増加される。このようにして、シーンの小さい一部のみを表すわずか単一のブロックが、最長利用可能動きベクトルを必要とするのに十分に移動したとしても、フレームレートは増加されることになる。代替的に、サンプル画像フレームのための動きの長さは、最長動きベクトル長さとして判定され得、少なくとも所定の数のブロックが最長動きベクトルを用いて符号化される。したがって、１つまたは少数のブロックのみが、動きベクトル探索範囲の最大値に対応する動きベクトルを用いて符号化された場合、これは、フレームレートを増加させるという決定につながらないことになるが、たとえば、ブロックの１０％がそのような長い動きベクトルを用いて符号化されていた場合、その長さは、サンプル画像フレームのための動きの長さと見なされることになる。このようにすると、少数のブロックは、Ｉブロックとして符号化されることを許容され、それにより、場合によっては、追加の画像フレームを追加しないことによってビットを節約することになる。また、そのサンプル画像フレームのための動きの長さとしてサンプル画像フレーム中のすべての動きベクトルの平均またはメジアンを使用することが可能であろう。動きの長さを判定するために使用される手法にかかわらず、各動きベクトルは、ｘ方向における長さならびにｙ方向における長さを有し得る。動きベクトルがどのように符号化されるかに応じて、各動きベクトルの全長だけでなく、それぞれｘ成分の長さおよびｙ成分の長さをも検討することが興味深いことがある。
【００４３】
上記で説明された手法を用いると、動きベクトル探索範囲内に収まる動きベクトルよりも長い動きベクトルを見つけることが可能でないことに留意され得る。しかしながら、サンプル画像フレームとそれの参照フレームとをダウンスケールすることによって、動きベクトル探索範囲は元の画像フレームのより大きい部分を効果的にカバーし得、そのため、より長い動きベクトルは見つけられ得る。このようにすると、いくつかの動きベクトルが動きベクトル探索範囲の限界にあるということだけでなく、いくつかの動きベクトルが一層長いということをも判定することが可能である。見つけられ得る動きベクトルがどのくらい長いかは、サンプル画像フレームと基準画像フレームとがどんなファクタを用いてダウンスケールされるかに依存する。動きベクトル探索の前に画像フレームをダウンスケールすることによって、フレームレートが増加されるべきであるということだけでなく、どのくらい増加されるかということをも判定することが可能であり得る。たとえば、ダウンスケールすることは、全規模画像中で見つけられ得たものよりも、実際に３倍長い動きベクトルを見つけることを可能にする場合、次いで、最長動きベクトルが動きの長さしきい値の２倍である場合、調整部分中の画像フレームごとに１つの追加の画像フレームを追加することによってフレームレートは２倍にされるべきであり、最長動きベクトルが動きの長さしきい値の３倍である場合、調整部分中の画像フレームごとに２つの追加の画像フレームを追加することによって、フレームレートは３倍にされるべきである。
【００４４】
サンプル画像フレームのための動きの長さを判定する別のやり方は、カメラのＰＴＺコントローラからの入力を使用することである。ＰＴＺコントローラはカメラのパンおよびチルト移動を制御し、ズーミングをも制御する。ズーミングはカメラの実際の移動を内包しないが、カメラによってキャプチャされた画像では、ズーミングはカメラの移動と等価な効果を有することになる。ＰＴＺコントローラからの入力は、移動がどのくらい多くのピクセルブロックに対応するかを示し得る。代替的に、ＰＴＺ入力は、たとえば、カメラ視野がどのくらいの程度移動したかを伝え得、次いで、この情報は、いくつかのピクセルブロックに変換され得る。ＰＴＺ移動は、しばしば、ｘ方向およびｙ方向における移動、ならびに回転を伴う。これらの移動の重み付けされた平均が計算され得、サンプル画像フレームのための動きの重み付けされたグローバル長さは動きの長さしきい値と比較され得る。動きの長さが動きの長さしきい値を上回る場合、調整部分のフレームレートは増加される。
【００４５】
さらに、サンプル画像フレームのための動きの長さは、カメラ中の動きセンサーを使用して判定され得る。動きセンサーは、たとえば、加速度計またはジャイロスコープであり得る。この手法はサンプル画像フレームのための動きのグローバル長さをも提供し、動きのこの長さは、フレームレートが増加されるべきであるかどうかを判定するための動きの長さしきい値と比較される。
【００４６】
どの手法が使用されるかにかかわらず、Ｐフレーム中のＩブロックの数を低減することによって行われ得るビットレート節約は、追加の画像フレームを追加することによって引き起こされるビットレート増加に対して重み付けされなければならない。
【００４７】
概して、推定値は、動きベクトルを符号化するための、Ｐブロックを符号化するための、およびＩブロックを符号化するためのビットコストから作られ得る。簡略化された例として、動きベクトルを符号化するために必要とされるビット数は、動きベクトルの長さのｌｏｇ２に比例する。多くのブロックが同期動きベクトルを有する場合、ビットコストはより低くなる。Ｐブロックを符号化するために必要とされるビット数は、たとえば、２０ビットにおいて推定され、Ｉブロックを符号化するために必要とされるビット数は２００ビットにおいて推定され得る。フレームのためのオーバーヘッドコストも推定され、画像フレーム中のブロックの数で除算され、たとえば、ブロックごとに０．１ビットであり得る。
【００４８】
第１の画像フレーム１０から第２の画像フレーム２０への動きが、最大動きベクトル長さを上回るが、追加の画像フレームの符号化が、最大動きベクトル長さを下回るまで、ある画像フレームから次の画像フレームへの動きを低減する状況では、ビットレートは節約される。たとえば、第１の画像フレーム１０から第２の画像フレーム２０への動きが、最大動きベクトル長さの２倍である場合、第１の画像フレームと第２の画像フレームとの間の追加の画像フレーム３０の符号化は、第１の画像フレーム１０と追加の画像フレーム３０との間の最大動きベクトル長さまで、および追加の画像フレーム３０と第２の画像フレーム２０との間の最大動きベクトル長さまで動きを低減する。上記で与えられた例となる数の場合、これは、Ｉブロックのビットコスト−２×Ｐブロックのコスト、すなわち、２００−２＊２０＝１６０ビットの節約を与え得る。この節約の確率はｐ０と表示され得、ピクセルのブロックごとに計算される。
【００４９】
フレームレートを増加させることが、ビットレート単位の損失を与えることになる状況もある。これらのうちの１つは、第１の画像フレームと第２の画像フレームとの間で往復する振動（ｏｓｃｉｌｌａｔｉｎｇ）動きがあるときであり、これは、その場合、振動オブジェクトが、追加の画像フレームに対応する、第１の画像フレームと第２の画像フレームとの間のある時点においてそれの元の位置からの最大変位にあり得るが、振動オブジェクトは、第２の画像フレームにおいてそれの元の位置に戻り得る。この損失の確率はｐ１と表示され得る。
【００５０】
損失状況のうちの別の状況は、加速する移動があるときである。第１の画像フレームから追加の画像フレームへの動きは、最大動きベクトル長さを下回り得るが、増加する速度がある場合、追加の画像フレームから第２の画像フレームへの動きは大きすぎることがあり、そのため、第２の画像フレーム中のブロックは、いずれにせよＩブロックとして符号化される必要があり得、そのため、追加の画像フレームは役に立たなかったが、ただビットを追加した。この損失の確率はｐ２と表示され得る。
【００５１】
同様に、減速する移動があるとき、損失が起こり得る。そのような状況では、第１の画像フレームから追加の画像フレームへの動きは、最大動きベクトルの長さの半分超であり、これは、追加の画像フレームがなければ、第１の画像フレームから第２の画像フレームへの動きが、最大動きベクトル長さを上回ることになることを示し得る。しかしながら、減速がある場合、追加の画像フレームから第２の画像フレームへの動きは、第１の画像フレームから第２の画像フレームへの動き全体が最大動きベクトル長さを下回るのに十分小さくなり得る。この損失の確率はｐ３と表示され得る。
【００５２】
確率ｐ０、ｐ１、ｐ２、およびｐ３を考慮に入れると、ピクセルのブロックごとに節約を計算することは可能である。この節約がオーバーヘッドコストよりも高い場合、フレームレートは増加されるべきである。
【００５３】
フレームレートが増加されるときと同様の様式で、シーン中に動きがほとんどまたはまったくないとき、フレームレートを減少させることがビットレート単位で有益になるインスタンスがある。フレームレート減少は、通常、エンコーダからの出力ビットレートを減少させることが予想されるが、上記の考察からよく理解され得るように、これが常にそうであるとは限らない。シーン中になんらかの移動があり、フレームレートが減少される場合、あるフレームから次のフレームへのブロックの変位が、動きベクトル探索範囲内に収まる最長動きベクトルよりも大きいので、イントラコーディングを使用してコーディングされなければならないピクセルブロックの数は増加し得る。上記で説明された同じ原理は、フレームレートが安全に減少され得るときを判定するために使用され得る。サンプル画像フレームのための動きの長さが判定される。すでに説明されたように、これは、いくつかの異なるやり方で行われ得る。動きの長さは動きの長さしきい値と比較され、動きの長さが動きの長さしきい値を下回るか、または所定のマージンだけ動きの長さしきい値を下回る場合、フレームレートを減少させるか、または言い換えれば時間フレーム距離を増加させるという決定が行われ得る。これは、ビデオシーケンスの調整部分から１つまたは複数の画像フレームを削除することによって行われ得る。それは、ビデオシーケンスの時間的に後の符号化された部分中の１つまたは複数の画像フレームを符号化するのを控えることによっても行われ得る。
【００５４】
本発明の原理は、次に、図９に例示された一例の助けをかりて要約されることになる。
【００５５】
図１中のカメラ２などのカメラによって、画像がキャプチャされる。カメラ２は、以下でさらに論じられることになる図１１にも示されている。画像をエンコーダにおいて符号化し（図９中のステップＳ１）、それにより、ビデオストリームの符号化された部分を形成する。エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定する（Ｓ２）。上述のように、動きベクトル探索範囲は、しばしば、いくつかのピクセルブロックの幅およびいくつかのピクセルブロックの高さを有するエリアとして設定される。いくつかのエンコーダでは、動きベクトル探索は、代わりに最大探索時間によって限定される。サンプル画像フレームのための動きの長さを判定する（Ｓ３）。サンプル画像フレームは、ビデオストリームの符号化された部分中の符号化された画像フレームのうちの１つである。上記で説明されたように、動きの長さの判定は、様々なやり方で行われ得る。サンプル画像フレームのための動きの長さを動きの長さしきい値と比較し（Ｓ４）、この比較に基づいて、ビデオストリームの調整部分の時間フレーム距離を調整する（Ｓ５）。動きの長さが動きの長さしきい値を上回る場合、時間フレーム距離は減少され、すなわち、フレームレートは増加される。動きの長さが動きの長さしきい値を下回る場合、時間フレーム距離は増加されるか、または不変のままにされ得る。時間フレーム距離の調整は、所定の数の連続画像フレームからなるビデオストリームの調整部分のために実施され得る。調整部分の後に、フレームレート、それゆえに時間フレーム距離は、調整の前のそれの状態に戻され得る。代替的に、調整されたフレームレートは、後のサンプル画像フレームと動きの長さしきい値とにおける動き長さの新しい比較が、新しい調整が必要とされるか、または元のフレームレートへの復帰が望ましいことを示すまで維持され得る。
【００５６】
いくつかの適用例では、ビデオ管理システムなど、符号化されたビデオストリームの受信側は、ビデオストリームを表示または記憶するとき、フレームレートを調整することが可能でないことがある。そのような場合、非ディスプレイフラグを用いて追加の画像フレームを符号化することが有利であり得る。非ディスプレイフラグは、受信端上のデコーダに、追加の画像フレームが表示されるべきでないが、復号のためにのみ使用されるべきであることを通知することになる。それゆえ、表示された画像フレームは、エンコーダ（およびデコーダ）のフレームレートが増加されても元のフレームレートを保持する。
【００５７】
追加の画像フレームが表示されるべきでない場合、動きベクトルを用いるが、残差を用いずに追加の画像フレームを符号化することによって、さらなるビットレート節約が達成され得る。このようにして、デコーダは、非ディスプレイフラグを有しない最も近い先行する参照フレーム中の参照ブロックへの追跡のために追加の画像フレームの動きベクトルを使用することになり、符号化された残差は、それらの間の追加の画像とでなく、その参照フレームと比較された残差であることになる。
【００５８】
図１０では、ビデオストリームを形成するように構成された画像処理ユニット９０の一例のブロック図が示されている。画像処理ユニット９０は、上記で説明された方法に従って作動し得る。画像処理ユニット９０は、カメラ２によってキャプチャされた画像を受信するように配置された受信機９１を有する。さらに、画像処理ユニット９０は、ビデオストリームの符号化された部分を形成するために、受信された画像に基づいて、画像フレームを符号化するように配置されたエンコーダ９２を有する。画像処理ユニット９０はフレームレートコントローラ９３をも有する。フレームレートコントローラ９３は、ビデオストリームの符号化された部分中の符号化された画像フレームのうちの１つである、サンプル画像フレームの動きの長さを判定するように配置される。上記ですでに説明されたように、動きの長さは、時間的に先行する画像フレームに対するサンプル画像フレームにおける、カメラとシーンとの間の相対的動きの量を示す。フレームレートコントローラ９３は、エンコーダの動きベクトル探索範囲に基づいて動きの長さしきい値を設定するように構成される。さらに、フレームレートコントローラは、判定された動きの長さを、設定された動きの長さしきい値と比較し、比較の結果に基づいて、ビデオストリームの少なくとも調整部分の選定された時間フレーム距離を調整するように構成される。言い換えれば、動きの長さと動きの長さしきい値との比較に基づいて、フレームレートは調整され得る。上記で説明されたように、調整部分は、ビデオストリームの符号化された部分中に、またはビデオストリームの時間的に後の符号化された部分中に含まれる。画像処理ユニット９０はソフトウェア、ファームウェア、またはハードウェア、あるいはそれらの任意の組合せで具現され得る。
【００５９】
画像処理ユニット９０は、図１に、また図１１に示されているカメラ２などのカメラ中に組み込まれ得る。カメラ２はレンズ１０１と、画像をキャプチャするための画像センサー１０２とを有する。当業者が理解するように、カメラ２は、図１１に示されている構成要素は別として他の構成要素も有する。しかしながら、それらの他の構成要素は、本発明を説明するために必要でないので、それらは図１１に示されておらず、さらに論じられない。
【００６０】
画像処理ユニット９０はカメラ２中の独立型ユニットであり得るか、またはそれはカメラ２の異なる構成要素からなり得る。たとえば、カメラ２は、画像処理ユニット９０の機能のうちのいくつかを実施し、雑音フィルタ処理、ホワイトバランシング、およびひずみ補正など、他の機能をも実施する、中央処理ユニットを有し得る。
【００６１】
当業者は、多くのやり方で上記で説明された実施形態を変更し、依然として、上記の実施形態に示されているように本発明の利点を使用することができることが諒解されよう。一例として、上記の説明では、サンプル画像フレームのための動きの長さが動きの長さしきい値を上回るとき、すなわち、１つの追加の画像フレームが連続画像フレームの各ペア間に追加されるとき、フレームレートは２倍にされる。しかしながら、２つ以上の追加の画像フレームを追加することが可能である。概して、１０個以下の追加の画像フレームが追加されることになる。画像が符号化されるよりも高いフレームレートにおいて画像がキャプチャされる限り、追加の画像フレームを追加することが可能であることに留意されたい。
【００６２】
時間フレーム距離、または言い換えるとエンコーダのフレームレートを調整する決定は、受身的であり得る。これは、概して、動きがシーン中の実際の移動によって引き起こされるとき、またはカメラが振動しているとき、当てはまることになる。しかしながら、調整はまた、動きがあらかじめ知られている場合に能動的であり得る。これは、ＰＴＺ移動について当てはまり、より詳細には、いわゆるガードツアーについて当てはまり得る。ガードツアーは、カメラの事前プログラムされた移動である。それは、ＰＴＺカメラの周りの空間中のいくつかのプリセット位置を訪れることと、指定された時間または指定された数のフレームの後の次のプリセット位置に異動することとを伴い得る。このようにすると、カメラの移動（またはズーミング）がいつ開始することになるか、およびそれがいつ停止することになるかが知られる。移動またはズーミングがどのくらいの速さになるかも知られ得る。この事前知識がある場合、時間フレーム距離またはフレームレートの調整は、前に計画され得る。
【００６３】
上記の例では、時間フレーム距離の調整は、ビデオストリームの調整部分中の連続画像フレーム間の１つの追加の画像フレームを符号化することによって行われていた。しかしながら、すでに示唆されたように、より多くの追加の画像フレームを追加することが時々有益であり得る。エンコーダの符号化フレームレートが、画像がキャプチャされるフレームレートよりも低い限り、エンコーダが、その増加されたフレームレートにおいて動作することが可能であるという条件で、時間フレーム距離を調整するために追加の画像フレームを符号化することが可能である。時間フレームレートが、しばしば、１つまたは２つの追加の画像フレームの追加によって、それぞれ、１／２にされるか、または３で除算され得、したがって、ビデオストリームの調整部分のフレームレートを２倍にするかまたは３倍にすることは予見される。したがって、より一般論として、時間フレーム距離は、ビデオストリームの調整部分中の連続画像フレーム間のＮ≧１個の追加の画像フレームを符号化することによって調整される。追加の画像フレームの数は、通常Ｎ＝１０よりも高くならない。Ｎは、動的に変更され得、前に論じられたビットコストの推定値に基づき得る。
【００６４】
ある点において、シーン中に動きがあっても、フレームレートを増加させることが意味をなさないことを理解されたい。たとえば、動きが非常に高速であるので、フレームレートは、移動を伴うすべてのブロックがＰブロックとして符号化され得るのに十分に増加され得ない場合、より低いフレームレートを維持し、いくつかのブロックをＩブロックとして符号化することが、より賢明であり得る。上側動きの長さしきい値が、たとえば、Ｎ×動きの長さしきい値、または√Ｎ×動きの長さしきい値として設定され得る。たとえば、動きの長さが動きの長さしきい値を上回る場合、１つまたは複数の追加の画像フレームを符号化することによって、または動きの長さが動きの長さしきい値を下回る場合、フレームを削除することによって、動きの長さが上側動きの長さしきい値を上回る場合、時間フレーム距離の調整が行われるべきでないことが決定され得、動きの長さが上側動きの長さしきい値を下回る場合、時間フレーム距離が調整されるべきであることが決定され得る。
【００６５】
上記で、画像処理ユニットはカメラ中に組み込まれているものとして説明されたが、それは別個のユニットとして配置され、カメラに動作可能に接続されることもある。
【００６６】
画像処理ユニットによって受信された画像は、キャプチャしているカメラから直接受信され得るか、またはそれらは、前にキャプチャされ、それらが画像処理ユニットに送信される前に記憶されていることがある。したがって、画像の直接のソースは、画像センサーまたはデータファイルであり得る。
【００６７】
上記の例では、ＰＴＺカメラが挙げられた。本発明は、パンニングおよびチルティングが可能であるがズーミングが可能でないカメラの場合も有用であることを理解されたい。そのようなカメラはＰＴカメラと称されることがある。ＰＴカメラは、カメラにパンニングおよびチルティング能力を与える、いわゆるＰＴヘッド上に配置された固定カメラからなり得る。さらに、本発明は、ズーミングが可能な固定カメラ、ならびにズーミングが不可能な固定カメラ、すなわち、固定焦点距離カメラに関連する。
【００６８】
カメラは、可視光を採用するカメラ、ＮＩＲ（近赤外線）放射を採用するカメラ、または感熱式カメラなど、任意の種類のカメラであり得る。
【００６９】
カメラは有利にはデジタルカメラであるが、それは、代わりに、デジタル化ユニットに接続されたアナログカメラであり得る。
【００７０】
本発明は、監視カメラと称されることがある、監視するカメラのコンテキストで説明されたが、それは、他のカメラアプリケーションにおいても利点になるように使用され得る。
【００７１】
エンコーダは、動き推定および動き補償を採用する符号化標準に従って動作し得る。エンコーダは、たとえば、Ｈ．２６４、Ｈ．２６５、またはＶＰ９エンコーダなどのブロックベースハイブリッドエンコーダであり得る。
【００７２】
本発明の方法は、コンピュータ可読、非一時的記憶媒体に記憶された命令を実行することによって実施され得る。命令は、中央処理ユニット（ＣＰＵ）、グラフィックス処理ユニット（ＧＰＵ）、集積回路中に実装されたカスタムメイドの処理デバイス、ＡＳＩＣ、ＦＰＧＡ、または個別構成要素を含む論理回路など、処理能力を有するデバイスによって実行され得る。
【００７３】
したがって、本発明は、図示された実施形態に限定されるべきでないが、添付の特許請求の範囲によってのみ規定されるべきである。
【符号の説明】
【００７４】
１  シーン
２  カメラ
３  車
１０  第１の画像
１１  ピクセルのブロック
１２  対応するブロック
１３  ブロック
１４  探索エリア
２０  第２の画像
２１  ピクセルのブロック
２２  ブロック
３０  追加の画像
３２  参照ブロック
３４  動きベクトル探索エリア
５０  ビデオシーケンス
６０  ビデオシーケンス
７０  ビデオストリーム
９０  画像処理ユニット
９１  受信機
９２  エンコーダ
９３  フレームレートコントローラ
１０１  レンズ
１０２  画像センサー
【図１】
2018201189.tif 000004
【図２ａ】
2018201189.tif 000005
【図２ｂ】
2018201189.tif 000006
【図３】
2018201189.tif 000007
【図４】
2018201189.tif 000008
【図５】
2018201189.tif 000009
【図６】
2018201189.tif 000010
【図７】
2018201189.tif 000011
【図８ａ】
2018201189.tif 000012
【図８ｂ】
2018201189.tif 000013
【図９】
2018201189.tif 000014
【図１０】
2018201189.tif 000015
【図１１】
2018201189.tif 000016
【外国語明細書】
2018201189000001.pdf
2018201189000002.pdf
2018201189000003.pdf
2018201189000004.pdf