JP7243732B2 - 動画像符号化方法及び動画像符号化装置 - Google Patents

動画像符号化方法及び動画像符号化装置 Download PDF

Info

Publication number
JP7243732B2
JP7243732B2 JP2020546655A JP2020546655A JP7243732B2 JP 7243732 B2 JP7243732 B2 JP 7243732B2 JP 2020546655 A JP2020546655 A JP 2020546655A JP 2020546655 A JP2020546655 A JP 2020546655A JP 7243732 B2 JP7243732 B2 JP 7243732B2
Authority
JP
Japan
Prior art keywords
mode
candidate
group
encoding
selection unit
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
JP2020546655A
Other languages
English (en)
Other versions
JPWO2020054060A1 (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.)
Socionext Inc
Original Assignee
Socionext Inc
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 Socionext Inc filed Critical Socionext Inc
Publication of JPWO2020054060A1 publication Critical patent/JPWO2020054060A1/ja
Application granted granted Critical
Publication of JP7243732B2 publication Critical patent/JP7243732B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Description

本発明は、動画像符号化方法及び動画像符号化装置に関し、特に、動画像の符号化におけるモードの決定方法に関する。
ビデオコーデックに関して、MPEG-2、H.264、H.265、VP9、AV1等の複数の規格(以下、ビデオコーデックの規格を単に「コーデック」ともいう)が存在する。将来には、さらに新しい規格が策定される可能性もある。
このような状況において、従来、共通の処理系で、複数の規格に対応した動画像の符号化を行うことができる動画像符号化装置が提案されている(例えば、特許文献1参照)。
特許文献1の動画像符号化装置では、複数の規格に対応した複数のハードウェア(つまり、専用の電子回路)を組み込んでおき、対応すべき規格に従って、複数のハードウェアから対応するものを選択的に動作させている。
特許第6223323号公報
しかしながら、特許文献1では、動画像符号化装置が対応していない規格に対応する必要が生じた場合、例えば、後に策定された規格に対応しなければならなくなった場合には、新たにハードウェアを作り直す必要があり、膨大な費用と時間を要するという問題がある。
そこで、本発明は、対応していない規格に対応する必要が生じた場合であっても、新たな規格に対応した動画像符号化装置を作り直すのに要する費用及び時間を、従来よりも削減することができる動画像符号化方法及び動画像符号化装置を提供することを目的とする。
上記目的を達成するために、本発明の一形態に係る動画像符号化方法は、動画像の符号化のための所定の第一のモード群から、少なくとも一つのモードを第一の候補モードとして選択する第一のモード選択ステップと、選択された前記第一の候補モードに基づいて、所定の第二のモード群から、一つのモードを符号化モードとして選択する第二のモード選択ステップと、選択された前記符号化モードで前記動画像を符号化する符号化ステップとを含み、前記第一のモード群は、第一の規格で定義されるモード群であり、前記第二のモード群は、前記第一の規格とは異なる第二の規格で定義されるモード群であり、前記第一のモード選択ステップ及び前記第二のモード選択ステップでは、前記動画像を構成する同一の画像を対象として、それぞれ、前記第一の候補モード及び前記符号化モードが選択される
上記目的を達成するために、本発明の一形態に係る動画像符号化装置は、動画像の符号化のための所定の第一のモード群から、少なくとも一つのモードを第一の候補モードとして選択する第一のモード選択部と、選択された前記第一の候補モードに基づいて、所定の第二のモード群から、一つのモードを符号化モードとして選択する第二のモード選択部と、選択された前記符号化モードで前記動画像を符号化する符号化部とを備え、前記第一のモード群は、第一の規格で定義されるモード群であり、前記第二のモード群は、前記第一の規格とは異なる第二の規格で定義されるモード群であり、前記第一のモード選択部及び前記第二のモード選択部は、前記動画像を構成する同一の画像を対象として、それぞれ、前記第一の候補モード及び前記符号化モードを選択する
本発明により、対応していない規格に対応する必要が生じた場合であっても、新たな規格に対応した動画像符号化装置を作り直すのに要する費用及び時間を、従来よりも削減することができる動画像符号化方法及び動画像符号化装置が実現される。
図1は、実施の形態に係る動画像符号化装置の構成を示すブロック図である。 図2は、実施の形態に係る動画像符号化装置の動作を示すフローチャートである。 図3Aは、動画像の符号化における面内予測のモードを説明する図である。 図3Bは、H.264における面内予測のモードの種類を示す図である。 図3Cは、H.265における面内予測のモードの種類を示す図である。 図3Dは、VP9における面内予測のモードの種類を示す図である。 図3Eは、AV1における面内予測のモードの種類を示す図である。 図3Fは、第一のモード選択部が選択する面内予測のモードとそれに最も方向が近いAV1の面内予測のモードとの対応を示す図である。 図3Gは、実施の形態に係る動画像符号化装置の第一のモード選択部が有する第一のモード群の他の例(6例)を示す図である。 図4は、実施例1に係る動画像符号化装置よる面内予測のモードの決定において選択されるモードの変遷を示す図である。 図5Aは、H.264及びH.265における参照画像を説明する図である。 図5Bは、VP9における参照画像を説明する図である。 図5Cは、AV1における参照画像を説明する図である。 図6Aは、動きベクトルの精度の一例(1/4精度)を説明する図である。 図6Bは、動きベクトルの精度の一例(1/8精度)を説明する図である。 図6Cは、実施例2に係る動画像符号化装置の候補選択部が選択する第二の候補モードの例を示す図である。 図7Aは、H.265における2個の候補となる動きベクトルを示す図である。 図7Bは、H.265における動きベクトルの探索におけるコスト計算の方法を説明する図である。 図8Aは、AV1における3個の候補となる動きベクトルを示す図である。 図8Bは、AV1における動きベクトルの探索におけるコスト計算の方法を説明する図である。 図9Aは、H.265における符号化ブロックのサイズを説明する図である。 図9Bは、VP9における符号化ブロックのサイズを説明する図である。 図9Cは、AV1における符号化ブロックのサイズを説明する図である。 図10は、実施例3に係る動画像符号化装置の候補選択部が選択する第二の候補モードの例を説明する図である。
以下、本発明の実施の形態及び実施例について、図面を用いて詳細に説明する。なお、以下で説明する実施の形態及び実施例は、いずれも本発明の一具体例を示す。以下の実施の形態及び実施例で示される数値、形状、材料、規格、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序等は、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態及び実施例における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、各図は、必ずしも厳密に図示したものではない。各図において、実質的に同一の構成については同一の符号を付し、重複する説明は省略又は簡略化する場合がある。
(実施の形態)
図1は、実施の形態に係る動画像符号化装置10の構成を示すブロック図である。動画像符号化装置10は、新たな規格に対応した動画像符号化装置を作り直すのに要する費用及び時間を、従来よりも削減することができるアーキテクチャを有する動画像のエンコーダであり、機能的なブロックとして、第一のモード選択部11、第二のモード選択部12及び符号化部15を備える。
第一のモード選択部11は、動画像の符号化のための所定の第一のモード群11aから、少なくとも一つのモードを第一の候補モード11bとして選択する処理部であり、プロセッサを含まない第一の電子回路18(例えば、ゲートアレイ等の1チップの半導体集積回路)によって実現される。ここで、モードとは、動画像の符号化での各種処理における具体的な処理方法であり、面内(イントラ)予測のモード(つまり、面内予測における予測画像の処理方法)、動き予測についてのモード(つまり、参照画像と参照方向)、符号化ブロックのサイズについてのモード(つまり、符号化ブロックのサイズ)等がある。第一のモード群11aは、第一の規格(例えば、H.265)で定義されたモード(例えば、面内予測のモード)の集まりである。
より詳しくは、第一のモード選択部11は、対象画像データに対して、第一のモード群11aを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、第一の候補モード11bを選択する。
第二のモード選択部12は、第一のモード選択部11で選択された第一の候補モード11bに基づいて、所定の第二のモード群13aから、一つのモードを符号化モード14aとして選択する処理部であり、符号化部15とともに、プロセッサを含む第二の電子回路19(例えば、CPU、プログラムが格納されたROM、RAM、I/O(入出力回路)等を含む1チップの半導体集積回路)によって実現される。第二のモード群13aは、第一のモード群11aに対応する第一の規格とは異なる第二の規格(例えば、AV1)で定義されるモード群(例えば、面内予測のモード)である。したがって、第一のモード群11aは、第二のモード群13aに属さないモードを含む。第一のモード群11aと第二のモード群13aとを比較した場合に、典型的には、第一のモード群11aを構成するモードの数は、第二のモード群13aを構成するモードの数よりも小さい。これは、第一のモード選択部11で大まかなモード選択をし、第二のモード選択部12で、第一のモード選択部11でのモード選択に依存してさらに詳細なモード選択をする二段階処理によって、第二のモード群13aの全てのモードについてコスト計算することを避け、全体として処理負荷を軽減するためである。なお、本実施の形態では、第二の電子回路19は、第一の電子回路18とは異なる半導体基板上に実装されている。
より詳しくは、第二のモード選択部12は、候補選択部13及び最終選択部14を有する。候補選択部13は、第一のモード選択部11で選択された第一の候補モード11bに基づいて、第二のモード群13aから、少なくとも一つ(典型的には、複数)のモードを第二の候補モード13bとして選択する。具体的には、候補選択部13は、第二のモード群13aから、少なくとも第一のモード選択部11で選択された第一の候補モード11bに近いモードを選択することにより、第二の候補モード13bを選択する。
また、最終選択部14は、候補選択部13で選択された第二の候補モード13bから、一つの最終的な符号化モード14aを選択する。具体的には、最終選択部14は、候補選択部13で選択された第二の候補モード13bを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、符号化モード14aを選択する。
符号化部15は、第二のモード選択部12で選択された符号化モード14aで動画像を符号化する処理部であり、第二のモード選択部12とともに、プロセッサを含む第二の電子回路19によって実現される。より詳しくは、符号化部15は、対象画像データに対して、直交変換及び量子化をした後に、エントロピー符号化をし、ビットストリームとして、出力する。さらに、符号化部15は、直交変換及び量子化後の画像データに対して、逆量子化及び逆直交変換をした後に、デブロッキング等のループフィルタの処理を施して得られる参照画像を内部のフレームメモリに格納する。フレームメモリに格納した参照画像に対しては、動き補償の処理を施すことで得られた予測画像を、対象画像データから、直交変換及び量子化に先立って差し引くために用いたり、逆量子化及び逆直交変換を終えた画像データに対して、ループフィルタの処理に先立って加算するために用いたりする。
次に、以上のように構成された本実施の形態に係る動画像符号化装置10の動作について説明する。
図2は、実施の形態に係る動画像符号化装置10の動作(つまり、動画像符号化方法)を示すフローチャートである。
まず、第一のモード選択部11は、動画像の符号化のための所定の第一のモード群11aから、少なくとも一つのモードを第一の候補モード11bとして選択する(第一のモード選択ステップS10)。より詳しくは、第一のモード選択部11は、対象画像データに対して、第一のモード群11aを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、第一の候補モード11bを選択する。
次に、第二のモード選択部12は、第一のモード選択部11で選択された第一の候補モード11bに基づいて、所定の第二のモード群13aから、一つのモードを符号化モード14aとして選択する(第二のモード選択ステップS11)。
第二のモード選択ステップS11では、より詳しくは、候補選択部13は、第一のモード選択部11で選択された第一の候補モード11bに基づいて、第二のモード群13aから、少なくとも一つ(典型的には、複数)のモードを第二の候補モード13bとして選択する(候補選択ステップS11a)。具体的には、候補選択部13は、第二のモード群13aから、少なくとも第一のモード選択ステップS10で選択された第一の候補モード11bに近いモードを選択することにより、第二の候補モード13bを選択する。続いて、最終選択部14は、候補選択部13で選択された第二の候補モード13bから、一つの最終的な符号化モード14aを選択する(最終選択ステップS11b)。具体的には、最終選択部14は、候補選択部13で選択された第二の候補モード13bを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、符号化モード14aを選択する。
最後に、符号化部15は、第二のモード選択部12で選択された符号化モード14aで動画像を符号化する(符号化ステップS12)。より詳しくは、符号化部15は、対象画像データに対して、直交変換及び量子化をした後に、エントロピー符号化をし、ビットストリームとして、出力する。
以上のように、本実施の形態に係る動画像符号化装置10は、動画像の符号化のための所定の第一のモード群11aから、少なくとも一つのモードを第一の候補モード11bとして選択する第一のモード選択部11と、選択された第一の候補モード11bに基づいて、所定の第二のモード群13aから、一つのモードを符号化モード14aとして選択する第二のモード選択部12と、選択された符号化モード14aで動画像を符号化する符号化部15とを備える。
また、本実施の形態に係る動画像符号化方法は、動画像の符号化のための所定の第一のモード群11aから、少なくとも一つのモードを第一の候補モード11bとして選択する第一のモード選択ステップS10と、選択された第一の候補モード11bに基づいて、所定の第二のモード群13aから、一つのモードを符号化モード14aとして選択する第二のモード選択ステップS11と、選択された符号化モード14aで動画像を符号化する符号化ステップS12とを含む。
これにより、符号化におけるモード決定のプロセスが二段階に分離されるので、例えば、第一のモード群11aとして、対象の規格に依存しない代表的なモードの集まりとし、第二のモード群13aとして、対象の規格に対応したものとしておくことで、新たな規格に対応する必要が生じた場合に、第二のモード群13aの選択に関する箇所(ハードウェア又はソフトウェア)だけを作り直すことで対応できる。よって、モード決定に関する全工程について作り直す必要がある従来に比べ、新たな規格に対応した動画像符号化装置10を作り直すのに要する費用及び時間を、従来よりも削減することができる。
ここで、第一のモード選択部11は、プロセッサを含まない第一の電子回路18であり、第二のモード選択部12は、プロセッサを含む第二の電子回路19である。つまり、第一のモード選択ステップS10は、プロセッサを含まない第一の電子回路18によって実行され、第二のモード選択ステップS11は、プロセッサを含む第二の電子回路19によって実行される。
これにより、第一のモード群11aとして、対象の規格に依存しない代表的なモードの集まりとし、第二のモード群13aとして、対象の規格に対応したものとしておくことで、新たな規格に対応する必要が生じた場合に、第二のモード群13aの選択に関する箇所(つまり、ソフトウェア)だけを作り直すことで対応できる。よって、ハードウェアを作り直す必要がある従来に比べ、新たな規格に対応した動画像符号化装置10を作り直すのに要する費用及び時間を、従来よりも削減することができる。
また、第一の電子回路18及び第二の電子回路19は、異なる半導体基板上に実装されている。これにより、第一のモード群11aの選択に関するハードウェアと、第二のモード群13aの選択に関するソフトウェアとが異なる半導体チップに実装されるので、ソフトウェアを改訂する場合には、一部の半導体チップに対する改変だけで済む。
また、第二のモード選択ステップS11は、第一のモード選択ステップS10で選択された第一の候補モード11bに基づいて、第二のモード群13aから、少なくとも一つのモードを第二の候補モード13bとして選択する候補選択ステップS11aと、候補選択ステップS11aで選択された第二の候補モード13bから、符号化モード14aを選択する最終選択ステップS11bとを含む。
これにより、第二の候補モード13bの中から符号化モード14aが選択されるので、第二のモード群13aを構成する全てのモードについて評価することなく最終の符号化モード14aを決定できるので、モード決定が高速化される。
また、第一のモード選択ステップS10では、第一のモード群11aを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、第一の候補モード11bを選択し、候補選択ステップS11aでは、第二のモード群13aから、少なくとも第一のモード選択ステップS10で選択された第一の候補モード11bに近いモードを選択することにより、第二の候補モード13bを選択し、最終選択ステップS11bでは、候補選択ステップS11aで選択された第二の候補モード13bを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、符号化モード14aを選択する。
これにより、第二のモード群13aが対象の規格に対応したものであっても、第二のモード群13aを構成する全てのモードについてコスト計算をすることが回避されるので、モード決定が高速化される。
また、第一のモード群11aは、第一の規格で定義されるモード群であり、第二のモード群13aは、第一の規格とは異なる第二の規格で定義されるモード群である。これにより、第二の規格を動画像符号化装置10の対象の規格とすることで、第二のモード群13aの選択に関する箇所(ハードウェア又はソフトウェア)だけを作り直すことで、新たな規格に対応できる。
また、第一のモード群11aを構成するモードの数は、第二のモード群13aを構成するモードの数よりも小さい。これにより、モード決定において、例えば、第一段階で概括的なモード選択をし、その結果を用いて第二段階で詳細なモード選択をすることが可能となり、第二のモード群13aを構成する全てのモードを評価したうえで符号化モード14aを選択する場合に比べ、処理負荷が軽減される。
また、第一のモード群11aは、第二のモード群13aに属さないモードを含む。これにより、モード決定において、例えば、第一段階で概括的なモード選択をし、その結果を用いて第二段階で詳細なモード選択をすることが可能となり、第二のモード群13aを構成する全てのモードを評価したうえで符号化モード14aを選択する場合に比べ、処理負荷が軽減される。
なお、上記実施の形態では、第一のモード選択ステップS10を実行する第一の電子回路18は、ハードウェア(つまり、プロセッサを含まない専用の電子回路)で実現され、第二のモード選択ステップS11を実行する第二の電子回路19は、ソフトウェア(つまり、プロセッサを含む汎用の電子回路)によって実現されたが、このような構成に限定されない。第一のモード選択ステップS10及び第二のモード選択ステップS11のいずれも、ハードウェアで実現されてもよいし、ソフトウェアで実現されてもよい。いずれの形態であっても、大まかなモード選択と、その選択結果に依存した詳細なモード選択という二段階処理が行われ、第二のモード群13aの全てのモードについてコスト計算することが回避され、全体としても処理負荷が軽減されるというメリット、及び、第一のモード群11aとして、対象の規格に依存しない代表的なモードの集まりとし、第二のモード群13aとして、対象の規格に対応したものとしておくことで、新たな規格に対応する必要が生じた場合に、第二のモード群13aの選択に関する箇所(ハードウェア又はソフトウェア)だけを作り直すことで対応できるというメリットを享受できる。
また、上記実施の形態では、第一の電子回路18及び第二の電子回路19は、異なる半導体基板上に実装されたが、このような実装形態に限定されない。第一の電子回路18及び第二の電子回路19は、同一の半導体基板上に実装されてもよい。その場合であっても、第一のモード群11aとして、対象の規格に依存しない代表的なモードの集まりとし、第二のモード群13aとして、対象の規格に対応したものとしておくことで、新たな規格に対応する必要が生じた場合に、第二のモード群13aの選択に関する箇所(ソフトウェア)だけを作り直すことで対応できる。
また、上記実施の形態では、第二のモード選択部12と符号化部15とは、共通の電子回路(つまり、第二の電子回路19)によって実現されたが、これに限定されない。第二のモード選択部12と符号化部15とは、独立した電子回路で実現されてもよい。その場合には、新たな規格に対応する必要が生じた場合であっても、符号化部15の処理に変更が生じない場合には、第二のモード選択部12が実装された電子回路だけを作り直すことで対応できる。
また、上記実施の形態では、第一のモード群11aは、第一の規格で定義されるモード群であったが、これに限定されない。第一のモード群11aは、例えば、規格に対応したモード群ではなく、第二の規格に対応する第二のモード群13aの一部(つまり、サブセット)であってもよい。その場合であっても、大まかなモード選択と、その選択結果に依存した詳細なモード選択という二段階処理が行われ、第二のモード群13aの全てのモードについてコスト計算することが回避され、全体としても処理負荷が軽減されるというメリット、及び、第二のモード群13aとして、対象の規格に対応したものとしておくことで、新たな規格に対応する必要が生じた場合に、第二のモード群13aの選択に関する箇所(ハードウェア又はソフトウェア)だけを作り直すことで対応できるというメリットを享受できる。
(実施例1)
次に、上記実施の形態の実施例1として、上記実施の形態に係る動画像符号化装置10及び動画像符号化方法を、面内予測のモードの決定に適用した事例を説明する。
面内予測とは面内予測処理のことであり、符号化ブロックに隣接する画素から予測画像を生成して差分符号化することで面内符号化ブロックの符号化効率を大きく改善する技術である。
図3Aは、動画像の符号化における面内予測のモード(以下、「予測方向」ともいう)を説明する図である。本図に示されるように、面内予測のモードは、いろいろあり、45°、90°といった方向にある隣接画素をもとに予測画像を生成するような方向を持つ面内予測のモードと、隣接する画素の平均値を予測画像とするような方向を持たない面内予測のモードとがある。
面内予測のモードの種類(つまり、モード群)はコーデック(つまり、規格)によって異なる。図3Bは、H.264における面内予測のモードの種類を示す図である。本図に示されるように、H.264では、方向を持つ面内予測のモードが8モード、方向を持たない面内予測のモードが1モードある。図3Cは、H.265における面内予測のモードの種類を示す図である。図3Cの(a)は、H.265における面内予測のモード番号0~34の予測方向等を示し、図3Cの(b)は、H.265における面内予測の各モードの予測方向についての角度の定義を示し、図3Cの(c)は、H.265における面内予測の各モード番号と角度の定義との対応を示す。図3Cに示されるように、H.265では、方向を持つ面内予測のモードが33モード(モード番号2~34)、方向を持たない面内予測のモードが2モード(モード番号0(Planar)、モード番号1(DC))ある。図3Dは、VP9における面内予測のモードの種類を示す図である。本図に示されるように、VP9では、方向を持つ面内予測のモードが8モード、方向を持たない面内予測のモードが2モードある。図3Eは、AV1における面内予測のモードの種類を示す図である。本図に示されるように、AV1は方向を持つ面内予測のモードが最大56モード、方向を持たない面内予測のモードが5モードある。いずれのコーデックも方向数や角度が違っており、同じ角度のモードがあったとしても予測画像を生成するときのフィルタ計算がコーデックによって異なるため、生成される予測画像はコーデックごとに異なる。ところが、方向に従って隣接画素から予測画像を生成するという基本的な考え方は共通している。
本実施例では、この共通性に着目して面内予測のモードの決定を第一のモード選択部11と第二のモード選択部12の二段階(厳密には、第一のモード選択部11、候補選択部13及び最終選択部14の三段階)にわけて処理をする。
なお、第一のモード群11aの処理は、方向に従って隣接画素から予測画像を生成するための予測方法を探索する任意の処理でよいが、理解しやすくするため、世の中に存在する処理内容を例に挙げて説明する。ここでは、H.265で定義される方向をもつ面内予測のモードの33モードを第一のモード群11aとし、AV1で定義される方向をもつ面内予測のモードの56モードを第二のモード群13aとする。つまり、第一のモード選択部11は、H.265で定義される面内予測のモードを選択する機能を有し、第二のモード選択部12は、AV1で定義される面内予測のモードを選択する機能を有しているものとする。
図4は、実施例1に係る動画像符号化装置10よる面内予測のモードの決定において選択されるモードの変遷を示す図である。図4の(a)は、第一のモード群11a、及び、第一のモード群11aから第一のモード選択部11によって選択される第一の候補モード11bの例を示し、図4の(b)は、選択された第一の候補モード11b及び第二のモード群13aの例を示し、図4の(c)は、第二のモード群13aから候補選択部13によって選択される第二の候補モード13bの例を示し、図4の(d)は、第二の候補モード13bから最終選択部14によって選択される符号化モード14aの例を示す。以下、本実施例に係る動画像符号化装置10の動作の詳細について、処理部ごとに、説明する。
・第一のモード選択部11の動作
図3Cに示すとおり、H.265では33種の方向をもつ面内予測のモード(モード番号2~34)と、DC(モード番号1)及びPlanar(モード番号0)といった方向を持たない面内予測のモードとがある。第一のモード選択部11は、これらうち33方向の面内予測のモードを第一のモード群11aとし、その第一のモード群11aから一つの面内予測のモードを第一の候補モード11bとして選ぶ。
本実施例においては、第一のモード選択部11は、モードの選択を、各面内予測のモードにおけるR-D最適化のための一般的なコスト関数(つまり、Cost=Distortion+λ*Rate)を用いて行う。ここで、Distortionは、符号化歪を指し、符号化ブロックにおける原画像と予測画像の差分値の絶対値和(SAD)を用いる。Rateは、定数であり、面内予測のモードにかかわるモードに必要な符号化ビット量が設定される。λは、ラグランジュ乗数と呼ばれ、符号化歪とビット量の最適化のためのパラメータである。第一のモード選択部11は、33方向の各面内予測のモードにおいて、実際に隣接画素を用いてH.265の処理内容に従って予測処理を行ったときの符号化ブロックのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモードを第一の候補モード11bとして選択する。
・候補選択部13の動作
図3Eに示すとおり、AV1の予測方向は56種の方向を持つ面内予測のモードと(モード番号1~8及び追加角度設定)、DC/SMOOTHといった方向を持たない面内予測のモード(モード番号0、9~12)とがある。方向を持つ面内予測のモードの方向数は、H.265より多く、その角度も予測画像を生成するときのフィルタ計算式も異なる。したがって、第一のモード選択部11が選択したモード(つまり、第一の候補モード11b)は最適なモードではない可能性がある。そのため、候補選択部13は、第二のモード群13aのうち、第一のモード選択部11が選択したモードと最も方向が近いモードとその周辺モードを第二の候補モード13bとして選択する。図3Fは、第一のモード選択部11が選択する面内予測のモード(つまり、H.265の面内予測のモード番号)と、それに最も方向が近いAV1の面内予測のモード番号との対応を示す図である。ここで、周辺モードとは、H.265の面内予測のモードと最も方向が近いAV1の面内予測のモードに近いものから±3方向の面内予測のモードである。よって、本実施例では、候補選択部13は、第一のモード選択部11が選択したH.265の面内予測のモード(つまり、第一の候補モード11b)と最も方向が近いAV1の面内予測のモード、及び、そのAV1の面内予測のモードに近いものから±3方向の面内予測のモードを含めた7個の面内予測のモードを、第二の候補モード13bとして選択して出力する。
例えば、図3EにおけるNo.14(モード番号6のD157、追加角度+9)が第一のモード選択部11が選択した第一の候補モード11bであった場合は、候補選択部13は、No.11~17の面内予測のモードを第二の候補モード13bとして選ぶ。本実施例では、候補選択部13は、これらのNo.11~17の面内予測のモードに、DC/SMOOTHなどの方向を持たない面内予測のモード(モード番号0、9~12)を加えたものを、第二の候補モード13bとして選択して出力する。
・最終選択部14の動作
本実施例においては、最終選択部14は、第一のモード選択部11と同様に、符号化モード14aの選択を、各面内予測のモードにおけるR-D最適化のための一般的なコスト関数(Cost=Distortion+λ*Rate)を用いて行う。具体的には、最終選択部14は、第二の候補モード13bである、方向を持つ面内予測のモード(つまり、7モード)と方向を持たない面内予測のモード(つまり、6モード)とを合わせた13モードについて、実際に隣接画素を用いてAV1の処理内容に従って予測処理を行ったときのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモードを符号化モード14aとして選択する。
・符号化部15の動作
符号化部15は、最終選択部14で選択された符号化モード14aにしたがって対象の画像データを符号化する。
以上のように、本実施例に係る動画像符号化装置10及び動画像符号化方法によれば、実装においてハードウェア実装を考えた場合、第一のモード選択部11は対応するコーデックに依存せずに任意の処理方法で処理できるので、複数のコーデックへの対応が可能である。
また、最終選択部14において、従来であれば方向を持つ面内予測のモード(つまり、56モード)と方向を持たない面内予測のモード(つまり、6モード)とを合わせた62モードの評価が必要であったところが、本実施例では13モードになるため、大幅に処理を減らすことができる。また、第一のモード選択部11を、性能が必要な実装形態(つまり、ハードウェア又はソフトウェア)とし、第二のモード選択部12(つまり、候補選択部13及び最終選択部14)を、柔軟な実装形態(つまり、ソフトウェア)とするような実装形態において、性能向上をすることができる。
なお、第一のモード選択部11、候補選択部13、最終選択部14及び符号化部15すべてをハードウェアで実装する場合には、もっとも処理量が多く必要な第一のモード選択部11が複数コーデック対応したハードウェア設計としなくてよくなるため、コスト削減することができる。
なお、本実施例において、第一のモード選択部11は、H.265に対応したものでなくてもよい。
また、第二のモード選択部12は、AV1に対応したものでなくてもよい。つまり、動画像符号化装置10は、AV1エンコーダに限定されない。
また、第一のモード選択部11は、コスト関数を用いなくてもよい。例えば、SAD(差分絶対値和)、SATD(差分変換係数絶対値和)などの予測画像と原画像との差分、SSE(二乗誤差累積)などの原画像と再構築画像との差分のみを指標にモードを選択してもよい。
また、第一のモード選択部11は、画像のエッジ検出(Sobelフィルタなど)など面内予測処理をしない方法によって第一の候補モード11bを選択してもよい。さらに、第一のモード選択部11は、機械学習させたモード判定部であってもよい。
また、第一のモード群11aは、2以上の方向であればよい。図3Gは、実施の形態に係る動画像符号化装置10の第一のモード選択部11が有する第一のモード群11aの他の例(6例)を示す図である。本図に示されるように、第一のモード群11aは、180°を分割して得られる2、5、9、17、33、65方向などのモードであってもよい。
また、第一のモード選択部11が選択する第一の候補モード11bは、方向を持つモードだけでなくてもよく、本実施例のように、H.265では、DC/Planarを含めてもよい。そのときに、DC/Planarの面内予測のモードと方向をもつ面内予測のモードとのコスト差が大きい場合には、候補選択部13は、選択するモードは方向をもつ面内予測のモードと方向を持たない面内予測のモードのいずれかCostが小さいほうを選択すればよい。これにより、最終選択部14における処理をさらに削減することができる。
また、第一のモード選択部11が出力する第一の候補モード11bは、2個以上でもよく、Costが小さい順に複数のモードを出力してもよい。その場合、候補選択部13は、複数のモードを含むモード群を選択してもよい。例えば、図3EにおけるNo.14(モード番号6のD157、追加角度+9)及びNo.23(モード番号4のD135、追加角度+3)が第一のモード選択部11が選択した第一の候補モード11bであった場合は、候補選択部13は、No.11~17及びNo.20~26までを第二の候補モード13bとして選んでもよい。
また、候補選択部13で選択する第二の候補モード13bは、1個でもよい。複数個あればよりベストを選べる可能性が増えるので符号化効率にとってはよいが、処理量を減らすには1個でもよく、そこはトレードオフであり、市場における要求レベルに合わせて実装することが望ましい。この場合には、最終選択部14は、候補選択部13が選択した1個の第二の候補モード13bを、そのまま、符号化モード14aとして出力する。
また、候補選択部13で選択する候補の範囲である±3方向は、あくまで例であり、これに限定されない。3以外の方向数でもよいし、たとえば±22.5°以内に含まれる方向数といったように、角度を基準に選択する候補の範囲を決めてもよい。
(実施例2)
次に、上記実施の形態の実施例2として、上記実施の形態に係る動画像符号化装置10及び動画像符号化方法を、動き予測についてのモード(ここでは、参照画像の特定方法及び動きベクトルの精度)の決定に適用した事例を説明する。
動き予測とは面間予測処理のことであり、過去又は未来の画像の動きベクトルが指す位置にある画素データをもとに予測画像を生成して対象画像に対して差分符号化をすることで面間(インター)符号化ブロックの符号化効率を大きく改善する技術である。ここで、動き予測についてのモードとは、参照画像番号と動きベクトルの組み合わせを指すものとする。参照画像番号は、過去又は未来の画像の複数の画像のうちどの画像から予測するかを示す識別子である。
図5Aは、H.264及びH.265における参照画像を説明する図である。本図に示されるように、H.264及びH.265では、時間的に前方向(過去)及び後ろ方向(未来)の両方から予測することが可能であり、前後合わせて16面の参照画像が定義されている。また前方向及び後ろ方向いずれも、連続した画像でなくてもよく、任意の画像を参照画像として選ぶことができる。
図5Bは、VP9における参照画像を説明する図である。本図に示されるように、その後に出現した代表的なコーデックであるVP9では、前方向のみの3面の参照画像が定義されている。
図5Cは、AV1における参照画像を説明する図である。本図に示されるように、AV1では、前方向のみの7面の参照画像が定義されている。また前方向に連続した画像でなくてもよく、任意の画像を参照画像として選ぶことができる。
動きベクトルは、参照画像番号が示す画像のどの画素から予測するかを示す座標である。
図6Aは、動きベクトルの精度の一例(1/4精度)を説明する図である。図6Bは、動きベクトルの精度の一例(1/8精度)を説明する図である。図6A及び図6Bに示されるように、動きベクトルは、小数点位置を指し示すことができる。その場合、動きベクトルが指した位置の周辺画素をもとにフィルタ処理を行って画素を生成する。この小数精度は、各コーデックでさまざまであり、H.264では1/4精度、その次の世代のH.265では1/4精度、またその後出現した代表的なコーデックであるVP9では1/8精度、AV1では1/8精度となっている。
いずれのコーデックも小数精度や予測画像を生成するときのフィルタ計算などが異なるため、コーデックごとに生成される予測画像は異なる。ところが、過去又は未来の絵から近い画像を選んで予測画像を生成するという基本的な考え方は共通している。
本実施例では、この共通性に着目して動き予測についてのモードの決定を第一のモード選択部11と第二のモード選択部12の二段階(厳密には、第一のモード選択部11、候補選択部13及び最終選択部14の三段階)にわけて処理をする。
第一のモード群11aの処理は、過去又は未来の絵から予測画像を生成するための予測方法を探索する任意の処理でよいが、理解しやすくするため、世の中に存在する処理内容を例に挙げる。具体的には、本実施例では、第一のモード群11aは、H.265で定義される動き予測についてのモード群であり、第二のモード群13aは、AV1で定義される動き予測についてのモード群である。つまり、第一のモード選択部11は、H.265で定義される動き予測についてのモードを選択する機能を有し、第二のモード選択部12は、AV1で定義される動き予測についてのモードを選択する機能を有している。以下、本実施例に係る動画像符号化装置10の動作の詳細について、処理部ごとに、説明する。
・第一のモード選択部11の動作
図5Aに示されるように、H.265では、動き予測として、時間的に前方向及び後ろ方向の両方から予測することが可能であり、前後合わせて16面の参照画像が定義されている。一方で、図5Cに示されるように、AV1では、前方向のみの7面の参照画像が定義されている。
本実施例においては、前方向のみの参照関係とし、直前の3枚を参照可能とする。また動きベクトルの探索については、整数精度で±128画素の範囲の動きベクトルを探索するものとする。
本実施例においては、第一のモード選択部11は、モードの選択を、R-D最適化のためのコスト関数(Cost=Distortion+λ*Rate)を用いて行う。つまり、第一のモード選択部11は、3つの参照画像及び各動きベクトルにおいて実際に予測処理を行ったときのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモード(参照画像+動きベクトル)を選択する。ここでは、第一のモード選択部11は、2番目にCostがよい異なる参照画像の面内予測のモード(参照画像+動きベクトル)も併せて、第一の候補モード11bとして出力する。
・候補選択部13の動作
AV1の動きベクトルは1/8精度であり、また予測画像を生成するときのフィルタ計算などが異なるため、第一のモード選択部11が選択したモード(つまり、第一の候補モード11b)はベストに近いがベストではない可能性がある。そのため、候補選択部13は、第二のモード群13aのうち、第一のモード選択部11が選択したモードと最も方向が近い動きベクトルとその周辺を第二の候補モード13bとして選択する。
図6Cは、実施例2に係る動画像符号化装置10の候補選択部13が選択する第二の候補モード13bの例を示す図である。候補選択部13は、第一のモード選択部11が選んだ参照画像それぞれの動きベクトル(第一の候補モード11b)に対して、1/8精度で周辺±3点の動きベクトル(49点)を第二の候補モード13bとして選択して出力する。
・最終選択部14の動作
本実施例においては、最終選択部14は、第一のモード選択部11と同様に、符号化モード14aの選択を、R-D最適化のためのコスト関数(Cost=Distortion+λ*Rate)を用いて行う。具体的には、最終選択部14は、第二の候補モード13bについて、実際に予測処理を行ったときのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモードを選択して、最終的に決定した符号化モード14aとして出力する。
・符号化部15の動作
符号化部15は、最終選択部14で選択された符号化モード14aにしたがって対象の画像データを符号化する。
以上のように、本実施例に係る動画像符号化装置10及び動画像符号化方法によれば、実装においてハードウェア実装を考えた場合、第一のモード選択部11は対応するコーデックに依存せずに任意の処理方法で処理できるので、複数のコーデックへの対応が可能である。
また、最終選択部14において、従来であれば参照画像数×動きベクトル探索点数(例えば16面×65536±128)の評価が必要であったところが、本実施例では、2(参照画像数)×49(動きベクトル探索点数)になるため、大幅に処理を減らすことができる。また、第一のモード選択部11を、性能が必要な実装形態(つまり、ハードウェア又はソフトウェア)とし、第二のモード選択部12(つまり、候補選択部13及び最終選択部14)を、柔軟な実装形態(つまり、ソフトウェア)とするような実装形態において、性能向上をすることができる。
なお、第一のモード選択部11、候補選択部13、最終選択部14及び符号化部15すべてをハードウェアで実装する場合には、もっとも処理量が多く必要な第一のモード選択部11が複数コーデック対応したハードウェア設計としなくてよくなるため、コスト削減をすることができる。
なお、第一のモード選択部11は、H.265に対応したものでなくてもよい。
また、第二のモード選択部12は、AV1に対応したものでなくてもよい。つまり、動画像符号化装置10は、AV1エンコーダに限定されない。
すなわち、本実施例では、第一のモード選択部11で1/4精度に対する規格(H.265)用のハードウェアを想定し、第二のモード選択部12で1/8精度に対する規格(AV1)に対する動きベクトルを求めたが、1/8精度用のハードウェアで、最終的に1/4精度の規格に対する動きベクトルを求めるというように、第一のモード選択部11での候補の精度が、第二のモード選択部12で選択されるべき動きベクトルの精度より高くてもよい。また、第一のモード選択部11で、整数精度(すなわち1/1精度)の候補から小数精度(すなわち、1/2精度、1/4精度、1/8精度など)の第一のモード選択部11としての出力を得て、その出力に基づいて、第二のモード選択部12で、整数精度の候補から小数精度の第二のモード選択部12としての出力を得る、ということでもよい。
また、第一のモード選択部11は、コスト関数を用いなくてもよい。例えば、SAD(差分絶対値和)、SATD(差分変換係数絶対値和)などの予測画像と原画像との差分、SSE(二乗誤差累積)などの原画像と再構築画像との差分のみを指標にモードを選択してもよい。また、オプティカルフローなどの動きを推定してもよい。さらに、第一のモード選択部11は、機械学習させたモード判定部であってもよい。
また、第一のモード選択部11が選択する第一の候補モード11bは、参照画像が1枚でもよいし、3枚以上でもよい。
また、第一のモード選択部11が算出するMVは2個以上でもよく、ベスト順に複数モードを出力し、候補選択部13で複数モードを含むモード群を選択してもよい。
また、候補選択部13が選択する動きベクトルは、1個でもよい。候補選択部13が選択する動きベクトルは、複数個あれば、最終選択部14がよりベストを選べる可能性が増えるから符号化効率にとってはよいが、処理量を減らすには1個でもよい。そこはトレードオフであり、市場における要求レベルに合わせて実装することが望ましい。
また、候補選択部13が選択する第二の候補モード13bにおける±3点は、あくまで例であり、これに限定されない。
また、本実施例では、動き予測についてのモードとして、参照画像の特定方法及び動きベクトルの精度の組み合わせをモードとしたが、動きベクトルの探索におけるコスト計算の方法を含めてもよい。
つまり、H.265では、動きベクトルの探索におけるコスト計算では、2個の候補となる動きベクトルを算出する。図7Aは、H.265における2個の候補となる動きベクトルを示す図である。2個の候補のうちの1個である候補Aとして、候補ブロックA0~A1から面間ではないブロックの動きベクトルを選択する。2個の候補のうちの他の1個である候補Bとして、候補ブロックB0~B2から面間ではないブロックの動きベクトルを選択する。図7Bは、H.265における動きベクトルの探索におけるコスト計算の方法を説明する図である。H.265では、2個の候補A及び候補Bとの差分(「候補残差MV」)を考慮したコスト計算を行う。つまり、最も小さい候補残差となる動きベクトルを探索するコスト計算を行う。
一方、AV1では、動きベクトルの探索におけるコスト計算では、3個の候補となる動きベクトルを算出する。図8Aは、AV1における3個の候補となる動きベクトルを示す図である。3個の候補(候補1位~候補3位)として、候補ブロック0~17から優先度の高い上位3つの動きベクトルを選択する。図8Bは、AV1における動きベクトルの探索におけるコスト計算の方法を説明する図である。AV1では、3個の候補1位~候補3位との差分(「候補残差MV」)を考慮したコスト計算を行う。つまり、最も小さい候補残差となる動きベクトルを探索するコスト計算を行う。
このように、規格によって動きベクトルの探索におけるコスト計算の方法が異なるので、動きベクトルの探索におけるコスト計算の方法を、本実施例における動き予測についてのモードの一つとして、上記実施の形態に係る動画像符号化装置10及び動画像符号化方法によるモードの決定に適用してもよい。
(実施例3)
次に、上記実施の形態の実施例3として、上記実施の形態に係る動画像符号化装置10及び動画像符号化方法を、符号化ブロック(以下、単に「ブロック」ともいう)のサイズについてのモードの決定に適用した事例を説明する。
面内予測や動き予測をするブロックサイズは、H.264では、画素数で、16x16で固定である。H.265以降で拡張され、H.265及びVP9では、最大で、64x64、AV1では、128x128である。これらのH.265以降の規格では、最大ブロックの中でさらに細かく分割することが可能である。
図9Aは、H.265における符号化ブロックのサイズを説明する図である。本図に示されるように、H.265では、ブロックは、正方形のみであり、小さいブロックを作ることができる。最小のブロックサイズは、8x8である。面内か面間かの選択では、最小のブロックサイズが8x8であり、さらに最小4x4までブロックサイズを分割して、面内予測のモードや面間予測のモードを個別に指定できる。
図9Bは、VP9における符号化ブロックのサイズを説明する図である。本図に示されるように、VP9では、ブロックとして、長方形も含めて小さいブロックを作ることができる。最小のブロックサイズは、8x8である。
図9Cは、AV1における符号化ブロックのサイズを説明する図である。AV1では、さらにいろんな組み合わせのブロックを作ることができる。最小のブロックサイズは、4x4である。
いずれのコーデックもサイズが違っており、面内予測のモードが規格ごとにことなるので生成される予測画像もコーデックごとに異なる。ところが、符号化ブロック単位で一つの面内予測のモードが選ばれるという基本的な考え方は共通している。
本実施例では、この共通性に着目して符号化ブロックサイズの決定を第一のモード選択部11と第二のモード選択部12の二段階(厳密には、第一のモード選択部11、候補選択部13及び最終選択部14の三段階)にわけて処理をする。
なお、第一のモード群11aの処理は、最適な符号化ブロックサイズを探索する任意の処理でよいが、理解しやすくするため、世の中に存在する処理内容を例に挙げて説明する。また、本実施例では、面内フレームでの処理を説明する。
本実施例では、H.265で定義される符号化ブロックのサイズ群を第一のモード群11aとし、AV1で定義される符号化ブロックのサイズ群を第二のモード群13aとする。つまり、第一のモード選択部11は、H.265で定義される符号化ブロックのサイズを選択する機能を有し、第一のモード選択部11は、AV1で定義される符号化ブロックのサイズを選択する機能を有しているものとする。以下、本実施例に係る動画像符号化装置10の動作の詳細について、処理部ごとに、説明する。
・第一のモード選択部11の動作
図9Aに示されるように、H.265では、符号化ブロックのサイズは、64x64~8x8まである。また、図3Cに示されるように、H.265では、面内予測のモードとして、33種の方向をもつ面内予測のモード(モード番号2~34)と、DC(モード番号1)/Planar(モード番号0)といった方向を持たない面内予測のモードとがある。
本実施例では、第一のモード選択部11は、符号化ブロックのサイズについてのモードの選択では、各面内予測のモードにおけるR-D最適化のための一般的なコスト関数(Cost=Distortion+λ*Rate)を用いて行う。具体的には、第一のモード選択部11は、各面内予測のモード(35モード)において実際に隣接画素を用いてH.265の処理内容に従って予測処理を行ったときの符号化ブロックのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモードを選択して、当該符号化ブロックサイズにおける最適なCostとする。この処理を64x64~8x8までの符号化ブロックサイズのすべてについて行う。
そして、各符号化ブロックサイズのCostを比べて符号化ブロックサイズを決定する。つまり、第一のモード選択部11は、8x8の符号化ブロックサイズを4つ選択した場合と16x16の符号化ブロックサイズを選択した場合の各Costを比較し、続いて、より小さなCostの方を選択した場合と32x32の符号化ブロックサイズを選択した場合の各Costを比較し、続いて、より小さなCostを選択した場合と64x64の符号化ブロックサイズを選択した場合の各Costを比較し、より小さなCostの方を選択することで、最適な符号化ブロックのサイズを決定する。決定した符号化ブロックのサイズが、第一の候補モード11bとなる。
・候補選択部13の動作
図9Cに示されるように、AV1では、符号化ブロックのサイズは、128x128~4x4まである。第一のモード選択部11が選択したモード(つまり、第一の候補モード11b)は、AV1にとって最適なモードではない可能性がある。そのため、候補選択部13は、第二のモード群13aのうち、第一のモード選択部11が選択したモードと最も方向が近いモードとその周辺モードを第二の候補モード13bとして選択する。
図10は、実施例3に係る動画像符号化装置10の候補選択部13が選択する第二の候補モード13bの例を説明する図である。本図に示されるように、候補選択部13は、周辺モードとして、周辺±1階層含めたモードを選択する。なお、AV1には、符号化ブロックとして、長方形もある。よって、選択されるモードには、長方形も含まれる。
・最終選択部14の動作
本実施例においては、最終選択部14は、第一のモード選択部11と同様に、符号化ブロックのサイズについてのモードの選択を、各面内予測のモードにおけるR-D最適化のための一般的なコスト関数(Cost=Distortion+λ*Rate)を用いて行う。
図3Eに示されるように、AV1での予測方向は、56種の方向を持つ面内予測のモードと(モード番号1~8+追加角度設定)、DC/SMOOTHといった方向を持たない面内予測のモード(モード番号0、9~12)がある。
最終選択部14は、第二の候補モード13bである、サイズ上下一階層について、AV1の処理内容に従って予測処理(全61モード)を行ったときの符号化ブロックのCostをそれぞれ算出し、最もCostが小さくなる面内予測のモードを符号化モード14aとして選択する。
具体的には、最終選択部14は、各符号化ブロックサイズのCostを比べて符号化ブロックサイズを決定する。計算していないブロックサイズは、予めCostとして、MAX(最大値)としておく。そして、最終選択部14は、8x8の符号化ブロックサイズを4つ選択した場合と16x16の符号化ブロックサイズを選択した場合の各Costを比較し、続いて、より小さなCostの方を選択した場合と32x32の符号化ブロックサイズを選択した場合の各Costを比較し、続いて、より小さなCostを選択した場合と64x64の符号化ブロックサイズを選択した場合の各Costを比較し、より小さなCostを選択することで、最適な符号化ブロックサイズを決定する。最終選択部14は、決定した符号化ブロックのサイズを、最終的に決定した符号化モード14aとして出力する。
・符号化部15の動作
符号化部15は、最終選択部14で選択された符号化モード14aにしたがって対象の画像データを符号化する。
以上のように、本実施例に係る動画像符号化装置10及び動画像符号化方法によれば、実装においてハードウェア実装を考えた場合、第一のモード選択部11は対応するコーデックに依存せずに任意の処理方法で処理できるので、複数のコーデックへの対応が可能である。
また、最終選択部14において、従来であれば128x128~4x4の符号化ブロックサイズまでの4421モードの評価が必要であったところが、本実施例では1872モードになるため、大幅に処理を減らすことができる。また、第一のモード選択部11を、性能が必要な実装形態(つまり、ハードウェア又はソフトウェア)とし、第二のモード選択部12(つまり、候補選択部13及び最終選択部14)を柔軟な実装形態(つまり、ソフトウェア)とするような実装形態において、性能向上することができる。
なお、第一のモード選択部11、候補選択部13、最終選択部14及び符号化部15すべてをハードウェアで実装する場合には、もっとも処理量が多く必要な第一のモード選択部11が複数コーデック対応したハードウェア設計としなくてよくなるため、コスト削減をすることができる。
なお、第一のモード選択部11は、H.265に対応したものでなくてもよい。
また、第二のモード選択部12は、AV1に対応したものでなくてもよい。つまり、動画像符号化装置10は、AV1エンコーダに限定されない。
また、第一のモード選択部11は、コスト関数を用いなくてもよい。例えば、SAD(差分絶対値和)、SATD(差分変換係数絶対値和)などの予測画像と原画像差分、SSE(二乗誤差累積)などの原画像と再構築画像との差分のみを指標にモードを選択してもよい。
また、第一のモード選択部11は、画像の分散が小さくなるように符号化ブロックサイズを決めるなど、面内予測をしない方法によって第一の候補モード11bを決定してもよい。
また、第一のモード選択部11は、機械学習させたモード判定部でもよい。
また、第一のモード群11aは、2以上の符号化ブロックのサイズがあればよい。このとき、符号化ブロックの形状として、正方形及び長方形の組み合わせであることが望ましい。
また、候補選択部13が選択する第二の候補モード13bは、1個でもよい。候補選択部13が選択する第二の候補モード13bは、複数個あればよりベストを選べる可能性が増えるから符号化効率にとってはよいが、処理量を減らすには1個でもよい。そこはトレードオフであり、市場における要求レベルに合わせて実装することが望ましい。
また、候補選択部13で選択する第二の候補モード13bにおける±1階層は、あくまで例であり、これに限定されない。
また、長方形の符号化ブロックについては、すべて探索しなくてもいい。例えば、上の階層については、全部の符号化ブロックを探索し、下の階層については、正方形の符号化ブロックのみを探索してもよい。
以上、本発明に係る動画像符号化方法及び動画像符号化装置について、実施の形態及び実施例1~3に基づいて説明したが、本発明は、これらの実施の形態及び実施例1~3に限定されるものではない。本発明の主旨を逸脱しない限り、当業者が思いつく各種変形を実施の形態及び実施例1~3に施したものや、実施の形態及び実施例1~3における一部の構成要素を組み合わせて構築される別の形態も、本発明の範囲内に含まれる。
本発明は、動画像符号化方法及び動画像符号化装置として、特に、新たな規格に対応した動画像符号化装置を作り直すのに要する費用及び時間を、従来よりも削減することができるアーキテクチャを有する動画像符号化装置として、例えば、半導体集積回路で実現されるエンコーダ及びコーデックとして、利用できる。
10 動画像符号化装置
11 第一のモード選択部
11a 第一のモード群
11b 第一の候補モード
12 第二のモード選択部
13 候補選択部
13a 第二のモード群
13b 第二の候補モード
14 最終選択部
14a 符号化モード
15 符号化部
18 第一の電子回路
19 第二の電子回路
S10 第一のモード選択ステップ
S11 第二のモード選択ステップ
S11a 候補選択ステップ
S11b 最終選択ステップ
S12 符号化ステップ

Claims (14)

  1. 動画像の符号化のための所定の第一のモード群から、少なくとも一つのモードを第一の候補モードとして選択する第一のモード選択ステップと、
    選択された前記第一の候補モードに基づいて、所定の第二のモード群から、一つのモードを符号化モードとして選択する第二のモード選択ステップと、
    選択された前記符号化モードで前記動画像を符号化する符号化ステップと
    を含み、
    前記第一のモード群は、第一の規格で定義されるモード群であり、
    前記第二のモード群は、前記第一の規格とは異なる第二の規格で定義されるモード群であり、
    前記第一のモード選択ステップ及び前記第二のモード選択ステップでは、前記動画像を構成する同一の画像を対象として、それぞれ、前記第一の候補モード及び前記符号化モードが選択される、
    動画像符号化方法。
  2. 前記第一のモード選択ステップは、プロセッサを含まない第一の電子回路によって実行され、
    前記第二のモード選択ステップは、プロセッサを含む第二の電子回路によって実行される
    請求項1記載の動画像符号化方法。
  3. 前記第一の電子回路及び前記第二の電子回路は、異なる半導体基板上に実装されている
    請求項2記載の動画像符号化方法。
  4. 前記第二のモード選択ステップは、
    前記第一のモード選択ステップで選択された前記第一の候補モードに基づいて、前記第二のモード群から、少なくとも一つのモードを第二の候補モードとして選択する候補選択ステップと、
    前記候補選択ステップで選択された前記第二の候補モードから、前記符号化モードを選択する最終選択ステップとを含む
    請求項1~3のいずれか1項に記載の動画像符号化方法。
  5. 前記第一のモード選択ステップでは、前記第一のモード群を構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、前記第一の候補モードを選択し、
    前記候補選択ステップでは、前記第二のモード群から、少なくとも前記第一のモード選択ステップで選択された前記第一の候補モードに近いモードを選択することにより、前記第二の候補モードを選択し、
    前記最終選択ステップでは、前記候補選択ステップで選択された前記第二の候補モードを構成する各モードについてコスト計算を行い、得られたコストが低いモードを優先して選択することにより、前記符号化モードを選択する
    請求項4記載の動画像符号化方法。
  6. 前記第一のモード群を構成するモードの数は、前記第二のモード群を構成するモードの数よりも小さい
    請求項1~のいずれか1項に記載の動画像符号化方法。
  7. 前記第一のモード群は、前記第二のモード群に属さないモードを含む
    請求項1~のいずれか1項に記載の動画像符号化方法。
  8. 前記第一のモード群及び第二のモード群は、面内予測のモードの集まりである
    請求項1~のいずれか1項に記載の動画像符号化方法。
  9. 前記第一のモード群及び第二のモード群は、動き予測についてのモードの集まりである
    請求項1~のいずれか1項に記載の動画像符号化方法。
  10. 前記動き予測についてのモードは、参照画像の特定方法及び動きベクトルの精度の少なくとも一方によって定義される
    請求項記載の動画像符号化方法。
  11. 前記第一のモード群及び第二のモード群は、符号化ブロックのサイズについてのモードの集まりである
    請求項1~のいずれか1項に記載の動画像符号化方法。
  12. 動画像の符号化のための所定の第一のモード群から、少なくとも一つのモードを第一の候補モードとして選択する第一のモード選択部と、
    選択された前記第一の候補モードに基づいて、所定の第二のモード群から、一つのモードを符号化モードとして選択する第二のモード選択部と、
    選択された前記符号化モードで前記動画像を符号化する符号化部と
    を備え
    前記第一のモード群は、第一の規格で定義されるモード群であり、
    前記第二のモード群は、前記第一の規格とは異なる第二の規格で定義されるモード群であり、
    前記第一のモード選択部及び前記第二のモード選択部は、前記動画像を構成する同一の画像を対象として、それぞれ、前記第一の候補モード及び前記符号化モードを選択する、
    動画像符号化装置。
  13. 前記第一のモード選択部は、プロセッサを含まない第一の電子回路であり、
    前記第二のモード選択部は、プロセッサを含む第二の電子回路である
    請求項12記載の動画像符号化装置。
  14. 前記第一の電子回路及び前記第二の電子回路は、異なる半導体基板上に実装されている
    請求項13記載の動画像符号化装置。
JP2020546655A 2018-09-14 2018-09-14 動画像符号化方法及び動画像符号化装置 Active JP7243732B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/034232 WO2020054060A1 (ja) 2018-09-14 2018-09-14 動画像符号化方法及び動画像符号化装置

Publications (2)

Publication Number Publication Date
JPWO2020054060A1 JPWO2020054060A1 (ja) 2021-09-09
JP7243732B2 true JP7243732B2 (ja) 2023-03-22

Family

ID=69776527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020546655A Active JP7243732B2 (ja) 2018-09-14 2018-09-14 動画像符号化方法及び動画像符号化装置

Country Status (3)

Country Link
US (1) US11516481B2 (ja)
JP (1) JP7243732B2 (ja)
WO (1) WO2020054060A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116389763B (zh) * 2023-06-05 2023-08-11 瀚博半导体(上海)有限公司 基于多种编码器的视频编码方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008527933A (ja) 2005-01-13 2008-07-24 クゥアルコム・インコーポレイテッド 内部予測ビデオ符号化のためのモード選択技術
US20140161172A1 (en) 2012-12-11 2014-06-12 Jason N. Wang Software hardware hybrid video encoder
US20170041616A1 (en) 2015-08-03 2017-02-09 Arris Enterprises Llc Intra prediction mode selection in video coding
WO2017073362A1 (ja) 2015-10-30 2017-05-04 ソニー株式会社 画像処理装置および方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1679590B1 (en) * 2001-01-31 2011-03-23 Renesas Electronics Corporation Data processing system
JP4576930B2 (ja) * 2004-08-26 2010-11-10 カシオ計算機株式会社 動きベクトル検出装置、および、プログラム
KR101353301B1 (ko) * 2008-04-11 2014-01-21 에스케이 텔레콤주식회사 인트라 예측 모드 결정 방법 및 그 장치와 이를 이용한영상 부호화/복호화 방법 및 그 장치
US8761253B2 (en) * 2008-05-28 2014-06-24 Nvidia Corporation Intra prediction mode search scheme
US8411756B2 (en) * 2009-05-21 2013-04-02 Ecole De Technologie Superieure Method and system for generating block mode conversion table for efficient video transcoding
KR101702553B1 (ko) * 2009-07-04 2017-02-03 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
KR101452860B1 (ko) * 2009-08-17 2014-10-23 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101792308B1 (ko) 2010-09-30 2017-10-31 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치, 프로그램 및 집적 회로
BR112013016095B1 (pt) * 2010-12-23 2022-08-16 Samsung Electronics Co., Ltd. Método de decodificar uma imagem, e método de codificar uma imagem
CN104272734A (zh) 2012-05-15 2015-01-07 索尼公司 图像处理装置和图像处理方法
JP2015035659A (ja) * 2013-08-07 2015-02-19 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、及び画像符号化プログラム
JP6223323B2 (ja) 2014-12-12 2017-11-01 Nttエレクトロニクス株式会社 小数画素生成方法
WO2017094298A1 (ja) * 2015-12-04 2017-06-08 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
EP3459244A4 (en) * 2016-01-12 2020-03-04 Telefonaktiebolaget LM Ericsson (publ) VIDEO CODING WITH HYBRID INTRAPREDICTION
US11032550B2 (en) * 2016-02-25 2021-06-08 Mediatek Inc. Method and apparatus of video coding
US10574999B2 (en) * 2016-05-05 2020-02-25 Intel Corporation Method and system of video coding with a multi-pass prediction mode decision pipeline

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008527933A (ja) 2005-01-13 2008-07-24 クゥアルコム・インコーポレイテッド 内部予測ビデオ符号化のためのモード選択技術
US20140161172A1 (en) 2012-12-11 2014-06-12 Jason N. Wang Software hardware hybrid video encoder
US20170041616A1 (en) 2015-08-03 2017-02-09 Arris Enterprises Llc Intra prediction mode selection in video coding
WO2017073362A1 (ja) 2015-10-30 2017-05-04 ソニー株式会社 画像処理装置および方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
筑波 健史(外3名),「MPEG-2/H.264トランスコーダにおける符号化モード選択手法に関する検討」,情報処理学会研究報告,Vol.2005, No.124 (2005-AVM-51 (16)),日本,情報処理学会,2005年12月13日,第87~92頁,[online], [令和4年8月31日検索],インターネット, <URL: http://id.nii.ac.jp/1001/00041163/>.

Also Published As

Publication number Publication date
WO2020054060A1 (ja) 2020-03-19
JPWO2020054060A1 (ja) 2021-09-09
US20210195210A1 (en) 2021-06-24
US11516481B2 (en) 2022-11-29

Similar Documents

Publication Publication Date Title
JP6851429B2 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
RU2665237C1 (ru) Устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений
US8571102B2 (en) Image encoding apparatus, image encoding method, image encoding program, image decoding apparatus, image decoding method, and image decoding program
CN105959706B (zh) 图像编码装置和方法、以及图像译码装置和方法
KR101565228B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 화상 예측 장치
KR20180019688A (ko) 픽처 예측 방법 및 픽처 예측 장치
US9516320B2 (en) Method of generating image data
JP5795525B2 (ja) 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
CN102474618A (zh) 图像处理装置和方法
JP2024054330A (ja) 画像データ符号化/復号化方法及び装置
CN111448798A (zh) 基于块形状的视频编码和解码的方法和装置
JP7243732B2 (ja) 動画像符号化方法及び動画像符号化装置
CN112075080A (zh) 帧内预测装置、图像编码装置、图像解码装置以及程序
JP2023138826A (ja) イントラ予測装置、画像符号化装置、画像復号装置、及びプログラム
Corrêa et al. Av1 and vvc video codecs: Overview on complexity reduction and hardware design
KR100771640B1 (ko) 고속 모드 결정 기능을 구비한 h.264 인코더
JP2021027464A (ja) 予測ブロック生成装置、画像符号化装置、画像復号装置、及びプログラム
Ahmmed et al. Discrete cosine basis oriented motion modeling for fisheye and 360 degree video coding
JP5390794B2 (ja) 動きベクトル探索装置および動きベクトル探索方法
JP6390275B2 (ja) 符号化回路、符号化方法
KR20140031974A (ko) 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치, 화상 부호화 프로그램 및 화상 복호 프로그램
KR100790757B1 (ko) H.264 동영상 부호화기의 적응적 고속 움직임 추정 방법
Segall et al. Parallel intra prediction for video coding
JP2013098715A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2013098713A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221017

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: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230220

R150 Certificate of patent or registration of utility model

Ref document number: 7243732

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150