(57)【要約】      （修正有）【課題】監視目的のビデオカメラによってキャプチャされるシーンが、不自然であるかまたは凍り付いたように見えるのを防止する、動きが少ないビデオストリームの効率的な符号化方法、装置及びシステムを提供する。【解決手段】符号化する方法は、フレームシーケンス内の最初のフレームの画像データの動きレベルが動きレベル閾値を下回るものとして決定されること、複数の基準フレームを符号化すること、複数の空フレームを符号化することを含む。符号化フレームシーケンス内の少なくとも１対の連続する空フレームについて、当該対のうちの第１の空フレームの選択されている基準フレームは、当該対のうちの第２の空フレームの選択されている基準フレームとは異なる。基準フレームはキャプチャするときに、画像センサにおけるノイズに起因する時間的ノイズを含む空フレームが、符号化ビデオストリーム内に含められる。【選択図】図５
2019198063.tif 000002
【特許請求の範囲】
【請求項１】
ビデオストリーム内のフレームシーケンス（６０６）を符号化する方法であって、前記フレームシーケンス内の最初のフレームの画像データの動きレベルが動きレベル閾値を下回ると決定されたとき（Ｓ５０２）、
複数の基準フレーム（２０２）を符号化すること（Ｓ５０４）であって、前記複数の符号化基準フレームの各基準フレームは、フレーム内符号化フレームまたはフレーム間符号化フレームである、複数の基準フレームを符号化することと、
複数の空フレーム（２０４）を符号化すること（Ｓ５１０）であって、空フレームは、スキップブロックとして符号化されるマクロブロックと、前記ビデオストリーム内の別のフレームに対する参照基準とを含み、空フレームとして符号化される各フレームについて、
前記複数の符号化基準フレームの間で１つの符号化基準フレームを選択すること（Ｓ５１４）と、
前記選択されている基準フレームに対する直接的または間接的な参照基準を有する前記空フレームを符号化すること（Ｓ５１６）であって、間接的な参照基準は、前記選択されている基準フレームを参照する、以前に符号化されている空フレームを介して行われる、前記空フレームを符号化することと
によって、複数の空フレームを符号化することとを含み、
前記符号化フレームシーケンス（２００）内の少なくとも１対の連続する空フレームについて、前記対のうちの第１の空フレームの前記選択されている基準フレームは、前記対のうちの第２の空フレームの前記選択されている基準フレームとは異なり、前記第１の空フレームの前記選択されている基準フレームと前記第２の空フレームの前記選択されている基準フレームは両方とも、前記第１の空フレームおよび前記第２の空フレームに時間的に先行する、方法。
【請求項２】
前記符号化フレームシーケンス内の連続する空フレームの各対について、前記対のうちの第１の空フレームの前記選択されている基準フレームは、前記対のうちの第２の空フレームの前記選択されている基準フレームとは異なる、請求項１に記載の方法。
【請求項３】
空フレームとして符号化されることになる第１のフレームについて、前記第１のフレームは、前記フレームシーケンス内の前記複数の基準フレームの間で第１の符号化基準フレームに直に後続し、前記複数の符号化基準フレームの間で１つの符号化基準フレームを選択するステップは、前記複数の符号化基準フレームの間で、前記第１の符号化基準フレームとは異なる符号化基準フレームを選択することを含む、請求項１に記載の方法。
【請求項４】
前記複数の基準フレームは、１つまたは複数のフレーム間符号化フレームを含み、前記方法は、
前記１つまたは複数のフレーム間符号化フレームのすべての運動ベクトルをゼロに設定するステップをさらに含む、請求項１から３のいずれか一項に記載の方法。
【請求項５】
少なくとも１つの空フレームについて、前記空フレームの前記符号化は、
前記符号化基準フレームの間で１つの符号化基準フレームを選択することであって、すでに選択されている前記符号化基準フレームが、別の符号化空フレームによって直に参照される、符号化基準フレームを選択することと、
前記別の符号化空フレームに対する参照基準を有する前記空フレームを符号化することと
を含む、請求項１から４のいずれか一項に記載の方法。
【請求項６】
符号化空フレームは、すべてのマクロブロックがスキップブロックに設定されているフレーム間符号化フレームの形態を有する、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記フレームシーケンスのフレームを空フレームとして符号化する前に、前記空フレームの前記画像データの動きレベル（６０９）を受信し、前記動きレベルが前記動きレベル閾値を下回るかどうかを決定するステップ（Ｓ５１２）と、
前記動きレベルが前記閾値動きレベルを下回るという決定を受けて、前記フレームを空フレームとして符号化するステップと、
前記動きレベルが前記閾値動きレベルを上回るという決定を受けて、前記フレームをフレーム間符号化フレームまたはフレーム内符号化フレームとして符号化するステップ（Ｓ５０３）と
をさらに含む、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記フレームシーケンスの最初のフレームがフレーム内符号化基準フレームとして符号化され、前記フレームシーケンス内で前記最初のフレームに直に後続する１つまたは複数のフレームがフレーム間符号化基準フレームとして符号化される、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記符号化基準フレームは少なくとも２つのフレーム間符号化フレームを含む、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記符号化基準フレームを選択するステップは、ランダム関数を使用して実施され、または、所定の選択シーケンスに従って実施される、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記フレームを空フレームとして符号化するステップは、
前記符号化基準フレームの間で時間的に先行する符号化基準フレームを選択することを含む、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
処理機能を有する装置によって実行されるときに、請求項１から１１のいずれか一項に記載の方法を実行に移すように適合している命令を有するコンピュータ可読記憶媒体を含む、コンピュータプログラム製品。
【請求項１３】
ビデオストリーム内のフレームシーケンス（６０６）を符号化するように適合している装置（６１０）であって、前記装置はプロセッサを備え、前記プロセッサによって、前記フレームシーケンス内の最初のフレームの画像データの動きレベルが動きレベル閾値を下回ると決定されたとき（Ｓ５０２）、前記プロセッサは、
複数の基準フレーム（２０２）を符号化すること（Ｓ５０４）であって、前記複数の符号化基準フレームの各基準フレームは、フレーム内符号化フレームまたはフレーム間符号化フレームである、複数の基準フレームを符号化することと、
複数の空フレーム（２０４）を符号化すること（Ｓ５１０）であって、空フレームは、スキップブロックとして符号化されるマクロブロックと、前記ビデオストリーム内の別のフレームに対する参照基準とを含み、空フレームとして符号化される各フレームについて、
前記符号化基準フレームの間で１つの符号化基準フレームを選択すること（Ｓ５１４）と、
前記選択されている基準フレームに対する直接的または間接的な参照基準を有する前記空フレームを符号化すること（Ｓ５１６）であって、間接的な参照基準は、前記選択されている基準フレームを参照する、以前に符号化されている空フレームを介して行われる、前記空フレームを符号化することと
によって、複数の空フレームを符号化することとを行うように設定されており、
前記符号化フレームシーケンス（２００）内の少なくとも１対の連続する空フレームについて、前記対のうちの第１の空フレームの選択されている前記基準フレームは、前記対のうちの第２の空フレームの選択されている前記基準フレームとは異なり、前記第１の空フレームの前記選択されている基準フレームと前記第２の空フレームの前記選択されている基準フレームは両方とも、前記第１の空フレームおよび前記第２の空フレームに時間的に先行する、装置。
【請求項１４】
シーン（６０２）のデータを連続的にキャプチャし、前記キャプチャされたデータに基づいてフレームシーケンス（６０６）を含むビデオストリームを生成するための第１の装置（６０４）と、
前記ビデオストリームの各フレームの動きレベル（６０９）を決定するように適合している第２の装置（６０８）と、
前記フレームシーケンス、および前記フレームシーケンスの前記決定されている動きレベルを受信するように適合している、請求項１３に記載の第３の装置（６１０）と
を備える、システム（６００）。
【請求項１５】
前記第１の装置、前記第２の装置および前記第３の装置は、画像キャプチャ装置内に実装されている、請求項１４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ符号化の分野に関する。特に、本発明は、フレームシーケンス内の最初のフレームの画像データの動きレベルが動きレベル閾値を下回るものとして決定される、フレームシーケンスを符号化するための方法、符号化手段およびシステムに関する。
【背景技術】
【０００２】
ビデオカメラは監視目的に一般的に使用されている。カメラによってモニタされるシーンは、何らかの時間期間の間に、動いている物体を含む場合があり、したがって、カメラによってキャプチャされるビデオ内に動きを導入する。他の時間期間の間、シーンは、静止物体しか含まない場合があり、したがって、カメラによってキャプチャされるビデオに動きがなくなり、すなわち、キャプチャされるビデオが静止ビデオになる。
【０００３】
ビデオストリームを符号化することに関して、帯域幅効率が課題になることが多い。有利には、ビデオストリームは、ビデオストリームのビットレートを低減するが、ただし、符号化ビデオストリームの品質に（過度に）顕著に影響を及ぼすことがないように、符号化される。シーン内の様々な量の動きに帯域幅効率的に対処するために、符号化手段は、フレーム内で描写されるものとしてのシーン内の動きの量に応じて符号化ビデオストリームのフレームレートを動的に調整することができる。言い換えれば、フレーム内に（したがって、シーン内に）動きがある時間期間の間は、フレーム内に動きがまったくまたはほとんどないときと比較して、符号化ビデオストリーム内でより高いフレームレートが使用され得る。例えば、フレーム内で動きが制限されているかまたはまったくないとき、フレームレートは１Ｈｚ程度の低さであり得、つまり、符号化ビデオストリーム内には１秒あたり１つのフレームしかない。そのような低いフレームレートにおいては、ビデオ内に時間的ノイズはごくわずかしかない。結果として、復号されたビデオを見るユーザは、ビデオが不自然で凍り付いたように見えるのを発見し、ユーザは、カメラのハードウェアまたはソフトウェアに機能不全があるのではないかと疑い始める可能性がある。
【０００４】
シーン内の様々な量の動きに帯域幅効率的に対処する別の方法は、符号化手段によって適用される圧縮のレベルが画像内容の重要性によって変化する符号化技法を使用することである。例えば、動いている物体を描写しているビデオフレームの部分は、動きが存在しないビデオフレームの部分よりも低い圧縮度で符号化され得る。特に、動きが存在しないビデオフレームの部分は、スキップブロックまたはＰスキップブロックとも称されることがある空ブロックを使用してコード化され得る。したがって、シーン内に動きがまったくないかまたは量が制限されている時間期間の間、フレームは大部分が空ブロックによって符号化されることになる。空ブロックは典型的には、先行するフレーム内の対応するブロックの複製として表示されることになるため、この技法にも、ビデオ内に時間的ノイズがごくわずかしかないという効果がある。したがって、ここでも、ビデオを見るユーザは、ビデオが不自然で凍り付いたように見えるのを発見し、ユーザは、カメラにハードウェアまたはソフトウェアの機能不全があるのではないかと疑い始める可能性がある。
【０００５】
したがって、符号化ビデオストリームにおいて低いフレームレートを使用すること、または、上記で説明したように多数の空ブロックを使用してビデオストリームを符号化することによって、時間的ノイズがないことに起因して、ビデオ内に人工的な静止が導入され得る。高いフレームレートにおいてキャプチャされ、動きのあるシーンのビデオと同様に符号化される（したがって、符号化ビデオのビットレートを増大する）静止したシーンのビデオは、画像センサにおけるノイズに起因して時間的ノイズを依然として含み得るため、この人工的な静止は、シーン自体において動きがないことによって引き起こされるのではなく、上記で説明したようにビデオを帯域幅効率的に符号化するときに使用されるフレームレートまたは符号化手法の選定によって引き起こされる。
【０００６】
したがって、このコンテキスト内での改善が必要とされている。
【発明の概要】
【０００７】
したがって、上記に照らして、本発明の目的は、上述した問題を克服または少なくとも軽減することである。特に、復号および表示されるときに符号化ビデオストリームが不自然であるかまたは凍り付いたように見えない、動きが少ないビデオストリームの帯域幅効率的な符号化方法を提供することが目的である。
【０００８】
本発明の第１の態様によれば、ビデオストリーム内のフレームシーケンスを符号化する方法が提供され、方法は、フレームシーケンス内の最初のフレームの画像データの動きレベルを、動きレベル閾値を下回るものとして決定することと、複数の基準フレームを符号化することであって、複数の符号化基準フレームの各基準フレームは、フレーム内符号化フレームまたはフレーム間符号化フレームである、複数の基準フレームを符号化することと、複数の空フレームを符号化することであって、空フレームは、スキップブロックとして符号化されるマクロブロックと、ビデオストリーム内の別のフレームに対する参照基準とを含み、空フレームとして符号化される各フレームについて、
複数の符号化基準フレームの間で１つの符号化基準フレームを選択することと、
選択されている基準フレームに対する直接的または間接的な参照基準を有する空フレームを符号化することと
によって複数の空フレームを符号化することとを含み、
符号化フレームシーケンス内の少なくとも１対の連続する空フレームについて、当該対のうちの第１の空フレームの選択されている基準フレームは、当該対のうちの第２の空フレームの選択されている基準フレームとは異なる。
【０００９】
フレームシーケンス内の最初のフレームの画像データの動きレベルを、動きレベル閾値を下回るものとして決定するステップは、任意の適切な方法で実施されてもよい。動きレベルは、例えば、フレームシーケンス内の最初のフレームの画像データを、ビデオストリーム内の先行するフレームの画像データと比較することによって、計算することができる。１つの実施形態において、最初のフレームの動きレベルが受信されて、動きレベル閾値と比較される。別の実施形態において、比較はすでに行われており、比較の結果が、例えば、ブール（真または偽）として受信される。
【００１０】
本明細書において使用される場合、「空フレーム」とは、一般的に、符号化フレームのマクロブロック（ＭＢ）の少なくともいくつかについて、スキップブロック（Ｐスキップブロック、空ブロックなど）を使用して符号化されているフレームを意味する。いくつかの実施形態において、空フレームのＭＢの大部分は、スキップブロックとして符号化される。また他の実施形態においては、すべてのＭＢがスキップブロックとして設定／符号化される。その上、空フレームは、ビデオストリーム内の別のフレームに対する参照基準を含む。言い換えれば、空フレームは、少なくとも１つのＭＢがスキップブロックとして符号化されている、インター符号化フレームである。
【００１１】
本発明は、空フレームの基準フレームを慎重に選択することによって、人工的な静止を低減する時間的ノイズを、符号化フレームシーケンスに導入することができるという認識に基づく。画像データの動きレベルが動きレベル閾値を下回るものとして決定されており、したがって、ビットレートを低減する（ただし、依然として符号化ストリームのフレームレートを損傷しないままにして）ように、空フレームの概念を使用してフレームシーケンスを符号化することを可能にする場合、時間的ノイズの導入は、最初に、通常の（従来の）方法で複数の基準フレームを符号化する（例えば、スキップブロックのない、最初のＩフレーム、および、少なくとも１つの後続するＰフレーム）ことによって達成することができる。その後、後続の空フレームが、符号化フレームシーケンス内の連続する空フレームの対が基準フレームのうちの異なるフレームを参照するように、符号化される。参照は、下記にさらに説明するように、直接的であってもよく、または、間接的であってもよい。言い換えれば、符号化フレームシーケンス内で第２の空フレームが直に後続する第１の空フレームについて、第１の空フレームおよび第２の空フレームの基準フレームは異なる。典型的には、従来技術において、空フレーム（例えば、空フレーム内のスキップブロック）は、符号化フレームシーケンス内の直に先行するフレームを参照する。結果として、符号化フレームシーケンス内の別の空フレームが直に後続する空フレームは、同じ基準フレームを参照することになる。言い換えれば、第２の空フレームは、基準フレームを参照する第１の空フレームを参照することによって、間接的に、第１の空フレームと同じ参照基準を参照することになる。したがって、２つの空フレーム内の対応するスキップブロックは、基準フレーム内の正確に同じＭＢを参照し、したがって、後に復号されるビデオストリーム内の正確に同じ画像データとして復号されることになり、したがって、復号ビデオストリーム内に人工的な静止が導入される。しかしながら、本明細書において開示されている本発明の概念を使用して、空フレーム内の対応するＭＢは、少なくとも、基準フレームとして符号化されるフレームシーケンス内のフレームをキャプチャするときに、画像センサにおけるノイズに起因する時間的ノイズを含むことになる。このいわゆる「快適ノイズ」は、ノイズを決定することを一切必要とせず、または、ピクセル値などを調整することによって「偽装」ノイズを含めることを一切必要とせず、代わりに本明細書において記載されているような空フレームが結果として実装されて、符号化ビデオストリーム内に含められる。
【００１２】
いくつかの実施形態によれば、符号化フレームシーケンス内の連続する空フレームの各対について、当該対のうちの第１の空フレームの選択されている基準フレームは、当該対のうちの第２の空フレームの選択されている基準フレームとは異なる。結果として、符号化フレームシーケンス内の別の空フレームが直に後続する空フレーム内の対応するＭＢは、後に復号されるビデオストリーム内の正確に同じ画像データとして復号されなくなるため、人工的な静止をさらにより低減することができる。
【００１３】
いくつかの実施形態について、空フレームとして符号化されることになる第１のフレームについて、上記フレームは、フレームシーケンス内の複数の基準フレームの間で第１の符号化基準フレームに直に後続するが、複数の符号化基準フレームの間で１つの符号化基準フレームを選択するステップは、複数の符号化基準フレームの間で、上記第１の符号化基準フレームとは異なる符号化基準フレームを選択することを含む。言い換えれば、この実施形態において、空フレームは、フレームシーケンス内で空フレームに直に先行する基準フレームを参照しないことができる。有利には、人工的な静止をさらにより低減することができる。
【００１４】
いくつかの実施形態によれば、複数の基準フレームは、１つまたは複数のフレーム間符号化フレームを含み、方法は、１つまたは複数のフレーム間符号化フレームのすべての運動ベクトルをゼロに設定するステップをさらに含む。フレームシーケンスは、非常に低いレベルの動きを含む可能性があるため、フレーム間符号化フレームによって参照されるフレーム内の対応するＭＢを探索するために、運動ベクトルを生成することになるブロックマッチングアルゴリズムを実施する必要性は限定的である。代わりに、運動ベクトルをゼロに設定することができ、符号化プロセスに必要な処理能力が低減し、結果として、フレーム間符号化フレームに増大したＱＰ値を使用することができるようになり得、したがって、符号化フレームシーケンスのビットレートがさらに低減する。
【００１５】
いくつかの実施形態によれば、少なくとも１つの空フレームについて、空フレームの符号化は、符号化基準フレームの間で１つの符号化基準フレームを選択することであって、すでに選択されている符号化基準フレームが、別の符号化空フレームによって直に参照される、符号化基準フレームを選択することと、上記別の符号化空フレームに対する参照基準を有する空フレームを符号化することとを含む。
【００１６】
言い換えれば、選択されている基準フレームに対する空フレームにおける参照は、選択されている基準フレームを参照する、以前に符号化されている空フレームを介する、間接的なものであり得る。有利には、このような参照によって、符号化手段内に一時的に記憶される必要があるフレームが少なくなり、一時的に記憶されるフレームは、フレーム間符号化フレームによる照会に使用されるために記憶される。
【００１７】
いくつかの実施形態によれば、符号化空フレームは、すべてのマクロブロックがスキップブロックに設定されているフレーム間符号化フレームの形態を有する。結果として、符号化空フレームが、画像データまたは運動ベクトルを含有せず、空フレームを復号するときに示されるべき画像データが取り出される、選択されている基準フレームに対する参照基準のみを含有することになるため、符号化フレームシーケンスのビットレートをさらに低減することができる。言い換えれば、空フレームは、更新済みデータを有しないフレーム間符号化フレームである。
【００１８】
いくつかの実施形態によれば、方法は、フレームシーケンスのフレームを符号化する前に、上記フレームの画像データの動きレベルを受信するステップと、動きレベルが動きレベル閾値を下回るかどうかを決定するステップと、動きレベルが閾値動きレベルを下回るという決定を受けて、フレームを空フレームとして符号化するステップと、動きレベルが閾値動きレベルを上回るという決定を受けて、フレームをフレーム間符号化フレームまたはフレーム内符号化フレームとして符号化するステップとをさらに含む。この実施形態において、キャプチャされているシーンの内容が突如動き始め、したがって、ビデオストリーム内のフレームの画像内容の動きレベルが増大する場合、そうでなければ空フレームとして符号化されていたフレームを、代わりに、フレーム間符号化フレームまたはフレーム内符号化フレーム（すなわち、スキップブロックを一切有しない）として符号化することができる。この実施形態は、符号化方法の柔軟性を増大させる。
【００１９】
いくつかの実施形態によれば、フレームシーケンスの最初のフレームがフレーム内符号化基準フレームとして符号化され、フレームシーケンス内で最初のフレームに直に後続する１つまたは複数のフレームがフレーム間符号化基準フレームとして符号化される。
【００２０】
いくつかの実施形態によれば、符号化基準フレームは、少なくとも２つのフレーム間符号化フレームを含む。有利には、この符号化によって、空フレーム内のノイズの顕著な繰り返しを低減することができ、したがって、空フレーム内のより現実的なノイズをもたらすことができる。
【００２１】
いくつかの実施形態によれば、符号化基準フレームを選択するステップは、ランダム関数を使用して実施される。有利には、ランダム関数を使用することによって、符号化手段が基準フレームを選択するステップのために任意の所定の選択シーケンスを記憶する必要をなくすことができるため、符号化方法の複雑度が低減する。その上、そのようなランダム関数は、本質的に、利用可能な基準フレームの間でランダムに選定するため、基準フレーム数は無関係である。
【００２２】
いくつかの実施形態によれば、符号化基準フレームを選択するステップは、所定の選択シーケンスに従って実施される。そのようなシーケンスは、表などとして符号化手段内に記憶されてもよい。選択シーケンスに従う場合、利用可能な基準フレームの各数に対して１つのそのようなシーケンスが存在し得る。他の実施形態においては、所定の選択シーケンスは、例えばモジュロ演算など、アルゴリズムの形態である。
【００２３】
いくつかの実施形態によれば、フレームを空フレームとして符号化するステップは、符号化基準フレームの間で時間的に先行する符号化基準フレームを選択することを含む。言い換えれば、空フレームは、Ｐフレームと比較することができる。代替的に、または付加的に、符号化基準フレームは、例えば、Ｂフレームなどの、時間的に後続するフレームであってもよい。
【００２４】
本発明の第２の態様によれば、上記の目的は、処理機能を有する装置によって実行されるときに、第１の態様の方法を実行に移すように適合している命令を有するコンピュータ可読記憶媒体を含むコンピュータプログラム製品によって達成される。
【００２５】
本発明の第３の態様によれば、上記の目的は、ビデオストリーム内のフレームシーケンスを符号化するように適合している装置によって達成され、装置はプロセッサを備え、プロセッサは、フレームシーケンス内の最初のフレームの画像データの動きレベルを、動きレベル閾値を下回るものとして決定することと、複数の基準フレームを符号化することであって、複数の符号化基準フレームの各基準フレームは、フレーム内符号化フレームまたはフレーム間符号化フレームである、複数の基準フレームを符号化することと、複数の空フレームを符号化することであって、空フレームは、スキップブロックとして符号化されるマクロブロックと、ビデオストリーム内の別のフレームに対する参照基準とを含み、空フレームとして符号化される各フレームについて、
符号化基準フレームの間で１つの符号化基準フレームを選択することと、
選択されている基準フレームに対する直接的または間接的な参照基準を有する空フレームを符号化することと
によって複数の空フレームを符号化することとを行うように設定されており、
符号化フレームシーケンス内の少なくとも１対の連続する空フレームについて、当該対のうちの第１の空フレームについて選択されている基準フレームは、当該対のうちの第２の空フレームについて選択されている基準フレームとは異なる。
【００２６】
本発明の第４の態様によれば、上記の目的は、シーンのデータを連続的にキャプチャし、キャプチャされているデータに基づいてフレームシーケンスを含むビデオストリームを生成するための第１の装置、ビデオストリームの各フレームの動きレベルを決定するように適合している第２の装置、および、フレームシーケンスおよびフレームシーケンスの決定されている動きレベルを受信するように適合している、第３の態様による第３の装置によって達成される。
【００２７】
いくつかの実施形態によれば、第１の装置、第２の装置および第３の装置は、例えばビデオカメラなどの画像キャプチャ装置内に実装される。他の実施形態において、第１の装置は画像キャプチャ装置であり、第２の装置は別個に構成されたビデオ分析ユニットであり、第３の装置は、別個に構成されたビデオ符号化ユニットである。
【００２８】
第２の態様、第３の態様および第４の態様は、一般的に、第１の態様と同じ特徴および利点を有することができる。本発明は、別途明示的に述べられない限り、特徴のすべての可能な組み合わせに関することにさらに留意されたい。
【００２９】
本発明の上記の目的、特徴および利点ならびに追加の目的、特徴および利点は、添付の図面を参照しながら、本発明の好ましい実施形態の以下の例示的で非限定的な詳細な説明を通じてより良好に理解される。図面において、類似の要素に同じ参照符号が使用される。
【図面の簡単な説明】
【００３０】
【図１】少量の動きが決定されるフレームシーケンスを符号化する既知の方法を示す図である。
【図２】本発明の第１の実施形態による、少量の動きが決定されるフレームシーケンスを符号化する方法を示す図である。
【図３】本発明の第２の実施形態による、少量の動きが決定されるフレームシーケンスを符号化する方法を示す図である。
【図４】本発明の第２の実施形態による、少量の動きが決定されるフレームシーケンスを符号化する方法を示す図である。
【図５】いくつかの実施形態によるフレームシーケンスの符号化の流れ図である。
【図６】シーンのデータをキャプチャし、シーンの内容の動きレベルを決定し、シーンを描写するフレームシーケンスを符号化するように適合しているシステムを示す図である。
【発明を実施するための形態】
【００３１】
これより、本発明を、以下、本発明の実施形態が図示されている添付の図面を参照しながらより十分に説明する。本明細書において開示されているシステムおよび装置は動作中の状態で説明される。
【００３２】
図１は、従来技術によるフレームシーケンスを符号化する方法を図示する。上述したように、キャプチャされているシーン内に動きがないかまたは動きの量が制限されている時間期間の間に、帯域幅を節約する（符号化フレームシーケンスのビットレートを低減または最適化する）１つの方法は、フレームのいくつかを空フレームとして符号化する、すなわち、少なくともいくつかの空ブロック（スキップブロック、Ｐスキップブロックなど）によって符号化することであり得る。これらの空フレームは、以降、図面内で「Ｅ」によって参照される。図１において、フレームシーケンス１００内の第１のフレームはＩフレーム（図面内で「Ｉ」によって指定される）として符号化され、残りのフレーム１００は、フレームシーケンス１００内の直に先行するフレームに対する参照基準を有し、したがって、すべてがＩフレームに対する直接的または間接的な参照基準を有する空フレームとして符号化される。この符号化には、すべてのフレーム１００が第１のフレーム（すなわち、Ｉフレーム）の複製として表示されることになるため、ビデオ内に時間的ノイズがごくわずかしか（またはまったく）ないという効果がある。したがって、フレーム１００からもたらされるビデオを見るユーザは、ビデオが不自然で凍り付いたように見えるのを発見し、ユーザは、カメラにハードウェアまたはソフトウェアの機能不全があるのではないかと疑い始める可能性がある。この疑念はさらに、ユーザがカメラを物理的に検査するように促す場合があり、検査は貴重な時間を消費し、カメラがアクセスすることが困難な場所に設置されている場合には困難であり得る。
【００３３】
たとえシーンが完全に静止している場合であっても（例えば、夜間の無人の鉄道駅）、キャプチャされるフレームのシーケンス内には、画像センサにおけるノイズに起因して時間的ノイズが依然として存在する。キャプチャされる画像データ内のこの内在的なノイズレベルは、フレームを符号化するときに利用され得る。以下において、フレームシーケンスを符号化する方法のいくつかの例を説明する。しかしながら、それらの例はすべて、少なくとも２つの共通する特性を有する。第１に、符号化空フレームによって参照され得る複数の基準フレームが符号化される。これらの基準フレームは通常通りに符号化され、例えば、Ｉフレームに、Ｉフレーム（またはＰフレームが複数ある場合は別のＰフレーム）を参照する少なくとも１つのＰフレームが後続し、基準フレームは有利には、一切のスキップブロックなしに、または、少なくとも少数のスキップブロックを有して符号化される。第２に、符号化フレームシーケンス内の少なくとも１対の連続する空フレームについて、当該対のうちの第１の空フレームの基準フレームは、当該対のうちの第２の空フレームの基準フレームとは異なる。このように符号化することによって、シーンをキャプチャするときの内在的な時間的ノイズが複数の基準フレーム内に存在することになり、第１の空フレームについて、符号化フレームシーケンス内の直に後続する第２の空フレームと同じ基準フレームを選定しないことによって、この時間的ノイズは、連続する符号化空フレームのこの対にも存在することになる。
【００３４】
図２〜図４は、少量の動きが決定されるフレームシーケンスを符号化する方法を例として図示する。これらの例において、符号化フレームはピクチャ群（ＧＯＰ）に対応するが、これは本発明の必要条件ではない。本明細書において開示されている方法は、ＧＯＰの半分などのような任意のフレームシーケンスに使用することができる。
【００３５】
図２は、第１の実施形態によるフレームシーケンスを符号化する方法を例として図示する。複数の基準フレーム２０２が符号化され、この符号化はこの場合、フレームシーケンス２００の最初のフレーム２００ａがフレーム内符号化基準フレーム（図面内の「Ｉ」）として符号化されることに対応し、フレームシーケンス２００内で最初のフレーム２００ａに直に後続する２つのフレーム２００ｂ〜ｃがフレーム間符号化基準フレーム（図面内の「Ｐ」）として符号化される。他の実施形態によれば、複数の基準フレーム２０２のうちの２つ以上のフレームがＩフレームとして符号化される。フレーム間符号化基準フレームは、Ｐフレームおよび／またはＢフレームの形態であってもよい。基準フレーム２０２の数（符号化フレームシーケンス２００のビットレートの増大をもたらす）は、ユーザ体験のレベルの向上とのバランスをとるべきである。例えば、ＧＯＰがより大きくなる結果として、より小さいＧＯＰと比較してより多くの基準フレーム２０２が符号化される。図２において、ＧＯＰ内の残りのフレーム２００ｄ〜ｈ（最後の符号化フレーム２００ｉは、後続するＧＯＰの最初のフレームを参照する）が、空フレーム２０４として符号化される。各空フレーム２０４について、符号化基準フレーム２０２が選択され、参照される（図２〜図４においては矢印として描写される）。図２に見てとれるように、符号化フレームシーケンス２００内の連続する空フレーム２０４の各対について、当該対のうちの第１の空フレームの選択されている基準フレームは、当該対のうちの第２の空フレームの選択されている基準フレームとは異なる。例えば、図２の第１の空フレーム２００ｄは、第１の基準フレーム２００ａを参照し、一方、直に後続する空フレーム２００ｅについて、選択される基準フレームは、第２の基準フレーム２００ｂである。これら２つの空フレーム２００ｄ〜ｅについて、フレームは、選択されている基準フレーム２００ａ〜ｂへの直接的な参照によって符号化される。この符号化はまた、第３の基準フレーム２００ｃを直接的に参照する、後続する空フレーム２００ｆについても当てはまる。次の空フレーム２００ｇ（図２の例の第４の空フレーム）について、この空フレーム２００ｇは、第１の空フレーム２００ｄを参照しており、第１の空フレーム２００ｄは、第１の基準フレーム２００ａを参照する。したがって、第４の空フレームは、基準フレームへの間接的な、すなわち、別の空フレーム２００ｄを介した参照基準を含む。言い換えれば、第４の空フレーム２００ｇの符号化は、符号化基準フレーム２０２の間で符号化基準フレーム２００ａを選択することを含み、すでに選択されている符号化基準フレームが、別の符号化空フレーム２００ｄによって直接的に参照される。この間接的な参照方法は、符号化するときにメモリに記憶する必要がある符号化フレームの数を低減することができる。この例における最後の（第５の）空フレーム２００ｈについて、選択される基準フレームは第３の基準フレーム２００ｃであり、第３の基準フレーム２００ｃは第５の空フレーム２００ｈによって、第３の空フレーム２００ｆを介して間接的に参照される。したがって、５つの空フレーム２００ｄ〜ｈは、時間的順序において、基準フレーム１−２−３−１−３を参照する。言い換えれば、符号化フレームシーケンス２００内の連続する空フレームの各対について、当該対のうちの第１の空フレームの選択されている基準フレームは、当該対のうちの第２の空フレームの選択されている基準フレームとは異なる。このように、空フレームの各々の間で時間的ノイズが導入され、したがって、表示される復号フレームを見るユーザ（例えば、オペレータ）にとって「快適な」ノイズが提供される。図２に示す例示的な実施形態において、空フレーム２０４として符号化されることになる第１のフレーム２００ｄについて、上記フレームは、フレームシーケンス２００内の複数の基準フレーム２０２の間で特定の符号化基準フレーム２００ｃに直に後続するが、複数の符号化基準フレーム２０２の間で１つの符号化基準フレームを選択するステップは、複数の符号化基準フレーム２０２の間で、上記特定の符号化基準フレーム２００ｃとは異なる符号化基準フレーム２００ａを選択することを含む。このように、空フレーム２０４として符号化されることになる第１のフレーム２００ｄと、上記空フレーム２００ｄに直に先行する基準フレーム２００ｃとの間にも、時間的ノイズが導入されることになる。他の実施形態において、フレーム２００ｄはフレーム２００ｃを参照してもよい。
【００３６】
図２の例においては、フレームシーケンス内の最初のフレームのみが基準フレーム２０２として符号化される。この符号化は例に過ぎない。図３において、２つの第１のフレーム２００ａ〜ｂが、基準フレーム２０２として符号化される。３つの後続するフレーム２００ｃ〜ｅは、空フレーム２０４として符号化される。さらに、続くフレーム２００ｆは、空フレーム２０４として符号化される２つのさらなるフレーム２００ｇ〜ｈが後続する基準フレームとして符号化される。フレームシーケンスの後方に基準フレームを導入するこの方法は、フレームシーケンス２００をキャプチャしている間に発生した可能性があるシーン内の変化をキャプチャするために有利であり得る。図２の例からのさらなる相違は、空フレームのうちの１つが時間的に後の基準フレームを参照し、この参照によって、第１の空フレーム２００ｃが第３の基準フレーム２００ｆを参照することである。多くの規格が、フレーム間符号化フレームが順方向において参照することを可能にするため（例えば、Ｂフレーム、双方向予測ピクチャ）、この参照はまた、本発明の空フレーム（スキップブロックとして符号化されるマクロブロックを含むフレーム間符号化フレームの形態を有する）について可能にされ得る。
【００３７】
図４においては、たとえフレームシーケンス２００が基準フレーム２０２の２つの別個のセットを含むとしても、符号化基準フレームの間で時間的に先行する符号化基準フレームのみが空フレームによって参照される。空フレーム２０４を符号化するときに時間的に先行する符号化基準フレームのみを選択することによって、符号化手段のメモリ内に記憶される必要があるフレームの数が低減され、フレームシーケンスを符号化する方法が単純になる。
【００３８】
図５は、いくつかの実施形態によるフレームシーケンスの符号化の流れ図を図示する。そもそもフレームシーケンスについて空フレームが利用されるべきであるかどうかを決定するために、フレームシーケンス内の最初のフレームの画像データの動きレベルが動きレベル閾値を下回るかどうかが決定されるＳ５０２。最初のフレームの動きレベルは、例えば先行するＧＯＰなどの、１つまたは複数の先行するフレームとの比較に基づいて決定することができる。例えば、先行するシーケンスの動きレベルの平均動きレベルを、別個の動きレベル算出ユニットから符号化手段によって受信することができ、または、符号化手段において算出することができる。動きレベル閾値は、フレームに基づいて予め決定されてもよく、または、例えば、オペレータがユーザの事例に基づいて設定することができる、ユーザが調整可能な値であってもよい。上述したように、最初のフレームは、ＧＯＰの第１のフレームに対応してもよく、または、対応しなくてもよい。動きレベルが動きレベル閾値を超えると決定される場合、後続するフレームシーケンスは、例えば、本開示において規定されるような空フレームなしに、フレーム内符号化フレームおよびフレーム間符号化フレームを使用して、従来のように（標準的に）符号化されるべきであるＳ５０３と決定することができる。しかしながら、最初のフレームの動きレベルが閾値動きレベルを下回ると決定された場合、後続のフレームシーケンスが、動きをまったく含まないまたは少量だけ含み、したがって、ビットレートを最適化するために本開示の符号化方法が有利に使用され得る可能性が高いと決定することができる。本方法を使用することは、少量の光を含むシーンのビデオをキャプチャするときに特に有利であり得る。これらの場合、フレーム間ノイズの量が大きくなり、従来のようにＰフレームとして符号化される場合、符号化される必要がある多くの残差値（基準フレームに対する差）がもたらされる。
【００３９】
次いで、複数の基準フレームが符号化されるＳ５０４。任意選択で、基準フレームを符号化する前に、基準フレームとして符号化されるべきフレームの画像データの動きレベルを、動きレベル閾値と比較することができるＳ５０６。この比較を連続的に行うことによって、方法は、いつでも中断して通常の符号化Ｓ５０３に戻ることができる。この段階において動きレベルのチェックＳ５０６を行わないことによって、符号化プロセスに必要な処理能力を低減することができる。各基準フレームが、フレーム内符号化フレームまたはフレーム間符号化フレームとして符号化されるＳ５０８。
【００４０】
いくつかの実施形態によれば、フレーム間符号化フレームのすべての運動ベクトルがゼロに設定される。基準フレームの画像内容が以前のフレームと比較して動きをごくわずかしかまたはまったく包含しない可能性が高い（または判定されるＳ５０６）ため、フレーム間符号化フレームのマクロブロックを符号化するためにブロックマッチングを実施せず、代わりに、ただ先行するフレーム内の同じブロックを参照することによって、これを利用することができる。結果として、処理能力を節約することができ、より高いＱＰ値を符号化に使用して、ビットレートの節約をさらに増大することができる。
【００４１】
次いで、複数の空フレームが符号化されるＳ５１０。任意選択で、フレームを空フレームとして符号化する前に、上記フレームの画像データの動きレベルが受信または他の態様で決定され、動きレベル閾値と比較される。この実施形態において、動きレベルが動きレベル閾値を下回るかどうかが決定されるＳ５１２。動きレベルが閾値動きレベルを上回ると決定されたとき、方法を中断することができ、後続して標準的な符号化Ｓ５０３が行われる。言い換えれば、現在のフレームが、従来通りフレーム間符号化フレームまたはフレーム内符号化フレームとして符号化される。しかしながら、動きレベルが閾値動きレベルを下回ると決定されたとき、フレームは空フレームとして符号化される。この符号化は、複数の符号化基準フレームの間で１つの符号化基準フレームを選択することＳ５１４を含む。この選択プロセスは、種々の戦略を使用して実施されてもよい。
【００４２】
１つの実施形態によれば、符号化基準フレームを選択するステップは、ランダム関数を使用して実施される。ランダム関数は、利用可能な基準フレームの数（または、フレームシーケンス内の利用可能な基準フレームのインデックス）、および、例えば、任意の許容されない基準フレームのインデックスを入力として取り得る。許容されない基準フレームは、２つの直に後続する空フレームが同じ基準画像を参照することになることを回避するために、フレームシーケンス内の直に先行する空フレームのための参照基準として使用される基準フレームであり得る。
【００４３】
１つの実施形態によれば、符号化基準フレームを選択するステップは、所定の選択シーケンスに従って実施される。例えば、符号化手段は、例えば、２つの基準画像の場合の１つのリスト、３つの場合の１つのリスト（例えば、１、２、３、１、２、３、１、２、３など）、４つの場合の１つのリストなどの形態の、各数の可能な基準画像のためのそのような選択シーケンスを知ることができる。所定の選択シーケンスは、例えばモジュロ演算など、アルゴリズムの形態であり得る。そのようなアルゴリズムは、以下のような形式を有すると考えられ得る。
Ｉ＝Ｘ  ｍｏｄ  Ｙ
式中、Ｙは利用可能な基準画像の数であり、Ｘは、フレームシーケンス内で空フレームとして符号化されるべき現在のフレームのインデックスである。モジュロ演算（Ｉ）の結果はその後、空フレームが参照することになる基準画像のインデックスを選択するために使用される。
【００４４】
符号化基準フレームが選択されると、空フレームはその後、選択されている基準フレームに対する直接的なまたは間接的な参照基準を用いて符号化されるＳ５１６。
【００４５】
任意選択で、１つまたは複数の空フレームを符号化した後、新たな基準フレームを符号化することができＳ５０４（したがって、方法は反復するＳ５１８）、後続して、フレームシーケンス全体が符号化されるまで、符号化空フレームのセットの符号化Ｓ５１６などが行われる。他の実施形態において、フレームシーケンス内のすべての残りのフレームが空フレームとして符号化される。
【００４６】
本明細書において説明されているような符号化方法は、ｈ．２６４およびｈ．２６５のような規格に従う。言い換えれば、標準的な復号手段を復号に使用することができる。
【００４７】
図６は、本発明に従ってフレームシーケンスをキャプチャし符号化するためのシステム６００を図示する。システム６００は、シーン６０２の画像データを連続的にキャプチャし、キャプチャされた画像データに基づいて画像フレームシーケンス６０６を含むビデオストリームを生成するための第１の装置６０４（すなわち、ビデオカメラ）を備える。システム６００は、ビデオストリームの各フレームの動きレベル６０９を決定するように適合している動き検出ユニット６０８をさらに備える。動き検出ユニット６０８は、（例えば、プロセッサを使用して）任意の既知の動き検出および／または物体追跡アルゴリズムを使用してフレームの動きレベルを算出することができる。
【００４８】
フレームシーケンス６０６および決定された動きレベル６０９は、上述したようにフレームシーケンスを符号化するように適合している第３の装置（符号化手段）６１０に送られる。図６において、ビデオをキャプチャする第１の装置６０４、動き検出ユニット（第２の装置）６０８および符号化する第３の装置６１０は、別個のユニットとして描写されている。しかしながら、いくつかの実施形態によれば、３つすべての装置６０４、６０８、６１０が、共通の画像キャプチャ装置内に実装される。
【００４９】
上記において、本発明の概念は主に、限定された数の例を参照しながら説明されてきた。しかしながら、当業者には容易に諒解されるように、上記で開示されているものの他の例が、添付の特許請求の範囲によって規定されるような、本発明の概念の範囲内で等しく可能である。
【図１】
2019198063.tif 000003
【図２】
2019198063.tif 000004
【図３】
2019198063.tif 000005
【図４】
2019198063.tif 000006
【図５】
2019198063.tif 000007
【図６】
2019198063.tif 000008
【外国語明細書】
2019198063000001.pdf
2019198063000002.pdf
2019198063000003.pdf
2019198063000004.pdf