JP4643736B2 - 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP4643736B2
JP4643736B2 JP2009205532A JP2009205532A JP4643736B2 JP 4643736 B2 JP4643736 B2 JP 4643736B2 JP 2009205532 A JP2009205532 A JP 2009205532A JP 2009205532 A JP2009205532 A JP 2009205532A JP 4643736 B2 JP4643736 B2 JP 4643736B2
Authority
JP
Japan
Prior art keywords
pixel
macroblock
horizontal
vertical
encoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009205532A
Other languages
English (en)
Other versions
JP2009290901A (ja
Inventor
卓 佐野
裕江 岩崎
次郎 長沼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009205532A priority Critical patent/JP4643736B2/ja
Publication of JP2009290901A publication Critical patent/JP2009290901A/ja
Application granted granted Critical
Publication of JP4643736B2 publication Critical patent/JP4643736B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、2つのフィールドで1つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮する映像符号化装置及びその方法と、その映像符号化方法の実現に用いられる映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体とに関し、特に、符号化効率を低下させずに計算量及びハード規模の削減を実現する映像符号化装置及びその方法と、その映像符号化方法の実現に用いられる映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体とに関する。
2つのフィールドで1つのフレームが構成される映像データ(インタレース構造の映像データ)をマクロブロックに分割して符号化する場合、フレームマクロブロックモードかフィールドマクロブロックモードのどちらかのモードを選択して符号化を行うという方式が用いられている。
この符号化方式では、図15に示すように、1つのフレームから切り出される水平M画素で垂直2N画素の大きさを持つ処理対象の領域の映像データを符号化対象として、その映像データを符号化する場合に、フレームマクロブロックモードで符号化を行う場合には、図16に示すように、その領域を水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することで2つのフレームマクロブロックを生成して、それを使って符号化を行い、一方、フィールドマクロブロックモードで符号化を行う場合には、図17及び図18に示すように、その領域を水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することで2つのフィールドマクロブロックを生成して、それを使って符号化を行うようにしている。
従来技術では、この符号化方式に従って、フレームマクロブロックモードかフィールドマクロブロックモードのどちらかのモードを選択して符号化を行う場合には、フレームマクロブロックモード及びフィールドマクロブロックモードの双方で符号化を行って、その発生ビット量を比較して、最終的にどちらのモードで符号化を行うのかを決定するようにしている。また、符号化過程を二重にして、第1過程の結果からモードを決定するという技術も提案されている。
さらに、本発明に関連する技術として、下記に示す特許文献1に記載される発明のような技術も提案されている。
特開平6−237446号公報
しかしながら、従来技術のように、フレームマクロブロックモードかフィールドマクロブロックモードのどちらかのモードを選択して符号化を行う場合にあって、フレームマクロブロックモード及びフィールドマクロブロックモードの双方で符号化を行うことで効率の良いモードを選択するようにしていると、符号化処理を複数回行う必要があることから、ソフトウェアで実装する場合には、CPU負荷が増大するとともに、処理時間が増大するという問題があり、また、ハードウェアで実装する場合には、チップ面積が増大するとともに、消費電力が増大するという問題がある。
本発明はかかる事情に鑑みてなされたものであって、フレームマクロブロックモード及びフィールドマクロブロックモードの双方で符号化を行うことなくマクロブロックモードを適応的に選択できるようにすることで、符号化効率を低下させずに計算量及びハード規模の削減を実現する新たな映像符号化技術の提供を目的とする。
上記の目的を達成するために、本発明の映像符号化装置は、2つのフィールドで1つのフレームが構成される映像データ(インタレース構造の映像データ)を規定の大きさのマクロブロックに分割して圧縮するという構成を採るときにあって、(i)水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成して、そのフレームマクロブロックを使って動き探索を行うことで符号化コストを算出する第1の算出手段と、(ii)水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成して、そのフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出する第2の算出手段と、(iii) 第1の算出手段の算出した符号化コストと、第2の算出手段の算出した符号化コストとの差分絶対値を算出する第3の算出手段と、(iv)第3の算出手段の算出した差分絶対値が所定の閾値よりも小さい場合には、上記処理対象の領域に隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データをフレームマクロブロックを使って符号化するのか、フィールドマクロブロックを使って符号化するのかを決定し、閾値よりも大きい場合には、第1及び第2の算出手段の算出した符号化コストに基づいて、その決定を行う決定手段とを備えるように構成する。
以上の各処理手段が動作することで実現される本発明の映像符号化方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当なコンピュータ読み取り可能な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてCPUなどの制御手段上で動作することにより本発明を実現することになる。
このように構成される本発明の映像符号化装置では、第1の算出手段がフレームマクロブロックを使って動き探索を行うことで符号化コストを算出し、第2の算出手段がフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出すると、第3の算出手段は、その2つの符号化コストの差分絶対値を算出する。
この2つの符号化コストの差分絶対値の算出結果を受けて、決定手段は、その差分絶対値が所定の閾値よりも小さい場合には、隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データをフレームマクロブロックを使って符号化するのか、フィールドマクロブロックを使って符号化するのかを決定し、一方、その閾値よりも大きい場合には、第1及び第2の算出手段の算出した2つの符号化コストに基づいて、符号化コストが小さなものとなるマクロブロックを使って符号化することを決定する。
ある1つのフレームの映像データについて符号化を行う場合、フレームマクロブロックを使う符号化モードとフィールドマクロブロックを使う符号化モードとが混在すると、各マクロブロックについて、どちらの符号化モードで符号化を行ったのかということを示す情報を付加する必要があり、これによる符号量の増大が問題となる。
そこで、本発明の映像符号化装置は、動き探索までの符号化を行って、2つの符号化コストに大きな差がない場合には、どちらの符号化モードで符号化を行ったのかということを示す情報の符号量の削減を図るべく、隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データをフレームマクロブロックを使って符号化するのか、フィールドマクロブロックを使って符号化するのかを決定し、一方、2つの符号化コストに大きな差がある場合には、本来の原則に従って、符号化コストが小さなものとなるマクロブロックを使って符号化することを決定するように処理するのである。
本発明によれば、2つのフィールドで1つのフレームが構成される映像データをマクロブロックに分割して符号化するときにあって、動き探索までの符号化を行うことで、フレームマクロブロックモードとフィールドマクロブロックモードの内のどちらのマクロブロックモードを使って符号化を行うのかを適応的に選択できるようになり、これにより、符号化効率を低下させずに計算量及びハード規模の削減を実現できるようになる。
これから、本発明によれば、ソフトウェアで実装する場合には、CPU負荷を削減できるようになるとともに、処理時間を削減できるようになる。そして、ハードウェアで実装する場合には、チップ面積を削減できるようになるとともに、消費電力を削減できるようになる。
本発明に関連する発明で構成される映像符号化装置の一例である。 本発明に関連する発明で構成される映像符号化装置の実行する処理フローの一例である。 本発明に関連する発明で構成される映像符号化装置の実行する処理の説明図である。 本発明に関連する発明で構成される映像符号化装置の実行する処理フローの他の一例である。 本発明に関連する発明で構成される映像符号化装置の実行する処理の説明図である。 本発明に関連する発明で構成される映像符号化装置の実行する処理フローの他の一例である。 本発明に関連する発明で構成される映像符号化装置の実行する処理の説明図である。 本発明に関連する発明で構成される映像符号化装置の実行する処理フローの他の一例である。 本発明に関連する発明で構成される映像符号化装置の実行する処理の説明図である。 本発明に関連する発明の有効性を検証するために行ったシミュレーションの結果の説明図である。 本発明に関連する発明の有効性を検証するために行ったシミュレーションの結果の説明図である。 本発明に関連する発明の有効性を検証するために行ったシミュレーションの結果の説明図である。 本発明の映像符号化装置の一実施形態例である。 本発明の映像符号化装置の実行する処理フローの一実施形態例である。 本発明の適用される符号化方式の説明図である。 フレームマクロブロックモードによる符号化の説明図である。 フィールドマクロブロックモードによる符号化の説明図である。 フィールドマクロブロックモードによる符号化の説明図である。
以下、実施の形態に従って本発明を詳細に説明する。
本発明の説明に入る前に、本発明に関連する発明で構成される映像符号化装置について説明する。
図1に、本発明に関連する発明で構成される映像符号化装置1の一例を図示する。
この図に示すように、本発明に関連する発明で構成される映像符号化装置1は、1フレーム分の映像データを格納するフレームメモリ10と、フレームマクロブロック生成手段11と、フレームマクロブロック映像データ格納手段12と、第1の算出手段13と、第1の補正値算出手段14と、第1の加算手段15と、フィールドマクロブロック生成手段16と、フィールドマクロブロック映像データ格納手段17と、第2の算出手段18と、第2の補正値算出手段19と、第2の加算手段20と、符号化モード決定手段21と、第1の符号化手段22と、第2の符号化手段23とを備える。
このフレームマクロブロック生成手段11は、フレームメモリ10に格納される映像データから切り出される水平M画素で垂直2N画素の大きさを持つ処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成する。フレームマクロブロック映像データ格納手段12は、フレームマクロブロック生成手段11の生成したフレームマクロブロックの映像データを格納する。
第1の算出手段13は、フレームマクロブロック生成手段11の生成したフレームマクロブロックの映像データに基づいて、その映像データの動きの大きさを示す値を算出する。第1の補正値算出手段14は、フレームマクロブロック生成手段11の生成したフレームマクロブロックの映像データから導出される補正値を算出する。第1の加算手段15は、第1の算出手段13の算出した値に第1の補正値算出手段14の算出した補正値を加算する。
フィールドマクロブロック生成手段16は、フレームメモリ10に格納される映像データから切り出される水平M画素で垂直2N画素の大きさを持つ処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成する。フィールドマクロブロック映像データ格納手段17は、フィールドマクロブロック生成手段16の生成したフィールドマクロブロックの映像データを格納する。
第2の算出手段18は、フィールドマクロブロック生成手段16の生成したフィールドマクロブロックの映像データに基づいて、第1の算出手段13の算出した値の比較値となる値を算出する。第2の補正値算出手段19は、フィールドマクロブロック生成手段16の生成したフィールドマクロブロックの映像データから導出される補正値を算出する。第2の加算手段20は、第2の算出手段18の算出した値に第2の補正値算出手段19の算出した補正値を加算する。
符号化モード決定手段21は、第1の加算手段15の算出した値と第2の加算手段20の算出値とを比較することで、フレームマクロブロックモードで符号化を行うのか、フィールドマクロブロックモードで符号化を行うのかを決定する。第1の符号化手段22は、フレームマクロブロックモードに従って処理対象の領域の映像データを符号化する。第2の符号化手段23は、フィールドマクロブロックモードに従って処理対象の領域の映像データを符号化する。
図2に、このように構成される本発明に関連する発明で構成される映像符号化装置1の実行する処理フローの一例を図示する。
次に、この処理フローに従って、本発明に関連する発明で構成される映像符号化装置1の実行する処理について詳細に説明する。以下、説明の便宜上、上述したM,Nについて、M=N=16を想定している。
本発明に関連する発明で構成される映像符号化装置1は、フレームメモリ10に格納される映像データから水平M画素で垂直2N画素の大きさを持つ符号化対象となる処理対象の領域を選択すると、図2の処理フローに示すように、先ず最初に、ステップ100で、処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することで2つのフレームマクロブロックを生成する。
続いて、ステップ101で、その生成した2つのフレームマクロブロックの映像データについて、フレームマクロブロックの(m,n)位置の画素値をi(m,n)で表し、aの絶対値をABS〔a〕で表すならば、
frm (1) =Σm Σn ABS〔i(m,n)−i(m,n+1)〕
frm (2) =Σm Σn ABS〔i(m,n)−i(m,n+1)〕
Σm :m=1〜16についての総和
Σn :n=1〜15についての総和
という算出式に従って、垂直方向隣接画素間の差分値の絶対値和Sfrm を算出する。
ここで、Sfrm (1) は一方のフレームマクロブロックについての垂直方向隣接画素間の差分値の絶対値和を示し、Sfrm (2) はもう一方のフレームマクロブロックについての垂直方向隣接画素間の差分値の絶対値和を示している。
続いて、ステップ102で、Sfrm (1) の算出元となった差分絶対値
ABS〔i(m,n)−i(m,n+1)〕
の最大値MAXfrm (1) を特定して、その符号を反転させることで補正値Cfrm (1)
frm (1) =−MAXfrm (1)
を算出するとともに、Sfrm (2) の算出元となった差分絶対値
ABS〔i(m,n)−i(m,n+1)〕
の最大値MAXfrm (2) を特定して、その符号を反転させることで補正値Cfrm (2)
frm (2) =−MAXfrm (2)
を算出する。
続いて、ステップ103で、
S' frm (1) =Sfrm (1) +Cfrm (1)
S' frm (2) =Sfrm (2) +Cfrm (2)
を算出して、その合計値
S' frm =S' frm (1) +S' frm (2)
を求めることで、フレームマクロブロックについての垂直方向隣接画素間の差分値の絶対値和の最終的な値S' frm を算出する。
ここで、Sfrm (1) をCfrm (1) で補正し、Sfrm (2) をCfrm (2) で補正したのは、ある1つの画素の持つ差分絶対値の最大値が判定結果に支配的な影響を与えるのを避けるためである。
続いて、ステップ104で、処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することで2つのフィールドマクロブロックを生成する。
続いて、ステップ105で、その生成した2つのフィールドマクロブロックの映像データについて、フィールドマクロブロックの(m,n)位置の画素値をi(m,n)で表し、aの絶対値をABS〔a〕で表すならば、
fld (1) =Σm Σn ABS〔i(m,n)−i(m,n+1)〕
fld (2) =Σm Σn ABS〔i(m,n)−i(m,n+1)〕
Σm :m=1〜16についての総和
Σn :n=1〜15についての総和
という算出式に従って、垂直方向隣接画素間の差分値の絶対値和Sfld を算出する。
続いて、ステップ106で、Sfld (1) の算出元となった差分絶対値
ABS〔i(m,n)−i(m,n+1)〕
の最大値MAXfld (1) を特定して、その符号を反転させることで補正値Cfld (1)
fld (1) =−MAXfld (1)
を算出するとともに、Sfld (2) の算出元となった差分絶対値
ABS〔i(m,n)−i(m,n+1)〕
の最大値MAXfld (2) を特定して、その符号を反転させることで補正値Cfld (2)
fld (2) =−MAXfld (2)
を算出する。
続いて、ステップ107で、
S' fld (1) =Sfld (1) +Cfld (1)
S' fld (2) =Sfld (2) +Cfld (2)
を算出して、その合計値
S' fld =S' fld (1) +S' fld (2)
を求めることで、フィールドマクロブロックについての垂直方向隣接画素間の差分値の絶対値和の最終的な値S' fld を算出する。
ここで、Sfld (1) をCfld (1) で補正し、Sfld (2) をCfld (2) で補正したのは、ある1つの画素の持つ差分絶対値の最大値が判定結果に支配的な影響を与えるのを避けるためである。
続いて、ステップ108で、ステップ103で算出したS' frm と、ステップ107で算出したS' fld とを比較して、ステップ103で算出したS' frm の方が小さいことを判断するときには、ステップ109に進んで、フレームマクロブロックモードで符号化することを決定して、処理対象の領域について符号化を行う。
一方、ステップ108で、ステップ107で算出したS' fld の方が小さいことを判断するときには、ステップ110に進んで、フィールドマクロブロックモードで符号化することを決定して、処理対象の領域について符号化を行う。
このようにして、本発明に関連する発明で構成される映像符号化装置1は、図2の処理フローを実行する場合には、図3に示すように、フレームマクロブロックの映像データについて垂直方向隣接画素間の差分値の絶対値和Sfrm を算出するとともに、フィールドマクロブロックの映像データについて垂直方向隣接画素間の差分値の絶対値和Sfld (Sfrm の比較基準値となるもの)を算出し、その2つの値を補正してから比較して、フレームマクロブロックの映像データから算出される垂直方向隣接画素間の差分値の絶対値和の方が小さいことで、映像データの動きが小さなものであることを判断する場合には、フレームマクロブロックを使って符号化し、一方、フィールドマクロブロックの映像データから算出される垂直方向隣接画素間の差分値の絶対値和の方が小さいことで、映像データの動きが大きなものであることを判断する場合には、フィールドマクロブロックを使って符号化するように処理するのである。
ここで、図2の処理フローでは、
S' frm =S' frm (1) +S' frm (2)
S' fld =S' fld (1) +S' fld (2)
という算出式に従って、S' frm , S' fld を算出するようにしているが、
S' frm =(S' frm (1) +S' frm (2) )/2
S' fld =(S' fld (1) +S' fld (2) )/2
という算出式に従って、S' frm , S' fld を算出するようにしてもよい。
また、図2の処理フローでは、最大の差分絶対値を持つ1つの画素の影響を取り除くような形で補正値Cfrm , Cfld を算出するようにしているが、大きな差分絶対値を持つ上位複数画素の影響を取り除くような形で補正値Cfrm , Cfld を算出するようにしてもよい。
図4に、本発明に関連する発明で構成される映像符号化装置1の実行する処理フローの他の一例を図示する。
この処理フローと図2に示した処理フローとの違いは、本発明に関連する発明で構成される映像符号化装置1は、この処理フローを実行する場合には、
frm =Σm Σn 〔i(m,n)−Aave (frm) 〕2 /(MN−1)
fld =Σm Σn 〔i(m,n)−Aave (fld) 〕2 /(MN−1)
ave (frm) :フレームマクロブロック内画素の平均値
ave (fld) :フィールドマクロブロック内画素の平均値
という算出式に従って分散値Vfrm , Vfld を算出して、それを使って、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するように処理することにある。
ここで、この処理フローを実行する場合には、Sfrm の算出元となった差分2乗値
〔i(m,n)−Aave (frm) 〕2
の最大値MAXfrm を特定して、
frm =−MAXfrm /(MN−1)
という算出式に従って補正値Cfrm を算出するとともに、Sfld の算出元となった差分2乗値
〔i(m,n)−Aave (fld) 〕2
の最大値MAXfld を特定して、
fld =−MAXfld /(MN−1)
という算出式に従って補正値Cfld を算出することになる。
このようにして、本発明に関連する発明で構成される映像符号化装置1は、図4の処理フローを実行する場合には、図5に示すように、フレームマクロブロックの映像データについて分散値Vfrm を算出するとともに、フィールドマクロブロックの映像データについて分散値Vfld (Vfrm の比較基準値となるもの)を算出し、その2つの値を補正してから比較して、フレームマクロブロックの映像データから算出される分散値の方が小さいことで、映像データの動きが小さなものであることを判断する場合には、フレームマクロブロックを使って符号化し、一方、フィールドマクロブロックの映像データから算出される分散値の方が小さいことで、映像データの動きが大きなものであることを判断する場合には、フィールドマクロブロックを使って符号化するように処理するのである。
図6に、本発明に関連する発明で構成される映像符号化装置1の実行する処理フローの他の一例を図示する。
この処理フローと図2に示した処理フローとの違いは、本発明に関連する発明で構成される映像符号化装置1は、この処理フローを実行する場合には、フレームマクロブロックの映像データを8×8画素に分割し、それぞれに対して2次元DCT処理を施し、そのDCT係数のAC成分の絶対値和Sfrm を算出するとともに、フィールドマクロブロックの映像データを8×8画素に分割し、それぞれに対して2次元DCT処理を施し、そのDCT係数のAC成分の絶対値和Sfld を算出して、それを使って、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するように処理することにある。
ここで、この処理フローを実行する場合には、Sfrm の算出元となったDCT係数のAC成分の中から最大値MAXfrm を特定して、その符号を反転させることで補正値Cfrm を算出するとともに、Sfld の算出元となったDCT係数のAC成分の中から最大値MAXfld を特定して、その符号を反転させることで補正値Cfld を算出することになる。
また、この処理フローでは、DCT係数の全てのAC成分を加算対象として、その絶対値和を算出するようにしているが、所定の空間周波数以上のAC成分を加算対象として、その絶対値和を算出するようにしてもよい。
このようにして、本発明に関連する発明で構成される映像符号化装置1は、図6の処理フローを実行する場合には、図7に示すように、フレームマクロブロックの映像データに対して2次元DCT処理を施すことで、そのDCT係数のAC成分の絶対値和Sfrm を算出するとともに、フィールドマクロブロックの映像データに対して2次元DCT処理を施すことで、そのDCT係数のAC成分の絶対値和Sfld (Sfrm の比較基準値となるもの)を算出し、その2つの値を補正してから比較して、フレームマクロブロックの映像データから算出されるAC成分の絶対値和の方が小さいことで、映像データの動きが小さなものであることを判断する場合には、フレームマクロブロックを使って符号化し、一方、フィールドマクロブロックの映像データから算出されるAC成分の絶対値和の方が小さいことで、映像データの動きが大きなものであることを判断する場合には、フィールドマクロブロックを使って符号化するように処理するのである。
図8に、本発明に関連する発明で構成される映像符号化装置1の実行する処理フローの他の一例を図示する。
この処理フローと図6に示した処理フローとの違いは、本発明に関連する発明で構成される映像符号化装置1は、この処理フローを実行する場合には、フレームマクロブロックの映像データを垂直方向8画素に分割し、それぞれに対して1次元DCT処理を施し、そのDCT係数のAC成分の絶対値和Sfrm を算出するとともに、フィールドマクロブロックの映像データを垂直方向8画素に分割し、それぞれに対して1次元DCT処理を施し、そのDCT係数のAC成分の絶対値和Sfld を算出して、それを使って、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するように処理することにある。
このようにして、本発明に関連する発明で構成される映像符号化装置1は、図8の処理フローを実行する場合には、図9に示すように、フレームマクロブロックの映像データに対して1次元DCT処理を施すことで、そのDCT係数のAC成分の絶対値和Sfrm を算出するとともに、フィールドマクロブロックの映像データに対して1次元DCT処理を施すことで、そのDCT係数のAC成分の絶対値和Sfld (Sfrm の比較基準値となるもの)を算出し、その2つの値を補正してから比較して、フレームマクロブロックの映像データから算出されるAC成分の絶対値和の方が小さいことで、映像データの動きが小さなものであることを判断する場合には、フレームマクロブロックを使って符号化し、一方、フィールドマクロブロックの映像データから算出されるAC成分の絶対値和の方が小さいことで、映像データの動きが大きなものであることを判断する場合には、フィールドマクロブロックを使って符号化するように処理するのである。
図10〜図12に、本発明に関連する発明の有効性を検証するために行ったシミュレーションの結果を図示する。
このシミュレーションは、MPEGで配付されている参照ソフトウェア(JM)を符号化対象として、量子化パラメータ(QP)を変化させながら、
(1)従来技術通りに、フレームマクロブロックモード及びフィールドマクロブロック モードの双方で符号化を行って発生符号量を比較して、発生符号量の少ない方で 最終的な符号化を行い、
(2)さらに、本発明に関連する発明については、図2の処理フロー/図4の処理フロ ー/図6の処理フロー/図8の処理フローのそれぞれに従って符号化を行って、
これらについて、PSNR(ピーク信号対信号比)とビットレートとを比較することで行った。
図10は参照ソフトウェアで用意される“Horse Race”画像に対して行ったシミュレーション結果を示し、図11は参照ソフトウェアで用意される“Bicycle"画像に対して行ったシミュレーション結果を示し、図12は参照ソフトウェアで用意される“Football”画像に対して行ったシミュレーション結果を示す。
ここで、図10〜図12中に示す“JM”が従来技術を用いて符号化を行った場合のシミュレーション結果を示し、“差分値”が図2の処理フローを用いて符号化を行った場合のシミュレーション結果を示し、“分散値”が図4の処理フローを用いて符号化を行った場合のシミュレーション結果を示し、“2次元DCT”が図6の処理フローを用いて符号化を行った場合のシミュレーション結果を示し、“1次元DCT”が図8の処理フローを用いて符号化を行った場合のシミュレーション結果を示している。
これらのシミュレーション結果から分かるように、本発明に関連する発明を用いることで、フレームマクロブロックモード及びフィールドマクロブロックモードの双方で符号化を行わなくても、従来技術と同等の符号化量でもって符号化を行うことができることを検証できた。
次に、本発明を具備する映像符号化装置について説明する。
図13に、本発明を具備する映像符号化装置1の一実施形態例を図示する。
この図に示す本発明の映像符号化装置1は、映像データを格納する映像データメモリ30と、動き探索を行う動き探索手段31と、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定する符号化モード決定手段32と、フレームマクロブロックモードに従って処理対象の領域の映像データを符号化する第1の符号化手段33と、フィールドマクロブロックモードに従って処理対象の領域の映像データを符号化する第2の符号化手段34とを備える。
これまでに説明した本発明に関連する発明では、水平M画素で垂直2N画素の大きさを持つ処理対象の領域について一切の符号化を行うことなく、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するように処理している。
これに対して、図13に示す本発明の映像符号化装置1は、動き探索までの符号化を行って符号化コストを算出して、それに基づいて、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するという構成を採る。
ある1つのフレームの映像データについて符号化を行う場合、フレームマクロブロックを使う符号化モードとフィールドマクロブロックを使う符号化モードとが混在すると、各マクロブロックについて、どちらの符号化モードで符号化を行ったのかということを示す情報を付加する必要があり、これによる符号量の増大が問題となる。
そこで、図13に示す本発明の映像符号化装置1では、動き探索までの符号化を行って、2つの符号化コストに大きな差がない場合には、どちらの符号化モードで符号化を行ったのかということを示す情報の符号量の削減を図るべく、1つ前に符号化したマクロブロックの符号化モードに基づいて、処理対象の領域の映像データをフレームマクロブロックを使って符号化するのか、フィールドマクロブロックを使って符号化するのかを決定し、一方、2つの符号化コストに大きな差がある場合には、本来の原則に従って、符号化コストが小さなものとなるマクロブロックを使って符号化することを決定するように処理するという構成を採っている。
すなわち、図13のように構成される本発明の映像符号化装置1は、フレームメモリ10に格納される映像データから水平M画素で垂直2N画素の大きさを持つ符号化対象となる処理対象の領域を選択すると、図14の処理フローに示すように、先ず最初に、ステップ500で、処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することで2つのフレームマクロブロックを生成して、その生成したフレームマクロブロックで動き探索を行うことで符号化コスト(マクロブロックの予測誤差と、マクロブロックの動きベクトルと周囲の動きベクトルとの差という2つの値の合計値)を算出する。
続いて、ステップ501で、処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することで2つのフィールドマクロブロックを生成して、その生成したフィールドマクロブロックで動き探索を行うことで符号化コスト(マクロブロックの予測誤差と、マクロブロックの動きベクトルと周囲の動きベクトルとの差という2つの値の合計値)を算出する。
続いて、ステップ502で、算出した2つの符号化コストの差分絶対値Dを算出し、続くステップ503で、その差分絶対値Dが予め設定される閾値より小さいのか否かを判断する。
この判断処理に従って、差分絶対値Dが予め設定される閾値より小さいことを判断する場合には、ステップ504に進んで、1つ前に符号化したマクロブロックの符号化モードに基づいて、処理対象の領域の映像データをフレームマクロブロックを使って符号化するのか、フィールドマクロブロックを使って符号化するのかを決定して、処理対象の領域を符号化する。
一方、ステップ503の判断処理に従って、差分絶対値Dが予め設定される閾値より大きいことを判断する場合には、ステップ505に進んで、フレームマクロブロックの符号化コストの方が小さいのかをチェックする。
続いて、ステップ506で、このチェック処理に従ってフレームマクロブロックの符号化コストの方が小さいことを判断する場合には、ステップ507に進んで、フレームマクロブロックを使って符号化することを決定して処理対象の領域を符号化し、一方、フィールドマクロブロックの符号化コストの方が小さいことを判断する場合には、ステップ508に進んで、フィールドマクロブロックを使って符号化することを決定して処理対象の領域を符号化する。
このようにして、図13に示す本発明の映像符号化装置1では、動き探索までの符号化を行うことで、フレームマクロブロックモードで符号化するのか、フィールドマクロブロックモードで符号化するのかを決定するのである。
1 映像符号化装置
10 フレームメモリ
11 フレームマクロブロック生成手段
12 フレームマクロブロック映像データ格納手段
13 第1の算出手段
14 第1の補正値算出手段
15 第1の加算手段
16 フィールドマクロブロック生成手段
17 フィールドマクロブロック映像データ格納手段
18 第2の算出手段
19 第2の補正値算出手段
20 第2の加算手段
21 符号化モード決定手段
22 第1の符号化手段
23 第2の符号化手段

Claims (4)

  1. 2つのフィールドで1つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮する映像符号化装置において、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成して、そのフレームマクロブロックを使って動き探索を行うことで符号化コストを算出する第1の算出手段と、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成して、そのフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出する第2の算出手段と、
    上記2つの符号化コストの差分絶対値を算出する第3の算出手段と、
    上記差分絶対値が所定の閾値よりも小さい場合には、上記処理対象の領域に隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データを上記フレームマクロブロックを使って符号化するのか、上記フィールドマクロブロックを使って符号化するのかを決定し、閾値よりも大きい場合には、上記2つの符号化コストに基づいて、その決定を行う決定手段とを備えることを、
    特徴とする映像符号化装置。
  2. 2つのフィールドで1つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮する映像符号化方法において、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成して、そのフレームマクロブロックを使って動き探索を行うことで符号化コストを算出する第1の算出過程と、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成して、そのフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出する第2の算出過程と、
    上記2つの符号化コストの差分絶対値を算出する第3の算出過程と、
    上記差分絶対値が所定の閾値よりも小さい場合には、上記処理対象の領域に隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データを上記フレームマクロブロックを使って符号化するのか、上記フィールドマクロブロックを使って符号化するのかを決定し、閾値よりも大きい場合には、上記2つの符号化コストに基づいて、その決定を行う決定過程とを備えることを、
    特徴とする映像符号化方法。
  3. 2つのフィールドで1つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮する映像符号化方法の実現に用いられる映像符号化プログラムであって、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成して、そのフレームマクロブロックを使って動き探索を行うことで符号化コストを算出する第1の算出処理と、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成して、そのフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出する第2の算出処理と、
    上記2つの符号化コストの差分絶対値を算出する第3の算出処理と、
    上記差分絶対値が所定の閾値よりも小さい場合には、上記処理対象の領域に隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データを上記フレームマクロブロックを使って符号化するのか、上記フィールドマクロブロックを使って符号化するのかを決定し、閾値よりも大きい場合には、上記2つの符号化コストに基づいて、その決定を行う決定処理とをコンピュータに実行させるための映像符号化プログラム。
  4. 2つのフィールドで1つのフレームが構成される映像データを規定の大きさのマクロブロックに分割して圧縮する映像符号化方法の実現に用いられる映像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で垂直N画素の領域と水平M画素で垂直N画素の領域とに分割することでフレームマクロブロックを生成して、そのフレームマクロブロックを使って動き探索を行うことで符号化コストを算出する第1の算出処理と、
    水平M画素で垂直2N画素の大きさを持つ映像データの処理対象の領域を、水平M画素で奇数フィールドの垂直N画素の領域と水平M画素で偶数フィールドの垂直N画素の領域とに分割することでフィールドマクロブロックを生成して、そのフィールドマクロブロックを使って動き探索を行うことで符号化コストを算出する第2の算出処理と、
    上記2つの符号化コストの差分絶対値を算出する第3の算出処理と、
    上記差分絶対値が所定の閾値よりも小さい場合には、上記処理対象の領域に隣接する符号化済みのマクロブロックの符号化モードに基づいて、処理対象の領域の映像データを上記フレームマクロブロックを使って符号化するのか、上記フィールドマクロブロックを使って符号化するのかを決定し、閾値よりも大きい場合には、上記2つの符号化コストに基づいて、その決定を行う決定処理とをコンピュータに実行させるための映像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2009205532A 2009-09-07 2009-09-07 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体 Active JP4643736B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009205532A JP4643736B2 (ja) 2009-09-07 2009-09-07 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009205532A JP4643736B2 (ja) 2009-09-07 2009-09-07 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005202380A Division JP2007027805A (ja) 2005-07-12 2005-07-12 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読取可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2009290901A JP2009290901A (ja) 2009-12-10
JP4643736B2 true JP4643736B2 (ja) 2011-03-02

Family

ID=41459543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009205532A Active JP4643736B2 (ja) 2009-09-07 2009-09-07 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (1)

Country Link
JP (1) JP4643736B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276482A (ja) * 1993-03-19 1994-09-30 Sony Corp 画像信号符号化方法、装置、復号化方法及び装置
JPH10229564A (ja) * 1996-12-12 1998-08-25 Matsushita Electric Ind Co Ltd 画像符号化装置、画像復号化装置および画像符号化方法、画像復号化方法
JP2003051965A (ja) * 2001-05-28 2003-02-21 Matsushita Electric Ind Co Ltd 画像動き検出回路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06276482A (ja) * 1993-03-19 1994-09-30 Sony Corp 画像信号符号化方法、装置、復号化方法及び装置
JPH10229564A (ja) * 1996-12-12 1998-08-25 Matsushita Electric Ind Co Ltd 画像符号化装置、画像復号化装置および画像符号化方法、画像復号化方法
JP2003051965A (ja) * 2001-05-28 2003-02-21 Matsushita Electric Ind Co Ltd 画像動き検出回路

Also Published As

Publication number Publication date
JP2009290901A (ja) 2009-12-10

Similar Documents

Publication Publication Date Title
US20240048704A1 (en) Video coding method and apparatus
US8842922B2 (en) Method and apparatus for encoding and decoding coding unit of picture boundary
JP5054826B2 (ja) 時空間的複雑度を用いた符号化モード決定方法及び装置
JP5215951B2 (ja) 符号化装置及びその制御方法、コンピュータプログラム
JP5133290B2 (ja) 動画像符号化装置および復号装置
JP6114782B2 (ja) 画像の圧縮
CN102595130B (zh) 图像编码装置和图像解码装置
CN111031319A (zh) 一种局部光照补偿预测方法、终端设备及计算机存储介质
JP5222870B2 (ja) イントラ予測装置、符号化器、復号器及びプログラム
WO2009125475A1 (ja) 映像符号化方法、映像符号化装置、映像符号化プログラムおよびその記録媒体
JPWO2006100946A1 (ja) 画像信号再符号化装置及び画像信号再符号化方法
JP5111128B2 (ja) 符号化装置、符号化装置の制御方法及びコンピュータプログラム
JP4643736B2 (ja) 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
CN112534814A (zh) 视频编码中的系数上下文建模
JP4373423B2 (ja) 映像符号化方法,映像符号化装置,映像符号化プログラムおよびその記録媒体
JP5295089B2 (ja) 画像符号化装置
JP2007027805A (ja) 映像符号化装置、映像符号化方法、映像符号化プログラム及びそのプログラムを記録したコンピュータ読取可能な記録媒体
JP5174062B2 (ja) イントラ予測装置、符号化器、復号器、及びプログラム
JP2019102861A (ja) 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
JP2003224851A (ja) ビットレート低減装置及びその方法と、画像符号化装置及びその方法と、画像復号装置及びその方法と、画像符号化プログラム及びそのプログラムを記録した記録媒体と、画像復号プログラム及びそのプログラムを記録した記録媒体
JP2004200991A (ja) 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラム,画像符号化プログラムを記録した記録媒体および画像復号プログラムを記録した記録媒体
JP2011130192A (ja) エンコーダおよび画像変換装置
JP5222878B2 (ja) イントラ予測装置、符号化器、復号器及びプログラム
JP6239838B2 (ja) 動画像符号化装置、その制御方法、及び撮像装置
JP2015015595A (ja) 動画像符号化装置、符号化モード判定方法及び符号化プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090907

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100618

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101130

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101202

R150 Certificate of patent or registration of utility model

Ref document number: 4643736

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350