JP2014096638A - Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program - Google Patents

Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program Download PDF

Info

Publication number
JP2014096638A
JP2014096638A JP2012245675A JP2012245675A JP2014096638A JP 2014096638 A JP2014096638 A JP 2014096638A JP 2012245675 A JP2012245675 A JP 2012245675A JP 2012245675 A JP2012245675 A JP 2012245675A JP 2014096638 A JP2014096638 A JP 2014096638A
Authority
JP
Japan
Prior art keywords
flag
group
region
unit
area
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.)
Pending
Application number
JP2012245675A
Other languages
Japanese (ja)
Inventor
Nao Nakajima
奈緒 中島
Atsuro Ichigaya
敦郎 市ヶ谷
Shinichi Sakaida
慎一 境田
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.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting 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 Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2012245675A priority Critical patent/JP2014096638A/en
Publication of JP2014096638A publication Critical patent/JP2014096638A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve encoding efficiency when introducing a group flag into a significant coefficient flag for use in arithmetic coding.SOLUTION: An image encoder performing CABAC includes a specification unit for specifying an area having the last non-zero coefficient value in a predetermined scanning order, for a plurality of divided areas of a block to be transformed orthogonally, an estimation unit for estimating a first area group having a group flag indicating the fact that at least one significant coefficient flag is included, using the position of a specified area, for a group flag indicating whether or not a significant coefficient flag, included in a syntax element, is a value indicating a coefficient value of zero, and an arithmetic coding unit performing arithmetic coding of a significant coefficient flag of an area indicating the fact that the position of the last non-zero coefficient value, a group flag of an area other than the first area group, and at least one significant coefficient flag indicating a non-zero coefficient value of group flag other than the first area group are included, and an area of the first area group.

Description

本発明は、算術符号化を行う画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムに関する。   The present invention relates to an image encoding device, an image encoding method, an image encoding program, an image decoding device, an image decoding method, and an image decoding program that perform arithmetic encoding.

近年マルチメディア化が進み、動画像を扱う機会が多くなってきている。画像データは情報量が大きく、画像の集合である動画像は、テレビ放送の主流であるハイビジョン(1920×1080)放送で1Gbit/secを超える情報量である。   In recent years, with the advance of multimedia, there are many opportunities to handle moving images. Image data has a large amount of information, and a moving image, which is a set of images, has an information amount exceeding 1 Gbit / sec in high-definition (1920 × 1080) broadcasting, which is the mainstream of television broadcasting.

そのため、動画像データは、H.264/AVC(Advanced Video Coding)(例えば非特許文献1参照)や規格化作業中のHEVC(High Efficiency Video Coding)などに代表される符号化標準技術によって、情報量を圧縮して伝送・蓄積が行われている。   Therefore, the moving image data is H.264. H.264 / AVC (Advanced Video Coding) (see, for example, Non-Patent Document 1) and HEVC (High Efficiency Video Coding) being standardized, etc. Has been done.

これらの符号化技術において、コンテキスト適応型2値算術符号化(CABAC:Context-Adaptive Binary Arithmetic Coding)という技術が用いられる。CABACでは、様々なシンタックス要素が用いられ、算術符号化が行われる。   In these coding techniques, a technique called context-adaptive binary arithmetic coding (CABAC) is used. In CABAC, various syntax elements are used and arithmetic coding is performed.

このシンタックス要素の1つである有意係数フラグ(significant_coeff_flag)は、変換対象ブロック内の各係数値の位置毎に設定される。この有意係数フラグは、各係数値が0か否かを示す値を有するフラグである。例えば、有意係数フラグが1の場合は非0の係数値であることを示し、有意係数フラグが0の場合は0の係数値であることを示す。   A significant coefficient flag (significant_coeff_flag), which is one of the syntax elements, is set for each position of each coefficient value in the conversion target block. This significant coefficient flag is a flag having a value indicating whether each coefficient value is 0 or not. For example, a significant coefficient flag of 1 indicates a non-zero coefficient value, and a significant coefficient flag of 0 indicates a 0 coefficient value.

この有意係数フラグを算術符号化する際に、データ量を削減する技術がある。例えば、HEVCにおいて、変換ブロック(TU:Transform Unit)のサイズが16×16もしくは32×32の場合に、TUを16分割した各領域内の有意係数フラグをグループ化する概念の導入が検討されている。具体的には、各領域内に、1の値を有する有意係数フラグが少なくとも1つ含まれるか否かを示すグループフラグ(significant_coeffgroup_flag)が導入される(非特許文献1参照)。   There is a technique for reducing the amount of data when arithmetically coding the significant coefficient flag. For example, in HEVC, when the size of a transform block (TU: Transform Unit) is 16 × 16 or 32 × 32, introduction of the concept of grouping significant coefficient flags in each region obtained by dividing TU into 16 is being studied. Yes. Specifically, a group flag (significant_coeffgroup_flag) indicating whether or not at least one significant coefficient flag having a value of 1 is included in each region is introduced (see Non-Patent Document 1).

Nguyen Nguyen, Tianying Ji, Dake He, Gaelle Martin-Cocher, and Lin Song ,"Multi-level significance maps for Large Transform Unit", JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/WG11 JCTVC-G644 (Nov.2011)Nguyen Nguyen, Tianying Ji, Dake He, Gaelle Martin-Cocher, and Lin Song, "Multi-level significance maps for Large Transform Unit", JCT-VC of ITU-T SG16 WP3 and ISO / IEC JTC1 / WG11 JCTVC-G644 ( Nov.2011)

図1は、有意係数フラグとグループフラグとの関係の一例を示す図である。図1に示す例では、変換対象の変換ブロックtu101(サイズ16×16)が、4×4を1つのグループとした領域に分割される。1つの升目が1つの画素位置を示し、変換ブロックtu101内の「1」、「0」の値は、有意係数フラグの値を示す。   FIG. 1 is a diagram illustrating an example of a relationship between a significant coefficient flag and a group flag. In the example illustrated in FIG. 1, a conversion block tu101 (size 16 × 16) to be converted is divided into regions each having 4 × 4 as one group. One square indicates one pixel position, and the values “1” and “0” in the conversion block tu101 indicate the values of the significant coefficient flags.

ここで、グループフラグを導入しない場合、図1に示す範囲ar100に含まれる有意係数217個が符号化される。なお、図1に示す範囲ar101に含まれる有意係数フラグは、最後の非0の有意係数(last_significant_coeff)以降の係数位置のため、符号化されない。   Here, when the group flag is not introduced, 217 significant coefficients included in the range ar100 shown in FIG. 1 are encoded. Note that the significant coefficient flag included in the range ar101 illustrated in FIG. 1 is not encoded because the coefficient position is after the last non-zero significant coefficient (last_significant_coeff).

一方、非特許文献1に記載のようにグループフラグを導入した場合、各領域のグループフラグと、グループフラグが1である領域内の有意係数フラグとが符号化される。図1に示す領域ブロックgr101は、変換ブロックtu101を4×4に分割し、グループ化した領域のブロックを示す。   On the other hand, when a group flag is introduced as described in Non-Patent Document 1, a group flag in each region and a significant coefficient flag in a region where the group flag is 1 are encoded. An area block gr101 shown in FIG. 1 is a block of an area obtained by dividing the transform block tu101 into 4 × 4 groups.

領域ブロックgr101内の値は、グループフラグの値を示す。図1に示す例では、グループフラグが1の場合、領域内に、1の値を有する有意係数フラグを少なくとも1つ含むことを示し、グループフラグが0の場合、領域内の有意係数フラグが全て0の値であることを示す。   The value in the area block gr101 indicates the value of the group flag. In the example shown in FIG. 1, when the group flag is 1, it indicates that at least one significant coefficient flag having a value of 1 is included in the area. When the group flag is 0, all significant coefficient flags in the area are all included. Indicates a value of 0.

範囲ar102に含まれる領域のグループフラグは、last_significant_coeffを含む領域であるため、グループフラグが1であることが想定されるため符号化されない。また、範囲ar103内に含まれる各領域のグループフラグは、1であることが想定されるため符号化されない。これは、右側及び下側に隣接した領域のグループフラグがともに1であるので、周波数変換後の係数の特性を考慮すると、範囲内ar103内のグループフラグは1であることが想定されるからである。   Since the group flag of the region included in the range ar102 is a region including last_significant_coeff, it is assumed that the group flag is 1, and thus is not encoded. In addition, since the group flag of each region included in the range ar103 is assumed to be 1, it is not encoded. This is because the group flags in the areas adjacent to the right side and the lower side are both 1, and therefore the group flag in the range ar103 is assumed to be 1 in consideration of the coefficient characteristics after frequency conversion. is there.

この結果、グループフラグを導入した場合に符号化されるデータは、図2に示される。図2は、グループフラグを導入した場合の符号化データの一例を示す図である。図2に示す例では、範囲ar104内に含まれる有意係数フラグ148個と、範囲ar105内に含まれるグループフラグ10個とが符号化データとなる。   As a result, the data encoded when the group flag is introduced is shown in FIG. FIG. 2 is a diagram illustrating an example of encoded data when a group flag is introduced. In the example shown in FIG. 2, 148 significant coefficient flags included in the range ar104 and 10 group flags included in the range ar105 are encoded data.

非特許文献1の技術では、図1,2に示す例において、グループフラグを導入しない場合の符号化データ217個に対し、59(=217−(148+10))個の符号化データを削減することができる。   In the technique of Non-Patent Document 1, 59 (= 217− (148 + 10)) encoded data is reduced from 217 encoded data when the group flag is not introduced in the examples shown in FIGS. Can do.

しかしながら、グループフラグを導入する場合でも、符号化効率を改善する余地がまだある。   However, even when a group flag is introduced, there is still room for improving the coding efficiency.

そこで、本発明は、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムを提供することを目的とする。   Therefore, the present invention provides an image coding apparatus, an image coding method, an image coding program, and an image decoding that can improve coding efficiency when a group flag is introduced into a significant coefficient flag used in arithmetic coding. It is an object to provide an apparatus, an image decoding method, and an image decoding program.

本発明の一態様における画像符号化装置は、コンテキスト適応型2値算術符号化(CABAC)を行う画像符号化装置であって、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定部と、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定部により特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定部と、前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化部とを備える。   An image encoding device according to an aspect of the present invention is an image encoding device that performs context-adaptive binary arithmetic encoding (CABAC). A plurality of regions into which a target block for orthogonal transformation is divided are assigned to a predetermined region. Whether the specific part for specifying the region having the last non-zero coefficient value in the scanning order and the significant coefficient flag included in the CABAC syntax element are values indicating a coefficient value of 0 in all of the regions. A first region group having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included using the position of the region specified by the specifying unit with respect to a group flag indicating whether or not An estimation unit for estimation, a position of the last non-zero coefficient value, a group flag of an area other than the first area group, and a coefficient value of a group flag other than the first area group indicating a non-zero coefficient value Significant coefficient flag of the area and the first area group region indicating that the meaning coefficient flag comprising at least one, and comprising an arithmetic coding unit for arithmetic coding.

また、前記特定部は、前記特定された領域における、前記最後の非0の係数値の位置を特定し、前記推定部は、前記特定部により特定された係数値の位置を用いて、前記第1領域群を拡張してもよい。   Further, the specifying unit specifies a position of the last non-zero coefficient value in the specified region, and the estimation unit uses the position of the coefficient value specified by the specifying unit, One region group may be expanded.

また、前記推定部は、前記複数の領域のうち、前記特定部により特定された領域の位置を用いて、前記第1領域群と、全ての有意係数フラグが0の係数値を示すグループフラグを有する第2領域群とを推定し、前記算術符号化部は、前記最後の非0の係数値の位置、及び前記第1領域群の領域の有意係数フラグを算術符号化し、前記第1領域群と前記第2領域群とのグループフラグを算術符号化しなくてもよい。   Further, the estimation unit uses the position of the region specified by the specifying unit among the plurality of regions, and uses the position of the first region group and a group flag indicating that all significant coefficient flags have coefficient values of 0. And the arithmetic encoding unit arithmetically encodes the position of the last non-zero coefficient value and the significant coefficient flag of the region of the first region group, and the first region group And the group flag of the second region group may not be arithmetically encoded.

また、前記第1領域群以外の領域のグループフラグの値に基づいて、前記第2領域群を推定するか否かを決定する決定部をさらに有し、前記算術符号化部は、前記決定部の決定内容を示す使用フラグに基づいて、前記第2領域群のグループフラグを算術符号化するか否かを決定し、前記使用フラグを符号化対象に含めて算術符号化を行わなくてもよい。   The determination unit further includes a determination unit that determines whether to estimate the second region group based on a group flag value of a region other than the first region group, and the arithmetic encoding unit includes the determination unit It is possible to determine whether or not the group flag of the second region group is arithmetically encoded based on the use flag indicating the determination content of the second region group, and to include the use flag as an encoding target and not perform the arithmetic encoding .

また、本発明の他の態様における画像符号化方法は、コンテキスト適応型2値算術符号化(CABAC)を行う画像符号化装置における画像符号化方法であって、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定ステップと、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定ステップと、前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップとを有する。   An image coding method according to another aspect of the present invention is an image coding method in an image coding apparatus that performs context adaptive binary arithmetic coding (CABAC), in which a target block for orthogonal transformation is divided. A specific step of specifying a region having the last non-zero coefficient value in a predetermined scanning order for a plurality of regions, and a significant coefficient flag included in the syntax element of the CABAC is 0 in all of the regions A group indicating that the group flag indicating whether or not the value indicates a coefficient value includes at least one significant coefficient flag indicating a non-zero coefficient value by using the position of the region specified by the specifying step. An estimation step of estimating a first region group having a flag, a position of the last non-zero coefficient value, a group flag of a region other than the first region group, and the first An arithmetic encoding step for arithmetically encoding a region other than the region group indicating that the group flag includes at least one significant coefficient flag indicating a non-zero coefficient value and a significant coefficient flag of the region of the first region group; Have

また、本発明の他の態様における画像符号化プログラムは、コンテキスト適応型2値算術符号化(CABAC)を行うためのコンピュータに、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定ステップと、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定ステップと、前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップとを実行させる。   An image encoding program according to another aspect of the present invention provides a computer for performing context-adaptive binary arithmetic encoding (CABAC) with respect to a plurality of regions into which a target block for orthogonal transformation is divided. The specific step of specifying the region having the last non-zero coefficient value in the scan order and the significant coefficient flag included in the CABAC syntax element are values indicating coefficient values of 0 in all of the areas A first region group having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included using the position of the region specified in the specifying step with respect to the group flag indicating whether or not An estimation step to estimate, a position of the last non-zero coefficient value, a group flag of a region other than the first region group, and a group flag other than the first region group. Pufuragu significant coefficient flag of the area and the first area group of the indicated area that contains at least one significant coefficient flag indicating coefficient values of the non-0, the executing the arithmetic coding step of arithmetic coding.

また、本発明の他の態様における画像復号装置は、コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号する画像復号装置であって、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号部と、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定部と、特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号部と、復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号部と、を備える。   An image decoding apparatus according to another aspect of the present invention is an image decoding apparatus that decodes a stream on which context adaptive binary arithmetic coding (CABAC) has been performed, and includes blocks to be orthogonally transformed among the streams. On the other hand, a position decoding unit that decodes the position of the last non-zero coefficient value in a predetermined scanning order, and a plurality of regions in which the target block is divided based on the position of the decoded coefficient value, Based on the specified area that specifies the region having the last non-zero coefficient value, and the significant coefficient flag included in the syntax element of the CABAC sets a coefficient value of 0 in all the regions. A first flag decoding unit for decoding a group flag indicating whether or not the value is a value to be indicated, and a value of the decoded group flag is at least a significant coefficient flag indicating a non-zero coefficient value Comprising a second flag decoding unit for decoding the significant coefficient flag of the region to be a value indicating that it contains One, a.

また、また、本発明の他の態様における画像復号方法は、コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号する画像復号装置における画像復号方法であって、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号ステップと、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定ステップと、特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号ステップと、復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号ステップと、を有する。   An image decoding method according to another aspect of the present invention is an image decoding method in an image decoding apparatus for decoding a stream on which context adaptive binary arithmetic coding (CABAC) has been performed. A position decoding step for decoding the position of the last non-zero coefficient value in a predetermined scanning order with respect to the target block for orthogonal transform, and a plurality of blocks in which the target block is divided based on the position of the decoded coefficient value A step of specifying the region having the last non-zero coefficient value for the region of the region, and a significant coefficient flag included in the syntax element of the CABAC based on the specified region is all in the region. A first flag decoding step of decoding a group flag indicating whether the coefficient value is 0 or not, and the decoded value of the group flag is: 0 significant coefficient flag indicating coefficient values has a second flag decoding step of decoding the significant coefficient flag of the region to be a value indicating that it contains at least one.

また、本発明の他の態様における画像復号プログラムは、コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号するためのコンピュータに、前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号ステップと、復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定ステップと、特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号ステップと、復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号ステップと、を実行させる。   In addition, an image decoding program according to another aspect of the present invention provides a computer for decoding a stream subjected to context adaptive binary arithmetic coding (CABAC) to an orthogonal transform target block in the stream. A position decoding step for decoding the position of the last non-zero coefficient value in a predetermined scanning order, and a plurality of regions into which the target block is divided based on the position of the decoded coefficient value. A specifying step for specifying a region having a non-zero coefficient value, and a value indicating that a significant coefficient flag included in the syntax element of the CABAC indicates a coefficient value of 0 in all the regions based on the specified region. A first flag decoding step for decoding a group flag indicating whether or not the value is present, and the decoded group flag value indicates a non-zero coefficient value. Coefficient flag to execute a second flag decoding step of decoding the significant coefficient flag of the value range that indicates that at least one.

本発明によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる。   According to the present invention, when a group flag is introduced into a significant coefficient flag used in arithmetic coding, the coding efficiency can be improved.

有意係数フラグとグループフラグとの関係の一例を示す図。The figure which shows an example of the relationship between a significant coefficient flag and a group flag. グループフラグを導入した場合の符号化データの一例を示す図。The figure which shows an example of the coding data at the time of introducing a group flag. 実施例1における画像符号化装置の概略構成の一例を示すブロック図。1 is a block diagram illustrating an example of a schematic configuration of an image encoding device according to Embodiment 1. FIG. 実施例1におけるエントロピー符号化部の構成の一例を示すブロック図。FIG. 3 is a block diagram illustrating an example of a configuration of an entropy encoding unit in the first embodiment. 実施例1における削減部の構成の一例を示すブロック図。FIG. 3 is a block diagram illustrating an example of a configuration of a reduction unit according to the first embodiment. 第1領域群を説明するための図。The figure for demonstrating a 1st area | region group. 変換ブロックと領域との一例を示す図。The figure which shows an example of a conversion block and an area | region. 推定例1を示す図。The figure which shows the example 1 of estimation. 推定例2を示す図。The figure which shows the example 2 of an estimation. 推定例3を示す図。The figure which shows the estimation example 3. FIG. 推定例4を示す図。The figure which shows the example 4 of an estimation. 実施例1における有意係数フラグに関する符号化処理の一例を示すフローチャート。5 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag in the first embodiment. 実施例2における削減部の構成の一例を示すブロック図。FIG. 9 is a block diagram illustrating an example of a configuration of a reduction unit according to the second embodiment. 推定例5を示す図。The figure which shows the example 5 of estimation. 実施例2における有意係数フラグに関する符号化処理の一例を示すフローチャート。9 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag in the second embodiment. 実施例3における削減部の構成の一例を示すブロック図。FIG. 10 is a block diagram illustrating an example of a configuration of a reduction unit according to a third embodiment. 各領域のグループフラグの例を示す図。The figure which shows the example of the group flag of each area | region. 実施例3における有意係数フラグに関する符号化処理の一例を示すフローチャート。10 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag in the third embodiment. 実施例4における画像復号装置の概略構成の一例を示すブロック図。FIG. 10 is a block diagram illustrating an example of a schematic configuration of an image decoding device according to a fourth embodiment. 実施例4におけるエントロピー復号部の構成の一例を示すブロック図。FIG. 10 is a block diagram illustrating an example of a configuration of an entropy decoding unit according to a fourth embodiment. 実施例4における有意係数フラグに関する復号処理の一例を示すフローチャート。10 is a flowchart illustrating an example of a decoding process related to a significant coefficient flag in the fourth embodiment. 実施例5における画像処理装置80の構成の一例を示すブロック図。FIG. 10 is a block diagram illustrating an example of a configuration of an image processing apparatus 80 according to a fifth embodiment.

以下、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、さらなる符号化効率の改善を図ることができる各実施例について、添付図面を参照しながら詳細に説明する。   In the following, each embodiment capable of further improving the coding efficiency when a group flag is introduced into a significant coefficient flag used in arithmetic coding will be described in detail with reference to the accompanying drawings.

[実施例1]
実施例1では、直交変換の対象ブロック内の最後の非0の係数値であるlast_significant_coeffを含む領域より左上方向に存在する領域に対し、グループフラグを1と推定して符号化しないことで、符号化効率を向上させる。
[Example 1]
In the first embodiment, the region existing in the upper left direction from the region including last_significant_coeff which is the last non-zero coefficient value in the orthogonal transformation target block is encoded by estimating the group flag as 1 and not performing the encoding. Improve efficiency.

<構成>
図3は、実施例1における画像符号化装置10の概略構成の一例を示すブロック図である。図3に示す例では、画像符号化装置10は、前処理部100、予測誤差信号生成部101、直交変換部102、量子化部103、エントロピー符号化部104、逆量子化部105、逆直交変換部106、復号画像生成部107、ループフィルタ部109、復号画像記憶部110、イントラ予測部111、インター予測部112、動きベクトル計算部113及び予測画像選択部115を有する。各部についての概略を以下に説明する。
<Configuration>
FIG. 3 is a block diagram illustrating an example of a schematic configuration of the image encoding device 10 according to the first embodiment. In the example illustrated in FIG. 3, the image encoding device 10 includes a preprocessing unit 100, a prediction error signal generation unit 101, an orthogonal transformation unit 102, a quantization unit 103, an entropy encoding unit 104, an inverse quantization unit 105, and an inverse orthogonal. A conversion unit 106, a decoded image generation unit 107, a loop filter unit 109, a decoded image storage unit 110, an intra prediction unit 111, an inter prediction unit 112, a motion vector calculation unit 113, and a predicted image selection unit 115 are included. An outline of each part will be described below.

前処理部100は、ピクチャタイプに合わせてピクチャを並べ替え、ピクチャタイプ及びフレームごとのフレーム画像等を順次出力する。また、前処理部100は、ブロック分割なども行う。   The preprocessing unit 100 rearranges the pictures in accordance with the picture type, and sequentially outputs the picture type and the frame image for each frame. The preprocessing unit 100 also performs block division and the like.

予測誤差信号生成部101は、入力された動画像データの符号化対象画像が、例えば32×32、16×16、8×8画素などのブロックに分割されたブロックデータを取得する。   The prediction error signal generation unit 101 acquires block data obtained by dividing an encoding target image of input moving image data into blocks such as 32 × 32, 16 × 16, and 8 × 8 pixels.

予測誤差信号生成部101は、そのブロックデータと、予測画像選択部115から出力される予測画像のブロックデータとにより、予測誤差信号を生成する。予測誤差信号生成部101は、生成された予測誤差信号を直交変換部102に出力する。   The prediction error signal generation unit 101 generates a prediction error signal based on the block data and the block data of the prediction image output from the prediction image selection unit 115. The prediction error signal generation unit 101 outputs the generated prediction error signal to the orthogonal transformation unit 102.

直交変換部102は、入力された予測誤差信号を直交変換処理する。直交変換部102は、変換された係数値を示す信号を量子化部103に出力する。   The orthogonal transform unit 102 performs orthogonal transform processing on the input prediction error signal. The orthogonal transform unit 102 outputs a signal indicating the transformed coefficient value to the quantization unit 103.

量子化部103は、直交変換部102からの出力信号を量子化する。量子化部103は、量子化することによって出力信号の符号量を低減し、この出力信号をエントロピー符号化部104及び逆量子化部105に出力する。   The quantization unit 103 quantizes the output signal from the orthogonal transform unit 102. The quantization unit 103 reduces the code amount of the output signal by quantization, and outputs this output signal to the entropy encoding unit 104 and the inverse quantization unit 105.

エントロピー符号化部104は、量子化部103からの出力信号や動きベクトル計算部113から出力された動きベクトル情報やループフィルタ部109からのフィルタ係数などをエントロピー符号化して出力する。エントロピー符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる方式をいう。エントロピー符号化部104の詳細は、図4などを用いて後述する。   The entropy coding unit 104 entropy codes and outputs the output signal from the quantization unit 103, the motion vector information output from the motion vector calculation unit 113, the filter coefficient from the loop filter unit 109, and the like. Entropy coding is a method of assigning variable-length codes according to the appearance frequency of symbols. Details of the entropy encoding unit 104 will be described later with reference to FIG.

逆量子化部105は、量子化部103からの出力信号を逆量子化してから逆直交変換部106に出力する。逆直交変換部106は、逆量子化部105からの出力信号を逆直交変換処理してから復号画像生成部107に出力する。これら逆量子化部105及び逆直交変換部106によって復号処理が行われることにより、符号化前の予測誤差信号と同程度の信号が得られる。   The inverse quantization unit 105 dequantizes the output signal from the quantization unit 103 and then outputs the output signal to the inverse orthogonal transform unit 106. The inverse orthogonal transform unit 106 performs an inverse orthogonal transform process on the output signal from the inverse quantization unit 105 and then outputs the output signal to the decoded image generation unit 107. By performing decoding processing by the inverse quantization unit 105 and the inverse orthogonal transform unit 106, a signal having the same level as the prediction error signal before encoding is obtained.

復号画像生成部107は、インター予測部112で動き補償された画像のブロックデータと、逆量子化部105及び逆直交変換部106により復号処理された予測誤差信号とを加算する。復号画像生成部107は、加算して生成した復号画像のブロックデータを、ループフィルタ部109に出力する。   The decoded image generation unit 107 adds the block data of the image subjected to motion compensation by the inter prediction unit 112 and the prediction error signal decoded by the inverse quantization unit 105 and the inverse orthogonal transform unit 106. The decoded image generation unit 107 outputs the decoded image block data generated by addition to the loop filter unit 109.

ループフィルタ部109は、例えばALF(Adaptive Loop Filter)やデブロッキングフィルタであり、いずれか又は両方を備えてもよい。   The loop filter unit 109 is, for example, an ALF (Adaptive Loop Filter) or a deblocking filter, and may include either or both.

例えば、ループフィルタ部109は、入力画像を所定サイズ毎のグループに分け、グループ毎に適切なフィルタ係数を生成する。ループフィルタ部109は、フィルタ処理された復号画像を、所定サイズ毎にグループ分けし、生成したフィルタ係数を用いてグループ毎にフィルタ処理を行う。ループフィルタ部109は、フィルタ処理結果を復号画像記憶部110に出力し、参照画像として蓄積させる。所定サイズは、例えば、直交変換サイズである。   For example, the loop filter unit 109 divides the input image into groups for each predetermined size, and generates an appropriate filter coefficient for each group. The loop filter unit 109 divides the filtered decoded image into groups for each predetermined size, and performs filter processing for each group using the generated filter coefficients. The loop filter unit 109 outputs the filter processing result to the decoded image storage unit 110 and accumulates it as a reference image. The predetermined size is, for example, an orthogonal transformation size.

復号画像記憶部110は、入力した復号画像のブロックデータを新たな参照画像のデータとして記憶し、イントラ予測部111、インター予測部112及び動きベクトル計算部113に出力する。   The decoded image storage unit 110 stores the input block data of the decoded image as new reference image data, and outputs the data to the intra prediction unit 111, the inter prediction unit 112, and the motion vector calculation unit 113.

イントラ予測部111は、符号化対象画像の処理対象ブロックに対して、すでに符号化された参照画素から予測画像のブロックデータを生成する。イントラ予測部111は、複数の予測方向を用いて予測を行い、最適な予測方向を決定する。   The intra prediction unit 111 generates block data of the predicted image from the already-encoded reference pixels for the processing target block of the encoding target image. The intra prediction unit 111 performs prediction using a plurality of prediction directions and determines an optimal prediction direction.

インター予測部112は、復号画像記憶部110から取得した参照画像のデータを動きベクトル計算部113から提供される動きベクトルで動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部112は、動き補償に用いた予測ブロックの情報を直交変換部102に出力する。   The inter prediction unit 112 performs motion compensation on the reference image data acquired from the decoded image storage unit 110 with the motion vector provided from the motion vector calculation unit 113. Thereby, block data as a motion-compensated reference image is generated. The inter prediction unit 112 outputs information on the prediction block used for motion compensation to the orthogonal transform unit 102.

動きベクトル計算部113は、符号化対象画像におけるブロックデータと、復号画像記憶部110から取得する参照画像とを用いて、動きベクトルを求める。動きベクトルとは、ブロック単位で参照画像内から処理対象ブロックに最も類似している位置を探索するブロックマッチング技術などを用いて求められるブロック単位の空間的なずれを示す値である。   The motion vector calculation unit 113 obtains a motion vector using the block data in the encoding target image and the reference image acquired from the decoded image storage unit 110. The motion vector is a value indicating a spatial deviation in units of blocks obtained using a block matching technique or the like that searches for a position most similar to the processing target block from the reference image in units of blocks.

動きベクトル計算部113は、求めた動きベクトルをインター予測部112に出力し、動きベクトルや参照画像を示す情報を含む動きベクトル情報をエントロピー符号化部104に出力する。   The motion vector calculation unit 113 outputs the obtained motion vector to the inter prediction unit 112, and outputs motion vector information including information indicating the motion vector and the reference image to the entropy coding unit 104.

イントラ予測部111とインター予測部112から出力されたブロックデータは、予測画像選択部115に入力される。   The block data output from the intra prediction unit 111 and the inter prediction unit 112 are input to the predicted image selection unit 115.

予測画像選択部115は、イントラ予測部111とインター予測部112から取得したブロックデータのうち、どちらか一方のブロックデータを予測画像として選択する。選択された予測画像は、予測誤差信号生成部101に出力される。   The predicted image selection unit 115 selects one of the block data acquired from the intra prediction unit 111 and the inter prediction unit 112 as a predicted image. The selected prediction image is output to the prediction error signal generation unit 101.

なお、図3に示す画像符号化装置10の構成は一例であり、必要に応じて各構成を組み合わせたり、各構成を適宜変更したりしてもよい。   The configuration of the image encoding device 10 illustrated in FIG. 3 is an example, and the configurations may be combined or the configurations may be appropriately changed as necessary.

<エントロピー符号化部の構成>
次に、エントロピー符号化部104の構成について説明する。図4は、実施例1におけるエントロピー符号化部104の構成の一例を示すブロック図である。図4に示すエントロピー符号化部104は、可変長符号化部200と、2値算術符号化部201とを有する。
<Configuration of entropy encoding unit>
Next, the configuration of the entropy encoding unit 104 will be described. FIG. 4 is a block diagram illustrating an example of the configuration of the entropy encoding unit 104 according to the first embodiment. The entropy encoding unit 104 illustrated in FIG. 4 includes a variable length encoding unit 200 and a binary arithmetic encoding unit 201.

可変長符号化部200は、例えば、CAVLC(Context-Adaptive Variable Length Coding)と呼ばれるコンテキスト適応型可変長符号化方式を利用して、量子化されたDCTの係数値のうち、必要な係数値を符号化する。符号化された係数値は、ストリームに含まれる。   The variable length coding unit 200 uses, for example, a context adaptive variable length coding method called CAVLC (Context-Adaptive Variable Length Coding), and obtains necessary coefficient values from among quantized DCT coefficient values. Encode. The encoded coefficient value is included in the stream.

2値算術符号化部201は、例えば、CABACを利用してシンタックス要素などを算術符号化する。2値算術符号化部201は、2値化部202、削減部203、コンテキスト計算部204、算術符号化部205を有する。   The binary arithmetic encoding unit 201 arithmetically encodes syntax elements and the like using, for example, CABAC. The binary arithmetic encoding unit 201 includes a binarizing unit 202, a reduction unit 203, a context calculation unit 204, and an arithmetic encoding unit 205.

2値化部202は、多値信号のシンタックス要素を2値信号に変換する。2値化の方式は、シンタックス要素によって異なるようにしてもよい。   The binarization unit 202 converts the syntax element of the multilevel signal into a binary signal. The binarization method may be different depending on syntax elements.

削減部203は、2値化されたシンタックス要素のうち、有意係数フラグに対するグループフラグ(significant_coeffgroup_flag)について、符号化データを削減する。削減部203の詳細は、図5を用いて後述する。   The reduction unit 203 reduces the encoded data for the group flag (significant_coeffgroup_flag) for the significant coefficient flag among the binarized syntax elements. Details of the reduction unit 203 will be described later with reference to FIG.

コンテキスト計算部204は、2値信号の発生確率を複数保持しており、現在の符号化対象や周囲の状況(コンテキスト)に応じて発生確率を切替えて算術符号化部205に与える。   The context calculation unit 204 holds a plurality of binary signal occurrence probabilities, and switches the occurrence probabilities according to the current encoding target and the surrounding situation (context) to give to the arithmetic encoding unit 205.

算術符号化部205は、与えられた2値信号の発生確率を用いて入力信号を算術符号化する。算術符号化されたデータは、ストリームに含まれる。   The arithmetic encoding unit 205 arithmetically encodes the input signal using the given binary signal occurrence probability. The arithmetically encoded data is included in the stream.

<削減部>
次に、削減部203の構成について説明する。図5は、実施例1における削減部203aの構成の一例を示すブロック図である。図5に示す削減部203aは、特定部301と、推定部302とを有する。削減部203aでは、有意係数フラグに対するグループフラグを削減対象とするため、その他のシンタックス要素については言及しない。
<Reduction Department>
Next, the configuration of the reduction unit 203 will be described. FIG. 5 is a block diagram illustrating an example of the configuration of the reduction unit 203a according to the first embodiment. The reduction unit 203a illustrated in FIG. 5 includes a specifying unit 301 and an estimation unit 302. Since the reduction unit 203a sets the group flag for the significant coefficient flag as a reduction target, other syntax elements are not mentioned.

特定部301は、2値化された有意係数フラグに基づいて、直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値(last_significant_coeff)を有する領域を特定する。以降では、直交変換の対象ブロックを変換ブロックとも称し、last_significant_coeffを有する領域を最後領域とも称す。   Based on the binarized significant coefficient flag, the specifying unit 301 has an area having the last non-zero coefficient value (last_significant_coeff) in a predetermined scanning order with respect to a plurality of areas in which the orthogonal transformation target block is divided Is identified. Hereinafter, the target block for orthogonal transform is also referred to as a transform block, and a region having last_significant_coeff is also referred to as a last region.

また、特定部301は、位置特定部311を有し、位置特定部311は、最後領域内のどの位置に、最後の非0の係数値があるかを特定してもよい。以降では、最後の非0の係数値がある位置を最後位置とも称す。特定部301は、特定した最後領域、最後位置を推定部302に出力する。   Further, the specifying unit 301 may include a position specifying unit 311, and the position specifying unit 311 may specify which position in the last region has the last non-zero coefficient value. Hereinafter, the position where the last non-zero coefficient value is also referred to as the last position. The identifying unit 301 outputs the identified last region and last position to the estimating unit 302.

推定部302は、CABACのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、以下の推定を行う。推定部302は、特定部301により特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ領域内に含むことを示すグループフラグを有する領域を推定する。以降では、推定部302により推定された領域を第1領域群とも称す。   The estimation unit 302 performs the following estimation on the group flag indicating whether or not the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all the regions. The estimation unit 302 estimates a region having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included in the region, using the position of the region specified by the specifying unit 301. Hereinafter, the region estimated by the estimation unit 302 is also referred to as a first region group.

例えば、グループフラグは、領域内の有意係数フラグが全て「0」の場合に、「0」を示し、領域内の有意係数フラグが少なくとも1つ「1」を含む場合に、「1」を示すとする。   For example, the group flag indicates “0” when all the significant coefficient flags in the region are “0”, and indicates “1” when the significant coefficient flag in the region includes at least one “1”. And

推定部302は、最後領域の位置を用いて、グループフラグが「1」となる領域を含む第1領域群を推定する。   The estimation unit 302 estimates the first region group including the region where the group flag is “1” using the position of the last region.

推定部302は、第1領域群推定部321と、不要領域決定部322とを有する。第1領域群推定部321は、例えば、変換ブロック内の領域のうち、最後領域よりも左上方向に位置する領域を第1領域群として推定する。また、第1領域群推定部321は、最後位置を取得した場合は、最後位置を用いて、第1領域群を拡張してもよい。つまり、第1領域群推定部321は、最後位置を用いて、第1領域群に含まれる領域の数を増加させてもよい。   The estimation unit 302 includes a first region group estimation unit 321 and an unnecessary region determination unit 322. For example, the first region group estimation unit 321 estimates, as a first region group, a region located in the upper left direction of the last region among the regions in the transform block. Moreover, the 1st area group estimation part 321 may expand a 1st area group using the last position, when the last position is acquired. That is, the first region group estimation unit 321 may increase the number of regions included in the first region group using the last position.

不要領域決定部322は、グループフラグが1であると推定された第1領域群に含まれる領域を、符号化が不要な領域として決定する。推定部302は、最後位置と、第1領域群以外のグループフラグと、グループフラグが「1」(推定された「1」も含む)の領域内の有意係数フラグとを算術符号化部205に出力する。これにより、算術符号化部205では、第1領域群のグループフラグを符号化しない。   The unnecessary region determination unit 322 determines a region included in the first region group in which the group flag is estimated as 1 as a region that does not require encoding. The estimation unit 302 sends the final position, the group flag other than the first region group, and the significant coefficient flag in the region where the group flag is “1” (including the estimated “1”) to the arithmetic coding unit 205. Output. Thereby, the arithmetic encoding unit 205 does not encode the group flag of the first region group.

よって、算術符号化部205は、最後の非0の係数値の位置(最後位置)と、第1領域群以外の領域のグループフラグとを算術符号化する。なお、算術符号化部205は、最後領域以降に走査される領域が存在する場合は、この領域と第1領域群の領域とを符号化不要領域とし、符号化不要領域以外の領域のグループフラグを算術符号化する。   Therefore, the arithmetic encoding unit 205 arithmetically encodes the position of the last non-zero coefficient value (last position) and the group flag of the area other than the first area group. If there is an area to be scanned after the last area, the arithmetic encoding unit 205 sets this area and the area of the first area group as an encoding unnecessary area, and sets group flags for areas other than the encoding unnecessary area. Is arithmetically encoded.

また、算術符号化部205は、第1領域群以外の領域のグループフラグが、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域内の有意係数フラグと、前記第1領域群の領域内の有意係数フラグとを算術符号化する。つまり、算術符号化部205は、グループフラグが「1」(推定された「1」も含む)の領域内の有意係数フラグを算術符号化する。   Further, the arithmetic encoding unit 205 includes a significant coefficient flag in an area indicating that a group flag of an area other than the first area group includes at least one significant coefficient flag indicating a non-zero coefficient value, and the first Arbitrarily encodes the significant coefficient flag in the region of the region group. That is, the arithmetic encoding unit 205 arithmetically encodes the significant coefficient flag in the region where the group flag is “1” (including the estimated “1”).

算術符号化部205は、所定の走査順(例えばジグザグスキャン)により走査したグループフラグや有意係数フラグを算術符号化する。このとき、符号化されないグループフラグや有意係数フラグがどの位置にあるかについては、デコーダ側で認識可能である。なぜなら、デコーダ側では、最後位置を復号することで最後領域を特定でき、最後領域が分かればエンコーダと同様にしてどの領域のグループフラグが符号化されていないかを認識することができるからである。   The arithmetic encoding unit 205 arithmetically encodes the group flag and the significant coefficient flag scanned in a predetermined scanning order (for example, zigzag scanning). At this time, the decoder side can recognize where the unencoded group flag and significant coefficient flag are located. This is because the decoder can identify the last region by decoding the last position, and if the last region is known, it can recognize which region group flag is not encoded in the same manner as the encoder. .

<第1領域群の例>
次に、第1領域群の例について説明する。図6は、第1領域群を説明するための図である。図6(A)は、有意係数フラグで表された変換ブロックの一例を示す図である。図6(A)に示す有意係数フラグfr201は、例えばジグザグスキャンにおいて最後位置にある有意係数フラグである。
<Example of first region group>
Next, an example of the first region group will be described. FIG. 6 is a diagram for explaining the first region group. FIG. 6A is a diagram illustrating an example of a transform block represented by a significant coefficient flag. A significant coefficient flag fr201 illustrated in FIG. 6A is a significant coefficient flag at the last position in a zigzag scan, for example.

図6(A)に示すように、最後位置の左上方向の有意係数フラグを含む範囲ar201内のグループフラグが「1」と推定される。この推定は、例えばDCT(Discrete Cosine Transform)により周波数変換された係数値に対し、左上方向に非0の係数値が集まる傾向に基づく。   As shown in FIG. 6A, the group flag in the range ar201 including the significant coefficient flag in the upper left direction at the last position is estimated to be “1”. This estimation is based on the tendency for non-zero coefficient values to gather in the upper left direction with respect to coefficient values frequency-converted by DCT (Discrete Cosine Transform), for example.

図6(B)は、図6(A)の領域毎のグループフラグを示す図である。図6(B)に示すように、領域内に1つでも「1」の有意係数フラグがあればグループフラグは「1」になり、領域内全てが「0」の有意係数フラグであればグループフラグは「0」である。   FIG. 6B is a diagram showing the group flag for each region of FIG. As shown in FIG. 6B, if at least one significant coefficient flag is “1” in the area, the group flag is “1”, and if all the area is “0”, the group flag is “group”. The flag is “0”.

ここで、最後領域及び最後位置を用いた場合の第1領域群が、図6(B)に示される。推定部302は、最後領域及び最後位置を用いて、範囲ar202内にある領域を、グループフラグが「1」である領域と推定する。推定の詳細な方法については、図7〜11を用いて後述する。   Here, FIG. 6B shows the first region group when the last region and the last position are used. The estimation unit 302 uses the last region and the last position to estimate the region in the range ar202 as the region whose group flag is “1”. A detailed estimation method will be described later with reference to FIGS.

これにより、算術符号化部205は、第1領域群内のグループフラグを符号化せず、範囲ar203、ar204内のグループフラグを符号化する。算術符号化部205は、例えば、所定の走査順で走査し、符号化するグループフラグだけを符号化すればよい。最も右下の領域は、最後位置に基づきグループフラグが0であることが推定されるので、符号化されない。   Thereby, the arithmetic encoding unit 205 encodes the group flags in the ranges ar203 and ar204 without encoding the group flags in the first region group. For example, the arithmetic encoding unit 205 scans in a predetermined scanning order and encodes only the group flag to be encoded. The lower right region is not encoded because the group flag is estimated to be 0 based on the last position.

<推定処理>
次に、推定部302による推定処理について、具体例を用いて説明する。図7は、変換ブロックと領域との一例を示す図である。図7(A)は変換ブロックを示す。図7(A)に示す例では、変換ブロックとして16×16を用いて説明するが、32×32などでもよい。図7(A)に示す例では、変換ブロックを分割した領域をA[k][l](k=0〜3、l=0〜3)として表す。
<Estimation process>
Next, the estimation process by the estimation unit 302 will be described using a specific example. FIG. 7 is a diagram illustrating an example of transform blocks and regions. FIG. 7A shows a conversion block. In the example shown in FIG. 7A, the conversion block is described using 16 × 16, but 32 × 32 or the like may be used. In the example shown in FIG. 7A, a region obtained by dividing the transform block is represented as A [k] [l] (k = 0 to 3, l = 0 to 3).

図7(B)は、領域内の画素位置を示す。図7(B)に示す例では、領域内の画素位置をB[n][m](n=0〜3、m=0〜3)として表す。   FIG. 7B shows pixel positions in the region. In the example illustrated in FIG. 7B, the pixel position in the region is represented as B [n] [m] (n = 0 to 3, m = 0 to 3).

(推定例1)
図8は、推定例1を示す図である。図8では、特定部301が、最後領域をA[2][3]と特定した場合である(図8(A))。
(Estimation example 1)
FIG. 8 is a diagram illustrating a first estimation example. In FIG. 8, the specifying unit 301 specifies the last area as A [2] [3] (FIG. 8A).

このとき、推定部302は、最後領域A[2][3]よりも左上方向に存在する範囲ar302内にある領域(A[0〜1][0〜2])のグループフラグを「1」と推定し、範囲ar302内にある領域を第1領域群と推定する。また、推定部302は、最後領域であるA[2][3]も、グループフラグは「1」となるため、第1領域群に含める。   At this time, the estimation unit 302 sets the group flag of the region (A [0-1] [0-2]) in the range ar302 existing in the upper left direction from the last region A [2] [3] to “1”. And the region in the range ar302 is estimated as the first region group. The estimation unit 302 also includes A [2] [3], which is the last region, in the first region group because the group flag is “1”.

図8に示す例は、最後位置が、B[0][0]の場合の推定処理であり(図8(B))、また、最後位置を特定せず、最後領域のみで第1領域群を推定する場合の推定処理でもある。   The example shown in FIG. 8 is an estimation process in the case where the last position is B [0] [0] (FIG. 8B), and the last position is not specified and only the last area is the first area group. It is also an estimation process when estimating.

これにより、算術符号化部205は、範囲ar303、ar304内の領域のグループフラグだけを符号化すればよい。   Thereby, the arithmetic encoding unit 205 only has to encode the group flags of the regions in the ranges ar303 and ar304.

(推定例2)
図9は、推定例2を示す図である。図9では、特定部301が、最後領域をA[2][3]と特定し(図9(A))、最後位置をB[0][1〜3]のいずれかに特定した場合である(図9(B))。
(Estimation example 2)
FIG. 9 is a diagram illustrating a second estimation example. In FIG. 9, the identifying unit 301 identifies the last area as A [2] [3] (FIG. 9A) and identifies the last position as one of B [0] [1-3]. Yes (FIG. 9B).

このとき、推定部302は、最後領域A[2][3]よりも左上方向に存在する領域(A[0〜1][0〜2])のグループフラグを「1」と推定する。また、推定部302は、最後位置の上方向にも「1」の有意係数フラグがあると推定し、領域A[0][3]、A[1][3]を第1領域群に含める。よって、推定部302は、範囲ar402内にある領域を第1領域群と推定する。また、推定部302は、最後領域であるA[2][3]も、グループフラグは「1」となるため、第1領域群に含める。   At this time, the estimation unit 302 estimates the group flag of the area (A [0-1] [0-2]) existing in the upper left direction from the last area A [2] [3] as “1”. The estimation unit 302 also estimates that there is a significant coefficient flag of “1” in the upward direction at the last position, and includes the regions A [0] [3] and A [1] [3] in the first region group. . Therefore, the estimation unit 302 estimates the area within the range ar402 as the first area group. The estimation unit 302 also includes A [2] [3], which is the last region, in the first region group because the group flag is “1”.

これにより、算術符号化部205は、範囲ar403内の領域のグループフラグだけを符号化すればよい。   Thereby, the arithmetic encoding unit 205 only has to encode the group flag of the region in the range ar403.

(推定例3)
図10は、推定例3を示す図である。図10では、特定部301が、最後領域をA[2][3]と特定し(図10(A))、最後位置をB[1〜3][0]のいずれかに特定した場合である(図10(B))。
(Estimation example 3)
FIG. 10 is a diagram illustrating a third estimation example. In FIG. 10, the identifying unit 301 identifies the last area as A [2] [3] (FIG. 10A) and identifies the last position as one of B [1-3] [0]. (FIG. 10B).

このとき、推定部302は、最後領域A[2][3]よりも左上方向に存在する領域(A[0〜1][0〜2])のグループフラグを「1」と推定する。また、推定部302は、最後位置の左方向にも「1」の有意係数フラグがあると推定し、領域A[2][0]、A[2][1]、A[2][2]を第1領域群に含める。よって、推定部302は、範囲ar502内にある領域を第1領域群と推定する。また、推定部302は、最後領域であるA[2][3]も、グループフラグは「1」となるため、第1領域群に含める。   At this time, the estimation unit 302 estimates the group flag of the area (A [0-1] [0-2]) existing in the upper left direction from the last area A [2] [3] as “1”. The estimation unit 302 also estimates that there is a significant coefficient flag of “1” in the left direction of the last position, and the regions A [2] [0], A [2] [1], A [2] [2 ] Are included in the first region group. Therefore, the estimation unit 302 estimates the area within the range ar502 as the first area group. The estimation unit 302 also includes A [2] [3], which is the last region, in the first region group because the group flag is “1”.

これにより、算術符号化部205は、範囲ar503、ar504内の領域のグループフラグだけを符号化すればよい。   Thereby, the arithmetic encoding unit 205 only has to encode the group flags of the areas in the ranges ar503 and ar504.

(推定例4)
図11は、推定例4を示す図である。図11では、特定部301が、最後領域をA[2][3]と特定し(図11(A))、最後位置をB[1〜3][1〜3]のいずれかに特定した場合である(図11(B))。
(Estimation example 4)
FIG. 11 is a diagram illustrating a fourth estimation example. In FIG. 11, the specifying unit 301 specifies the last area as A [2] [3] (FIG. 11A) and specifies the last position as one of B [1-3] [1-3]. This is the case (FIG. 11B).

このとき、推定部302は、最後領域A[2][3]よりも左上方向に存在する領域(A[0〜1][0〜2])のグループフラグを「1」と推定する。また、推定部302は、最後位置の上方向及び左方向にも「1」の有意係数フラグがあると推定し、領域A[0][3]、A[1][3]、A[2][0]、A[2][1]、A[2][2]を第1領域群に含める。よって、推定部302は、範囲ar602内にある領域を第1領域群と推定する。また、推定部302は、最後領域であるA[2][3]も、グループフラグは「1」となるため、第1領域群に含める。   At this time, the estimation unit 302 estimates the group flag of the area (A [0-1] [0-2]) existing in the upper left direction from the last area A [2] [3] as “1”. The estimation unit 302 also estimates that there are significant coefficient flags of “1” in the upward and left directions of the last position, and the regions A [0] [3], A [1] [3], and A [2 ] [0], A [2] [1], A [2] [2] are included in the first region group. Therefore, the estimation unit 302 estimates the area within the range ar602 as the first area group. The estimation unit 302 also includes A [2] [3], which is the last region, in the first region group because the group flag is “1”.

これにより、算術符号化部205は、範囲ar603内の領域のグループフラグだけを符号化すればよい。   Thereby, the arithmetic encoding unit 205 only has to encode the group flag of the area within the range ar603.

以上の推定処理により、図2に示す従来技術よりも、符号化されるグループフラグの数を削減することができ、符号化効率の向上を図ることができる。   With the above estimation process, the number of group flags to be encoded can be reduced as compared with the prior art shown in FIG. 2, and the encoding efficiency can be improved.

<動作>
次に、実施例1における画像符号化装置10の動作について説明する。図12は、実施例1におけるシンタックス要素の1つである有意係数フラグに関する符号化処理の一例を示すフローチャートである。図12に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
<Operation>
Next, the operation of the image encoding device 10 in the first embodiment will be described. FIG. 12 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag that is one of syntax elements in the first embodiment. The process shown in FIG. 12 shows the arithmetic coding process with respect to a significant coefficient flag and a group flag.

ステップS101で、特定部301は、変換ブロック内の複数の領域に対し、最後の非0係数値を含む領域(最後領域)を特定する。また、特定部301は、さらに、領域内における最後の非0係数値の位置(最後位置)を特定してもよい。   In step S101, the specifying unit 301 specifies a region (last region) including the last non-zero coefficient value for a plurality of regions in the transform block. Further, the specifying unit 301 may further specify the position (last position) of the last non-zero coefficient value in the region.

ステップS102で、推定部302は、最後領域の位置を用いて、グループフラグが「1」となる可能性が高い領域を含む第1領域群を推定する(例えば図8参照)。推定部302は、最後位置が特定されている場合は、最後位置を用いて第1領域群の領域を拡張してもよい(例えば図9〜11参照)。   In step S102, the estimation unit 302 uses the position of the last region to estimate a first region group including a region where the group flag is likely to be “1” (see, for example, FIG. 8). When the last position is specified, the estimation unit 302 may expand the area of the first area group using the last position (see, for example, FIGS. 9 to 11).

ステップS103で、推定部302は、第1領域群を、符号化不要領域として決定する。従って、推定部302は、第1領域群を含む符号化不要領域以外の領域のグループフラグを算術符号化部205に出力する。符号化不要領域は、第1領域群の領域と、最後領域以降に走査される領域とを含む。   In step S103, the estimation unit 302 determines the first area group as an encoding unnecessary area. Therefore, the estimation unit 302 outputs the group flags of the regions other than the encoding unnecessary region including the first region group to the arithmetic encoding unit 205. The encoding unnecessary area includes an area of the first area group and an area scanned after the last area.

ステップS104で、算術符号化部205は、最後位置と、符号化が不要な領域以外の領域のグループフラグと、グループフラグが「1」(推定された「1」も含む)を示す領域の有意係数フラグとを算術符号化する。   In step S104, the arithmetic encoding unit 205 determines the significance of the last position, the group flag of the region other than the region that does not require encoding, and the region where the group flag indicates “1” (including the estimated “1”). Coefficient flags are arithmetically encoded.

なお、ステップS103の符号化不要決定処理は、第1領域群のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。   Note that the encoding unnecessary determination process in step S103 can be determined in advance not to output the group flag of the first region group, and is not necessarily a necessary process.

以上、実施例1によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、符号化効率の改善を図ることができる。また、実施例1によれば、最後位置を特定することで、第1領域群を拡張することで、さらなる符号化効率の改善を図ることができる。   As described above, according to the first embodiment, when a group flag is introduced into a significant coefficient flag used in arithmetic coding, it is possible to improve coding efficiency. Further, according to the first embodiment, it is possible to further improve the coding efficiency by specifying the last position and expanding the first region group.

[実施例2]
次に、実施例2における画像符号化装置について説明する。実施例2では、最後領域の位置を用いて、グループフラグが「0」となる領域を推定することで、グループフラグを符号化しなくて済み、さらなる符号化効率の改善を図ることができる。
[Example 2]
Next, an image coding apparatus according to the second embodiment will be described. In the second embodiment, by estimating the region where the group flag is “0” using the position of the last region, it is not necessary to encode the group flag, and the encoding efficiency can be further improved.

<構成>
実施例2における画像符号化装置、エントロピー符号化部の構成は、実施例1の図3、図4に示す構成と同様であるため、同じ符号を用いて説明する。実施例2では、削減部203の処理が実施例1と異なるため、実施例2では、削減部203bと表記し、以下では削減部203bを主に説明する。
<Configuration>
The configurations of the image encoding device and the entropy encoding unit in the second embodiment are the same as the configurations illustrated in FIGS. 3 and 4 of the first embodiment, and therefore, description will be made using the same reference numerals. In the second embodiment, the processing of the reduction unit 203 is different from that of the first embodiment. Therefore, in the second embodiment, the reduction unit 203b is described, and the reduction unit 203b will be mainly described below.

<削減部>
図13は、実施例2における削減部203bの構成の一例を示すブロック図である。図13に示す削減部203bの構成のうち、図5に示す構成と同様のものは同じ符号を付す。以下では、推定部401を主に説明する。
<Reduction Department>
FIG. 13 is a block diagram illustrating an example of the configuration of the reduction unit 203b according to the second embodiment. Among the configurations of the reduction unit 203b illustrated in FIG. 13, the same components as those illustrated in FIG. Hereinafter, the estimation unit 401 will be mainly described.

推定部401は、第1領域群推定部411と、第2領域群推定部412と、不要領域決定部413とを有する。第1領域群推定部411は、実施例1における第1領域群推定部321と同様の処理を行い、第1領域群を推定する。   The estimation unit 401 includes a first region group estimation unit 411, a second region group estimation unit 412, and an unnecessary region determination unit 413. The first region group estimation unit 411 performs the same process as the first region group estimation unit 321 in the first embodiment, and estimates the first region group.

第2領域群推定部412は、特定部301により特定された最後領域の位置を用いて、上述した第1領域群と、全ての有意係数フラグが0の係数値を示すグループフラグを有する領域を含む第2領域群とを推定する。第2領域群推定部412は、例えば、第1領域群以外の領域を第2領域群と推定する。   The second region group estimation unit 412 uses the position of the last region identified by the identifying unit 301 to determine a region having the above-described first region group and a group flag in which all significant coefficient flags have coefficient values of 0. The second region group to be included is estimated. For example, the second region group estimation unit 412 estimates a region other than the first region group as the second region group.

不要領域決定部413は、符号化不要領域として、第1領域群と第2領域群とを決定し、第1領域群及び第2領域群のグループフラグを出力しない。これにより、グループフラグは一切符号化されないことになり、符号化効率を高めることができる。   The unnecessary area determination unit 413 determines the first area group and the second area group as encoding unnecessary areas, and does not output the group flags of the first area group and the second area group. Thereby, the group flag is not encoded at all, and the encoding efficiency can be improved.

ここで、第2領域群の中に、実際はグループフラグが「1」となる領域が含まれている場合でも、画質にそれほど影響を与えないと考えられる。この理由は、第2領域群は、変換ブロックの右側方向、下側方向の領域であるため、周波数変換後の係数値の特性を考慮すれば、画質にそれほど影響を与える領域ではないからである。   Here, it is considered that the image quality is not so much affected even if the second region group actually includes a region whose group flag is “1”. This is because the second region group is a region in the right direction and the lower direction of the transform block, and is not a region that greatly affects the image quality in consideration of the characteristic of the coefficient value after frequency conversion. .

<推定処理>
次に、推定部401による推定処理について、具体例を用いて説明する。
<Estimation process>
Next, the estimation process by the estimation unit 401 will be described using a specific example.

(推定例5)
図14は、推定例5を示す図である。図14では、特定部301が、最後領域をA[2][3]と特定した場合である(図14(A))。
(Estimation example 5)
FIG. 14 is a diagram illustrating a fifth estimation example. In FIG. 14, the specifying unit 301 specifies the last area as A [2] [3] (FIG. 14A).

このとき、推定部401は、最後領域A[2][3]よりも左上方向に存在する範囲ar702内にある領域(A[0〜1][0〜2])のグループフラグを「1」と推定し、範囲ar702内にある領域を第1領域群と推定する。また、推定部401は、最後領域であるA[2][3]も、グループフラグは「1」となるため、第1領域群に含める。   At this time, the estimation unit 401 sets the group flag of the region (A [0-1] [0-2]) in the range ar702 existing in the upper left direction from the last region A [2] [3] to “1”. And the region within the range ar702 is estimated as the first region group. The estimation unit 401 also includes A [2] [3], which is the last region, in the first region group because the group flag is “1”.

また、推定部401は、範囲ar703、ar704内の領域を第2領域群と推定する。推定部401は、例えば、第1領域群以外の領域を第2領域群と推定する。   In addition, the estimation unit 401 estimates the areas in the ranges ar703 and ar704 as the second area group. For example, the estimation unit 401 estimates a region other than the first region group as the second region group.

図14に示す例は、最後位置が、B[0][0]の場合の推定処理であり(図14(B))、また、最後位置を特定せず、最後領域のみで第1領域群を推定する場合の推定処理である。   The example shown in FIG. 14 is an estimation process in the case where the last position is B [0] [0] (FIG. 14 (B)), and the first area group is determined only by the last area without specifying the last position. This is an estimation process when estimating.

これにより、算術符号化部205は、グループフラグを符号化しなくてもよく、さらなる符号化効率の改善を図ることができる。   Thereby, the arithmetic encoding unit 205 does not need to encode the group flag, and can further improve the encoding efficiency.

なお、特定部301で最後位置を特定する場合は、図9〜11に示す例で、推定部401は、第1領域群以外の領域を第2領域群に推定する。   In addition, when specifying the last position with the specification part 301, the estimation part 401 estimates area | regions other than a 1st area group to a 2nd area group by the example shown to FIGS.

<動作>
次に、実施例2における画像符号化装置10の動作について説明する。図15は、実施例2におけるシンタックス要素の1つある有意係数フラグに関する符号化処理の一例を示すフローチャートである。図15に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
<Operation>
Next, the operation of the image encoding device 10 according to the second embodiment will be described. FIG. 15 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag having one syntax element according to the second embodiment. The process shown in FIG. 15 shows an arithmetic encoding process for the significant coefficient flag and the group flag.

ステップS201の処理は、図12に示すステップS101の処理と同様であるため、その説明を省略する。   The processing in step S201 is the same as the processing in step S101 shown in FIG.

ステップS202で、推定部401は、最後領域の位置を用いて、グループフラグが「1」となる可能性が高い領域を含む第1領域群を推定する。推定部401は、最後領域の位置を用いて、グループフラグが「0」となる可能性が高い領域を含む第2領域群を推定する(例えば図14参照)。推定部302は、最後位置が特定されている場合は、最後位置を用いて第1領域群の領域を拡張してもよい。   In step S202, the estimation unit 401 uses the position of the last region to estimate a first region group including a region where the group flag is likely to be “1”. The estimation unit 401 uses the position of the last region to estimate a second region group including a region where the group flag is likely to be “0” (see, for example, FIG. 14). When the last position is specified, the estimation unit 302 may expand the area of the first area group using the last position.

ステップS203で、推定部401は、第1領域群と第2領域群とを、符号化不要領域として決定する。従って、推定部401は、最後位置と、グループフラグが「1」の領域内の有意係数フラグとを算術符号化部205に出力する。   In step S203, the estimation unit 401 determines the first region group and the second region group as encoding-unnecessary regions. Therefore, the estimation unit 401 outputs the last position and the significant coefficient flag in the region with the group flag “1” to the arithmetic coding unit 205.

ステップS204で、算術符号化部205は、最後位置と、グループフラグが「1」(推定された「1」も含む)を示す領域の有意係数フラグとを算術符号化する。   In step S204, the arithmetic encoding unit 205 arithmetically encodes the last position and the significant coefficient flag in the region where the group flag indicates “1” (including the estimated “1”).

なお、ステップS203の符号化不要決定処理は、符号化不要領域のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。   Note that the encoding unnecessary determination process in step S203 can be determined in advance not to output the group flag of the encoding unnecessary area, and is not necessarily a necessary process.

以上、実施例2によれば、算術符号化で用いる有意係数フラグにグループフラグを導入する場合に、グループフラグを推定することで符号化の必要がなくなり、さらなる符号化効率の改善を図ることができる。   As described above, according to the second embodiment, when a group flag is introduced into a significant coefficient flag used in arithmetic coding, it is not necessary to perform coding by estimating the group flag, thereby further improving coding efficiency. it can.

[実施例3]
次に、実施例3における画像符号化装置について説明する。実施例3では、実施例1の推定処理を適用するか、実施例2の推定処理を適用するかを、フラグを用いて決定し、適応的な推定処理を可能することで、符号化効率の改善を図ることができる。
[Example 3]
Next, an image coding apparatus according to the third embodiment will be described. In the third embodiment, whether to apply the estimation processing of the first embodiment or the estimation processing of the second embodiment is determined using a flag, and adaptive estimation processing can be performed. Improvements can be made.

<構成>
実施例3における画像符号化装置、エントロピー符号化部の構成は、実施例1の図3、図4に示す構成と同様であるため、同じ符号を用いて説明する。実施例3では、削減部203の処理が実施例1、2と異なるため、実施例3では、削減部203cと表記し、以下では削減部203cを主に説明する。
<Configuration>
Since the configurations of the image encoding device and the entropy encoding unit in the third embodiment are the same as the configurations illustrated in FIGS. 3 and 4 of the first embodiment, the description will be made using the same reference numerals. In the third embodiment, the processing of the reduction unit 203 is different from those of the first and second embodiments. Therefore, in the third embodiment, the reduction unit 203c is described, and the reduction unit 203c will be mainly described below.

<削減部>
図16は、実施例3における削減部203cの構成の一例を示すブロック図である。図16に示す削減部203cの構成のうち、図5に示す構成と同様のものは同じ符号を付す。以下では、推定部501を主に説明する。
<Reduction Department>
FIG. 16 is a block diagram illustrating an example of the configuration of the reduction unit 203c according to the third embodiment. Among the configurations of the reduction unit 203c illustrated in FIG. 16, the same components as those illustrated in FIG. Below, the estimation part 501 is mainly demonstrated.

推定部501は、第1領域群推定部511と、決定部512と、第2領域群推定部513と、不要領域決定部514とを有する。第1領域群推定部411は、実施例1における第1領域群推定部321と同様の処理を行い、第1領域群を推定する。   The estimation unit 501 includes a first region group estimation unit 511, a determination unit 512, a second region group estimation unit 513, and an unnecessary region determination unit 514. The first region group estimation unit 411 performs the same process as the first region group estimation unit 321 in the first embodiment, and estimates the first region group.

決定部512は、第1領域群以外の領域のグループフラグの値に基づいて、第2領域群を推定するか否かを決定する。決定部512は、例えば、第1領域以外の領域のグループフラグが「1」である個数をカウントし、この個数が閾値以下であれば、第2領域群を推定すると決定する。閾値は、予め設定されていればよい。また、決定部512は、決定内容を示す使用フラグを定める。使用フラグは、例えばsignificant_coeffgroup_flag_useと表記する。   The determination unit 512 determines whether or not to estimate the second region group based on the value of the group flag of the region other than the first region group. For example, the determination unit 512 counts the number of areas other than the first area where the group flag is “1”, and determines that the second area group is estimated if the number is equal to or less than the threshold. The threshold may be set in advance. Moreover, the determination part 512 determines the use flag which shows the determination content. The usage flag is expressed as significant_coeffgroup_flag_use, for example.

決定部512は、閾値を0とした場合、第1領域群以外の領域のグループフラグが全て「0」の場合に、第2領域群の推定を行うと決定し、例えばsignificant_coeffgroup_flag_use=0を設定する。また、決定部512は、カウントした個数が1以上の場合に、第2領域群の推定を行わないことを決定し、例えばsignificant_coeffgroup_flag_use=1を設定する。決定部512は、設定した使用フラグを第2領域群推定部513及び不要領域決定部514に出力する。   When the threshold value is set to 0, the determination unit 512 determines to perform estimation of the second region group when all the group flags of the regions other than the first region group are “0”. For example, significant_coeffgroup_flag_use = 0 is set. . Further, when the counted number is 1 or more, the determination unit 512 determines not to estimate the second region group, and sets, for example, significant_coeffgroup_flag_use = 1. The determination unit 512 outputs the set use flag to the second region group estimation unit 513 and the unnecessary region determination unit 514.

決定部512は、閾値を0とすることで、画質の劣化はなく、符号化効率の改善を図ることができる。また、決定部512は、閾値を1以上の値とした場合は、画質の劣化は多少あるかもしれないが、符号化効率の改善を図ることができる。   By setting the threshold value to 0, the determination unit 512 can improve the coding efficiency without deterioration of image quality. In addition, when the threshold is set to a value of 1 or more, the determination unit 512 may improve the coding efficiency although there may be some degradation in image quality.

図17は、各領域のグループフラグの例を示す図である。この例では、決定部512により用いられる閾値を0とする。図17(A)に示す例では、決定部512は、第1領域群ar801以外の領域のグループフラグが全て0であるため(個数≦閾値)、使用フラグを0に設定する。図17(B)に示す例では、決定部512は、第1領域群ar802以外の領域のグループフラグに1があるため(個数>閾値)、使用フラグを1に設定する。   FIG. 17 is a diagram illustrating an example of the group flag of each region. In this example, the threshold value used by the determination unit 512 is set to 0. In the example shown in FIG. 17A, the determination unit 512 sets the use flag to 0 because the group flags of the areas other than the first area group ar801 are all 0 (number ≦ threshold). In the example shown in FIG. 17B, the determination unit 512 sets the use flag to 1 because the group flag of the area other than the first area group ar802 is 1 (number> threshold).

図16に戻り、第2領域群推定部513は、使用フラグが0である場合に、第2領域群の推定処理を行い、使用フラグが1である場合に、第2領域群の推定処理を行わない。   Returning to FIG. 16, the second region group estimation unit 513 performs the second region group estimation process when the use flag is 0, and performs the second region group estimation process when the use flag is 1. Not performed.

不要領域決定部514は、使用フラグが1であれば、実施例1で説明したように、第1領域群を符号化不要領域に決定し、使用フラグが0であれば、実施例2で説明したように、第1領域群と第2領域群とを符号化不要領域に決定する。   If the use flag is 1, the unnecessary area determination unit 514 determines the first area group as an encoding unnecessary area as described in the first embodiment, and if the use flag is 0, the unnecessary area determination section 514 is described in the second embodiment. As described above, the first region group and the second region group are determined as the encoding unnecessary regions.

これにより、実施例3では、使用フラグを用いて、実施例1の処理と、実施例2の処理とを適応的に選択することができる。   Thereby, in the third embodiment, it is possible to adaptively select the processing in the first embodiment and the processing in the second embodiment using the use flag.

<動作>
次に、実施例3における画像符号化装置10の動作について説明する。図18は、実施例3におけるシンタックス要素の1つある有意係数フラグに関する符号化処理の一例を示すフローチャートである。図18に示す処理は、有意係数フラグやグループフラグに対する算術符号化処理を示す。
<Operation>
Next, the operation of the image encoding device 10 according to the third embodiment will be described. FIG. 18 is a flowchart illustrating an example of an encoding process related to a significant coefficient flag having one syntax element according to the third embodiment. The process shown in FIG. 18 shows the arithmetic coding process for the significant coefficient flag and the group flag.

ステップS301〜S302の処理は、図12に示すステップS101〜S102の処理と同様であるため、その説明を省略する。   The processing in steps S301 to S302 is the same as the processing in steps S101 to S102 shown in FIG.

ステップS303で、決定部512は、第1領域群以外の領域のグループフラグの値に基づいて、第2領域群を推定するか否かを示す使用フラグを設定する。決定部512は、第1領域群以外の領域のグループフラグの値が「1」である個数をカウントし、この個数と閾値とを比較することで使用フラグを設定する。   In step S303, the determination unit 512 sets a use flag indicating whether or not to estimate the second region group based on the group flag values of regions other than the first region group. The determination unit 512 counts the number of group flag values of “1” in regions other than the first region group, and sets the use flag by comparing this number with a threshold value.

ステップS304で、第2領域群推定部513は、使用フラグが「1」であるか否かを判定する。使用フラグが「1」であれば(ステップS304−YES)ステップS306に進み、使用フラグが「0」であれば(ステップS304−NO)ステップS305に進む。   In step S304, the second region group estimation unit 513 determines whether or not the use flag is “1”. If the use flag is “1” (step S304—YES), the process proceeds to step S306, and if the use flag is “0” (step S304—NO), the process proceeds to step S305.

ステップS305で、第2領域群推定部513は、実施例2と同様にして、第2領域群を推定する。   In step S305, the second region group estimation unit 513 estimates the second region group in the same manner as in the second embodiment.

ステップS306で、不要領域決定部514は、使用フラグが「1」であれば第1領域群を符号化不要領域に決定し、使用フラグ「0」であれば第1領域群及び第2領域群を符号化不要領域に決定する。従って、推定部501は、最後位置と、使用フラグと、グループフラグが「1」(推定された「1」も含む)の領域内の有意係数フラグと、使用フラグが「1」の場合は符号化不要領域以外のグループフラグとを算術符号化部205に出力する。   In step S306, if the use flag is “1”, the unnecessary area determination unit 514 determines the first area group as an encoding unnecessary area, and if the use flag is “0”, the first area group and the second area group. Is determined as an encoding unnecessary area. Therefore, the estimation unit 501 uses the sign when the last position, the use flag, the significant coefficient flag in the region where the group flag is “1” (including the estimated “1”), and the use flag is “1”. The group flags other than the conversion unnecessary area are output to the arithmetic encoding unit 205.

ステップS307で、算術符号化部205は、最後位置と、使用フラグと、グループフラグが「1」(推定された「1」も含む)を示す領域の有意係数フラグと、使用フラグが「1」の場合は符号化不要領域以外のグループフラグとを算術符号化する。   In step S307, the arithmetic encoding unit 205 determines that the last position, the use flag, the significant coefficient flag of the area where the group flag indicates “1” (including the estimated “1”), and the use flag is “1”. In the case of, the group flags other than the encoding unnecessary area are arithmetically encoded.

なお、ステップS306の符号化不要決定処理は、符号化不要領域のグループフラグを出力しないと予め決定しておくことが可能であり、必ずしも必要な処理ではない。   Note that the encoding unnecessary determination process in step S306 can be determined in advance not to output the group flag of the encoding unnecessary area, and is not necessarily a necessary process.

以上、実施例3によれば、実施例1の処理と実施例2の処理とを適応的に選択可能とすることで、符号化効率の改善を図ることができる。   As described above, according to the third embodiment, the encoding efficiency can be improved by adaptively selecting the processing of the first embodiment and the processing of the second embodiment.

[実施例4]
次に、実施例4における画像復号装置60について説明する。実施例4における画像復号装置40は、実施例1〜3における画像符号化装置10で符号化されたビットストリームを復号する装置である。
[Example 4]
Next, the image decoding apparatus 60 in Example 4 is demonstrated. The image decoding device 40 according to the fourth embodiment is a device that decodes the bitstream encoded by the image encoding device 10 according to the first to third embodiments.

<構成>
図19は、実施例4における画像復号装置60の概略構成の一例を示すブロック図である。図19に示すように、画像復号装置60は、エントロピー復号部601、逆量子化部602、逆直交変換部603、イントラ予測部604、復号情報記憶部605、インター予測部606、予測画像選択部607、復号画像生成部608、ループフィルタ部610、及びフレームメモリ611を有する。各部についての概略を以下に説明する。
<Configuration>
FIG. 19 is a block diagram illustrating an example of a schematic configuration of the image decoding device 60 according to the fourth embodiment. As illustrated in FIG. 19, the image decoding device 60 includes an entropy decoding unit 601, an inverse quantization unit 602, an inverse orthogonal transform unit 603, an intra prediction unit 604, a decoding information storage unit 605, an inter prediction unit 606, and a prediction image selection unit. 607, a decoded image generation unit 608, a loop filter unit 610, and a frame memory 611. An outline of each part will be described below.

エントロピー復号部601は、ビットストリームが入力されると、画像符号化装置10のエントロピー符号化に対応するエントロピー復号を行う。エントロピー復号部601により復号された予測誤差信号などは逆量子化部602に出力される。また、復号したフィルタ係数や、インター予測されている場合の、復号された動きベクトルなどは復号情報記憶部605に出力される。   When the bit stream is input, the entropy decoding unit 601 performs entropy decoding corresponding to the entropy encoding of the image encoding device 10. The prediction error signal decoded by the entropy decoding unit 601 is output to the inverse quantization unit 602. Also, the decoded filter coefficient, the decoded motion vector when inter prediction is performed, and the like are output to the decoded information storage unit 605.

また、エントロピー復号部601は、イントラ予測の場合、イントラ予測部604にその旨通知する。また、エントロピー復号部601は、復号対象画像がインター予測されているか、イントラ予測されているかを予測画像選択部607に通知する。エントロピー復号部601に対する有意係数フラグに関する復号処理は、図20を用いて後述する。   Further, in the case of intra prediction, the entropy decoding unit 601 notifies the intra prediction unit 604 to that effect. Further, the entropy decoding unit 601 notifies the predicted image selection unit 607 whether the decoding target image is inter predicted or intra predicted. Decoding processing related to the significant coefficient flag for the entropy decoding unit 601 will be described later with reference to FIG.

逆量子化部602は、エントロピー復号部601からの出力信号に対して逆量子化処理を行う。逆量子化された出力信号は逆直交変換部603に出力される。   The inverse quantization unit 602 performs inverse quantization processing on the output signal from the entropy decoding unit 601. The inversely quantized output signal is output to the inverse orthogonal transform unit 603.

逆直交変換部603は、逆量子化部602からの出力信号の復号ブロックに対して逆直交変換処理を行い、残差信号を生成する。残差信号は復号画像生成部608に出力される。   The inverse orthogonal transform unit 603 performs an inverse orthogonal transform process on the decoded block of the output signal from the inverse quantization unit 602 to generate a residual signal. The residual signal is output to the decoded image generation unit 608.

イントラ予測部604は、フレームメモリ611から取得する復号対象画像のすでに復号化された周辺画素から、複数の予測方向を用いて予測画像を生成する。   The intra prediction unit 604 generates a predicted image using a plurality of prediction directions from the peripheral pixels already decoded of the decoding target image acquired from the frame memory 611.

復号情報記憶部605は、復号されたループフィルタのフィルタ係数や動きベクトルや分割モードなどの復号情報を記憶する。   The decoding information storage unit 605 stores decoding information such as filter coefficients, motion vectors, and division modes of the decoded loop filter.

インター予測部606は、フレームメモリ611から取得した参照画像のデータを復号情報記憶部605から取得する動きベクトルや分割モードを用いて動き補償する。これにより、動き補償された参照画像としてのブロックデータが生成される。インター予測部606は、予測ブロックの情報を逆直交変換部603に通知する。   The inter prediction unit 606 performs motion compensation on the reference image data acquired from the frame memory 611 using the motion vector and the division mode acquired from the decoded information storage unit 605. Thereby, block data as a motion-compensated reference image is generated. The inter prediction unit 606 notifies the information of the prediction block to the inverse orthogonal transform unit 603.

予測画像選択部607は、イントラ予測画像、又はインター予測画像どちらか一方の予測画像を選択する。選択されたブロックデータは、復号画像生成部608に出力される。   The predicted image selection unit 607 selects either the intra predicted image or the inter predicted image. The selected block data is output to the decoded image generation unit 608.

復号画像生成部608は、予測画像選択部607から出力される予測画像と、逆直交変換部403から出力される残差信号とを加算し、復号画像を生成する。生成された復号画像はループフィルタ部610に出力される。   The decoded image generation unit 608 adds the predicted image output from the predicted image selection unit 607 and the residual signal output from the inverse orthogonal transform unit 403 to generate a decoded image. The generated decoded image is output to the loop filter unit 610.

ループフィルタ部610は、復号画像生成部608から出力された復号画像に対し、ブロック歪を低減するためのフィルタをかけ、ループフィルタ処理後の復号画像をフレームメモリ611に出力する。なお、ループフィルタ後の復号画像は表示装置などに出力されてもよい。   The loop filter unit 610 applies a filter for reducing block distortion to the decoded image output from the decoded image generation unit 608, and outputs the decoded image after the loop filter processing to the frame memory 611. Note that the decoded image after the loop filter may be output to a display device or the like.

フレームメモリ611は、参照画像となる復号画像などを記憶する。なお、復号情報記憶手段605とフレームメモリ611は、分けた構成にしているが、同じ記憶部であってもよい。   The frame memory 611 stores a decoded image that serves as a reference image. The decoded information storage unit 605 and the frame memory 611 are configured separately, but may be the same storage unit.

<エントロピー復号部の構成>
次に、エントロピー復号部601の構成について説明する。図20は、実施例4におけるエントロピー復号部601の構成の一例を示すブロック図である。図20に示すエントロピー復号部601は、位置復号部701と、特定部702と、第1フラグ復号部703と、第2フラグ復号部704と、係数値復号部705とを有する。以下では、有意係数フラグに関する復号処理を説明する。
<Configuration of entropy decoding unit>
Next, the configuration of the entropy decoding unit 601 will be described. FIG. 20 is a block diagram illustrating an example of the configuration of the entropy decoding unit 601 according to the fourth embodiment. The entropy decoding unit 601 illustrated in FIG. 20 includes a position decoding unit 701, a specifying unit 702, a first flag decoding unit 703, a second flag decoding unit 704, and a coefficient value decoding unit 705. Below, the decoding process regarding a significant coefficient flag is demonstrated.

位置復号部701は、入力されたストリームのうち、直交変換の対象ブロックに対し、所定の走査順(例えばジグザグスキャン)で最後の非0の係数値の位置(最後位置)を復号する。   The position decoding unit 701 decodes the position (last position) of the last non-zero coefficient value in a predetermined scanning order (for example, zigzag scan) with respect to the target block for orthogonal transformation in the input stream.

特定部702は、位置復号部701により復号された係数値の位置に基づき、対象ブロックが分割された複数の領域に対し、最後の非0の係数値を有する領域(最後領域)を特定する。これにより、画像符号化装置10と同様の最後領域を特定することができる。   Based on the position of the coefficient value decoded by the position decoding unit 701, the specifying unit 702 specifies a region (last region) having the last non-zero coefficient value for a plurality of regions into which the target block is divided. Thereby, the last area similar to that of the image encoding device 10 can be specified.

第1フラグ復号部703は、特定部702により特定された最後領域に基づき、CABACのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する。   The first flag decoding unit 703 determines whether the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all of the areas based on the last area specified by the specifying unit 702. Is decoded.

第1フラグ復号部703は、例えば、最後領域より左上方向のグループフラグは「1」と推定して取得し、ストリームに含まれる符号化されたグループフラグを復号して、残りの領域のグループフラグを取得する。この場合、対象ブロックの各領域のグループフラグを取得する処理をグループフラグの復号処理と称す。   For example, the first flag decoding unit 703 estimates and acquires the group flag in the upper left direction from the last region as “1”, decodes the encoded group flag included in the stream, and performs group flag of the remaining region To get. In this case, the process of acquiring the group flag of each area of the target block is referred to as a group flag decoding process.

また、第1フラグ復号部703は、符号化されたグループフラグがストリームに含まれない場合は、最後領域に基づき、グループフラグが「1」の領域と、「0」の領域とを推定して取得する。   In addition, when the encoded group flag is not included in the stream, the first flag decoding unit 703 estimates the region having the group flag “1” and the region “0” based on the last region. get.

また、第1フラグ復号部703は、使用フラグが復号された場合、使用フラグの値に応じて、適応的にグループフラグの復号処理を変更する。   Further, when the use flag is decoded, the first flag decoding unit 703 adaptively changes the group flag decoding process according to the value of the use flag.

第2フラグ復号部704は、第1フラグ復号部704により復号されたグループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ有することを示す値である領域に対し、この領域の有意係数フラグを復号する。   The second flag decoding unit 704 applies a group flag value decoded by the first flag decoding unit 704 to a region having a value indicating that there is at least one significant coefficient flag indicating a non-zero coefficient value. Decode the significant coefficient flag of the region.

例えば、第2フラグ復号部704は、グループフラグが「1」を示す領域に対し、この領域内の有意係数フラグを復号する。   For example, the second flag decoding unit 704 decodes the significant coefficient flag in the region where the group flag indicates “1”.

なお、位置復号部701、第1フラグ復号部703、第2フラグ復号部704は、画像符号化装置10の算術符号化に対応する復号処理を行う。   Note that the position decoding unit 701, the first flag decoding unit 703, and the second flag decoding unit 704 perform a decoding process corresponding to the arithmetic encoding of the image encoding device 10.

係数値復号部705は、有意係数フラグが「1」の画素位置に対応する係数値を復号する。係数値復号部705は、画像符号化装置10の可変長符号化に対応する復号処理を行う。復号された係数値は、逆量子化部602に出力される。   The coefficient value decoding unit 705 decodes the coefficient value corresponding to the pixel position whose significant coefficient flag is “1”. The coefficient value decoding unit 705 performs a decoding process corresponding to the variable length encoding of the image encoding device 10. The decoded coefficient value is output to the inverse quantization unit 602.

これにより、実施例1〜3の画像符号化装置10により符号化されたストリームを適切に復号することができる。   Thereby, the stream encoded by the image encoding device 10 according to the first to third embodiments can be appropriately decoded.

<動作>
次に、画像復号装置60の動作について説明する。図21は、実施例4における有意係数フラグに関する復号処理の一例を示すフローチャートである。
<Operation>
Next, the operation of the image decoding device 60 will be described. FIG. 21 is a flowchart illustrating an example of a decoding process related to a significant coefficient flag in the fourth embodiment.

ステップS401で、位置復号部701は、入力されたストリームのうち、直交変換の対象ブロックに対し、所定の走査順(例えばジグザグスキャン)で最後の非0の係数値の位置(最後位置)を復号する。   In step S401, the position decoding unit 701 decodes the position (last position) of the last non-zero coefficient value in a predetermined scanning order (for example, zigzag scan) with respect to the target block for orthogonal transformation in the input stream. To do.

ステップS402で、特定部702は、位置復号部701により復号された係数値の位置に基づき、対象ブロックが分割された複数の領域に対し、最後の非0の係数値を有する領域(最後領域)を特定する。   In step S402, the specifying unit 702, based on the position of the coefficient value decoded by the position decoding unit 701, has the last non-zero coefficient value for the plurality of areas into which the target block is divided (last area). Is identified.

ステップS403で、第1フラグ復号部703は、特定部702により特定された最後領域に基づき、CABACのシンタックス要素に含まれる有意係数フラグが、領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する。   In step S403, the first flag decoding unit 703 is based on the last region specified by the specifying unit 702, and the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all the regions. A group flag indicating whether or not there is present is decoded.

ステップS404で、第2フラグ復号部704は、第1フラグ復号部703により復号されたグループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ有することを示す値である領域に対し、この領域の有意係数フラグを復号する。   In step S404, the second flag decoding unit 704 has a value indicating that the value of the group flag decoded by the first flag decoding unit 703 has at least one significant coefficient flag indicating a non-zero coefficient value. On the other hand, the significant coefficient flag of this area is decoded.

ステップS405で、係数値復号部705は、有意係数フラグが「1」の画素位置に対応する係数値を復号する。   In step S405, the coefficient value decoding unit 705 decodes the coefficient value corresponding to the pixel position whose significant coefficient flag is “1”.

以上、実施例4によれば、実施例1〜3における画像符号化装置10で符号化されたビットストリームを適切に復号することができる。   As described above, according to the fourth embodiment, the bitstream encoded by the image encoding device 10 according to the first to third embodiments can be appropriately decoded.

[実施例5]
図22は、実施例5における画像処理装置80の構成の一例を示すブロック図である。図22に示す画像処理装置80は、上述した実施例1〜3で説明した画像符号化処理又は実施例4で説明した画像復号処理をソフトウェアで実装した装置の一例である。
[Example 5]
FIG. 22 is a block diagram illustrating an example of the configuration of the image processing apparatus 80 according to the fifth embodiment. An image processing apparatus 80 illustrated in FIG. 22 is an example of an apparatus in which the image encoding process described in the first to third embodiments or the image decoding process described in the fourth embodiment is implemented by software.

図22に示すように、画像処理装置80は、制御部801、主記憶部802、補助記憶部803、ドライブ装置804、ネットワークI/F部806、入力部807、表示部808を有する。これら各構成は、バスを介して相互にデータ送受信可能に接続されている。   As illustrated in FIG. 22, the image processing apparatus 80 includes a control unit 801, a main storage unit 802, an auxiliary storage unit 803, a drive device 804, a network I / F unit 806, an input unit 807, and a display unit 808. These components are connected to each other via a bus so as to be able to transmit and receive data.

制御部801は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPU(Central Processing Unit)である。また、制御部801は、主記憶部802又は補助記憶部803に記憶された画像符号化処理のプログラム、又は画像復号処理のプログラムを実行する演算装置である。制御部801は、入力部807や記憶装置からデータを受け取り、演算、加工した上で、表示部808や記憶装置などに出力する。   The control unit 801 is a CPU (Central Processing Unit) that controls each device, calculates data, and processes in a computer. The control unit 801 is an arithmetic device that executes an image encoding processing program or an image decoding processing program stored in the main storage unit 802 or the auxiliary storage unit 803. The control unit 801 receives data from the input unit 807 and the storage device, calculates and processes the data, and then outputs the data to the display unit 808 and the storage device.

また、制御部801は、画像符号化処理、又は画像復号処理のプログラムを実行することで、各実施例で説明した処理を実現することができる。   Also, the control unit 801 can realize the processing described in each embodiment by executing a program for image encoding processing or image decoding processing.

主記憶部802は、ROM(Read Only Memory)やRAM(Random Access Memory)などである。主記憶部802は、制御部801が実行する基本ソフトウェアであるOS(Operating System)やアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。   The main storage unit 802 is a ROM (Read Only Memory), a RAM (Random Access Memory), or the like. The main storage unit 802 is a storage device that stores or temporarily stores programs and data such as an OS (Operating System) and application software that are basic software executed by the control unit 801.

補助記憶部803は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。   The auxiliary storage unit 803 is an HDD (Hard Disk Drive) or the like, and is a storage device that stores data related to application software and the like.

ドライブ装置804は、記録媒体805、例えばフレキシブルディスクからプログラムを読み出し、記憶部にインストールする。   The drive device 804 reads the program from the recording medium 805, for example, a flexible disk, and installs it in the storage unit.

また、記録媒体805に、所定のプログラムを格納し、この記録媒体805に格納されたプログラムはドライブ装置804を介して画像処理装置80にインストールされる。インストールされた所定のプログラムは、画像処理装置80により実行可能となる。   A predetermined program is stored in the recording medium 805, and the program stored in the recording medium 805 is installed in the image processing apparatus 80 via the drive device 804. The installed predetermined program can be executed by the image processing apparatus 80.

ネットワークI/F部806は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置80とのインターフェースである。   The network I / F unit 806 has a communication function connected via a network such as a LAN (Local Area Network) or a WAN (Wide Area Network) constructed by a data transmission path such as a wired and / or wireless line. This is an interface between the device and the image processing apparatus 80.

入力部807は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、表示部808の表示画面上でキーの選択等を行うためのマウスやスライドパット等を有する。表示部808は、LCD(Liquid Crystal Display)等により構成され、制御部801から入力される表示データに応じた表示が行われる。   The input unit 807 includes a keyboard having cursor keys, numeric input, various function keys, and the like, a mouse, a slide pad, and the like for selecting keys on the display screen of the display unit 808. The display unit 808 is configured by an LCD (Liquid Crystal Display) or the like, and displays according to display data input from the control unit 801.

なお、図3に示す復号画像記憶部111は、例えば主記憶部802又は補助記憶部803により実現され、図3に示す復号画像記憶部111以外の構成は、例えば制御部801及びワークメモリとしての主記憶部802により実現されうる。   The decoded image storage unit 111 illustrated in FIG. 3 is realized by, for example, the main storage unit 802 or the auxiliary storage unit 803, and the configuration other than the decoded image storage unit 111 illustrated in FIG. 3 includes, for example, a control unit 801 and a work memory. This can be realized by the main storage unit 802.

また、図19に示す復号情報記憶部405及びフレームメモリ411は、例えば主記憶部802又は補助記憶部803により実現され、図19に示す復号情報記憶部405及びフレームメモリ411以外の構成は、例えば制御部801及びワークメモリとしての主記憶部802により実現されうる。   Further, the decoding information storage unit 405 and the frame memory 411 illustrated in FIG. 19 are realized by, for example, the main storage unit 802 or the auxiliary storage unit 803, and configurations other than the decoding information storage unit 405 and the frame memory 411 illustrated in FIG. It can be realized by the control unit 801 and the main storage unit 802 as a work memory.

画像処理装置80で実行されるプログラムは、実施例1〜4で説明した各部を含むモジュール構成となっている。実際のハードウェアとしては、制御部801が補助記憶部803からプログラムを読み出して実行することにより上記各部のうち1又は複数の各部が主記憶部802上にロードされ、1又は複数の各部が主記憶部802上に生成されるようになっている。   The program executed by the image processing apparatus 80 has a module configuration including each unit described in the first to fourth embodiments. As actual hardware, when the control unit 801 reads a program from the auxiliary storage unit 803 and executes the program, one or more of the above-described units are loaded on the main storage unit 802, and one or more of the units are main. It is generated on the storage unit 802.

このように、上述した実施例1〜3で説明した画像符号化処理や実施例4で説明した画像復号処理は、コンピュータに実行させるためのプログラムとして実現されてもよい。このプログラムをサーバ等からインストールしてコンピュータに実行させることで、各実施例で説明した処理を実現することができる。   As described above, the image encoding processing described in the first to third embodiments and the image decoding processing described in the fourth embodiment may be realized as a program for causing a computer to execute. The processing described in each embodiment can be realized by installing this program from a server or the like and causing the computer to execute the program.

また、このプログラムを記録媒体805に記録し、このプログラムが記録された記録媒体805をコンピュータや携帯端末に読み取らせて、前述した処理を実現させることも可能である。なお、記録媒体805は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。また、上述した各実施例で説明した処理は、1つ又は複数の集積回路に実装してもよい。   It is also possible to record the program in the recording medium 805 and cause the computer or portable terminal to read the recording medium 805 on which the program is recorded to realize the above-described processing. The recording medium 805 is a recording medium that records information optically, electrically, or magnetically, such as a CD-ROM, a flexible disk, or a magneto-optical disk, and information is electrically stored such as a ROM or flash memory. Various types of recording media such as a semiconductor memory for recording can be used. Further, the processes described in the above embodiments may be implemented in one or a plurality of integrated circuits.

なお、実施例5における画像処理装置80は、上記の通り、画像符号化装置10、画像復号装置60としての機能を有する。   Note that the image processing device 80 according to the fifth embodiment functions as the image encoding device 10 and the image decoding device 60 as described above.

以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。   Each embodiment has been described in detail above. However, the present invention is not limited to the specific embodiment, and various modifications and changes other than the above-described modification are possible within the scope described in the claims. .

10 画像符号化装置
60 画像復号装置
80 画像処理装置
101 予測画像生成部
102 直交変換部
103 量子化部
104 エントロピー符号化部
201 2値算術符号化部
202 2値化部
203 削減部
204 コンテキスト計算部
205 算術符号化部
301 特定部
302、401、501 推定部
601 エントロピー復号部
701 位置復号部
702 特定部
703 第1フラグ復号部
704 第2フラグ復号部
705 係数値復号部
DESCRIPTION OF SYMBOLS 10 Image encoding apparatus 60 Image decoding apparatus 80 Image processing apparatus 101 Predictive image generation part 102 Orthogonal transformation part 103 Quantization part 104 Entropy encoding part 201 Binary arithmetic encoding part 202 Binarization part 203 Reduction part 204 Context calculation part 205 Arithmetic coding unit 301 Identification unit 302, 401, 501 Estimation unit 601 Entropy decoding unit 701 Position decoding unit 702 Identification unit 703 First flag decoding unit 704 Second flag decoding unit 705 Coefficient value decoding unit

Claims (9)

コンテキスト適応型2値算術符号化(CABAC)を行う画像符号化装置であって、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定部と、
前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定部により特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定部と、
前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化部と
を備える画像符号化装置。
An image coding apparatus that performs context adaptive binary arithmetic coding (CABAC),
A specifying unit for specifying a region having the last non-zero coefficient value in a predetermined scanning order for a plurality of regions obtained by dividing the target block of the orthogonal transform;
For the group flag indicating whether or not the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all the areas, the position of the area specified by the specifying unit is set. An estimation unit for estimating a first region group having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
It includes at least one position of the last non-zero coefficient value, a group flag of an area other than the first area group, and a significant coefficient flag indicating a non-zero coefficient value other than the first area group. An image encoding device comprising: an arithmetic encoding unit that arithmetically encodes a signifying region and a significant coefficient flag of the region of the first region group.
前記特定部は、
特定された前記領域における、前記最後の非0の係数値の位置を特定し、
前記推定部は、
前記特定部により特定された係数値の位置を用いて、前記第1領域群を拡張する請求項1記載の画像符号化装置。
The specific part is:
Locating the last non-zero coefficient value in the identified region;
The estimation unit includes
The image encoding device according to claim 1, wherein the first region group is expanded using the position of the coefficient value specified by the specifying unit.
前記推定部は、
前記複数の領域のうち、前記特定部により特定された領域の位置を用いて、前記第1領域群と、全ての有意係数フラグが0の係数値を示すグループフラグを有する第2領域群とを推定し、
前記算術符号化部は、
前記最後の非0の係数値の位置、及び前記第1領域群の領域の有意係数フラグを算術符号化し、前記第1領域群と前記第2領域群とのグループフラグを算術符号化しない請求項1又は2記載の画像符号化装置。
The estimation unit includes
Among the plurality of regions, using the position of the region specified by the specifying unit, the first region group and a second region group having a group flag in which all significant coefficient flags indicate coefficient values of 0 Estimate
The arithmetic encoding unit is
The position of the last non-zero coefficient value and the significant coefficient flag of the region of the first region group are arithmetically encoded, and the group flag of the first region group and the second region group is not arithmetically encoded. 3. The image encoding device according to 1 or 2.
前記第1領域群以外の領域のグループフラグの値に基づいて、前記第2領域群を推定するか否かを決定する決定部をさらに備え、
前記算術符号化部は、
前記決定部の決定内容を示す使用フラグに基づいて、前記第2領域群のグループフラグを算術符号化するか否かを決定し、前記使用フラグを符号化対象に含めて算術符号化を行う請求項3記載の画像符号化装置。
A determination unit that determines whether to estimate the second region group based on a value of a group flag of a region other than the first region group;
The arithmetic encoding unit is
A determination is made as to whether or not the group flag of the second region group is arithmetically encoded based on a usage flag indicating the determination content of the determination unit, and the arithmetic flag is included in the encoding target to perform arithmetic encoding. Item 4. The image encoding device according to Item 3.
コンテキスト適応型2値算術符号化(CABAC)を行う画像符号化装置における画像符号化方法であって、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定ステップと、
前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定ステップと、
前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップと
を有する画像符号化方法。
An image coding method in an image coding apparatus that performs context adaptive binary arithmetic coding (CABAC),
A specifying step for specifying a region having the last non-zero coefficient value in a predetermined scanning order with respect to the plurality of regions obtained by dividing the target block for orthogonal transformation;
With respect to the group flag indicating whether or not the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all the areas, the position of the area specified by the specifying step is set. Using the estimation step of estimating a first region group having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
It includes at least one position of the last non-zero coefficient value, a group flag of an area other than the first area group, and a significant coefficient flag indicating a non-zero coefficient value other than the first area group. An arithmetic encoding step of arithmetically encoding a significant coefficient flag between the region indicating the above and the region of the first region group.
コンテキスト適応型2値算術符号化(CABAC)を行うためのコンピュータに、
直交変換の対象ブロックが分割された複数の領域に対し、所定の走査順で最後の非0の係数値を有する領域を特定する特定ステップと、
前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグに対し、前記特定ステップにより特定された領域の位置を用いて、非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示すグループフラグを有する第1領域群を推定する推定ステップと、
前記最後の非0の係数値の位置、前記第1領域群以外の領域のグループフラグ、及び、前記第1領域群以外でグループフラグが非0の係数値を示す有意係数フラグを少なくとも1つ含むことを示す領域と前記第1領域群の領域との有意係数フラグ、を算術符号化する算術符号化ステップと
を実行させる画像符号化プログラム。
A computer for performing context adaptive binary arithmetic coding (CABAC);
A specifying step for specifying a region having the last non-zero coefficient value in a predetermined scanning order with respect to the plurality of regions obtained by dividing the target block for orthogonal transformation;
With respect to the group flag indicating whether or not the significant coefficient flag included in the CABAC syntax element is a value indicating a coefficient value of 0 in all the areas, the position of the area specified by the specifying step is set. Using the estimation step of estimating a first region group having a group flag indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
It includes at least one position of the last non-zero coefficient value, a group flag of an area other than the first area group, and a significant coefficient flag indicating a non-zero coefficient value other than the first area group. An image encoding program for executing an arithmetic encoding step for arithmetically encoding a significant coefficient flag between the area indicating the above and the area of the first area group.
コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号する画像復号装置であって、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号部と、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定部と、
特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号部と、
復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号部と、
を備える画像復号装置。
An image decoding apparatus for decoding a stream subjected to context adaptive binary arithmetic coding (CABAC),
A position decoding unit that decodes the position of the last non-zero coefficient value in a predetermined scanning order with respect to the orthogonal transformation target block in the stream;
Based on the position of the decoded coefficient value, for a plurality of areas into which the target block is divided, a specifying unit that specifies an area having the last non-zero coefficient value;
A first flag for decoding a group flag indicating whether or not the significant coefficient flag included in the syntax element of the CABAC is a value indicating a coefficient value of 0 in all the areas based on the specified area. A decryption unit;
A second flag decoding unit that decodes a significant coefficient flag in a region in which the decoded group flag value is a value indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
An image decoding apparatus comprising:
コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号する画像復号装置における画像復号方法であって、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号ステップと、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定ステップと、
特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号ステップと、
復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号ステップと、
を有する画像復号方法。
An image decoding method in an image decoding apparatus for decoding a stream subjected to context adaptive binary arithmetic coding (CABAC),
A position decoding step for decoding the position of the last non-zero coefficient value in a predetermined scanning order with respect to a target block for orthogonal transformation in the stream;
A specifying step of specifying a region having the last non-zero coefficient value for a plurality of regions into which the target block is divided based on the position of the decoded coefficient value;
A first flag for decoding a group flag indicating whether or not the significant coefficient flag included in the syntax element of the CABAC is a value indicating a coefficient value of 0 in all the areas based on the specified area. A decryption step;
A second flag decoding step of decoding a significant coefficient flag in a region where the value of the decoded group flag is a value indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
An image decoding method comprising:
コンテキスト適応型2値算術符号化(CABAC)が行われたストリームを復号するためのコンピュータに、
前記ストリームのうち、直交変換の対象ブロックに対し、所定の走査順で最後の非0の係数値の位置を復号する位置復号ステップと、
復号された前記係数値の位置に基づき、前記対象ブロックが分割された複数の領域に対し、前記最後の非0の係数値を有する領域を特定する特定ステップと、
特定された前記領域に基づき、前記CABACのシンタックス要素に含まれる有意係数フラグが、前記領域内の全てにおいて0の係数値を示す値であるか否かを示すグループフラグを復号する第1フラグ復号ステップと、
復号された前記グループフラグの値が、非0の係数値を示す有意係数フラグが少なくとも1つ含むことを示す値となる領域の有意係数フラグを復号する第2フラグ復号ステップと、
を実行させる画像復号プログラム。
A computer for decoding a stream subjected to context adaptive binary arithmetic coding (CABAC);
A position decoding step for decoding the position of the last non-zero coefficient value in a predetermined scanning order with respect to a target block for orthogonal transformation in the stream;
A specifying step of specifying a region having the last non-zero coefficient value for a plurality of regions into which the target block is divided based on the position of the decoded coefficient value;
A first flag for decoding a group flag indicating whether or not the significant coefficient flag included in the syntax element of the CABAC is a value indicating a coefficient value of 0 in all the areas based on the specified area. A decryption step;
A second flag decoding step of decoding a significant coefficient flag in a region where the value of the decoded group flag is a value indicating that at least one significant coefficient flag indicating a non-zero coefficient value is included;
An image decoding program for executing
JP2012245675A 2012-11-07 2012-11-07 Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program Pending JP2014096638A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012245675A JP2014096638A (en) 2012-11-07 2012-11-07 Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012245675A JP2014096638A (en) 2012-11-07 2012-11-07 Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program

Publications (1)

Publication Number Publication Date
JP2014096638A true JP2014096638A (en) 2014-05-22

Family

ID=50939416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012245675A Pending JP2014096638A (en) 2012-11-07 2012-11-07 Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program

Country Status (1)

Country Link
JP (1) JP2014096638A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017188739A1 (en) * 2016-04-29 2017-11-02 세종대학교 산학협력단 Method and device for encoding and decoding image signal
US10681353B2 (en) 2016-04-29 2020-06-09 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding image signal
WO2020233514A1 (en) * 2019-05-17 2020-11-26 Beijing Bytedance Network Technology Co., Ltd. Signaling of syntax elements according to chroma format
WO2022037701A1 (en) * 2020-08-21 2022-02-24 Beijing Bytedance Network Technology Co., Ltd. Coefficient reordering in video coding
US11477449B2 (en) 2019-05-30 2022-10-18 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering for chroma components
US11490124B2 (en) 2019-04-20 2022-11-01 Beijing Bytedance Network Technology Co., Ltd. Signaling of chroma and luma syntax elements in video coding

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113810699A (en) * 2016-04-29 2021-12-17 世宗大学校产学协力团 Method and apparatus for encoding and decoding image signal
US10681353B2 (en) 2016-04-29 2020-06-09 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding image signal
US11122273B2 (en) 2016-04-29 2021-09-14 Industry Academy Cooperation Foundation Of Sejong University Method and device for encoding and decoding image signal
US11140396B2 (en) 2016-04-29 2021-10-05 Industry Academy Cooperation Foundation Of Sejong University Method and device for encoding and decoding image signal
US11140397B2 (en) 2016-04-29 2021-10-05 Industry Academy Cooperation Foundation Of Sejong University Method and device for encoding and decoding image signal
WO2017188739A1 (en) * 2016-04-29 2017-11-02 세종대학교 산학협력단 Method and device for encoding and decoding image signal
US11490124B2 (en) 2019-04-20 2022-11-01 Beijing Bytedance Network Technology Co., Ltd. Signaling of chroma and luma syntax elements in video coding
US11575939B2 (en) 2019-04-20 2023-02-07 Beijing Bytedance Network Technology Co., Ltd. Signaling of syntax elements for joint coding of chrominance residuals
WO2020233514A1 (en) * 2019-05-17 2020-11-26 Beijing Bytedance Network Technology Co., Ltd. Signaling of syntax elements according to chroma format
CN113853798A (en) * 2019-05-17 2021-12-28 北京字节跳动网络技术有限公司 Signaling syntax elements according to chroma format
CN113853798B (en) * 2019-05-17 2024-04-19 北京字节跳动网络技术有限公司 Signaling syntax elements according to chroma format
US11477449B2 (en) 2019-05-30 2022-10-18 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering for chroma components
WO2022037701A1 (en) * 2020-08-21 2022-02-24 Beijing Bytedance Network Technology Co., Ltd. Coefficient reordering in video coding

Similar Documents

Publication Publication Date Title
RU2736421C1 (en) Method of encoding and decoding images and encoding and decoding device
US10397575B2 (en) Image coding apparatus, image coding method, and program, and image decoding apparatus, image decoding method, and program
RU2751082C1 (en) Method for coding and decoding of images, coding and decoding device and corresponding computer programs
US9716894B2 (en) Intra prediction modes for lossy coding when transform is skipped
CN108141589B (en) Method and device for filtering image in image compiling system
US20130101033A1 (en) Coding non-symmetric distributions of data
US20230379494A1 (en) Method and apparatus for encoding/decoding image
JP2014096638A (en) Image encoder, image encoding method, image encoding program, image decoder, image decoding method and image decoding program
CN115443660A (en) Method and apparatus for decoding imaging related to symbol data hiding
CN114885160A (en) Video encoding and decoding method and device, computer readable medium and electronic equipment
CN115442608A (en) Image encoding/decoding method and method for transmitting data
RU2808075C1 (en) Method for image coding and decoding, coding and decoding device and corresponding computer programs
CN115349258B (en) Image decoding method for residual coding in image coding system and apparatus therefor
JP2013102305A (en) Image decoder, image decoding method, program and image encoder
RU2782400C2 (en) Method of encoding and decoding images, device for encoding and decoding and corresponding software
JP6917718B2 (en) Predictors, encoders, decoders, and programs
JP2018125882A (en) Image encoding device, image encoding method and program, image decoding device, and image decoding method and program
JP2013098970A (en) Image decoding apparatus, inverse orthogonal conversion method, program and image coding apparatus