以下の説明は、本明細書の特定の応用シーン及び要求を提供し、その目的は、当業者が本明細書に係る内容を製造及び使用することができることである。当業者にとって、開示された実施例に対する様々な一部の補正は明らかなものであり、本明細書の精神及び範囲から逸脱しない場合、ここで定義された一般的な原理を他の実施例及び応用に適用され得る。そのため、本明細書は示された実施例に限定されず、請求項と合致する最も広い範囲である。
ここで使用された用語は、特定の例示的な実施例を説明するためのものに過ぎず、制限的なものではない。例えば、コンテキストにおいて特に明確に説明されていない限り、ここで使用される、単数形の「一」、「1つ」及び「当該」は複数形を含んでもよい。本明細書において使用される場合、用語の「備える」、「含む」及び/又は「有する」は関連する整数、ステップ、操作、要素及び/又はコンポーネントが存在することを意味し、1つ又は複数の他の特徴、整数、ステップ、操作、要素、コンポーネント及び/又はグループの存在を排除せず、又は、当該システム/方法において他の特徴、整数、ステップ、操作、要素、コンポーネント及び/又はグループを追加してもよい。
以下の説明を考慮すると、本明細書のこれらの特徴及び他の特徴、構造の関連素子の操作及び機能、部品の組み合わせ及び製造の経済性は、明らかに向上させることができる。図面を参照し、これらのすべては本明細書の一部を形成する。ただし、図面は記載及び説明のためのものに過ぎず、本明細書の範囲を限定するものではないことは明らかに理解されるべきである。なお、図面は縮尺に従って描かれていないことも理解されるべきである。
本明細書において用いられるフローチャートは、本明細書の一部の実施形態に係るシステムに基づいて実現される操作を示す。なお、フローチャートの操作は、順番に実現されなくてもよいことは明らかに理解されるべきである。逆に、逆順で実現されてもよいし、同時に行ってもよい。また、フローチャートに1つ又は複数の他の操作を追加してもよい。フローチャートから1つ又は複数の操作を削除してもよい。
本明細書の第1態様は、データ処理のシステム100(以下はシステム100と略称される)を提供する。第2態様において、本明細書は、データを圧縮するデータ処理の方法P200を説明し、第3態様において、本明細書は、圧縮フレームを解凍するデータ処理の方法P300を説明する。
図1は、データ処理のシステム100を示す模式図である。システム100は、データ圧縮機器200、データ解凍機器300及び伝送媒体120を含んでもよい。
データ圧縮機器200は、圧縮されるべき初期データを受信し、本明細書で提示されるデータ処理方法P200を用いて初期データを圧縮して圧縮フレームを生成することができる。データ圧縮機器200は、本明細書で説明されるデータ処理の方法P200を実行するためのデータ又は命令を記憶し、且つ前記データ及び/又は命令を実行することができる。
データ解凍機器300は、圧縮フレームを受信し、本明細書で提示されるデータ処理方法P300を用いて圧縮フレームを解凍し、解凍フレームを得ることができる。データ解凍機器300は、本明細書で説明されるデータ処理の方法P300を実行するためのデータ又は命令を記憶し、且つ前記データ及び/又は命令を実行することができる。
データ圧縮機器200及びデータ解凍機器300は、広い範囲の装置を含んでもよい。例えば、データ圧縮機器200及びデータ解凍機器300は、デスクトップ型コンピュータ、モバイル演算装置、ノート型(例えば、ラップトップ型)コンピュータ、タブレット型コンピュータ、セットトップボックス、スマートフォン等のハンドセット、テレビ、カメラ、ディスプレイ装置、デジタルメディアプレーヤ、ビデオゲームコンソール、車載コンピュータ、又は同様なものを含んでもよい。
図1に示すように、データ圧縮機器200とデータ解凍機器300は、伝送媒体120を介して接続することができる。伝送媒体120は、情報及び/又はデータの伝送を促進することができる。伝送媒体120は、データ圧縮機器200からデータ解凍機器300へ圧縮フレームを伝送可能な任意のデータキャリアであってもよい。伝送媒体120は、格納媒体(例えば、光ディスク)、有線又は無線の通信媒体であってもよい。前記通信媒体は、ネットワークであってもよい。一部の実施例において、伝送媒体120はいかなるタイプの有線又は無線ネットワークであってもよく、それらの組み合わせであってもよい。例えば、伝送媒体120は、ケーブルネットワーク、有線ネットワーク、光ファイバネットワーク、電気通信ネットワーク、イントラネット、インターネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ローカルエリアネットワーク(WLAN)、メトロポリタンアーバンネットワーク(MAN)、ワイドエリアネットワーク(WAN)、公衆電話交換ネットワーク(PSTN)、ブルートゥースネットワーク、ZigBeeネットワーク、近距離通信(NFC)ネットワーク又は類似するネットワークを含んでもよい。データ解凍機器300及びデータ圧縮機器200のうちの1つ又は複数のコンポーネントは伝送媒体120に接続されることにより、データ及び/又は情報を伝送することができる。伝送媒体120は、ルータ、スイッチ、基地局、又は、データ圧縮機器200からデータ解凍機器300への通信を促進する他の機器を含んでもよい。別の一部の実施例において、伝送媒体120は格納媒体であってもよく、例えば、大容量メモリ、リムーバブルメモリ、揮発性読み書きメモリ、読み出し専用メモリ(ROM)又は類似する内容、又はそれらの任意の組み合わせであってもよい。大容量ストレージの例としては、磁気ディスク、光ディスク、ソリッドステートドライブ等の非一時的記憶媒体(non-transitory storage medium)が挙げられる。リムーバブル記録媒体は、例えば、フラッシュドライブ、フレキシブルディスク、光ディスク、メモリカード、zip磁気ディスク、磁気テープ等を含む可能性がある。典型的な揮発性読み書きメモリは、ランダムアクセスメモリ(RAM)を含む可能性がある。RAMは、ダイナミックRAM(DRAM)、デュアルデイトレート同期ダイナミックRAM(DDRSDRAM)、スタティックRAM(SRAM)、サイリスタRAM(T-RAM)、ゼロコンデンサRAM(Z-RAM)等を含む可能性がある。ROMは、マスクROM(MROM)、プログラマブルROM(PROM)、仮想プログラマブルROM(PEROM)、電子プログラマブルROM(EEPROM)、光ディスク(CD-ROM)、デジタル多機能ディスクROM等を含む可能性がある。一部の実施例において、伝送媒体120は、クラウドプラットフォームであってもよい。単なる例として、前記クラウドプラットフォームは、プライベートクラウド、パブリッククラウド、混合クラウド、コミュニティクラウド、分散式クラウド、クラウド間クラウド等の形式、又は上記形式と類似する形式、又はこれらの上記形式の任意の組み合わせを含む可能性がある。
図1に示すように、データ圧縮機器200は、初期データを受信し、本明細書で説明されるデータ処理の方法P200の命令を実行し、初期データに対してデータ圧縮を行い、圧縮フレームを生成し、前記圧縮フレームは、伝送媒体120を介してデータ解凍機器300に伝送され、データ解凍機器300は、本明細書で説明されるデータ処理の方法P300の命令を実行し、圧縮フレームに対してデータ解凍を行い、解凍フレームを得る。
図2は、データ処理のデータ圧縮機器200を示す模式図。データ圧縮機器200は、本明細書で説明されるデータ処理の方法P200を実行することができる。前記データ処理の方法P200は、本明細書における他の部分で紹介される。例えば、図4から図6の説明において前記データ処理の方法P200を紹介する。
図2に示すように、データ圧縮機器200は、少なくとも1つの記憶媒体230及び少なくとも1つの圧縮側プロセッサ220を含む。一部の実施例において、データ圧縮機器200は、通信ポート250及び内部通信バス210をさらに含んでもよい。同時に、データ圧縮機器200は、I/Oコンポーネント260をさらに含んでもよい。
内部通信バス210は、記憶媒体230及び圧縮側プロセッサ220を含む異なるシステムコンポーネントを接続することができる。
I/Oコンポーネント260は、データ圧縮機器200と他のコンポーネントとの間の入力/出力をサポートする。
記憶媒体230は、データ記憶装置を含んでもよい。前記データ記憶装置は、非一時的記憶媒体であってもよく、一時的記憶媒体であってもよい。例えば、前記データ記憶装置は、磁気ディスク232、読み出して専用記憶媒体(ROM)234又はランダムアクセス記憶媒体(RAM)236のうちの1つ又は複数のものを含んでもよい。記憶媒体230は、前記データ記憶装置に記憶される少なくとも1つの命令セットをさらに含んでもよい。前記命令は、コンピュータプログラムコードであり、前記コンピュータプログラムコードは、本明細書で提供されるデータ処理の方法を実行するプログラム、ルーチン、対象、コンポーネント、データ構造、過程、モジュール等を含んでもよい。
通信ポート250は、データ圧縮機器200と外部とのデータ通信に用いられる。例えば、データ圧縮機器200は、通信ポート250により伝送媒体120に接続されてもよい。
少なくとも1つの圧縮側プロセッサ220は、内部通信バス210を介して少なくとも1つの記憶媒体230に通信接続される。少なくとも1つの圧縮側プロセッサ220は、上記少なくとも1つの命令セットを実行するために用いられる。システム100が動作するとき、少なくとも1つの圧縮側プロセッサ220は、前記少なくとも1つの命令セットを読み出して、前記少なくとも1つの命令セットの指示に応じてデータ処理方法P200を実行する。圧縮側プロセッサ220は、データ処理方法P200に含まれる全てのステップを実行することができる。圧縮側プロセッサ220は、1つ又は複数のプロセッサの形式であってもよく、一部の実施例において、圧縮側プロセッサ220は、1つ又は複数のハードウェアプロセッサ、例えば、マイクロコントローラ、マイクロプロセッサ、縮小命令セットコンピュータ(RISC)、専用集積回路(ASIC)、特定用途向け命令セットプロセッサ(ASIP)、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、物理処理ユニット(PPU)、マイクロコントローラユニット、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、アドバンストRISCマシン(ARM)、プログラマブルロジックデバイス(PLD)、1つ又は複数の機能を実行できる任意の回路又はプロセッサ等、又は、それらの任意の組み合わせを含んでもよい。問題を説明するだけのために、本明細書において、データ圧縮機器200は1つの圧縮側プロセッサ220のみが記載されている。しかし、本明細書においてデータ圧縮機器200はさらに複数のプロセッサを含んでもよく、従って、本明細書に開示された動作及び/又は方法のステップは本明細書に記載されたように1つのプロセッサによって実行されてもよいし、複数のプロセッサが連携して実行してもよいことは注意すべきである。例えば、本明細書において、データ圧縮機器200の圧縮側プロセッサ220がステップA及びステップBを実行する場合、ステップA及びステップBは、2つの異なる圧縮側プロセッサ220が連携して実行してもよいし、又は別々に実行されてもよい(例えば、第1プロセッサはステップAを実行し、第2プロセッサはステップBを実行し、又は、第1プロセッサ及び第2プロセッサはステップA及びステップBを共に実行する)ことは理解されるべきである。
上記構造はデータ圧縮機器200について説明したが、この構造はデータ解凍機器300にも適用される。データ解凍機器300は、本明細書で説明されるデータ処理方法P300を実行することができる。前記データ処理方法P300については、本明細書の他の部分で紹介される。例えば、図7から図12の説明において前記データ処理方法P300を紹介する。
データ処理方法P200、P300及びシステム100は、データの圧縮及び解凍のために用いられることができ、それにより、前記データの伝送効率を向上させ、リソース及び空間を節約する。前記データは、非リアルタイムデータであってもよいし、リアルタイムデータであってもよい。従来の放送・映画・テレビから現在の大量の監視及びインターネットアプリケーションまで、様々なデータが存在する。例えば、前記データは、非リアルタイムのビデオデータ、オーディオデータ、画像データ等であってもよい。前記データは、リアルタイムマップデータ、リアルタイムセンサデータ、リアルタイムビデオ監視データ、ネットワーク監視データ、気象データ、航空宇宙データ等であってもよい。例えば、前記データは、自動運転自動車が走行中に基地局から受信したマップデータであってもよい。本明細書では、前記データの具体的なタイプを限定しない。本明細書に記載のデータ処理の方法及びシステムが異なるタイプのデータを処理する時に採用する方法及びステップはいずれも一致するものであり、プレゼンテーションの便宜上、本明細書はビデオデータの処理を例として説明する。
データ処理方法P200、P300及びシステム100は、ビデオデータの圧縮効率を顕著に向上させ、ビデオの伝送効率及び復元率を向上させることができる。従来のビデオ圧縮技術において、一般的にH.264規格及びH.265規格を用いてビデオデータをエンコードすることにより、前記ビデオデータを圧縮する目的に達する。H.264規格及びH.265規格について、ビデオデータをエンコードする際に主に採用される技術的手段は、予測エンコードであり、即ち、初期フレームを予測して予測値を得て、さらに、予測値と前記初期フレームの初期値とを減算して残差値を得ることにより、前記ビデオデータを圧縮する。回復及び解凍(即ち、デコード)の場合、残差値と予測値とを加算して前記初期フレームを回復することができる。データ処理方法P200は、エンコードスペクトラム調節とエンコードとを結合する方法を採用して前記ビデオデータに対してデータ圧縮を行い、圧縮フレームを得ることにより、ビデオデータの圧縮比をさらに向上させ、ビデオ伝送の効率を向上させる。データ処理方法P300は、デコード(即ち、残差値及び予測値に基づいて圧縮中のフレームを回復する)とデコードスペクトラム調節とを結合する方法を採用し、前記圧縮フレームに対してデータ解凍を行うことにより、前記圧縮フレームにおけるデータを回復する。データ処理方法P300は、デコードスペクトラム調節関数により、圧縮データに対してデコードスペクトラム調節を行い、前記デコードスペクトラム調節により、デコード後のデータにリンギング効果が発生することを回避させることができ、圧縮データとデコード後のデータとに対して差を求め、前記初期フレームの境界情報を取得し、前記境界情報と前記デコード後のデータとを重畳して前記解凍フレームを得ることができる。具体的に、前記デコードスペクトラム調節は、滑らかに移行するローパスフィルタを用いることによりデコード後のデータにおける中間周波数及び高周波数領域の成分がフィルタリングされるようにさせ、従って、デコード後のデータは、リンギング効果を効果的に回避し、それにより、解凍後のデータをより鮮明にさせる。前記エンコードスペクトラム調節とは、処理されるべきデータのスペクトラム図の振幅を調節することである。例えば、前記エンコードスペクトラム調節は、前記処理されるべきデータに対して周波数領域において振幅減衰を行うことにより、前記処理されるべきデータにおける情報量を低減させ、例えば、前記処理されるべきデータのその周波数領域内の選択された周波数領域の振幅、例えば、中間周波数領域の振幅、高周波数領域の振幅、例えば、低周波数領域から中間周波数領域の振幅、また、例えば、中間周波数から高周波数領域の振幅等を減衰させることができる。当業者にとって、エンコードスペクトラム調節を経たデータの選択された周波数領域内の周波数成分が小さくなり、データにおける情報量が減少し、従って、エンコードスペクトラム調節を経たデータがエンコードする時の効率は向上し、圧縮比を向上させることができることは理解され得る。前記デコードスペクトラム調節は、他の演算誤差を考慮しない場合、前記エンコードスペクトラム調節を経たデータがエンコードスペクトラム調節前の状態に完全回復し又は近似回復し、さらに、エンコードスペクトラム調節前の状態を超えるようにさせることができる。前記デコードスペクトラム調節は、滑らかに移行するデコードスペクトラム調節関数により、前記デコード後のデータにおける中間周波数及び高周波数領域の成分がフィルタリングされるようにさせ、解凍後のデータにリンギング効果が発生することを回避し、解凍後のデータをより鮮明にさせる。そのため、データ処理方法P200、P300及びシステム100は、ビデオデータの圧縮効率を顕著に向上させ、ビデオの伝送効率、復元率及び解凍されたビデオの解像度を向上させることができる。前記エンコードスペクトラム調節及び前記デコードスペクトラム調節に関する具体的な過程は、以下の説明において詳しく紹介される。システム100はビデオデータに対してデータ圧縮を行うとき、前記エンコードスペクトラム調節及び前記エンコードの順番は互換されてもよいし、交差して行われてもよい。同様に、システム100は圧縮フレームに対してデータ解凍を行うとき、前記デコードスペクトラム調節及び前記デコードの順番は互換されてもよいし、交差して行われてもよい。なお、解凍後のデータ情報が初期データにおける情報を回復することを保証するために、前記データ解凍の順番と前記データ圧縮の順番は対応するものであるべきであり、即ち、前記データ解凍は前記データ圧縮と対称的に逆方向に操作してもよい。例えば、前記圧縮フレームは前記エンコードスペクトラム調節を行ってから前記エンコードを行って得たものである場合、前記圧縮フレームはデータ解凍を行うとき、前記デコードを行ってから前記デコードスペクトラム調節を行うべきである。説明の便宜上、データ圧縮処理前の前記初期フレームにおけるデータをP0と定義し、エンコードスペクトラム調節に対応するエンコードスペクトラム調節関数をH1(f)と定義し、データ解凍機器300により解凍されて得た解凍フレームにおけるデータをP4と定義し、デコードスペクトラム調節に対応するデコードスペクトラム調節関数をH2(f)と定義する。
図3Aは、本明細書の実施例に基づいて提供されるデータ圧縮及びデータ解凍を示すフローチャートである。図3Aに示すように、データ圧縮機器200が初期データに対してデータ圧縮を行うことは、データ圧縮機器200は、まず、前記エンコードスペクトラム調節関数H1(f)を用いて前記初期データP0に対して前記エンコードスペクトラム調節を行い、続いて、前記エンコードを行い、即ち、エンコードスペクトラム調節後のデータに対して予測し、及び、残差を求め、予測データPI及び残差データRを得て、前記予測データPI及び前記残差データRをコードストリーム生成モジュールに入力して合成し、前記圧縮フレームを得ることであってもよい。表示の便宜上、前記エンコードスペクトラム調節関数H1(f)により前記エンコードスペクトラム調節を行った後に得られたデータをP1と定義する。図3Aに示すデータ圧縮方法は、エンコード効率を向上させ、前記圧縮フレームにおけるデータ量をさらに減小させ、圧縮比を向上させることができる。
データ解凍機器300が前記圧縮フレームに対してデータ解凍を行うことは、データ解凍機器300は、まず、前記圧縮フレームに対して前記デコードを行い、即ち、コードストリーム解析モジュールに基づいて前記圧縮フレームを解析し、前記予測データPI及び前記残差データRを生成し、続いて、前記予測データPIに基づいて予測して予測フレームを得て前記残差データRと重畳し、重畳データP2を得た後、前記デコードスペクトラム調節関数H2(f)を用いて重畳データP2に対して前記デコードスペクトラム調節を行い、データPCを得ることであってもよい。前記デコードスペクトラム調節は、前記重畳データにリンギング効果が発生することを回避する。具体的に、前記デコードスペクトラム調節は、前記重畳データの周波数領域内の振幅を滑らかに低下させて中間周波数から高周波数領域の成分をフィルタリングさせる。1フレームのデータスペクトラムにおける中間周波数から高周波数成分は、主にこの1フレームのデータにおいてデータが激しく変化する領域に集中し、即ち、データの境界データである。例えば、1フレームの画像に対して、前記中間周波数から高周波データは、主に前記画像における物体の境界に集中し、即ち、この1フレームの画像の境界データである。そのため、データPCは、重畳データP2における境界データが除去されたものと理解され得る。次に、前記重畳データP2と前記データPCとに対して差を求め、境界フレームを得る。前記境界フレームは、境界データを抽出した1フレームのデータを表す。例えば、画像データに対して、前記境界フレームは、物体境界を抽出した画像を表す。前記デコードスペクトラム調節は前記重畳データP2における中間周波数から高周波数領域の成分がフィルタリングされたようにさせるので、前記重畳データP2とデータPCとに対して差を求めて得た前記境界フレームは、前記初期フレームの境界情報を含み、表示の便宜上、前記境界フレームにおけるデータをPEと定義し、前記境界フレームPEと前記重畳データP2とを重畳して重畳フレームP3を得て、前記重畳フレームP3を前記解凍フレームP4として直接出力してもよいし、前記重畳フレームP3に対して境界調整を行い、境界調整の結果を前記解凍フレームP4としてもよい。表示の便宜上、重畳フレームP3と初期データP0との間の伝達関数を全体スペクトラム調節関数H0(f)と定義する。図3Aに示す方式は、前記圧縮フレームにおけるデータ量を低減することができ、それにより、前記初期データの圧縮比及びエンコード効率を向上させ、前記初期データの伝送効率を向上させ、同時にリンギング効果を回避し、解凍フレームの解像度を向上させることができる。前記データ圧縮及びデータ解凍の具体的な過程は、以下の内容において具体的に説明される。
データ圧縮機器200が初期データに対してデータ圧縮を行うことは、前記エンコードスペクトラム調節を前記エンコード過程に融合することであってもよい。前記エンコードスペクトラム調節は、前記エンコード過程における任意の段階で行うことができる。前記デコードスペクトラム調節は、前記デコード過程の対応する段階で行ってもよい。
図3Bは、本明細書の実施例に基づいて提供されるデータ圧縮及びデータ解凍を示すフローチャートである。図3Bに示すように、データ圧縮機器200が初期データに対してデータ圧縮を行うことは、データ圧縮機器200は、前記初期データP0に対して予測し、予測フレーム及び予測データPIを得て、続いて、前記予測フレーム及び前記初期データのそれぞれに対して前記エンコードスペクトラム調節を行った後に残差を求め、残差データRを得て、前記予測データPI及び前記残差データRをコードストリーム生成モジュールに入力して合成し、前記圧縮フレームを生成することであってもよい。図3Bに示すデータ圧縮の具体的な操作は、図3Aに示す方式と同一であり、操作順番のみが異なる。
解凍段階において、データ解凍機器300が前記圧縮フレームに対してデータ解凍を行うことは、データ解凍機器300は、コードストリーム解析モジュールに基づいて前記圧縮フレームを解析し、前記予測データPI及び前記残差データR1を生成し、前記残差データR1に対して前記デコードスペクトラム調節を行い、前記残差データR1と、前記デコードスペクトラム調節を経たデータとに対して差を求め、前記残差データR1と、差を求めた後のデータとを重畳して前記残差データRを得て、続いて、予測データPIに基づいて予測して予測フレームを得て、それを前記残差データRとを重畳して前記重畳フレームP3を得ることであってもよい。前記重畳フレームP3を前記解凍フレームP4として直接出力してもよく、前記重畳フレームP3に対して境界調整を行い、境界調整の結果を前記解凍フレームP4としてもよい。
図3Bに示す方式は、前記圧縮フレームにおけるデータ量を低減することができ、それにより、前記初期データの圧縮比及びエンコード効率を向上させ、前記初期データの伝送効率を向上させ、同時にリンギング効果を回避し、解凍フレームの解像度を向上させることができる。
図3Cは、本明細書の実施例に基づいて提供されるデータ圧縮及びデータ解凍をしめすフローチャートである。図3Cに示すように、データ圧縮機器200が初期データに対してデータ圧縮を行うことは、データ圧縮機器200は、前記初期データP0に対して前記エンコードを行い、即ち、予測し、及び、残差を求めることにより、予測データPI及び残差データRを得て、さらに、前記残差データRに対して前記エンコードスペクトラム調節を行い、前記エンコードスペクトラム調節を経た残差データR1及び予測データPIをコードストリーム生成モジュールに入力して合成し、前記圧縮フレームを生成する。図3Cに示すデータ圧縮方式の具体的な操作は図3Aに示す方式と同一であり、操作順番のみが異なる。
解凍段階において、データ解凍機器300が前記圧縮フレームに対してデータ解凍を行うことは、データ解凍機器300は、コードストリーム解析モジュールに基づいて前記圧縮フレームを解析し、前記予測データPI及び前記残差データR1を生成し、前記残差データR1に対して前記デコードスペクトラム調節を行い、前記残差データR1と前記デコードスペクトラム調節を経たデータとに対して差を求め、前記残差データR1と差を求めた後のデータとを重畳し、前記残差データRを得て、続いて、予測データPIに基づいて予測して予測フレームを得て、それと前記残差データRとを重畳して前記重畳フレームP3を得ることであってもよい。前記重畳フレームP3を前記解凍フレームP4として直接出力してもよく、前記重畳フレームP3に対して境界調整を行い、境界調整の結果を前記解凍フレームP4としてもよい。
図3Cに示す方式は、前記圧縮フレームにおけるデータ量を低減することができ、それにより、前記初期データの圧縮比及びエンコード効率を向上させ、前記初期データの伝送効率を向上させ、同時にリンギング効果を回避し、解凍フレームの解像度を向上させることができる。
図4は、データを圧縮するデータ処理の方法P200を示すフローチャートである。上述したように、データ圧縮機器200は、データ処理方法P200を実行することができる。具体的に、データ圧縮機器200における記憶媒体は、少なくとも1セットの命令セットを記憶することができる。前記命令セットは、データ圧縮機器200における圧縮プロセッサ220がデータ処理方法P200を完了させると指示するように設定される。前記データ圧縮機器200が動作するとき、圧縮プロセッサ220は、前記命令セットを読み出してデータ処理方法P200を実行することができる。前記方法P200は、S220及びS240を含んでもよい。
S220において、初期データにおける初期フレームを選択する。
フレームは、データ序列を構成する処理単位である。データ処理の場合、フレームを単位で演算を行うことが多い。前記初期データは、1つ又は複数の初期フレームを含んでもよい。前記初期フレームは、プリセットバイト数の初期データを含む。上述したように、本明細書においてビデオデータを例として説明を行い、従って、前記初期データは初期ビデオデータであってもよく、前記初期フレームは初期ビデオデータにおけるフレーム画像であってもよい。ステップS220において、データ圧縮機器200は、前記初期データから一部のフレーム画像を前記初期フレームとして選択してもよい、前記初期データにおける全てのフレーム画像を前記初期フレームとして選択してもよい。データ圧縮機器200は、前記初期データの応用シーンに基づいて前記初期フレームを選択することができる。前記初期データが精度及び圧縮品質に対する要求が高くないシーンに応用される場合、一部のフレーム画像を前記初期フレームとして選択してもよく、例えば、静かな場所での監視画像は、多くの場合において画面に異物がないため、前記静かな場所での監視画像の多くのフレーム画像は同一であり、データ圧縮機器200は、その中から一部のフレーム画像を前記初期フレームとして選択して圧縮及び伝送を行ってもよい。また、例えば、高解像度のテレビ放送ビデオに対して、鑑賞効果を保証するために、データ圧縮機器200は全てのフレーム画像を前記初期フレームとして選択して圧縮及び伝送を行うことができる。
S240において、前記初期フレームに対してデータ圧縮操作を行い、圧縮フレームを得る。
前記データ圧縮操作は、圧縮中のフレームをエンコードスペクトラムレギュレータに入力してエンコードスペクトラム調節を行うことを含み、前記圧縮中のフレームは、前記初期フレームと前記初期フレームが前記データ圧縮過程において前記圧縮フレームになる前のいずれかのデータ状態とを含む。例えば、前記圧縮中のフレームは、前記初期フレームと、予測過程及び残差を求める過程における前記初期フレームのいずれかのデータ状態とを含む。前記エンコードスペクトラム調節は、前記圧縮中のフレームのスペクトラム図の振幅を調節することである。例えば、前記エンコードスペクトラム調節は、減衰器によって完成してもよい。前記減衰器は、前記圧縮中のフレームに対して周波数領域で振幅減衰を行うことにより、前記圧縮中のフレームにおけるデータ情報量を低下させることができる。
例えば、前記減衰器は、前記圧縮中のフレームのその周波数領域内の選択された領域の振幅、例えば、中間周波数領域の振幅、高周波数領域の振幅、また、例えば低周波数領域から中間周波数領域の振幅、また、例えば、中間周波数から高周波数領域の振幅等を低下させるように構成される。異なる形式のデータに対して、受信者は周波数に対する感度が異なるので、前記データ圧縮操作は異なる形式のデータに応じて周波数領域において異なる領域を選択して振幅減衰を行うことができる。上述したように、ビデオデータを例として、ピクシャにおける物体のエッジ部分の中間周波数及び高周波数情報が豊富であり、中間周波数及び高周波数領域が多くのデータを携帯し、従って、中間周波数から高周波数領域の振幅を低減させることは視覚的に前記圧縮中のフレームの境界データをぼかし、同時に画像における情報量を大幅に減少させる。なお、低周波領域の振幅を低減させることは、画像における情報量を低減させることにもなる。当業者であれば、エンコードスペクトラム調節処理を経ていない場合に比べて、エンコードスペクトラム調節処理を経た中間状態フレームにおける低周波から高周波数領域の周波数成分が減小し、データ情報量も減小し、従って、エンコードスペクトラム調節処理を経た中間状態フレームはエンコードの場合においてより高い圧縮比を有することは理解されるべきである。異なるタイプのデータは、低周波、中間周波数及び高周波数領域に対する定義が異なってもよい。一部の実施例において、前記高周波は、正規化の周波数領域での(0.33,0.5]の間の周波数を含んでもよい。例えば、前記高周波は、前記正規化の周波数領域での0.33、0.34、0.35、0.36、0.37、0.38、0.39、0.4、0.41、0.42、0.43、0.44、0.45、0.46、0.47、0.48、0.49、0.5のうちのいずれか2つの周波数の間の区間を含んでもよく、ここで、0.5は、前記正規化の最大周波数である。
ビデオデータ圧縮を例として、データ処理方法P200は、エンコードスペクトラム調節とエンコードとを結合する方法を採用して前記初期フレームを圧縮してもよく、それにより、中間周波数領域の振幅をスムーズに低下し、データ情報量を低減させ、ビデオデータの圧縮比をさらに向上させ、ビデオ伝送の効率を向上させる。前記圧縮中のフレームは、前記初期フレームが前記エンコードスペクトラム調節及びエンコードを行う過程におけるいずれかのデータ状態、例えば、初期フレーム、予測フレーム、残差フレーム等を含んでもよい。
上述したように、前記初期フレームに対してデータ圧縮を行うとき、前記エンコードスペクトラム調節と前記エンコードとの順番は、互換したものであってもよく、交差して行ってもよい。ステップS240は、図3A、図3B及び図3Cに示すデータ圧縮の方法における少なくとも1つを含んでもよい。
表示の便宜上、本明細書は、図3Aに示す方式を例としてステップS240に対して詳しく説明し、即ち、データ圧縮機器200は、まず、前記初期フレームに対して前記エンコードスペクトラム調節を行い、続いて、エンコードスペクトラム調節を経た前記初期フレームに対してエンコードを行う(即ち、予測し及び残差を求める)圧縮方式を説明する。つまり、データ圧縮機器200は、まず、前記初期フレームに対してエンコードスペクトラム調節を行い、前記初期フレームの周波数領域内の振幅をスムーズに低下させて前記初期フレームの境界情報をぼかし、エンコードスペクトラム調節フレームを得て、前記初期フレームにおける情報量を低減させ、それにより、前記初期フレームが圧縮された後に占有する空間リソースを低減させ、ここで、前記圧縮中のフレームは、前記エンコードスペクトラム調節フレームを含み、その後、前記エンコードスペクトラム調節フレームに対してエンコードを行い、即ち、予測し及び残差を求めることを行い、前記エンコードスペクトラム調節フレームに対して予測して前記エンコードスペクトラム調節フレームの予測フレーム及び前記予測データPIを得て、さらに、前記エンコードスペクトラム調節フレームの予測フレームと前記エンコードスペクトラム調節フレームの初期フレームとを減算して前記エンコードスペクトラム調節フレームの残差データRを得て、残差データR及び前記予測データPIをコードストリーム生成モジュールに入力して合成し、前記圧縮フレームを得てもよい。データ処理方法P200は、前記エンコードスペクトラム調節フレームのエンコード効率を向上させ、前記圧縮フレームにおけるデータ量をさらに減小させ、エンコード効率を向上させ、圧縮比を向上させることができる。前記エンコードスペクトラム調節の対象は、前記初期フレームであるため、前記圧縮中のフレームは前記初期フレームである。ビデオデータを例として、ステップS240において、前記圧縮中のフレーム(初期フレーム)に対して前記データ圧縮を行うことは、データ圧縮機器200の少なくとも1つの圧縮側プロセッサ220によってS242、S244及びS246を実行することを含んでもよい。
S242において、前記圧縮中のフレーム(初期フレーム)に対して前記エンコードスペクトラム調節を行い、前記エンコードスペクトラム調節フレームを得る。ここで、前記エンコードスペクトラム調節は、エンコード畳み込みカーネルを用いて前記圧縮中のフレームに対して畳み込みを行うことにより、周波数領域において前記圧縮中のフレームの中間周波数領域の振幅をスムーズに低下させる。ステップS242において、前記圧縮中のフレームに対してエンコードスペクトラム調節を行うことは、データ圧縮機器200の少なくとも1つの圧縮側プロセッサ220によりS242-2及びS242-4を実行することを含んでもよい。
S242-2において、前記初期フレームのフレームタイプを決定する。
ビデオデータを例として説明する。フレームは、ビデオデータ序列を構成する通常の処理単位である。ビデオデータ処理の場合、フレームを単位で演算することが多い。H.264規格又はH.265規格を用いてビデオデータをエンコードするとき、フレーム画像に応じてフレームを異なるフレームタイプに圧縮することが多い。そのため、データ圧縮機器200が前記圧縮中のフレーム(初期フレーム)に対して前記エンコードスペクトラム調節を行う前に、前記初期フレームのフレームタイプを先に決定する必要があり、異なるフレームタイプに対して、選択されたエンコード畳み込みカーネルも異なる。
ビデオフレーム序列に対して、フレームタイプは、具体的に、イントラ予測フレーム(Intra Predictive Frame、Iフレームと略称される)、前方予測フレーム(Predictive Frame、Pフレームと略称される)、及び、双方向予測フレーム(Bi-directional Predictive Frame、Bフレームと略称される)。1つのフレームのみを有するフレーム序列に対して、一般的にイントラ予測フレーム(Iフレーム)として処理する。Iフレームは、フレーム全体がイントラ圧縮されたエンコードフレームである。デコードするとき、Iフレームのデータを用いるだけで完全なデータを再構成することができ、他の画面を参照する必要がなく、後続する複数のフレームの基準フレームとすることができる。Pフレームは、画像序列における前のエンコード済みのフレームの時間冗長情報を十分に低下させることにより、データ量を伝送するエンコードフレームを圧縮する。Pフレームは、その前に位置するPフレーム又はIフレームから予測されたものであって、本フレームと、隣接する前の1つ又は複数のフレームとの相違点に基づいて本フレームを圧縮するものである。PフレームとIフレームの連携圧縮の方法を採用して、より高い圧縮効率に達し且つ明らかな圧縮痕跡がない。この方法は、前の近寄りのIフレーム又はPフレームのみを参照する。Bフレームは、隣接する前の複数のフレーム、本フレーム、及び、後ろの複数のフレームの相違点に基づいて本フレームを圧縮し、つまり、本フレームと、前後のフレームとの差値のみを記録する。一般的に、Iフレームの圧縮効率は最も低く、Pフレームは比較的高く、Bフレームは最も高い。ビデオデータのエンコード過程において、一部のビデオフレームはIフレームに圧縮され、一部はPフレームに圧縮され、一部はBフレームに圧縮される。
前記初期フレームのフレームタイプは、Iフレーム、Pフレーム及びBフレームのうちの少なくとも1種又は複数種を含む。
S242-4において、前記初期フレームのフレームタイプに基づいて、エンコード畳み込みカーネルグループから1つの畳み込みカーネルを前記エンコード畳み込みカーネルとして選択し、前記圧縮中のフレームに対して畳み込みを行い、エンコードスペクトラム調節フレームを得る。
前記圧縮中のフレームに対するスペクトラム調節は、前記圧縮中のフレームが周波数領域で伝達関数H1(f)(即ち、エンコードスペクトラム調節関数)を乗算すること、又は、時間領域で対応する畳み込み演算を行うこと、として表現してもよい。前記圧縮中のフレームがデジタル化されたデータである場合、前記畳み込み演算は、前記エンコードスペクトラム調節関数H1(f)対応するエンコード畳み込みカーネルを選択して畳み込み演算を行うことであってもよい。説明の便宜上、本明細書は、時間領域で畳み込みを行うことを例として前記スペクトラム調節をするが、当業者にとって、周波数領域でエンコードスペクトラム調節関数H1(f)を乗算することによりスペクトラム調節を行う方式も本明細書の範囲に属することは理解されるべきである。
上述したように、前記圧縮中のフレームに対して前記エンコードスペクトラム調節を行うことは、時間領域で前記圧縮中のフレームに対して畳み込みを行うことと表現されてもよい。データ圧縮機器200の記憶媒体には、複数のエンコードスペクトラムレギュレータ、即ち、前記エンコードスペクトラムレギュレータグループが記憶されてもよい。各エンコードスペクトラムレギュレータは、1つのエンコード畳み込みカーネルグループを含む。つまり、データ圧縮機器200の記憶媒体は前記エンコード畳み込みカーネルグループを含んでもよく、前記エンコード畳み込みカーネルグループは少なくとも1つの畳み込みカーネルを含んでもよい。データ圧縮機器200は、前記圧縮中のフレームに対して畳み込みを行うとき、前記初期フレームに対応する圧縮中のフレームのフレームタイプに応じて、前記エンコード畳み込みカーネルグループから1つの畳み込みカーネルを前記エンコード畳み込みカーネルとして選択し、前記圧縮中のフレームに対して畳み込みを行ってもよい。前記初期フレームに対応する圧縮中のフレームがIフレーム又はPフレームである場合、データ圧縮機器200が前記Iフレーム又はPフレームに対して畳み込みを行うことは、前記エンコード畳み込みカーネルグループから1つの畳み込みカーネルを前記エンコード畳み込みカーネルとして選択し、前記Iフレーム又はPフレームに対して畳み込みを行うことを含む。前記畳み込みカーネルグループにおけるいずれか1つの畳み込みカーネルはいずれも前記Iフレーム又はPフレームの周波数領域内の振幅を低下させ、中間周波数領域での振幅をスムーズに低下させることができる。データ圧縮機器200は、前記初期フレームのエンコード品質要求に応じて前記エンコード畳み込みカーネルグループから1つの圧縮効果が最も良い畳み込みカーネルを前記エンコード畳み込みカーネルとして選択してもよい。前記初期フレームに対応する圧縮中のフレーム(本実施例では前記初期フレームである)がBフレームである場合、前記圧縮中のフレームの前記エンコード畳み込みカーネルは、前記圧縮中のフレームに最も近い基準フレームに対応するエンコード畳み込みカーネルと同一であり、又は、前記圧縮中のフレームの前記エンコード畳み込みカーネルは、隣接する2つの方向の最も近い基準フレームのうちの減衰度が最も大きい基準フレームに対応するエンコード畳み込みカーネルと同一であり、又は、前記圧縮中のフレームの前記エンコード畳み込みカーネルは、隣接する2つの方向における最も近い基準フレームに対応するエンコード畳み込みカーネルの平均値を取る。このように、前記圧縮中のフレーム(初期フレーム)の振幅を低下させる効果がより良くなり、エンコードスペクトラム調節の効果がより良くなるようにさせ、ビデオデータの圧縮比をより高くさせる。
図5Aは、本明細書の実施例に基づいて提供されるエンコードスペクトラム調節関数H1(f)を示すグラフである。図5Aに示すように、横軸は正規化周波数fであり、縦軸はエンコードスペクトラム調節関数H1(f)振幅調節ゲインH1である。図5Aにおける曲線1及び曲線2は、異なるエンコード畳み込みカーネルに対応する異なるエンコードスペクトラム調節関数H1(f)を表す。前記横軸の正規化周波数fは、低周波領域、中低周波領域、中間周波数領域、中高周波数領域及び高周波数領域に分けられる。図5Aに示すように、横軸の正規化周波数の最大値は0.5である。上述したように、前記高周波数領域は、正規化の周波数領域での(d,0.5]の間の周波数を含んでも良い。ここで、dは前記高周波数領域の周波数の下限である。例えば、dは、前記正規化の周波数領域での0.35、0.36、0.37、0.38、0.39、0.4、0.41、0.42、0.43、0.44、及び0.45のうちのいずれか1つの周波数であってもよい。前記中間周波数領域は、(b,c]の間の周波数を含んでもよく、ここで、bは前記中間周波数領域の周波数の下限であり、cは前記中間周波数領域の周波数の上限である。例えば、前記中間周波数領域の周波数の下限bは、前記正規化の周波数領域での0.15、0.16、0.17、0.18、0.19、0.2、0.21、0.22、0.23、0.24、0.25、0.26、0.27及び0.28のうちのいずれか1つの周波数であってもよく、前記中間周波数領域の周波数の上限cは、前記正規化の周波数領域での0.35、0.34、0.33、0.32及び0.31のうちのいずれか1つの周波数であってもよい。前記低周波領域は、正規化の周波数領域での[0,a]の間の周波数を含んでもよい。ここで、aは前記低周波領域の周波数の上限である。前記低周波領域の周波数の上限aは、前記正規化の周波数領域での0.01、0.02、0.03、0.04、0.05、0.06、0.07、0.08、0.09、0.10、0.12、0.13、0.14及び0.15のうちのいずれか1つの周波数であってもよい。前記低周波領域が前記中間周波数領域と繋がらない場合、両者の間の周波数領域は、中低周波領域と呼ばれる。前記中間周波数領域が前記高周波数領域と繋がらない場合、両者の間の周波数領域は、中高周波率領域と呼ばれる。
ビデオデータを例として、人の目は、高周波のデータより低周波から中間周波数のデータに対してより敏感であるため、ビデオデータにおける初期フレームに対して前記エンコードスペクトラム調節を行うとき、初期フレームに含まれる低周波から中間周波数情報が紛失しないようになるべく保留し、中間周波数及び低周波領域の振幅ゲインが相対的に安定であるように保持し、低周波から中間周波数領域の情報が可能な限りに相対的に安定及び完全であるようにさせ、それにより、解凍する時に低周波から中間周波数領域の情報をより良く回復させる。そのため、前記エンコードスペクトラム調節が使用するエンコードスペクトラム調節関数H1(f)は、周波数領域内の低周波数領域から中間周波数領域での任意の周波数fでの前記圧縮中のフレーム(初期フレーム)に対する振幅調節ゲインH1は、いずれも零より大きく、前記エンコードスペクトラム調節関数H1(f)の処理を経た低周波数領域から中間周波数領域のすべての周波数の振幅は、いずれも零より大きく、低周波数領域から中間周波数領域には任意の周波数のデータが紛失することはない。そのため、圧縮後のデータに対して解凍を行うときに低周波数領域から中間周波数領域のすべての周波数範囲内のデータを回復することができる。さもないと、前記エンコードスペクトラム調節関数H1(f)における低周波数領域から中間周波数領域には零点が存在する場合、零点に対応する周波数部分のデータが紛失する可能性があり、解凍するときにデコード側は紛失したデータを回復することはできないため、初期データを回復することはできない。上述したように、前記初期フレームのデータをP0と定義し、前記初期フレームが前記エンコードスペクトラム調節関数H1(f)の処理を経た後に得られるデータをP1と定義し、従って、前記エンコードスペクトラム調節フレームのデータがP1と定義され、P0とP1との間の関係は、式(1)で表されてもよい。
人の目が高周波データに対して比較的不敏感であるため、ビデオデータの初期フレームに対して前記エンコードスペクトラム調節を行うとき、高周波部分の振幅に対してより大きく減衰させ、高周波数領域の振幅をより大きく低下させることができる。このように、前記初期フレームに含まれるデータ情報を減少させ、圧縮比及びエンコード効率を向上させる。
従って、前記エンコードスペクトラム調節が使用する前記エンコードスペクトラム調節関数H1(f)は、周波数領域において前記圧縮中のフレームの振幅をスムーズに低下させることができる。一部の実施例において、前記エンコードスペクトラム調節が使用する前記エンコードスペクトラム調節関数H1(f)は、前記圧縮中のフレームのその周波数領域内の高周波数領域の振幅を安定に低下させることができる。前記振幅が安定に低下することは、前記振幅が第1振幅調節ゲイン値で減衰を行ってもよいし、前記振幅が前記第1振幅調節ゲイン値に近い一定の誤差範囲内で減衰を行ってもよい。例えば、前記第1振幅調節ゲインは、0から1の間の任意の数値であってもよい。例えば、前記第1振幅調節ゲインは、0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96及び1等の数値のうちの任意の2つの規定される区間内にあってもよい。前記誤差範囲は、0、±1%、±2%、±3%、±4%、±5%、±6%、±7%、±8%、±9%、±10%、±11%、±12%、±13%、±14%、±15%、±16%、±17%、±18%、±19%、±20%、±21%、±22%、±23%、±24%、±25%、±26%、±27%、±28%、±29%、±30%等の数値のうちの任意の2つの規定される区間内にあってもよい。図5Aに示すように、前記エンコードスペクトラム調節は、高周波数領域(概ね0.4~0.5の区間)での第1振幅調節ゲインは、0.2程度である。
一部の実施例において、前記エンコードスペクトラム調節が使用する前記エンコードスペクトラム調節関数H1(f)は、周波数領域において前記圧縮中のフレームの中間周波数領域の振幅をスムーズに低下させてもよい。ここで、前記中間周波数領域での前記圧縮中のフレームに対する前記エンコードスペクトラム調節の振幅調節ゲインは、第2振幅調節ゲインである。一部の実施例において、前記第2振幅調節ゲインの値は、前記第1振幅調節ゲインより大きいものであってもよく、図5Aに示すように、前記エンコードスペクトラム調節が周波数減衰である場合(つまり、前記エンコードスペクトラムレギュレータが前記周波数減衰器である場合)、第1振幅調節ゲイン及び第2振幅調節ゲインはいずれも1より小さいものである。つまり、前記エンコードスペクトラム調節が前記圧縮中のフレームに対する前記中間周波数領域の振幅低下幅は、前記高周波数領域の振幅低下幅より低いものであってもよい。
また、前記エンコードスペクトラム調節関数H1(f)は、さらに周波数領域において前記圧縮中のフレームの低周波領域の振幅をスムーズに低下させてもよい。ここで、前記低周波領域での前記圧縮中のフレームに対する前記エンコードスペクトラム調節の振幅調節ゲインは、第3振幅調節ゲインである。前記エンコードスペクトラム調節が周波数減衰である場合(つまり、前記エンコードスペクトラムレギュレータが前記周波数減衰器である場合)、第3振幅調節ゲイン及び第2振幅調節ゲインはいずれも1より小さいものである。前記第3振幅調節ゲインの値は、前記第2振幅調節ゲイン以上であってもよい。つまり、前記エンコードスペクトラム調節が前記圧縮中のフレームに対する前記低周波領域の振幅低下幅は、前記中間周波数領域の振幅低下幅以下であってもよい。
さらに、リンギング効果の発生を回避するために、前記エンコードスペクトラム調節関数H1(f)は、前記初期フレームの周波数領域内の振幅が滑らかに移行するようにさせるべきである。上述したように、1枚の画像に対してスペクトラム調節処理を行うとき、選択されたスペクトラム調節関数は数値において激しく変化する領域が存在する場合、出力画像は階調又は色が激しく変化する処において比較的強い色振動を起こさせ、リンギング効果と呼ばれる。リンギング効果は、画像の境界で発生することが多い。前記エンコードスペクトラム調節関数H1(f)の周波数領域において前記初期フレームに対する振幅調節ゲインを滑らかに移行させることにより、前記振幅調節ゲインが激しく変化することを回避することができる。例えば、前記高周波数領域が前記中間周波数領域と繋がらない場合、前記エンコードスペクトラム調節関数H1(f)は、周波数領域で前記圧縮中のフレームの中高周波数領域の振幅に対して調節を行うことにより、前記振幅調節ゲインの中高周波数領域内の変化を滑らかに連続させることができる。前記中間周波数領域が前記低周波領域と繋がらない場合、前記エンコードスペクトラム調節関数H1(f)は、周波数領域で前記圧縮中のフレームの中低周波領域の振幅に対して調節を行うことにより、前記振幅調節ゲインの中低周波領域内の変化を連続させることができる。
前記エンコードスペクトラム調節関数H1(f)は、直流部分をさらに保持してもよく、即ち、周波数が0である部分での振幅調節ゲインは1であり、それにより、初期フレームにおける基礎情報を保留できるように保証し、データ解凍を行うときに平均値情報を得ることができ、それにより、初期データを回復する。そのため、前記エンコードスペクトラム調節が使用する前記エンコードスペクトラム調節関数H1(f)の前記低周波領域に対する振幅低下幅は、前記中間周波数領域に対する振幅低下幅より低いものである。しかし、直流部分(即ち、周波数が0である部分)の振幅ゲインが1ではない場合、適切なデコードスペクトラム調節関数H2(f)を設計することによりも、初期データを回復することができる。具体的に、H1(f)及びH2(f)に関する具体的な関係は、以下の説明において詳しく紹介する。
図5Aに示すエンコードスペクトラム調節関数H1(f)のグラフにおいて、(0,0.1]の間の周波数は低周波に属し、(0.1,0.15]の間の周波数は中低周波に属し、(0.15,0.33]の間の周波数は中間周波数に属し、(0.33,0.4]の間の周波数は中高周波に属し、(0.4,0.5]の間の周波数は高周波に属する。前記低周波領域の第3振幅調節ゲインは前記中間周波数領域の第2振幅調節ゲインより大きいものであり、前記中間周波数領域の第2振幅調節ゲインは前記高周波数領域の第1振幅調節ゲインより大きいものである。同時に、前記中間周波数領域の第2振幅調節ゲインは相対的に安定であり、曲線1は0.5程度であり、曲線2は0.6程度であり、前記高周波数領域の第1振幅調節ゲインH1も相対的に安定であり、曲線1は0.2よりやや低いものであり、曲線2は0.2よりやや高いものである。前記エンコードスペクトラム調節関数H1(f)の曲線は滑らかに移行する曲線である。工程の実現上、振幅の低下を実現させることに基づいて前記エンコードスペクトラム調節関数H1(f)の曲線に小さな範囲の変動が存在することが許容され、前記変動は圧縮の効果に影響しない。ビデオデータ以外の他の形式のデータに対して、受信者のデータに対する感度に応じて、前記エンコードスペクトラム調節関数H1(f)のパラメータを設置することができる。異なる形式のデータは、受信者の周波数に対する感度が異なる。
図5Bは、本明細書の実施例に基づいて提供されるエンコードスペクトラム調節関数H1(f)を示すグラフである。図5Bにおける曲線3及び曲線4は異なるエンコード畳み込みカーネルに対応する異なるエンコードスペクトラム調節関数H1(f)を表す。ビデオデータについて、一部の特殊な応用シーン、例えば、偵察のシーンにおいて、より多い高周波数成分を適切に保留することは必要である。そのため、一部の実施例において、エンコードスペクトラム調節関数H1(f)曲線は第1振幅調節ゲインが第2振幅調節ゲインより大きいようにさせ(曲線3)、又は第2振幅調節ゲインに等しいようにさせてもよい(曲線4)。
ビデオデータについて、一部の画像品質に対する要求が高くない応用シーンにおいて、高周波数成分は完全に除去されてもよく、従って、前記エンコードスペクトラム調節が使用するエンコードスペクトラム調節関数H1(f)は、周波数領域内の低周波数領域から中間周波数領域での任意の周波数での前記圧縮中のフレーム(初期フレーム)に対する振幅調節ゲインH1が零より大きく、高周波数領域での振幅調節ゲインH1が0に等しいものであってもよい(図5A及び図5Bにおいて図示しない)。
なお、図5A及び図5Bに示す曲線は、ビデオデータを例として説明するものに過ぎず、当業者であれば、前記エンコードスペクトラム調節関数H
1(f)の曲線は図5A及び図5Bに示す形式に限定されず、前記初期フレームの周波数領域での中間周波数領域の振幅をスムーズに低下させる全てのエンコードスペクトラム調節関数H
1(f)及びエンコードスペクトラム調節関数の線形結合
、又はエンコードスペクトラム調節関数の積の結合
、又は線形結合と積の結合との結合は、いずれも本明細書の範囲に属することは理解されるべきである。ここで、
は、
個の関数の線形結合を表し、H
1i(f)は、i個目の関数を表し、k
iは、i個目の関数に対応する重みを表す。
は、n個の関数の積の結合を表し、k
jは、j個目の関数に対応する重みを表し、H
1j(f)は任意の関数であってもよい。
図6は、本明細書の実施例に基づいて提供されるエンコード畳み込みカーネルのパラメータテーブルを示す図である。図6は、1つのエンコード畳み込みカーネルのパラメータを示例的に列挙し、ここで、図6における各行は1つのエンコード畳み込みカーネルを表す。8ビットのビデオ画像について、エンコード畳み込みの後に得られる前記エンコードスペクトラム調節フレームにおける画素点の階調値が0~255内にあることを保証する必要があるので、本実施例において、畳み込みの後の結果は256で割る必要がある。前記エンコード畳み込みカーネルは前記エンコードスペクトラム調節関数H1(f)に基づいてフーリエ変換によって得られるものである。図6は例示的に例を挙げて説明しただけで、当業者であれば、前記エンコード畳み込みカーネルが図6に示すパラメータに限定されず、前記初期フレームの周波数領域での中間周波数領域の振幅をスムーズに低下させる全てのエンコード畳み込みカーネルはいずれも本明細書の範囲に属することが理解されるべきである。
なお、リンギング効果を回避するために、前記エンコードスペクトラム調節関数H1(f)は滑らかに移行する曲線であり、曲線において前記振幅調節ゲインが激しく変化することを回避する。上述したように、前記リンギング効果とは、画像処理において、1枚の画像に対してスペクトラム調節処理を行うとき、選択されたスペクトラム調節関数が比較的に速く変化する場合、画像が「リンギング」を生成することになる。いわゆる「リンギング」は、出力画像の階調が激しく変化する箇所で生じる振動を指し、それは、鐘が叩かれた後に発生した空気振動のようなものである。画像の境界にリンギング効果が発生することが多い。
前記エンコードスペクトラム調節関数H1(f)に対応するエンコード畳み込みカーネルにおける非負係数の合計に対する負係数の合計の絶対値の比率は、0.1より小さいものである。例えば、一部の実施例において、前記エンコード畳み込みカーネルにおける畳み込みカーネル係数はいずれも非負数であってもよい。ビデオデータを例として、前記エンコード畳み込みカーネルには比較的多い負係数が発生する場合、画像の境界にある画素値の差が大きく、1つの大きい画素値に1つの負係数を乗算すると、畳み込みの最終の結果を小さくさせ、画像に反映すると画素が比較的暗いことになる。畳み込みの結果に負数が発生し、且つ負数の絶対値が比較的大きい場合、符号無し整数を用いて畳み込み結果を演算するとき、符号無し整数の演算結果が逆転し、値が負数である符号無し補数値になる可能性があり、この場合、畳み込みの結果が大きくなることに繋がり、画像に反映すると画素が比較的明るいことになる。そのため、前記エンコード畳み込みカーネルを設計するとき、前記エンコード畳み込みカーネルの係数をすべて非負数にさせ、又は前記エンコード畳み込みカーネルにおける非負係数の合計に対する負係数の合計の絶対値の比率を0.1より小さくさせ、即ち、前記エンコード畳み込みカーネルに少量の絶対値が比較的小さい負係数が発生することを許容してもよい。
データ圧縮機器200は、前記エンコード畳み込みカーネルを用いて前記圧縮中のフレームに対して畳み込みを行うとき、垂直方向、水平方向及び斜め方向のうちの少なくとも1つの方向において前記圧縮中のフレーム(初期フレーム)に対して畳み込みを行ってもよい。
なお、前記圧縮中のフレームに対して畳み込みを行うとき、それが処理するデータ処理ユニットは、1フレームのデータであってもよく、1フレームのデータの一部であってもよい。ビデオデータを例として、当該ユニットは1フレーム又は1フィールドの画像であってもよく、又は、1フレーム/フィールドの画像の一部であってもよく、例えば、ビデオエンコードにおいて画像をスライス(slice)、タイル(tile)、エンコードユニット(CU:coding unit)、マクロブロック(macroblock)、又はブロック(block)にさらに分割する。畳み込み対象は、上記名詞で説明される一部の画像分割ユニットを含むが、それらに限定されない。異なる処理ユニットは、同一のエンコード畳み込みカーネルを選択してもよい、異なるエンコード畳み込みカーネルを選択してもよい。
S244において、前記エンコードスペクトラム調節フレームに対して前記エンコードを行い(予測し及び残差を求め)、前記予測データPI及び前記残差データRを得る。
S246において、前記予測データPI及び前記残差データRを前記コードストリーム生成モジュールに入力して合成し、前記圧縮フレームを得る。
データ圧縮機器200が前記初期フレームに対して前記エンコードスペクトラム調節を行った後、前記エンコードスペクトラム調節フレームを得て、前記エンコードスペクトラム調節フレームにおける低周波から高周波の周波数成分は前記初期フレームにおける低周波から高周波の周波数成分より小さいものである。そのため、データ圧縮機器200は、前記圧縮中のフレーム(初期フレーム)に対して前記エンコードスペクトラム調節を行った後にエンコード及びコードストリーム生成演算を行うことにより、前記エンコードスペクトラム調節フレームのエンコード効率を向上させることができ、それにより、前記初期フレームの圧縮比を向上させ、前記初期データの伝送効率を向上させる。
図7は、圧縮フレームを解凍するデータ処理の方法P300を示すフローチャートである。上述したように、データ解凍機器300は、データ処理方法P300を実行することができる。具体的に、データ解凍機器300における記憶媒体は少なくとも1セットの命令セットを記憶してもよい。前記命令セットは、データ解凍機器300における解凍プロセッサがデータ処理方法P300を完了させると指示可能なように構成される。前記データ解凍機器300が動作するとき、解凍プロセッサは前記命令セットを読み出してデータ処理方法P300を実行することができる。前記方法P300は、S320及びS340を含んでもよい。
S320において、圧縮データを取得する。前記圧縮データは前記圧縮フレームを含む。
前記圧縮データは、データ処理方法P200により前記初期データにおける前記初期フレームに対してデータ圧縮を行って得られる前記圧縮フレームを含んでもよい。前記圧縮フレームは、圧縮された予測データPI及び残差データRを含む。図3A、図3B及び図3Cに示すように、ステップS320は、前記圧縮フレームを前記コードストリーム解析モジュールに入力して分析演算を行い、前記予測データPI及び前記残差データRを得ることを含んでもよい。上述したように、本願において、フレームは、データ序列を構成する通常の処理単位である。データ処理の場合、フレームを単位で演算することが多い。データ圧縮機器200がデータを圧縮するデータ処理の方法P200において、フレームを単位で前記初期データを圧縮してもよい。データ解凍機器300が圧縮フレームを解凍するとき、フレームを単位でデータ解凍を行ってもよい。前記データ圧縮は、前記初期フレームに対して前記エンコードスペクトラム調節を行うことを含む。
S340において、前記圧縮フレームに対してデータ解凍を行い、解凍フレームを得る。
前記データ解凍とは、前記圧縮フレームに対して解凍演算を行い、解凍フレームを得ることにより、前記解凍フレームを前記初期データに回復又は基本的に回復させ、又は、前記解凍フレームを前記初期データより鮮明にさせることを指す。ビデオデータを例として、低周波数領域から中間周波数領域での任意の周波数での前記解凍フレームの振幅が、前記初期フレームの閾値又は閾値以上に回復するとき、人の目では、前記解凍フレームと前記初期フレームとの相違が察し難いものである。前記閾値は、80%-90%の間の任意の値であってもよい。例えば、前記閾値は、80%、81%、82%、83%、84%、85%、86%、87%、88%、89%、90%のうちの任意の2つの数値によって定義された閉区間における任意の値であってもよい。例えば、前記データ解凍により、低周波数領域から中間周波数領域での任意の周波数での前記解凍フレームの振幅が前記初期フレームの85%±3%以上にさせるべきである。
前記データ解凍により、解凍中のフレームに対してデコードスペクトラム調節を行い、前記デコードスペクトラム調節を経たデータに対して更なるデータ処理を行うことにより、必要とされる解凍フレームを得ることを含む。前記解凍中のフレームは、解凍されている1フレームのデータであり、前記圧縮フレームと前記圧縮フレームが前記解凍過程において前記解凍フレームになる前のいずれかのデータ状態とを含む。ビデオデータを例として、前記データ処理の方法P200はエンコードスペクトラム調節とエンコードとを結合する方法を採用して前記初期フレームを圧縮し、それにより、ビデオデータの圧縮比をさらに向上させ、ビデオ伝送の効率を向上させる。ビデオ解凍技術において、データ処理方法P300は、デコード(即ち、残差データR及び予測データPIに基づいて圧縮中のフレームを回復する)とデコードスペクトラム調節とを結合する方法を採用して前記圧縮フレームを解凍し、必要とされる解凍フレームを得ることにより、前記圧縮フレームにおけるデータを回復してもよい。前記解凍中のフレームは、前記圧縮フレームと前記圧縮フレームが前記予測データPI及び残差データRに応じてデコードを行う過程におけるいずれかのデータ状態とを含んでもよい。例えば、前記解凍中のフレームは、前記圧縮フレームであってもよく、デコードを経て得たデコードフレームであってもよく、又は予測を経て得られた予測フレーム等であってもよい。
前記圧縮フレームに対して前記データ解凍に応用される前記デコードスペクトラム調節を行うことは、前記解凍中のフレームをデコードスペクトラムレギュレータに入力してデコードスペクトラム調節を行うことを指す。前記デコードスペクトラム調節を経たものが前記エンコードスペクトラム調節に対応させるために、つまり、デコードスペクトラム調節関数H2(f)とエンコードスペクトラム調節関数H1(f)には予め設定された関連関係が存在する。デコードスペクトラム調節関数H2(f)とエンコードスペクトラム調節関数H1(f)との関連関係を丁寧に設定することにより、前記エンコードスペクトラム調節の圧縮フレームが前記デコードスペクトラム調節及び前記データ処理を経た後、他の演算誤差を考慮しない場合、エンコードスペクトラム調節の前のデータ指標(例えば、画像データの画像解像度)に完全回復又は基本回復し、さらに、一部の指標においてエンコード調節前のデータを超える(例えば、デコード後の画像の解像度はオリジナル画像を超える)。デコードスペクトラム調節関数H2(f)とエンコードスペクトラム調節関数H1(f)との間の具体的な関連関係は、前記デコードスペクトラム調節後のデータに対するデータ処理の仕方に関するものである。前記データ処理の方式が異なると、スペクトラム調節関数H2(f)とエンコードスペクトラム調節関数H1(f)との間の関連関係も異なる。前記データ処理の具体的な方式及びスペクトラム調節関数H2(f)とエンコードスペクトラム調節関数H1(f)との間の関連関係は、以下の説明において具体的に紹介する。
前記エンコードスペクトラム調節と同様に、前記デコードスペクトラム調節は、時間領域において畳み込みを行うことにより、周波数領域においてデコードスペクトラム調節関数H2(f)(即デコード伝達関数)で前記解凍中のフレームのスペクトラムを調整してもよい。そのため、前記デコードスペクトラム調節が使用するデコード畳み込みカーネルと、前記エンコードスペクトラム調節が使用するエンコード畳み込みカーネルにも対応する関連関係が存在するべきである。エンコードスペクトラム調節関数H1(f)及び前記エンコード畳み込みカーネルに対応するデコードスペクトラム調節関数H2(f)及びデコード畳み込みカーネルを選択することにより、2種の方式は同一の効果を達成することができる。説明の便宜上、本明細書は、時間領域において畳み込みを行うことを例として前記デコードスペクトラム調節を説明するが、当業者であれば、周波数領域においてデコードスペクトラム調節関数H2(f)を乗算することによりスペクトラム調節を行う方式も本明細書の範囲に属することが理解されるべきである。
上述したように、前記エンコードスペクトラム調節は、前記圧縮中のフレームのその周波数領域での中間周波数領域の振幅を減衰させ、前記圧縮中のフレームの境界データをぼかさせ、それにより、エンコードが生じたデータ量を減小させる。前記デコードスペクトラム調節及び前記データ処理は、前記エンコードスペクトラム調節及びデータ処理を経たデータを回復させ、さらに補強させることができる。つまり、前記デコードスペクトラム調節及び前記データ処理は、前記解凍中のフレームの敏感周波数の振幅が減衰前の状態に完全回復又は基本回復し、さらに、前記減衰前の状態に対して補強されたものになることができる。ビデオデータを例として、人の目が画像における低周波から中間周波数情報に対して比較的敏感であるため、前記デコードスペクトラム調節及び前記データ処理は、前記ビデオデータにおける低周波数領域から中間周波数領域の振幅を回復、さらに補強させることができる。そのため、前記解凍フレームの低周波数領域から中間周波数領域の振幅は少なくとも前記初期フレームの低周波数領域から中間周波数領域の振幅に回復又は基本回復するべきである。ビデオデータにおいて、人の目が高周波数データに対して比較的不敏感であるため、前記デコードスペクトラム調節及び前記データ処理は高周波数領域の振幅に対して回復を行わず、前記高周波数領域の振幅の減衰を保持してもよい。
前記データ解凍操作は、前記圧縮操作と対称的に逆方向に操作してもよい。上述したように、前記エンコードスペクトラム調節は、前記圧縮操作のいずれか1つの段階で行ってもよい。前記デコードスペクトラム調節も前記解凍操作の対応する段階で行ってもよい。例えば、前記データ解凍操作、即ち、ステップS340は、図3A、図3B及び図3Cに示すデータ解凍の方法における少なくとも1種を含んでもよい。
表示の便宜上、本明細書は、データ解凍機器300が前記圧縮フレームに対して前記デコードを行ってから前記デコードスペクトラム調節(図3Aに示す方式)を行うことを例として前記データ解凍を詳しく説明する。上述したように、前記データ圧縮操作は、前記エンコードスペクトラム調節により、前記初期フレームの中間周波数領域又は中間周波数から高周波数領域の振幅を減衰させ、それにより、前記初期フレームにおけるデータ情報量を低下させる。ビデオデータを例として、画像における物体の辺縁部分の中間周波数及び高周波数情報が豊富であり、そして、中間周波数及び高周波数領域はより多くのデータを携帯するので、中間周波数から高周波数領域の振幅を低下させることは、視覚的に、前記圧縮中のフレームの境界データをぼかし、同時に、画像における情報量を大きく減小させる。そのため、前記データ解凍は前記圧縮フレームから境界情報を抽出し、さらに境界情報に対して境界補強を行ってそれを前記初期フレームにおける状態に回復させ、又はそれが前記初期フレームにおける状態に対して補強されたものにさせることができる。
前記境界補強処理の方式は、多く存在し、従来の技術は、圧縮フレームに対して直接ハイパスフィルタ又はバンドパスフィルタを用いてフィルタリングを行い、前記圧縮フレームにおける低周波領域の成分をフィルタリングし、前記圧縮フレームにおける中間周波数から高周波数領域の成分を抽出し、それにより、境界情報を抽出する場合がある。しかしながら、前記ハイパスフィルタ及びバンドパスフィルタに対応する畳み込みカーネルの係数には比較的多い負係数が発生する。上述したように、畳み込みカーネルに比較的多い負係数が発生する場合、前記畳み込みカーネルにより畳み込みを行って得られる画像に強いリンギング効果が発生する可能性がある。そのため、リンギング効果を回避するために、本明細書に記載のデータ解凍は、滑らかに移行するデコードスペクトラム調節関数H2(f)を用いて前記圧縮フレームに対してスペクトラム調節を行い、前記圧縮フレームにおける中間周波数から高周波数領域の成分をフィルタリングし、その後、前記圧縮フレームと前記デコードスペクトラム調節を経た圧縮フレームとに対して差を求め、前記境界情報を得ることができ、前記境界情報に対して調整係数を用いて調整し、それを初期状態に回復させ又は前記初期状態に対して補強されたようにさせる。上記方策を用いて境界情報を取得する場合、1つのデコード畳み込みカーネルを設計することにより、全ての係数が非負数である、又は非負係数の合計に対する負係数の合計の絶対値の比率が0.1より小さいものであるようにさせることができ、リンギング効果の発生を回避することができる。
ステップS340において、前記圧縮フレームに対してデータ解凍を行うことは、データ解凍機器300が少なくとも1つの解凍端プロセッサにより以下の操作のS342及びS344を実行することを含む。
S342において、解凍中のフレームに対してデコードスペクトラム調節を行い、前記解凍中のフレームと、前記解凍中のフレームが前記デコードスペクトラム調節を経たデータとに対して差を求め、境界フレームを得る。具体的に、ステップS342は、S342-2、S342-4、S342-6及びS342-8を含んでもよい。
S342-2において、前記圧縮フレームに対してデコードし、デコードフレームを得る。
前記圧縮フレームは、データ圧縮機器200が前記スペクトラム調節フレームに対してエンコードして得られたものであってもよい。データ解凍機器300は、前記圧縮フレームに対してデコードを行うことにより前記デコードフレームを得てもよい。即ち、前記予測データPIに基づいて予測して予測フレームを得て、それを前記残差データRと重畳し、重畳データP2を得て、前記重畳データP2は前記デコードフレームのデータP2である。前記デコードフレームは前記解凍中のフレームに属する。エンコード及びデコード過程には一定の誤差が存在する可能性が有り、仮にコーデック過程がもたらした偏差が小さい場合、前記デコードフレームにおけるデータP2と前記エンコードスペクトラム調節フレームにおけるデータP1とは基本的に合致しており、従って、P1とP2との間の関係は、以下の式(2)で表されてもよい。
S342-4において、前記デコードフレームに対して前記デコードスペクトラム調節を行い、デコードスペクトラム調節フレームを得る。
上述したように、前記デコードスペクトラム調節は、前記デコードスペクトラム調節関数H2(f)を用いて前記デコードフレームに対して前記デコードスペクトラム調節を行い、前記デコードフレームの周波数領域内の振幅を滑らかに低下させることにより、前記デコードフレームの中間周波数から高周波数領域の成分をフィルタリングし、前記デコードスペクトラム調節フレームを得ることを含む。上述したように、前記デコードスペクトラム調節フレームにおけるデータは、PCと定義される。前記デコードスペクトラム調節フレームにおけるデータPCは、以下の式(3)で表されてもよい。
前記デコードスペクトラム調節は、前記エンコード畳み込みカーネルに基づいて、対応するデコード畳み込みカーネルを用いて前記解凍中のフレーム(デコードフレーム)に対して畳み込みを行うことを含む。リンギング効果を回避するために、前記デコード畳み込みカーネルにおける非負係数の合計に対する負係数の合計の絶対値の比率は閾値より小さいものである。例えば、前記閾値は、0.01、0.02、0.03、0.04、0.05、0.06、0.07、0.08、0.09、0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1のうちのいずれか1つの値又は任意の2つの数値で定義された区間における任意の値であってもよい。例えば、前記デコード畳み込みカーネルにおける畳み込みカーネル係数は、いずれも非負数として選択されても良い。前記フィルタリングは、完全に除去する代わりに、デコードスペクトラム調節関数H2(f)により中間周波数から高周波数領域の振幅をスムーズに低下させ、0に近づけることである。つまり、デコードスペクトラム調節関数H2(f)が中間周波数から高周波数領域に対する振幅調節ゲインは0に近く、一定の誤差範囲内で変動してもよい。前記誤差範囲は、0、±1%、±2%、±3%、±4%、±5%、±6%、±7%、±8%、±9%、±10%、±11%、±12%、±13%、±14%、±15%、±16%、±17%、±18%、±19%、±20%、±21%、±22%、±23%、±24%、±25%、±26%、±27%、±28%、±29%、±30%等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。
前記デコードスペクトラム調節関数H2(f)により直流部分を保持することができ、即ち、周波数が0である部分の振幅調節ゲインは1であり、それにより、初期フレームにおける基礎情報を保留可能なことを保証する。そのため、前記デコードスペクトラム調節が使用する前記デコードスペクトラム調節関数H2(f)の前記低周波領域に対する振幅調節ゲインは、周波数が0である位置での振幅調節ゲイン1から中間周波数領域の0に近い振幅調節ゲインに滑らかに移行する。
ステップS342-4において、前記デコードフレームに対して前記デコードスペクトラム調節を行うことは、以下の「1」及び「2」を含んでもよい。
「1」前記デコードフレームのフレームタイプを決定する。上述したように、データ圧縮機器200が初期フレームを圧縮する過程において、前記初期フレーム又はエンコードスペクトラム調節フレームを異なるタイプにエンコードする。そのため、データ解凍機器300が前記デコードフレームに対して前記デコードスペクトラム調節を行う前に、前記デコードフレームのフレームタイプをまず決定する必要があり、異なるフレームタイプに対して選択されるデコード畳み込みカーネルも異なる。前記デコードフレームのフレームタイプは、Iフレーム、Pフレーム及びBフレームのうちの少なくとも1種を含んでもよい。前記デコードフレームのフレームタイプは1種のフレームタイプのみを含んでもよいし、同時に複数種のフレームタイプを含んでもよい。前記デコードフレームのフレームタイプを決定する方法は既に比較的成熟しており、本明細書に関する重要なポイントではないので、ここでは説明を省略する。
「2」前記デコードフレームのフレームタイプに応じて、デコード畳み込みカーネルグループから1つの畳み込みカーネルを前記デコード畳み込みカーネルとして選択し、前記デコードフレームに対して畳み込みを行う。上述したように、前記デコードフレームに対して前記デコードスペクトラム調節を行うことは、時間領域で前記デコードフレームに対して畳み込みを行うように表されてもよい。データ解凍機器300の記憶媒体には複数の異なるデコード畳み込みカーネルが格納されてもよく、デコード畳み込みカーネルグループと呼ばれる。各エンコード畳み込みカーネルはいずれも前記デコード畳み込みカーネルグループにおける少なくとも1つのデコード畳み込みカーネルに対応する。データ解凍機器300は前記デコードフレームに対して畳み込みを行うとき、前記デコードフレームのフレームタイプに応じて、前記デコード畳み込みカーネルグループから1つの畳み込みカーネルを前記デコード畳み込みカーネルとして選択し、前記デコードフレームに対して畳み込みを行ってもよい。デコード畳み込みカーネルを用いて解凍中のフレームに対して畳み込みを行う操作は、デコードスペクトラムレギュレータと呼ばれてもよい。前記デコードフレームがIフレーム又はPフレームである場合、データ解凍機器300が前記Iフレーム又はPフレームに対して畳み込みを行うことは、前記デコード畳み込みカーネルグループから1つの畳み込みカーネルを前記デコード畳み込みカーネルとして選択し、前記Iフレーム又はPフレームに対して畳み込みを行うことを含む。データ解凍機器300は前記デコードフレームに対するデコード品質要求に応じて前記デコード畳み込みカーネルグループから1つの解凍効果が最もよい畳み込みカーネルを前記デコード畳み込みカーネルとして選択してもよい。前記デコードフレームがBフレームである場合、前記デコードフレームの前記デコード畳み込みカーネルは、前記デコードフレームに最も近い基準フレームのデコード畳み込みカーネルと同一であり、又は、前記デコードフレームの前記デコード畳み込みカーネルは、隣接する2つの方向において最も近い基準フレームにおける減衰度が最も大きい基準フレームに対応するデコード畳み込みカーネルと同一であり、又は、前記デコードフレームの前記デコード畳み込みカーネルは、隣接する2つの方向において最も近い基準フレームに対応するデコード畳み込みカーネルの平均値を取る。
データ解凍機器300は、前記デコード畳み込みカーネルを用いて前記デコードフレームに対して畳み込みを行うとき、垂直方向、水平方向及び斜め方向のうちの少なくとも1つの方向において前記デコードフレームに対して畳み込みを行ってもよい。前記デコードフレームの畳み込みの方向は前記初期フレームと同一であり、前記デコードフレームの畳み込みの順番は前記初期フレームと逆である。前記初期フレームが垂直方向の畳み込みだけを経た場合、前記デコードフレームも垂直方向の畳み込みだけを行う。同様に、前記初期フレームが水平方向又は斜め方向の畳み込みだけを経た場合、前記デコードフレームも水平方向又は斜め方向の畳み込みだけを行う。前記初期フレームが複数の方向の畳み込みを経た場合、前記デコードフレームも複数の方向の畳み込みを行い、且つ前記デコードフレームが畳み込みを行う時の方向及び順番は、前記初期フレームが畳み込みを行うときの方向及び順番と逆である。即ち、前記初期フレームは垂直方向の畳み込みを行ってから水平方向の畳み込みを行うと、前記デコードフレームは水平方向の畳み込みを行ってから垂直方向の畳み込みを行う。
S342-6において、前記デコードフレームと前記デコードスペクトラム調節フレームとに対して差を求め、前記境界情報を取得する。
S342-8において、調整係数に基づいて前記境界情報を調整し、前記境界フレームを得る。
上述したように、前記デコードスペクトラム調節フレームにおける中間周波数から高周波数領域の成分はフィルタリングされ、前記デコードフレームと、前記デコードスペクトラム調節フレームとに対して差を求め、前記デコードフレームにおける中間周波数から高周波数領域の成分、即ち、前記境界情報を得ることができる。前記調整係数aにより前記境界情報を調整し、前記境界フレームを得る。前記境界フレームには前記初期フレームの境界情報が含まれる。上述したように、前記境界フレームにおけるデータがPEと定義される。ここで、aは補強係数であり、前記境界情報に対する補強度を表し、aが大きいほど、前記境界情報に対する補強度が強い。前記調整係数aは、0より大きい実数である。前記調整係数aは経験値に基づいて値を取っても良く、機械学習トレーニングにより得てもよい。前記境界フレームにおけるデータPEは以下の式(4)で表されてもよい。
S344において、前記境界フレームと前記解凍中のフレーム(デコードフレーム)とを重畳して前記解凍フレームを得る。
説明の便宜上、前記境界フレームと前記解凍中のフレーム(デコードフレーム)とを重畳して得られたデータを重畳フレームと定義し、前記重畳フレームにおけるデータをP3と定義する。前記重畳フレームにおけるデータP3は、以下の式(5)で表されてもよい。
ビデオデータを例として、人の目が低周波数領域から中間周波数領域の情報に対して比較的敏感であるため、しかし、H1(f)の設計は、初期フレームにおける低周波数領域から中間周波数領域の振幅に対して減衰を行っただけで、エンコードスペクトラム調節フレームにおいて初期フレームにおける低周波から中間周波数の全ての周波数の周波数情報が保留されるようにさせ、前記デコードフレームにおけるデータP2と前記エンコードスペクトラム調節フレームにおけるデータP1は基本的に合致しており、従って、デコードフレームにおいて低周波数領域から中間周波数領域の周波数情報も保留し、そして、デコードスペクトラム調節フレームにおける中間周波数から高周波数領域の成分がフィルタリングされ、従って、低周波領域の周波数情報を保留し、従って、デコードフレームとデコードスペクトラム調節フレームとの差値により得られた境界フレームには、初期フレームにおける中間周波数領域の周波数情報は保留されており、
デコードフレームには、低周波数領域から中間周波数領域の周波数情報が保留されており、従って、理論的に考えると、他のアルゴリズムがもたらす偏差を考慮しない場合、デコードフレームと境界フレームとを重畳して得られた重畳フレームは、初期フレームにおける低周波から中間周波数の全ての周波数情報を完全回復又は基本回復することができる。つまり、前記データ解凍により、前記データ圧縮を経たデータが低周波から中間周波数の任意の周波数において回復さらに補強させることができる。そのため、データ解凍を経た後、低周波数領域から中間周波数領域の任意の周波数での前記重畳フレームの振幅は、前記初期フレームにほぼ等しい又はそれより大きいものであるべきである。ほぼ等しいことは、前記重畳フレームの振幅が前記初期フレームの振幅に等しく、且つ一定の誤差範囲内で変動することを指す。ビデオデータを例として、低周波数領域から中間周波数領域の任意の周波数での前記重畳フレームの振幅が、前記初期フレームの85%又は85%以上に回復する時、人の目では、前記重畳フレームと前記初期フレームとの相違が察し難いものである。そのため、データ解凍を経た後、低周波数領域から中間周波数領域の任意の周波数での前記重畳フレームの振幅が前記初期フレームに対して前記初期フレームの85%以上であるべきである。即ち、前記誤差範囲は、低周波数領域から中間周波数領域の任意の周波数での前記重畳フレームの振幅が前記初期フレームの85%より低いようにさせるべきではない。そして、人の目は高周波数領域の情報に対して比較的不敏感であるため、前記重畳フレームにおいて高周波数領域の情報を保留して高品質要求のシーンに適応してもよいし、それを減衰させて不要な高周波ノイズを抑えてもよい。P0とP3との間の関係は以下の式(6)または式(7)で表されてもよい。
なお、式において一定の範囲内の誤差が許容される。例えば、P3≧P0は、P3の基本値がP0以上である場合、P3が一定の誤差範囲内で変動することが許容される。つまり、P3=P0である場合、P3は、負誤差の場合、P0より若干小さいことが許容される。ここの式は、P3とP0の基礎関係式のみを列挙し、誤差を式に書き込んでおらず、当業者でれば、誤差範囲内の変動により重畳フレームの低周波数領域から中間周波数領域での振幅が前記初期フレームより若干小さくなる場合も同様に本明細書の範囲に属することが理解されるべきである。以下の式において、同様に一定範囲の誤差が許容される。以下は、P3の振幅が前記初期フレームP0以上である基礎関係のみが記載される。誤差範囲内の変動に対して、当業者は自ら導出することができる。
説明の便宜上、P0とP3との間の全体スペクトラム調節関数をH0(f)と定義し、P0とP3との間の関係は以下の式(8)で表されてもよい。
そして、全体スペクトラム調節関数H0(f)は以下の式(9)又は式(10)で表されてもよい。
ここで、f0は、人の目が敏感する周波数の境界値であり、ビデオデータに対して、f0は0.33であってもよく、0.33より大きい又は小さい他の数値であってもよい。異なるタイプのデータに対して、f0の値は異なる。
上記式(9)~(10)におけるH0(f)は、選択された周波数領域区間においてH0(f)≒1である場合、前記重畳フレームの選択された周波数領域区間内のデータを前記初期フレームに回復させることができ、選択された周波数領域区間においてH0(f)>1である場合、前記重畳フレームの選択された周波数領域区間内のデータを補強することができ、即ち、前記重畳フレームの選択された領域での振幅が前記初期フレームより高いものである。例えば、初期フレームがビデオにおける1フレームである場合、選択された周波数領域区間内でのH0(f)が1より大きいようにさせると、解像度の補強を実現させることができる。説明の便宜上、H0(f)≒1ノーマルモードと定義し、H0(f)>1をエンハンスモードと定義する。以下はビデオデータを例として、スペクトラム調節関数H0(f)の全体に対して詳しく説明する。
図8Aは、本明細書の実施例に基づいて提供される全体調節関数H0(f)を示すグラフである。図8Bは、本明細書の実施例に基づいて提供される全体調節関数H0(f)を示すグラフである。図8Cは、本明細書の実施例に基づいて提供される全体調節関数H0(f)を示すグラフである。図8Dは、本明細書の実施例に基づいて提供される全体調節関数H0(f)を示すグラフである。図8Eは、本明細書の実施例に基づいて提供される全体調節関数H0(f)を示すグラフである。図8Aから8Eに示すように、横軸は正規化周波数fであり、縦軸は全体スペクトラム調節関数H0(f)の振幅調節ゲインH0である。図8Aから8Eにおける曲線は、異なる全体スペクトラム調節関数H0(f)を表す。横軸の正規化周波数の最大値は0.5である。前記横軸の正規化周波数fは、低周波領域、中低周波領域、中間周波数領域、中高周波数領域及び高周波数領域に分けられる。(0,a]の間の周波数は低周波に属し、(a,b]の間の周波数は中低周波に属し、(b,c]の間の周波数は中間周波数に属し、(c,d]の間の周波数は中高周波に属し、(d,0.5]の間の周波数は高周波に属する。ここで、a、b、c、d、eの値は図5Aの記載に参照し、ここでは説明を省略する。
人の目は、ビデオデータにおける高周波のデータより低周波から中間周波数のデータに対してより敏感であるため、データ解凍の後、なるべく前記重畳フレームが前記初期フレームに対して低周波から中間周波数領域の情報が紛失しないように保持し、つまり、全体スペクトラム調節関数H0(f)は、前記重畳フレームの低周波から中間周波数領域の振幅が前記初期フレームの85%以上べきであり、さらに、前記初期フレームより大きいようにさせても良い。人の目は高周波数領域の情報に対して不敏感であるため、前記重畳フレームの高周波数領域の振幅は、異なる応用シーンに応じて選択することができ、例えば、解像度に対する要求が低いシーンにおいて、前記重畳フレームの高周波数領域の振幅が前記初期フレームより小さい。偵察シーンにおいて、前記重畳フレームの高周波数領域の振幅は、前記初期フレームにほぼ等しい又は前記初期フレームより大きいものであってもよい。図8Aから8Eに示すように、全体調節関数H0(f)の低周波数領域から中間周波数領域(低周波及び中間周波数領域を含む)の任意の周波数fでの振幅調節ゲインH0は1より大きい又はほぼ1に等しいものであり、解凍後の重畳フレームの振幅が前記初期フレームの85%以上であるようにさせ、解像度を回復又は補強させ、視覚観察効果を向上させる。ほぼ1に等しいことは、ここで1に等しい一定の誤差範囲内で変動してもよい。前記誤差範囲は、0、±1%、±2%、±3%、±4%、±5%、±6%、±7%、±8%、±9%、±10%、±11%、±12%、±13%、±14%、±15%等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。説明の便宜上、全体調節関数H0(f)の高周波数領域での振幅調節ゲインを第1振幅調節ゲインと定義し、中間周波数領域での振幅調節ゲインを第2振幅調節ゲインと定義し、低周波領域での振幅調節ゲインを第3振幅調節ゲインと定義する。前記第3振幅調節ゲイン値、第2振幅調節ゲイン値及び第1振幅調節ゲイン値は、前記誤差範囲内で変動してもよい。
図8Aに示すように、全体調節関数H0(f)の低周波から高周波数領域での第3振幅調節ゲイン値、第2振幅調節ゲイン値及び第1振幅調節ゲイン値はいずれもほぼ1に等しいことは、前記重畳フレームの低周波から高周波数領域の振幅が前記初期フレームの85%以上であるようにさせ、前記重畳フレームの低周波から高周波数領域のデータが初期フレームの状態にスムーズに回復又は基本回復させることができる。
図8Bに示すように、全体調節関数H0(f)は、低周波数領域から中間周波数領域での第3振幅調節ゲイン値及び第2振幅調節ゲイン値がほぼ1に等しいことは、前記重畳フレームの低周波数領域から中間周波数領域でのデータが初期フレームの状態にスムーズに回復又は基本回復させることができる。全体調節関数H0(f)の高周波数領域での第1振幅調節ゲイン値が1より小さいことは、高周波数領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに低下して、高周波ノイズを抑える。前記振幅が安定に低下することは、前記振幅が第1振幅調節ゲイン値で減衰することであってもよく、前記振幅が前記第1振幅調節ゲイン値に近い一定の誤差範囲内で減衰することであってもよい。例えば、前記第1振幅調節ゲインは、0から1の間の任意の数値であってもよい。例えば、前記第1振幅調節ゲイン値は、0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96及び1等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。図8Bに示すように、前記全体調節関数H0(f)の高周波数領域(およそ0.4~0.5の区間)での第1振幅調節ゲインは0.6程度である。第2及び第3振幅調節ゲイン値は1に近いものである。第2及び第3振幅調節ゲイン値は、一定の誤差範囲内で変動してもよい、例えば、第2及び第3振幅調節ゲイン値は、0.85、0.90、0.95、1、1.05、1.10、及び1.15等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。
図8Cに示すように、全体調節関数H0(f)の低周波領域での第3振幅調節ゲイン値はほぼ1に等しいことは、前記重畳フレームの低周波領域でのデータが初期フレームの状態にスムーズに回復又は基本回復させる。全体調節関数H0(f)の中間周波数領域での第2振幅調節ゲイン値及び高周波数領域での第1振幅調節ゲイン値はいずれも1より大きく、中間周波数から高周波数領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに増加することにより、中間周波数から高周波数領域のデータ解像度が補強される。前記振幅が安定に増加することは、前記振幅が第2振幅調節ゲイン値及び第1振幅調節ゲイン値で補強されることであってもよく、前記振幅が前記第2振幅調節ゲイン値及び前記第1振幅調節ゲイン値に近い一定の誤差範囲内で補強されることであってもよい。前記第2振幅調節ゲイン値と前記第1振幅調節ゲイン値の大きさは概ね合致してもよく、前記第2振幅調節ゲイン値は前記第1振幅調節ゲイン値より大きくてもよく、又は前記第2振幅調節ゲイン値は前記第1振幅調節ゲイン値より小さくてもよい。図8Cに示す曲線において、前記第2振幅調節ゲイン値と前記第1振幅調節ゲイン値の大きさは概ね合致する。前記第2振幅調節ゲイン値及び前記第1振幅調節ゲイン値は、1より大きい任意の数値であってもよい。例えば、前記第2振幅調節ゲイン値及び前記第1振幅調節ゲイン値は、1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9、2、2.1、2.2及び2.4等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。図8Cに示すように、前記全体調節関数H0(f)の中間周波数から高周波数領域での第2振幅調節ゲイン及び第1振幅調節ゲインは1.2程度である。
図8Dに示すように、全体調節関数H0(f)の低周波領域での第3振幅調節ゲイン値がほぼ1に等しいことは、前記重畳フレームの低周波領域におけるデータが初期フレームの状態にスムーズに回復又は基本回復させる。全体調節関数H0(f)の中間周波数領域での第2振幅調節ゲイン値が1より大きいことで、中間周波数での前記重畳フレームの振幅が前記初期フレームに対してスムーズに増加することにより、中間周波数領域のデータ解像度が補強される。全体調節関数H0(f)の高周波数領域での第1振幅調節ゲイン値が1より小さいことは、高周波数領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに低下して不敏感である高周波数領域のデータ量を低下させ、高周波ノイズを抑える。図8Dに示す曲線がデータ量を低減させると共に解像度を補強する。前記第2振幅調節ゲイン値は1より大きい任意の数値であってもよい。前記第1振幅調節ゲインは0から1の間の任意の数値であってもよい。図8Dに示すように、前記全体調節関数H0(f)の中間周波数領域での第2振幅調節ゲインは1.2程度であり、高周波数領域での第1振幅調節ゲインは0.6程度である。
図8Eに示すように、低周波領域での全体調節関数H0(f)の第3振幅調節ゲイン値が1より大きいことで、低周波領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに増加する。全体調節関数H0(f)の中間周波数領域での第2振幅調節ゲイン値が1より大きいことで、中間周波数領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに増加することにより、低周波数領域から中間周波数領域のデータ解像度が補強される。ここで、前記第2振幅調節ゲイン値は前記第3振幅調節ゲイン値に等しくてもよく、前記第3振幅調節ゲイン値より大きくてもよい。図8Eに示す曲線において、前記第2振幅調節ゲイン値が前記第3振幅調節ゲイン値より大きいことは、前記重畳フレームの中間周波数領域での振幅増加幅が低周波領域での振幅増加幅より大きくさせ、それにより、人の目では最も敏感である中間周波数領域での解像度が補強され、視覚観察効果を向上させる。全体調節関数H0(f)の高周波数領域での第1振幅調節ゲイン値が1より小さいことにより、高周波数領域での前記重畳フレームの振幅が前記初期フレームに対してスムーズに低下して不敏感である高周波数領域のデータ量を低下させ、高周波ノイズを抑える。図8Eに示す曲線において、データ量を低減すると共に解像度を補強することができる。前記第3振幅調節ゲイン値は1より若干大きい数値であってもよい。例えば、第3振幅調節ゲイン値は、1、1.04、1.08、1.12、1.16及び1.2等の数値のうちの任意の2つ数値で規定される区間内にあってもよい。前記第2振幅調節ゲイン値は、前記第3振幅調節ゲインより大きい任意の数値であってもよい。例えば、前記第2振幅調節ゲイン値及び前記第1振幅調節ゲイン値は、1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9、2、2.1、2.2及び2.4等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。前記第1振幅調節ゲインは、0から1の間の任意の数値であってもよい。例えば、前記第1振幅調節ゲイン値は、0、0.04、0.08、0.12、0.16、0.20、0.24、0.28、0.32、0.36、0.40、0.44、0.48、0.52、0.56、0.60、0.64、0.68、0.72、0.76、0.80、0.84、0.88、0.92、0.96及び1等の数値のうちの任意の2つの数値で規定される区間内にあってもよい。図8Eに示すように、前記全体調節関数H0(f)の低周波領域での第3振幅調節ゲインは1.1程度であり、中間周波数領域での第2振幅調節ゲインは1.2程度であり、高周波数領域での第1振幅調節ゲインは0.6程度である。
さらに、前記高周波数領域が前記中間周波数領域に繋がらない場合、前記全体スペクトラム調節関数H0(f)は高周波数領域での振幅を調節し、前記振幅調節ゲインの中高周波数領域内の変化が滑らかに連続するようにさせてもよい。
さらに、前記中間周波数領域が前記低周波領域に繋がらない場合、前記全体スペクトラム調節関数H0(f)は中低周波領域での振幅を調節し、前記振幅調節ゲインの中低周波領域内の変化が連続するようにさせてもよい。
前記全体調節関数H0(f)の曲線は滑らかに移行する曲線である。工程の実現上、前記重畳フレームの低周波数領域から中間周波数領域での振幅は、前記初期フレームにほぼ等しい又はそれより大きくさせることを実現させることに基づいて、前記全体調節関数H0(f)の曲線に小さな範囲での変動が存在することが許容され、前記変動は解凍の効果を影響しない。ビデオデータ以外の他の形式のデータに対して、受信者のデータに対する感度に応じて、前記全体調節関数H0(f)のパラメータを設置してもよい。異なる形式のデータは、受信者の周波数に対する感度が異なる。
説明の便宜上、式(7)に示す情況を例として説明する。式(5)と式(7)とを参照し、前記重畳フレームP3は以下の式(11)で表されてもよい。
この場合、前記エンコード畳み込みカーネルに対応するエンコードスペクトラム調節関数H1(f)と前記デコード畳み込みカーネルに対応するデコードスペクトラム調節関数H2(f)との間の関係は以下の式(12)で表されてもよい。
従って、H1(f)とH2(f)との関係は以下の式(13)で表されてもよい。
ここで、デコードスペクトラム調節関数H2(f)において、周波数が0である部分の振幅調節ゲインが1であること以外、他の周波数の振幅調節ゲインはいずれも1より小さく、そのため、1/(1+a(1-H2(f)))は、周波数が0以外である周波数での値がいずれも1より小さく、そのため、式(13)はエンコードスペクトラム調節関数H1(f)の周波数が0である部分の振幅調節ゲインが1であり、他の周波数に対応する振幅調節ゲインが1より小さいことを保証することができる。
上述したように、前記初期フレームが複数の方向の畳み込みを経た場合、前記デコードフレームも複数の方向の畳み込みを行い、且つ前記デコードフレームの畳み込みを行う時の方向及び順番は、前記初期フレームの畳み込みを行う時の方向及び順番と逆である。即ち、前記初期フレームが垂直方向の畳み込みを行ってから水平方向の畳み込みを行うと、前記デコードフレームが水平方向の畳み込みを行ってから垂直方向の畳み込みを行う。なお、前記デコードフレームはまず水平方向の畳み込みを行って水平方向の補償情報を得て、前記デコードフレームの水平方向の補償情報と前記デコードフレームとを重畳した後、さらに垂直方向の畳み込みを行って垂直方向の補償情報を得て、前記デコードフレームの垂直方向の補償情報と前記デコードフレームとを重畳する。
図9Aは、本明細書の実施例に基づいて提供されるノーマルモードの全体調節関数H0(f)、エンコードスペクトラム調節関数H1(f)及びデコードスペクトラム調節関数H2(f)を示すグラフである。図9Bは、本明細書の実施例に基づいて提供されるエンハンスモードの全体調節関数H0(f)、エンコードスペクトラム調節関数H1(f)及びデコードスペクトラム調節関数H2(f)を示すグラフである。図9A及び図9Bが使用するエンコード畳み込みカーネルはデコード畳み込みカーネルと同一であり、調整係数aが異なる。図9Aにおいてa=1.5を例として説明する。図9Bにおいてa=2を例として説明する。図9A及び図9Bに示すように、横軸は正規化周波数fであり、縦軸は振幅調節ゲインHである。図9Aに示すように、任意の周波数領域での全体スペクトラム調節関数H0(f)≒1であり、全体スペクトラム調節関数H0(f)は前記重畳フレームに対してノーマルモードのスペクトラム調節を行い、即ち、全体スペクトラム調節関数H0(f)においてすべての周波数の情報を完全保留し、前記重畳フレームにおけるデータは基本的に前記初期フレームにおけるデータに回復。図9Bに示すように、低周波領域での全体スペクトラム調節関数H0(f)≒1であり、中間周波数から高周波数領域での全体スペクトラム調節関数H0(f)>1である。全体スペクトラム調節関数H0(f)は前記重畳フレームの中間周波数から高周波数領域に対してエンハンスモードのスペクトラム調節を行い、即ち、全体スペクトラム調節関数H0(f)は中間周波数から高周波数領域の情報に対して補強し、前記重畳フレームにおける中間周波数から高周波数領域のデータは前記初期フレームにおける中間周波数から高周波数領域のデータに対して補強されたものになる。なお、図9A和図9Bに示す曲線は、ただの示例的な説明に過ぎず、当業者であれば、H0(f)、H1(f)、H2(f)の曲線は図9A及び図9Bに示す形式に限定されず、式(12)を満たすすべてのH0(f)、H1(f)、H2(f)曲線はいずれも本明細書の範囲に属することは理解されるべきである。なお、式(12)を満たすすべてのデコードスペクトラム調節関数の線形結合
、又はデコードスペクトラム調節関数の積の結合
、又は線形結合と積の結合との結合はいずれも本明細書の範囲に属する。ここで、
はn個の関数の線形結合を表し、H2i(f)はi個目の関数を表し、kiはi個目の関数に対応する重みを表す。
はn個の関数の積の結合を表し、kjはj個目の関数に対応する重みを表し、H2j(f)は任意の関数であってもよい。
図10Aは、本明細書の実施例に基づいて提供されるデコード畳み込みカーネルのパラメータテーブルを示す図である。図10Aは、1つのデコード畳み込みカーネルのパラメータを示例的に列挙する。前記デコード畳み込みカーネルのパラメータはいずれも非負数であり、それにより、前記デコード畳み込みカーネルによる畳み込みを経たデータがリンギング効果を回避させる。図10Aはただ示例的に例を挙げて説明し、当業者であれば、前記デコード畳み込みカーネルが図10Aに示すパラメータに限定されず、前述要求を満たすすべてのデコード畳み込みカーネルはいずれも本明細書の範囲に属することは分かるべきである。
図10Bは、本明細書の実施例に基づいて提供されるノーマルモードのエンコード畳み込みカーネルのパラメータテーブルを示す図である。図10Bは、1つのノーマルモードのエンコード畳み込みカーネルのパラメータを例示的に列挙する。前記ノーマルモードのエンコード畳み込みカーネルは、前記ノーマルモードの全体スペクトラム調節関数H0(f)、及び図10Aに示すデコード畳み込みカーネルのパラメータテーブルに対応するデコードスペクトラム調節関数H2(f)に基づいて、得られたエンコードスペクトラム調節関数H1(f)はフーリエ変換により得られたものである。ここで、a=1.5である。即ち、前記エンコードスペクトラム調節関数H1(f)は、H0(f)=1に対応して得られたものである。データ圧縮機器200及びデータ解凍機器300は、図10Bに示す前記ノーマルモードのエンコード畳み込みカーネル及び図10Aに示す前記デコード畳み込みカーネルを用いて前記重畳フレームのデータが前記初期フレームのデータと基本的に合致するようにさせることができる。図10Bはただ示例的に例を挙げて説明し、当業者であれば、前記ノーマルモードのエンコード畳み込みカーネルはただ図10Bに示すパラメータに限定されず、前述要求を満たすすべてのエンコード畳み込みカーネルはいずれも本明細書の範囲に属することは分かるべきである。
図10Cは、本明細書の実施例に基づいて提供されるエンハンスモードのエンコード畳み込みカーネルのパラメータテーブルを示す図である。前記エンハンスモードのエンコード畳み込みカーネルは前記エンハンスモードの全体スペクトラム調節関数H0(f)、及び図10Aに示すデコード畳み込みカーネルのパラメータテーブルに対応するデコードスペクトラム調節関数H2(f)に基づいて、得られたエンコードスペクトラム調節関数H1(f)はフーリエ変換により得られたものである。ここで、a=2である。即ち、前記エンコードスペクトラム調節関数H1(f)はH0(f)>1に対応して得られたものである。データ圧縮機器200は図10Cに示す前記エンハンスモードのエンコード畳み込みカーネル及び図10Aに示す前記デコード畳み込みカーネルを用いて前記重畳フレームのデータを補強させる。図10Cはただ示例的に例を挙げて説明し、当業者であれば、前記エンハンスモードのエンコード畳み込みカーネルは図10Cに示すパラメータに限定されず、前記要求を満たすすべてのエンコード畳み込みカーネルはいずれも本明細書の範囲に属することは分かるべきである。
なお、畳み込み演算の後、正規化処理を行う必要があり、畳み込み演算の後の画像の階調値が0~255の間にあるようにさせる。
ノーマルモードにおいて、即ち、H0(f)≒1のモードにおいて、前記重畳フレームにはリンギング効果がなく、又は無視可能な軽微なリンギング効果があり、前記重畳フレームを前記解凍フレームとして出力し、即ち、ノーマルモードにおいて、前記解凍フレームのデータP4は以下の式(14)で表されてもよい。
エンハンスモードにおいて、即ち、H0(f)>1のモードにおいて、過剰の補強は、前記重畳フレームにおいてリンギング効果を発生させる可能性があり、視覚観察効果に影響を及ばす。前記重畳フレームに対して境界調整を行って、前記解凍フレームを得てもよく、それにより、リンギング効果を効果的に消去する。
図11は、本明細書の実施例に基づいて提供される境界調整の方法P360を示すフローチャートである。図11に示すように、前記境界調整の方法P360は、データ解凍機器300の少なくとも1つの解凍側プロセッサ320によりS361、S362、S364、S366およびS368を含んでもよい。
S361において、前記重畳フレームにおける要素値がプリセット範囲を超える要素に対して値を割り当て、それが前記プリセット範囲内に含まれるようにさせる。
前記境界調整とは、前記重畳フレームにおける要素に対応する要素値に基づいて調整し、それにより、リンギング効果を消去することを指す。前記フレームの要素は、前記フレームの最小構成ユニットを指す。ビデオデータを例として、前記画像フレームの要素は前記画像の画素点であってもよい。前記画像フレームの要素値は、前記画像における画素に対応する階調値であってもよく、画像における画素に対応するRGB値、又はHIS値、又はHSV値等であってもよい。前記重畳フレームがオーディオである場合、前記要素はオーディオを構成する最小単位、例えば、1つのサンプリング周波数におけるオーディオサンプリング点であってもよい。以下は前記重畳フレームをビデオデータとして、前記要素値を画像における画素点に対応する階調値とする例を説明する。
画像画素点の階調値は一般的に0~255以内である。そのため、エンハンスモードにおいて、部分画素点の階調値は0~255以外である可能性がある。そのため、前記重畳フレームに対して境界調整を行うことにより前記重畳フレームの階調値が0~255以内であるようにさせやすいために、前記重畳フレームに対して値を割り当て、前記重畳フレームにおける要素値(即ち、階調値)がプリセット範囲内であるようにさせる必要がある。前記プリセット範囲は、第1臨界値及び第2臨界値によって構成される範囲を含み、前記第1臨界値は前記第2臨界値より大きいものである。前記プリセット範囲は0~255であってもよく、前記第1臨界値は255であり、前記第2臨界値は0である。もちろん、前記プリセット範囲はビデオデータの応用シーンに応じて設定してもよい。例えば、暗い背景において、プリセット範囲の最小値を適切に調整し、前記プリセット範囲を10~255に調整してもよい。もちろん、前記プリセット範囲は他の範囲、例えば16~240、20~250、30~250、40~250等であってもよい。前記重畳フレームに対して境界調整を行う前に、前記重畳フレームの要素に対して値を割り当て、それにより、前記重畳フレームの要素値が前記プリセット範囲内にあるようにさせ、前記境界調整の演算量を低減させ、工作効率を向上させることができる。ステップS361は、前記重畳フレームにおける要素値が第1臨界値より大きい要素に対して前記第1臨界値を割り当てることと、前記重畳フレームにおける要素値が第2臨界値より小さい要素に対して前記第2臨界値を割り当てることとを含んでもよい。前記重畳フレームにおける要素値が前記第1臨界値と前記第2臨界値との間にある要素に対して対応する要素値を保留し、改めて値を割り当てることはしない。
S362において、前記重畳フレームの要素値に基づいて前記重畳フレームを領域分割する。
前記重畳フレームの要素値に基づいて、前記重畳フレームを3つの領域に分割することができ、それぞれ凹点領域、凸点領域及び移行領域である。前記凹点領域は、局所最小値に対応する要素を含み、前記凸点領域は、局所最大値に対応する要素を含み、前記移行領域は前記凹点領域及び前記凸点領域以外の領域を含む。具体的に、ステップS346-2は前記重畳フレームにおける要素を点ごとに領域分割を行ってもよい。説明の便宜上、現在の領域分割られるべき要素に対応する要素値をd0と定義し、d0に隣接する要素に対応する要素値をdkと定義し、ここで、k=-n~n、nは正の整数であり、例えば、nは1であってもよく、2であってもよく、3又は3より大きい整数であってもよい。dkとd0は水平方向において隣接すること、垂直方向において隣接すること及び斜め方向において隣接することのうちの少なくとも1種であってもよい。dkとd0との隣接方向は前記デコードフレームがデコード畳み込みを行う方向と合致する。
d0<dkである場合、d0は一部の範囲における最小の要素値であり、d0は凹点領域に分割される。
d0>dkである場合、d0は一部の範囲における最大の要素値であり、d0は凸点領域に分割される。
d0が凹点領域に属さず凸点領域にも属さない場合、d0は移行領域に分割される。
画像の階調値が激しく変化する領域、即ち、画像境界領域の近傍でリンギング効果が発生することが多いので、境界領域の近傍の輝度が比較的暗い要素値(凹点領域)の輝度を低下させ、又は境界領域の近傍の輝度が比較的明るい要素値(凸点領域)の輝度を増加させ、視覚的に振動効果を引き起こす。そのため、前記重畳フレームに対して境界調整を行う必要があり、それを元の階調値に回復させ、即ち、境界調整により境界領域の近傍の輝度が比較的暗い要素値(凹点領域)の輝度を増加させて元の階調値に回復させ、又は境界領域の近傍の輝度が比較的明るい要素値(凸点領域)の輝度を低下させ、元の階調値に回復させる。そのため、前記重畳フレームの凹点領域及び凸点領域に対して境界検出を行い、前記重畳フレームにおける境界を検出し、その後、凹点領域及び凸点領域の境界に対してそれぞれ境界調整を行う必要がある。
S364において、前記重畳フレームにおける前記凹点領域及び前記凸点領域における各要素に対応する境界値を取得する。
前記境界値(HADVD:Higher absolute differential value difference)は、現在の要素d0の前方差分HADVDfと後方差分HADVDbとの結合を含む。
前方差分HADVDfは、前記現在の要素d0が前方の隣接する要素に対して差分演算を行うことを含む。前記後方差分HADVDb前記現在の要素d0が後方の隣接する要素に対して差分演算を行うことを含む。ここで、前記前方差分HADVDf及び後方差分HADVDbの差分方向は、垂直方向、水平方向及び斜め方向のうちの少なくとも1つの方向において差分を行うことを含む。前記差分方向は前記デコードフレームに対して畳み込みを行う方向と同一である。前記前方差分HADVDfは以下の式(15)で表されてもよい。
前記後方差分HADVDbは以下の式(16)で表されてもよい。
ここで、wkは前記前方差分HADVDf及び前記後方差分HADVDbの重み係数である。wkは、0~1の間の任意の値を取ってもよい。例えば、n=3である場合、wk=[1 1 1]を取って、1つの3次前方差値及び1つの3次後方差値を算出してもよい。前記前方差分HADVDfと前記後方差分HADVDbを演算することにより現在の要素d0と隣接する要素との差値を算出することができ、差値が大きいほど、現在の要素d0は境界に近い可能性が大きいことである。
前記前方差分HADVDfと後方差分HADVDbとの組み合わせは、最大重み値HADVDmaxと絶対差値HADVDabdとのうちの1つを含んでもよい。前記最大重み値HADVDmaxは、現在の要素d0の前方差分HADVDfと後方差分HADVDbとのうちの最大値の重み値であり、以下の式(17)で表されてもよい。
ここで、hは重み係数であり、hは0~1の間の任意の数値である。hは、大量の画像サンプルデータに基づいてトレーニングして得られてもよいし、経験に基づいて値を取ってもよい。
前記絶対差値HADVDabdは、現在の要素d0の前方差分HADVDfと後方差分HADVDbとの差値の絶対値であり、以下の式(18)で表されてもよい。
ここで、前記境界値HADVDは、前記最大重み値HADVDmaxと前記絶対差値HADVDabdとのうちの比較的大きい方を含む。前記境界値HADVDは、以下の式(19)で表されてもよい。
前記絶対差値HADVDabdと前記最大重み値HADVDmaxとを結合して画像における境界を正確に識別することができる。境界値HADVDが大きいほど、現在の要素d0が境界に近いことを証明する。
S366において、プリセットされた境界閾値THDに基づいて、前記凹点領域及び前記凸点領域における境界値HADVDが前記境界閾値THDより大きい要素を調整し、調整値ΔEを得る。
前記境界値HADVDが前記境界閾値THD以上である場合、前記境界値HADVDに対応する要素は境界領域と定義されることができ、境界調整を行う必要がある。前記境界閾値THDは、大量の画像サンプルデータに基づいてトレーニングして得られたものであってもよい。上述したように、凹点領域に対する境界調整は、凹点領域の要素に対応する要素値を増加させる必要がある。凸点領域の境界調整に対して凸点領域の要素に対応する要素値を低下させる必要がある。
ステップS366は、前記凹点領域における要素に対応する境界値HADVDと前記境界閾値THDとの比率に対して有限次数の線形結合を行い、前記凹点領域の調整値ΔELを得る。前記凹点領域の調整値ΔELは以下の式(20)で表されてもよい。
ここで、mは1より大きい正の整数である。
以下である最小の整数を表す。gmは重み係数である。qは補正パラメータである。前記線形結合の次数、重み係数gm及び補正パラメータqは、大量の画像サンプルデータに基づいてトレーニングして得られてもよい。ビデオデータに対して、画像の階調値が0~255の間の整数であることを保証するために、ΔELに対して丸め演算を行う必要がある。境界値HADVDが前記境界閾値THDより小さい場合、
であり、境界調整を行う必要がない。
前記凸点領域における要素に対応する境界値HADVDと前記境界閾値との比率THDに対して有限次数の線形結合を行い、反数を取り、前記凸点領域の調整値ΔEHを得る。前記凸点領域の調整値ΔEHは以下の式(21)で表されてもよい。
ここで、mは1より大きい正の整数である。
以下の最小の整数を表す。gmは重み係数である。qは補正パラメータである。前記線形結合の次数、重み係数gm及び補正パラメータqは、大量の画像サンプルデータに基づいてトレーニングして得られるものである。ビデオデータに対して、画像の階調値が0~255の間の整数であることを保証するために、ΔEHに対して丸め演算を行う必要がある。境界値HADVDが前記境界閾値THDより小さい場合、
であり、境界調整を行う必要がない。上述したように、凸点領域の境界調整に対して凸点領域の要素に対応する要素値を低下させる必要がある。そのため、ΔEHは負の値を取る。
S368において、前記調整値ΔEに基づいて前記重畳フレームを調整し、前記解凍フレームを得る。
具体的に、ステップS368は、前記調整値ΔEと前記重畳フレームに対応する要素値とを重畳し、前記解凍フレームを得ることを含む。前記解凍フレームにおけるデータP4は以下の式(22)で表されてもよい。
なお、前記デコードフレームが複数の方向においてデコード畳み込みを行うとき、前記重畳フレームは複数の方向において境界調整を行う必要があり、且つ境界調整の順番は前記デコードフレームがデコード畳み込みを行う時の順番と同一である。即ち、前記デコードフレームは水平方向のデコード畳み込みを行ってから垂直方向のデコード畳み込みを行い、それに対応して、前記重畳フレームは水平方向の境界調整を行ってから垂直方向の境界調整を行う。
図12Aは、本明細書の実施例に基づいて提供される境界調整が行われていない例を示す図であり、図12Bは、本明細書の実施例に基づいて提供される境界調整が行われる例を示す図である。図12Aにおいて、140に示すハイライト領域はエンハンスモードにおいて発生するリンギング効果である。図12Aと図12Bとを比べると、本説明に記載の境界調整の方法はリンギング効果を効果的に消去することができることは分かる。
前記解凍フレームは前記重畳フレームが境界調整を経て得られたものであるため、前記解凍フレームは、前記デコードスペクトラム調節関数H2(f)及び全体スペクトラム調節関数H0(f)により算出された前記重畳フレームの性質と概ね合致する。即ち、前記重畳フレームと同様に、低周波数領域から中間周波数領域の任意の周波数での前記解凍フレームの振幅が前記初期フレームとほぼ等しいか又はそれ以上であり、それにより、低周波数領域から中間周波数領域での前記解凍フレームの解像度を回復さらに補強させる。一部の実施例において、例えば、図8B、図8D及び図8Eに示すように、前記重畳フレームと同様に、高周波数領域での前記解凍フレームの振幅が前記初期フレームに対してスムーズに低下する。一部の実施例において、例えば、図8C、図8D及び図8Eに示すように、前記重畳フレームと同様に、中間周波数領域での前記解凍フレームの振幅が前記初期フレームに対してスムーズに増加する。一部の実施例において、例えば、図8Eに示すように、前記重畳フレームと同様に、低周波領域での前記解凍フレームの振幅が前記初期フレームに対してスムーズに増加する。ここで、前記重畳フレームと同様に、中間周波数領域での前記解凍フレームの振幅増加幅は、低周波領域での前記解凍フレームの振幅増加幅より大きい。
以上により、本明細書が提供するデータ処理のシステム100、前記初期データを圧縮するとき、データ圧縮機器200により方法P200を実行し、前記初期データにおける初期フレームに対してエンコード畳み込みカーネルを用いてエンコードスペクトラム調節を行い、前記初期フレームの周波数領域内の低周波から高周波数領域での振幅をスムーズに低下させて前記初期フレームにおけるデータ情報を低減させ、エンコード効率を向上させ、圧縮後のデータ容量が減小するようにさせ、データの圧縮効率及びデータ伝送効率を向上させる。本明細書が提供するデータ処理のシステム100は、前記圧縮フレームを解凍するとき、データ解凍機器300により方法P300を実行し、前記圧縮フレームに対してデコード畳み込みカーネルを用いてデコードスペクトラム調節を行い、滑らかに移行するデコードスペクトラム調節関数H2(f)を用いて前記圧縮フレームに対してスペクトラム調節を行い、前記圧縮フレームにおける中間周波数から高周波数領域の成分をフィルタリングし、その後、前記圧縮フレームと前記デコードスペクトラム調節を経た圧縮フレームとに対して差を求め、前記境界情報を得て、調整係数を用いて前記境界情報を調整し、それが初期状態に回復し又は前記初期状態に対して補強されたものになるようにさせ、前記圧縮フレームと調整後の前記境界情報とを重畳し、それにより、前記解凍フレームを得る。ここで、前記デコードスペクトラム調節関数H2(f)に対応するデコード畳み込みカーネルはエンコード畳み込みカーネルと対応し、全ての係数はいずれも非負数であり、又は非負係数の合計に対する負係数の合計の絶対値の比率が0.1より小さく、それにより、リンギング効果の発生を効果的に回避し、前記解凍フレームをより鮮明にさせる。前記方法及びシステムはデータの圧縮効率を向上させ、伝送効率を向上させることができ、同時に解凍後のデータの解像度を向上させ、リンギング効果を効果的に消去することができる。
本明細書は非一時的な記憶媒体をさらに提供し、前記記憶媒体にはデータ処理を行うための少なくとも1セットの実行可能な命令が記憶されており、前記実行可能な命令がプロセッサによって実行されるとき、前記実行可能な命令は前記プロセッサにデータ処理方法P200を実施させるステップを指導する。一部の可能な実施形態において、本明細書の各態様は、プログラムコードを含むプログラム製品の形式としてさらに実現されてもよい。前記プログラム製品がデータ圧縮機器200上で実行される場合、前記プログラムコードは、データ圧縮機器200に本明細書で説明されたデータ処理のスデップを実行させるために用いられる。上記方法を実現するためのプログラム製品は、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)を採用してもよく、且つプログラムコードを含み、データ圧縮機器200、例えば、パーソナルコンピュータ上で実行されてもよい。しかし、本明細書に係るプログラム製品はこれに限定されず、本明細書において、可読記憶媒体はプログラムを含む又は記憶するいかなる有形媒体であってもよく、当該プログラムは命令実行システム(例えば、圧縮側プロセッサ220)に使用され又はそれと組み合わせて使用されてもよい。前記プログラム製品は、1つ又は複数の可読媒体の任意の組み合わせを採用してもよい。可読媒体は、可読信号媒体又は可読記憶媒体であってもよい。可読記憶媒体は、例えば、電気、磁気、光、電磁、赤外線、又は半導体のシステム、装置或いはデバイス、又はそれらの任意の組み合わせであってもよいが、それらに限定されない。可読媒体のより具体的な例としては、1つ又は複数のワイヤを有する電気的接続、ポータブルディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)、光記憶デバイス、磁気記憶デバイス、またはこれらの任意の適切な組み合わせを含む。前記コンピュータ可読記憶媒体は、ベースバンドにおけるデータ信号又は搬送波の一部として伝播されるデータ信号を含んでもよく、中には可読プログラムコードがベアラされている。このような伝播されるデータ信号は、様々な形式を採用してもよく、電磁信号、光信号又は上記ものの任意の適切な組み合わせを含むが、それらに限定されない。可読記憶媒体は、可読記憶媒体以外のいかなる可読媒体であってもよく、当該可読媒体は、命令実行システム、装置又はデバイスによって使用され又はそれらと組み合わせて使用されるためのプログラムを送信、伝播又は伝送することができる。可読記憶媒体に含まれるプログラムコードは、任意の適切な媒体で伝送されることができ、前記媒体は、無線、有線、光ケーブル、RF等、又は上記ものの任意の適切な組み合わせを含むが、それらに限定されない。本明細書の操作を実行するためのプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせで記述されてもよく、前記プログラミング言語は、オブジェクト指向プログラミング言語、例えば、Java、C++等を含み、通常の手続き型プログラミング言語、例えば、「C」言語又は類似するプログラミング言語等をさらに含む。プログラムコードは、完全にデータ圧縮機器200上で実行され得、部分的にデータ圧縮機器200上で実行され得、独立したソフトウェアパッケージとして実行され得、部分的にデータ圧縮機器200上で実行されて部分的に遠隔演算機器上で実行され得、又は、完全に遠隔演算機器上で実行され得る。遠隔演算機器に係る場合、遠隔演算機器は、伝送媒体120を介してデータ圧縮機器200に接続されてもよいし、外部の演算機器に接続されてもよい。
以上は本明細書の特定の実施例を説明した。他の実施例は、添付の特許請求項書の範囲内にある。一部の場合、特許請求項書に記載される動作又はステップは、実施例のと異なる順番で実行されてもよく、なお所望の結果を実現させることができる。また、所望の結果を実現させるために、図面で描かれた過程は必ずしも特定の順番又は連続順番を示す必要がない。一部の実施形態において、マルチタスク処理及び並列処理も可能であり又は有利である可能性がある。
以上により、本開示内容の詳細を読んだ後、当業者であれば、上述した開示内容の詳細は単に例としての形式で表れることができ、且つ限定的なものではないことは分かることができる。ここでは明確に記載されていないが、当業者であれば、本明細書は実施例に対する様々な合理的な改変、改良及び修正を含むことは理解される。これらの改変、改良及び修正は、本明細書によって提示されるものであり、且つ本明細書の例示的な実施例の精神及び範囲に含まれる。
また、本明細書の一部の用語は、本明細書の実施例を説明するために用いられた。例えば、及び/又は「一部の実施例」は、当該実施例で説明される特定の特徴、構造又は特性と組み合わせて本明細書の少なくとも1つの実施例に含まれてもよいことを意味する。そのため、本明細書の各部分における「実施例」又は「1つの実施例」又は「代替的な実施例」に対する2つ又はそれ以上の引用は必ずしも同一の実施例を指すものではないことは強調されてもよいし、理解されるべきである。また、特定の特徴、構造又は特性は、本明細書の1つ又は複数の実施例において適切に組み合わせされてもよい。
なお、本明細書の実施例の上記説明において、一つの特徴を理解するために、本明細書を簡略化する目的から、本明細書は、様々な特徴を単一の実施例、図面又はその説明に組み合わせる。しかしながら、これらの特徴の組み合わせは必須であるとは限らず、当業者であれば、本明細書を読んだ時点でその一部の特徴を抽出して単独の実施例として理解する可能性がある。つまり、本明細書における実施例は、複数のサブ実施例の統合として理解され得る。そして、各サブ実施例の内容は、上述した単一の開示実施例の全ての特徴より少ないものを含む場合も成立である。
本文で引用された各特許、特許出願、特許出願の出版物及び他の材料、例えば、文章、書籍、説明書、出版物、ファイル、物品等は、引用によってここに組み込まれることができる。全ての目的のために用いられる全ての内容は、それに関連するいかなる訴求ファイル履歴を除き、本ファイルと一致又は衝突しないいかなる同一のものであってもよく、又はいかなる請求項の最も広い範囲に限定的な影響を有するいかなる同一の訴求ファイル履歴であってもよい。現在又は以降は、本ファイルに関連する。例を挙げれば、含まれる如何なる材料に関連する用語の説明、定義及び/又は本ファイルに関連する用語を使用して説明、定義及び/又はその間に任意の不一致又は衝突が存在する場合、本ファイルにおける用語を使用することを基準とする。
最後に、本文で開示された出願の実施態様は、本明細書の実施態様の原理に対する説明であることは理解されるべきである。その他の補正後の実施例も本明細書の範囲に含まれる。そのため、本明細書で開示された実施例は、ただの例に過ぎず、限定的なものではない。当業者であれば、本明細書に係る実施例に基づいて代替構成を採用して本明細書の出願を実現させることができる。そのため、本明細書の実施例は、出願書類において明確に説明された実施例に限定されるものではない。