JP6341067B2 - Image processing apparatus and method - Google Patents

Image processing apparatus and method Download PDF

Info

Publication number
JP6341067B2
JP6341067B2 JP2014231546A JP2014231546A JP6341067B2 JP 6341067 B2 JP6341067 B2 JP 6341067B2 JP 2014231546 A JP2014231546 A JP 2014231546A JP 2014231546 A JP2014231546 A JP 2014231546A JP 6341067 B2 JP6341067 B2 JP 6341067B2
Authority
JP
Japan
Prior art keywords
encoding
coefficient data
unit
image
data
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.)
Expired - Fee Related
Application number
JP2014231546A
Other languages
Japanese (ja)
Other versions
JP2016096457A (en
Inventor
敦 大和
敦 大和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2014231546A priority Critical patent/JP6341067B2/en
Publication of JP2016096457A publication Critical patent/JP2016096457A/en
Application granted granted Critical
Publication of JP6341067B2 publication Critical patent/JP6341067B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本開示は、画像処理装置および方法に関し、特に、符号化効率の低減を抑制することができるようにした画像処理装置および方法に関する。   The present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of suppressing a reduction in encoding efficiency.

近年、MPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。   In recent years, with the aim of further improving coding efficiency from MPEG-4 Part10 (Advanced Video Coding, hereinafter referred to as AVC), ITU-T (International Telecommunication Union Telecommunication Standardization Sector) and ISO / IEC (International Organization for Standardization / JCTVC (Joint Collaboration Team-Video Coding), a joint standardization organization of the International Electrotechnical Commission, is standardizing an encoding method called HEVC (High Efficiency Video Coding).

また、HEVCにおいて、4:2:2や4:4:4といった色差信号フォーマットの画像や、スクリーンコンテンツ用のプロファイル等、例えばハイエンド向けのフォーマットをサポートするようにレンジエクステンションの検討が行われている(例えば、非特許文献1参照)。   Also, in HEVC, range extensions are being studied to support high-end formats such as 4: 2: 2 and 4: 4: 4 color difference signal format images and screen content profiles. (For example, refer nonpatent literature 1).

Jill Boyce, Jianle Chen, Ying Chen, David Flynn, Miska M. Hannuksela, Matteo Naccari, Chris Rosewarne, Karl Sharman, Joel Sole, Gary J. Sullivan, Teruhiko Suzuki, Gerhard Tech, Ye-Kui Wang, Krzysztof Wegner, Yan Ye, "Draft high efficiency video coding (HEVC) version 2, combined format range extensions (RExt), scalability (SHVC), and multi-view (MV-HEVC) extensions", JCTVC-R1013_v6, 2014.10.1Jill Boyce, Jianle Chen, Ying Chen, David Flynn, Miska M. Hannuksela, Matteo Naccari, Chris Rosewarne, Karl Sharman, Joel Sole, Gary J. Sullivan, Teruhiko Suzuki, Gerhard Tech, Ye-Kui Wang, Krzysztof Wegner, Yan Ye , "Draft high efficiency video coding (HEVC) version 2, combined format range extensions (RExt), scalability (SHVC), and multi-view (MV-HEVC) extensions", JCTVC-R1013_v6, 2014.10.1

ところで、このHEVCでは、coeff_abs_level_remainingと言う、係数情報データのシンタクス処理にTR(Truncated Rice)符号(可変長符号)が用いられている。このTR符号においては、5つの符号化テーブルが予め用意され、各係数データを符号化する際に、使用する符号化テーブルを随時、更新していく。さらに、追加されたレンジエクステンションのプロファイルでは、21の符号化テーブルを用意することもできる。   By the way, in this HEVC, TR (Truncated Rice) code (variable length code) is used for the syntax processing of coefficient information data called coeff_abs_level_remaining. In this TR code, five encoding tables are prepared in advance, and the encoding table to be used is updated as needed when each coefficient data is encoded. Furthermore, in the added range extension profile, 21 encoding tables can be prepared.

しかしながら、各係数データの符号化に用いられる符号化テーブルの更新は、符号化単位である所定のサイズ(例えば16x16)の符号化サブブロック(coded_sub_block)毎に初期化されるため、係数データに適していない符号化テーブルが選択されるおそれがあり、符号化効率が低減するおそれがあった。   However, the update of the coding table used for coding each coefficient data is initialized for each coding sub-block (coded_sub_block) of a predetermined size (for example, 16x16) which is a coding unit, so it is suitable for coefficient data. There is a possibility that an unencoded coding table may be selected, which may reduce the coding efficiency.

なお、追加されたレンジエクステンションのプロファイルでは、符号化サブブロック(coded_sub_block)の先頭の係数データの符号化に用いる符号化テーブルを、他の符号化サブブロックの先頭の係数データに用いられた符号化テーブルに基づいて設定することができる。しかしながら、この場合も、各符号化サブブロックの先頭の係数データの値が、互いに一致若しくは近似するとは限らない。そのため、係数データに適していない符号化テーブルが選択されるおそれがあり、符号化効率が低減するおそれがあった。   In the added range extension profile, the encoding table used for encoding the first coefficient data of the encoded sub-block (coded_sub_block) is the encoding used for the first coefficient data of the other encoded sub-block. Can be set based on a table. However, in this case as well, the value of the coefficient data at the head of each coding sub-block does not always match or approximate each other. For this reason, there is a possibility that an encoding table that is not suitable for coefficient data may be selected, which may reduce the encoding efficiency.

本開示は、このような状況に鑑みてなされたものであり、符号化効率の低減を抑制することができるようにするものである。   This indication is made in view of such a situation, and makes it possible to control reduction of coding efficiency.

本技術の一側面は、符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた複数の符号化テーブルに基づいて設定する設定部と、前記設定部により設定された符号化テーブルを用いて、前記カレント係数データを符号化する符号化部とを備える画像処理装置である。 One aspect of the present technology provides an encoding table used for encoding current coefficient data, which is a processing target of image data to be encoded, with a plurality of codes used for encoding coefficient data around the current coefficient data. An image processing apparatus comprising: a setting unit that is set based on an encoding table; and an encoding unit that encodes the current coefficient data using the encoding table set by the setting unit.

前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定することができる。 The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and encoding of coefficient data adjacent below the current coefficient data. The encoding table used for encoding the current coefficient data can be set based on the encoding table used in the above.

前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの右下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定することができる。 The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and encoding of coefficient data adjacent below the current coefficient data. The encoding table used for encoding the current coefficient data is set based on the encoding table used for the current coefficient data and the encoding table used for encoding the coefficient data adjacent to the lower right of the current coefficient data. can do.

前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定することができる。 The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the upper right of the current coefficient data, and encoding of coefficient data adjacent to the lower left of the current coefficient data. The encoding table used for encoding the current coefficient data can be set based on the encoding table used in the above.

前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが単数の場合、前記符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定することができる。   The setting unit sets the encoding table as an encoding table used for encoding the current coefficient data when there is a single encoding table used for encoding the peripheral coefficient data that can be used. Can do.

前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の平均値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定することができる。   The setting unit, when there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, an encoding table having an average value of table numbers of the plurality of encoding tables as a table number, It can be set as an encoding table used for encoding the current coefficient data.

前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の中央値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定することができる。   When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit includes an encoding table having a table number as a median value of the table numbers of the plurality of encoding tables, It can be set as an encoding table used for encoding the current coefficient data.

前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのいずれかを、前記カレント係数データの符号化に用いる符号化テーブルとして設定することができる。   When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit uses any one of the plurality of encoding tables for encoding the current coefficient data. Can be set as a table.

前記設定部は、前記カレント係数データが、前記画像データの符号化単位における先頭の係数データである場合、前記カレント係数データの符号化に用いる符号化テーブルを、前記複数の符号化テーブルに基づいて設定することができる。 When the current coefficient data is the first coefficient data in the encoding unit of the image data, the setting unit determines an encoding table used for encoding the current coefficient data based on the plurality of encoding tables. Can be set.

前記設定部は、全ての係数データについて、前記カレント係数データの符号化に用いる符号化テーブルを、前記複数の符号化テーブルに基づいて設定することができる。 The setting unit can set, for all coefficient data, an encoding table used for encoding the current coefficient data based on the plurality of encoding tables.

前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データに隣接し、かつ、前記カレント係数データの符号化単位と異なる符号化単位に属する係数データの符号化に用いられた符号化テーブルに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定することができる。 The setting unit, as the plurality of encoding tables, is an encoding table used for encoding coefficient data adjacent to the current coefficient data and belonging to an encoding unit different from the encoding unit of the current coefficient data. Based on the above, it is possible to set a coding table used for coding the current coefficient data.

本技術の一側面は、また、符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた複数の符号化テーブルに基づいて設定し、設定された符号化テーブルを用いて、前記カレント係数データを符号化する画像処理方法である。 Multiple embodiments of the present technology is also a coding table for use in encoding the current coefficient data to be processed of the image data to be encoded, it was used to encode the coefficient data of the periphery of the current coefficient data And an image processing method for encoding the current coefficient data using the set encoding table.

本技術の一側面においては、符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルが、カレント係数データの周辺の係数データの符号化に用いられた複数の符号化テーブルに基づいて設定され、設定された符号化テーブルが用いられて、カレント係数データが符号化される。 In one aspect of the present technology, the encoding table used for encoding the current coefficient data that is the processing target of the encoded image data includes a plurality of codes used for encoding the coefficient data around the current coefficient data. The current coefficient data is encoded using the encoding table that is set based on the encoding table.

本開示によれば、画像データを符号化することができる。特に、符号化効率の低減を抑制することができる。   According to the present disclosure, it is possible to encode image data. In particular, a reduction in encoding efficiency can be suppressed.

符号化テーブルの例を説明する図である。It is a figure explaining the example of an encoding table. 符号化テーブルの例を説明する図である。It is a figure explaining the example of an encoding table. 符号化テーブルの例を説明する図である。It is a figure explaining the example of an encoding table. 符号化テーブルの設定の様子の例を示すフローチャートである。It is a flowchart which shows the example of the mode of a setting of an encoding table. 符号化テーブルの設定の様子の例を示すフローチャートである。It is a flowchart which shows the example of the mode of a setting of an encoding table. 符号化テーブルの設定の様子の例を示す図である。It is a figure which shows the example of the mode of a setting of an encoding table. コーディングユニットの構成例を説明する図である。It is a figure explaining the structural example of a coding unit. 画像符号化装置の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of an image coding apparatus. 可逆符号化部の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of a lossless encoding part. テーブル選択部の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of a table selection part. 符号化テーブルの設定の様子の例を示す図である。It is a figure which shows the example of the mode of a setting of an encoding table. 符号化テーブルの設定の様子の例を示す図である。It is a figure which shows the example of the mode of a setting of an encoding table. 符号化処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of an encoding process. TR符号化処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of TR encoding process. 符号化テーブル選択処理の流れの例を説明するフローチャートである。It is a flowchart explaining the example of the flow of an encoding table selection process. 符号化テーブルの設定の様子の他の例を示す図である。It is a figure which shows the other example of the mode of a setting of an encoding table. 符号化テーブル選択処理の流れの他の例を説明するフローチャートである。It is a flowchart explaining the other example of the flow of an encoding table selection process. 符号化テーブルの設定の様子のさらに他の例を示す図である。It is a figure which shows the further another example of the mode of a setting of an encoding table. テーブル選択部の主な構成例を示すブロック図である。It is a block diagram which shows the main structural examples of a table selection part. 符号化テーブルの設定の様子のさらに他の例を示す図である。It is a figure which shows the further another example of the mode of a setting of an encoding table. 符号化テーブル選択処理の流れの他の例を説明するフローチャートである。It is a flowchart explaining the other example of the flow of an encoding table selection process. 符号化テーブル選択処理の流れの他の例を説明する、図21に続くフローチャートである。It is a flowchart following FIG. 21 explaining the other example of the flow of an encoding table selection process. 多視点画像符号化方式の例を示す図である。It is a figure which shows the example of a multiview image encoding system. 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the multiview image coding apparatus to which this technique is applied. 本技術を適用した多視点画像復号装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the multiview image decoding apparatus to which this technique is applied. 階層画像符号化方式の例を示す図である。It is a figure which shows the example of a hierarchy image coding system. 本技術を適用した階層画像符号化装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the hierarchy image coding apparatus to which this technique is applied. 本技術を適用した階層画像復号装置の主な構成例を示す図である。It is a figure which shows the main structural examples of the hierarchy image decoding apparatus to which this technique is applied. コンピュータの主な構成例を示すブロック図である。And FIG. 20 is a block diagram illustrating a main configuration example of a computer. テレビジョン装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a television apparatus. 携帯電話機の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a mobile telephone. 記録再生装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a recording / reproducing apparatus. 撮像装置の概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of an imaging device. ビデオセットの概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a video set. ビデオプロセッサの概略的な構成の一例を示すブロック図である。It is a block diagram which shows an example of a schematic structure of a video processor. ビデオプロセッサの概略的な構成の他の例を示すブロック図である。It is a block diagram which shows the other example of the schematic structure of a video processor.

以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像符号化装置)
2.第2の実施の形態(画像符号化装置)
3.第3の実施の形態(多視点画像符号化装置・多視点画像復号装置)
4.第4の実施の形態(階層画像符号化装置・階層画像復号装置)
5.第5の実施の形態(コンピュータ)
6.第6の実施の形態(応用例)
7.第7の実施の形態(セット・ユニット・モジュール・プロセッサ)
Hereinafter, modes for carrying out the present disclosure (hereinafter referred to as embodiments) will be described. The description will be given in the following order.
1. First Embodiment (Image Encoding Device)
2. Second Embodiment (Image Encoding Device)
3. Third embodiment (multi-view image encoding device / multi-view image decoding device)
4). Fourth embodiment (hierarchical image encoding device / hierarchical image decoding device)
5. Fifth embodiment (computer)
6). Sixth embodiment (application example)
7). Seventh embodiment (set unit module processor)

<1.第1の実施の形態>
<画像符号化の標準化の流れ>
近年、MPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。
<1. First Embodiment>
<Image coding standardization process>
In recent years, with the aim of further improving coding efficiency from MPEG-4 Part10 (Advanced Video Coding, hereinafter referred to as AVC), ITU-T (International Telecommunication Union Telecommunication Standardization Sector) and ISO / IEC (International Organization for Standardization / JCTVC (Joint Collaboration Team-Video Coding), a joint standardization organization of the International Electrotechnical Commission, is standardizing an encoding method called HEVC (High Efficiency Video Coding).

また、HEVCにおいて、4:2:2や4:4:4といった色差信号フォーマットの画像や、スクリーンコンテンツ用のプロファイル等、例えばハイエンド向けのフォーマットをサポートするようにレンジエクステンションの検討が行われている(例えば、非特許文献1参照)。   Also, in HEVC, range extensions are being studied to support high-end formats such as 4: 2: 2 and 4: 4: 4 color difference signal format images and screen content profiles. (For example, refer nonpatent literature 1).

<TR符号化>
ところで、このHEVCでは、coeff_abs_level_remainingと言う、係数情報データのシンタクス処理にTR(Truncated Rice)符号(可変長符号)が用いられている。このTR符号においては、5つの符号化テーブルが予め用意され、各係数データを符号化する際に、使用する符号化テーブルを随時、更新していく。
<TR encoding>
By the way, in this HEVC, TR (Truncated Rice) code (variable length code) is used for the syntax processing of coefficient information data called coeff_abs_level_remaining. In this TR code, five encoding tables are prepared in advance, and the encoding table to be used is updated as needed when each coefficient data is encoded.

図1乃至図3にその5つの符号化テーブルの例(Table0乃至Table4)を示す。図1乃至図3に示されるように、同一の係数データを符号化して得られる符号化データの値やデータ長は基本的に符号化テーブル毎に異なるので、符号化効率の低減を抑制するために、係数データの値に適した符号化テーブルを選択することが望ましい。   FIGS. 1 to 3 show examples of the five encoding tables (Table 0 to Table 4). As shown in FIGS. 1 to 3, since the value and data length of encoded data obtained by encoding the same coefficient data are basically different for each encoding table, in order to suppress a decrease in encoding efficiency. In addition, it is desirable to select a coding table suitable for the value of the coefficient data.

さらに、追加されたレンジエクステンションのプロファイルでは、21の符号化テーブルを用意することができ、同一の係数データを符号化して得られる符号化データの値やデータ長は、さらに多様化する。したがって、符号化効率の低減を抑制するために、係数データの値に対して、より適した符号化テーブルを選択することが求められる。   Furthermore, in the added range extension profile, 21 encoding tables can be prepared, and the values and data lengths of encoded data obtained by encoding the same coefficient data are further diversified. Therefore, in order to suppress a reduction in encoding efficiency, it is required to select a more appropriate encoding table for the coefficient data value.

しかしながら、各係数データの符号化に用いられる符号化テーブルの更新は、図4のフローチャートのステップS1乃至ステップS5の各処理に示されるように、符号化単位である所定のサイズ(例えば16x16)の符号化サブブロック(coded_sub_block)毎に初期化されるため、係数データに適していない符号化テーブルが選択されるおそれがあり、そのことにより符号化効率が低減するおそれがあった。   However, the update of the encoding table used for encoding each coefficient data is performed in a predetermined size (for example, 16 × 16) as an encoding unit, as shown in each process of step S1 to step S5 in the flowchart of FIG. Since initialization is performed for each coding sub-block (coded_sub_block), a coding table that is not suitable for coefficient data may be selected, which may lead to a reduction in coding efficiency.

なお、追加されたレンジエクステンションのプロファイルでは、図5のフローチャートのステップS11乃至ステップS18の各処理に示されるように、符号化サブブロック(coded_sub_block)の先頭の係数データの符号化に用いる符号化テーブルを、他の符号化サブブロックの先頭の係数データに用いられた符号化テーブルに基づいて設定することができる。しかしながら、この場合も、各符号化サブブロックの先頭の係数データの値が、互いに一致若しくは近似するとは限らない。そのため、係数データに適していない符号化テーブルが選択されるおそれがあり、符号化効率が低減するおそれがあった。   Note that, in the added range extension profile, as shown in each process of steps S11 to S18 in the flowchart of FIG. 5, a coding table used for coding the coefficient data at the head of the coded subblock (coded_sub_block). Can be set based on the coding table used for the coefficient data at the head of the other coding sub-blocks. However, in this case as well, the value of the coefficient data at the head of each coding sub-block does not always match or approximate each other. For this reason, there is a possibility that an encoding table that is not suitable for coefficient data may be selected, which may reduce the encoding efficiency.

図6を参照してより詳細に説明する。図6に示されるTU(Transform Unit)10は、符号化される画像データにおける直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である。この例では、TU10は、8x8(縦8個×横8個)の係数データにより構成される。TU10には、4x4(縦4個×横4個)の係数データにより構成される符号化サブブロック(coded_sub_block)が4個(符号化サブブロック11乃至符号化サブブロック14)が形成されている。つまり、図6において、小さな正方形は係数データを示す。また、各係数データの四角内に示される数字は、その係数データに割り当てられた(その係数データの符号化に用いられる)符号化テーブルのテーブル番号を示している。   This will be described in more detail with reference to FIG. A TU (Transform Unit) 10 shown in FIG. 6 is an area (partial area of an image in picture units) that is a unit of orthogonal transform processing in encoded image data. In this example, the TU 10 is configured by 8 × 8 (8 vertical × 8 horizontal) coefficient data. In the TU 10, four encoded sub-blocks (coded_sub_block) (encoded sub-block 11 to encoded sub-block 14) composed of coefficient data of 4 × 4 (4 vertical × 4 horizontal) are formed. That is, in FIG. 6, small squares indicate coefficient data. The numbers shown in the squares of the coefficient data indicate the table numbers of the encoding tables assigned to the coefficient data (used for encoding the coefficient data).

図6Aは、図4のフローチャートに示される方法により符号化テーブルを選択した場合の例を示している。この場合、まず最初に、符号化に用いる符号化テーブルのテーブル番号が「0」に設定される(初期化cRiceParam=0)。次に、処理された係数値を使って、条件式(cLastAbsLevel>(3*(1<<cLastRiceParam)))に基づいて、次の係数データの符号化に用いる符号化テーブルのテーブル番号を、現在の処理対象の係数データ(カレント係数データ)の符号化に用いる符号化テーブルのテーブル番号に+1したものとするか、カレント係数データの符号化に用いる符号化テーブルと同じものとするかが選択される。これを繰りかえすことで、処理する係数値に適した符号化テーブルを選択し、符号化効率を向上させる。   FIG. 6A shows an example when the encoding table is selected by the method shown in the flowchart of FIG. In this case, first, the table number of the encoding table used for encoding is set to “0” (initialization cRiceParam = 0). Next, using the processed coefficient value, based on the conditional expression (cLastAbsLevel> (3 * (1 << cLastRiceParam))), the table number of the encoding table used for encoding the next coefficient data is Is selected to be the same as the encoding table used for encoding the current coefficient data or the table number of the encoding table used for encoding the current coefficient data (current coefficient data). The By repeating this, an encoding table suitable for the coefficient value to be processed is selected, and the encoding efficiency is improved.

しかしながら、この方法の場合、図6Aに示されるように、各符号化サブブロックの先頭の係数データ(最初に処理される係数データ)である符号化サブブロックの右下の係数データには、テーブル番号0の符号化テーブル(Table0)が割り当てられることになる。   However, in the case of this method, as shown in FIG. 6A, the coefficient data at the lower right of the encoding sub-block which is the first coefficient data (coefficient data to be processed first) of each encoding sub-block includes a table. The encoding table (Table 0) with number 0 is assigned.

一般的に、TU10の係数データの値は、右下から左上に向かって大きくなっていく。そのため、このような方法では、係数データに適していない符号化テーブルが選択されるおそれがあり、符号化効率が低減するおそれがあった。   In general, the value of the coefficient data of TU10 increases from the lower right to the upper left. For this reason, in such a method, there is a possibility that an encoding table that is not suitable for coefficient data may be selected, which may reduce the encoding efficiency.

図6Bは、図5のフローチャートに示される方法により符号化テーブルを選択した場合の例を示している。この場合、まず最初に、StatCoeff[0]=0, StatCoeff[1]=0, StatCoeff[2]=0, StatCoeff[3]=0に初期化する。次に、符号化サブブロックの開始時に、transform_skip_flag, 及びcu_transquant_byppass_flagの値によって、sbTypeの値が「0」乃至「3」のいずれかに設定される。StatCoeff[sBtype]/4で算出された値を、Table番号(cRiceParam=StatCoeff[sbType]/4)とする。次に、符号化サブブロック(coded_sub_block)の最初に処理された係数値の値から、次の符号化サブブロック(coded_sub_block)の処理に使われる、符号化テーブルのテーブル番号が求められる(ステップS15の条件式A)。   FIG. 6B shows an example in which an encoding table is selected by the method shown in the flowchart of FIG. In this case, first, StatCoeff [0] = 0, StatCoeff [1] = 0, StatCoeff [2] = 0, and StatCoeff [3] = 0 are initialized. Next, at the start of the encoding sub-block, the value of sbType is set to any one of “0” to “3” depending on the values of transform_skip_flag and cu_transquant_byppass_flag. A value calculated by StatCoeff [sBtype] / 4 is a table number (cRiceParam = StatCoeff [sbType] / 4). Next, the table number of the coding table used for the processing of the next coding subblock (coded_sub_block) is obtained from the value of the coefficient value processed first in the coding subblock (coded_sub_block) (in step S15). Conditional expression A).

次に、処理された係数値を使って、条件式(cLastAbsLevel>(3*(1<<cLastRiceParam)))に基づいて、次の係数データの符号化に用いる符号化テーブルのテーブル番号を、現在の処理対象の係数データ(カレント係数データ)の符号化に用いる符号化テーブルのテーブル番号に+1したものとするか、カレント係数データの符号化に用いる符号化テーブルと同じものとするかが選択される。これを繰りかえすことで、処理する係数値に適した符号化テーブルを選択し、符号化効率を向上させる。この方式の場合、図4の例の方式に比べて、初期値に、テーブル番号「0」以外の符号化テーブルも選択することができ、符号化効率を向上させることができる。   Next, using the processed coefficient value, based on the conditional expression (cLastAbsLevel> (3 * (1 << cLastRiceParam))), the table number of the encoding table used for encoding the next coefficient data is Is selected to be the same as the encoding table used for encoding the current coefficient data or the table number of the encoding table used for encoding the current coefficient data (current coefficient data). The By repeating this, an encoding table suitable for the coefficient value to be processed is selected, and the encoding efficiency is improved. In the case of this method, as compared with the method of the example of FIG. 4, an encoding table other than the table number “0” can be selected as the initial value, and the encoding efficiency can be improved.

しかしながら、この方法の場合、符号化サブブロックの先頭の係数データには、他の符号化サブブロックの先頭の係数データに割り当てられた符号化テーブルのテーブル番号に基づいて設定されるテーブル番号の符号化テーブルが割り当てられることになる。そのため、この場合も、図6Bに示されるように、符号化サブブロック14の先頭の係数データ割り当てられた符号化テーブルのテーブル番号が、符号化サブブロック11乃至符号化サブブロック13の係数データに割り当てられた符号化テーブルのテーブル番号よりも小さくなるおそれがあり、符号化効率が低減するおそれがあった。   However, in this method, the code number of the table number set based on the table number of the coding table assigned to the coefficient data of the head of the other coding sub-block is included in the head coefficient data of the coding sub-block. Table will be allocated. Therefore, in this case as well, as shown in FIG. 6B, the table number of the encoding table to which the leading coefficient data of the encoding sub-block 14 is allocated is changed to the coefficient data of the encoding sub-block 11 to the encoding sub-block 13. There is a possibility that the table number is smaller than the assigned encoding table number, which may reduce the encoding efficiency.

<符号化テーブルの割り当て>
そこで、符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、そのカレント係数データの周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定し、設定された符号化テーブルを用いて、カレント係数データを符号化するようにする。
<Assignment of encoding table>
Therefore, the encoding table used for encoding the current coefficient data that is the processing target of the image data to be encoded is set based on the encoding table used for encoding the coefficient data around the current coefficient data. The current coefficient data is encoded using the set encoding table.

例えば、画像処理装置において、符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、そのカレント係数データの周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定する設定部と、その設定部により設定された符号化テーブルを用いて、カレント係数データを符号化する符号化部とを備えるようにする。   For example, in the image processing apparatus, an encoding table used for encoding current coefficient data that is a processing target of image data to be encoded is used as an encoding table used for encoding coefficient data around the current coefficient data. And a coding unit for coding current coefficient data using the coding table set by the setting unit.

このようにすることにより、カレント係数データにより適した符号化テーブルを割り当てることができ、符号化効率の低減を抑制することができる。   By doing in this way, the encoding table more suitable for current coefficient data can be allocated, and the reduction of encoding efficiency can be suppressed.

なお、周辺の係数データの符号化に用いられた符号化テーブルとして、カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルとを用いるようにしてもよい。そしてこれらの符号化テーブルに基づいて、カレント係数データの符号化に用いる符号化テーブルを設定するようにしてもよい。   In addition, as an encoding table used for encoding peripheral coefficient data, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data and coefficient data adjacent below the current coefficient data The encoding table used for encoding may be used. And based on these encoding tables, you may make it set the encoding table used for encoding of current coefficient data.

また、利用可能な周辺の係数データの符号化に用いられた符号化テーブルが単数の場合、その符号化テーブルを、カレント係数データの符号化に用いる符号化テーブルとして設定するようにしてもよい。   In addition, when there is a single encoding table used for encoding available peripheral coefficient data, the encoding table may be set as an encoding table used for encoding current coefficient data.

また、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の符号化テーブルのテーブル番号の平均値をテーブル番号とする符号化テーブルを、カレント係数データの符号化に用いる符号化テーブルとして設定するようにしてもよい。   Further, when there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, an encoding table having an average value of the table numbers of the plurality of encoding tables as a table number is set as the current coefficient data. You may make it set as an encoding table used for an encoding.

また、カレント係数データが、画像データの符号化単位における先頭の係数データである場合、カレント係数データの符号化に用いる符号化テーブルを、周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定するようにしてもよい。   When the current coefficient data is the first coefficient data in the encoding unit of the image data, the encoding table used for encoding the current coefficient data is changed to the encoding table used for encoding the peripheral coefficient data. You may make it set based on.

<符号化方式>
以下においては、HEVC(High Efficiency Video Coding)方式の画像符号化・復号に適用する場合を例に、本技術を説明する。
<Encoding method>
In the following, the present technology will be described by taking as an example the case of application to HEVC (High Efficiency Video Coding) image encoding / decoding.

<コーディングユニット>
AVC(Advanced Video Coding)方式においては、マクロブロックとサブマクロブロックによる階層構造が規定されている。しかしながら、16x16画素のマクロブロックでは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素x2000画素)といった大きな画枠に対して最適ではない。
<Coding unit>
In the AVC (Advanced Video Coding) method, a hierarchical structure is defined by macroblocks and sub-macroblocks. However, a macro block of 16 × 16 pixels is not optimal for a large image frame such as UHD (Ultra High Definition: 4000 pixels × 2000 pixels), which is a target of the next generation encoding method.

これに対して、HEVC方式においては、図7に示されるように、コーディングユニット(CU(Coding Unit))が規定されている。   On the other hand, in the HEVC scheme, as shown in FIG. 7, a coding unit (CU (Coding Unit)) is defined.

CUは、Coding Tree Block(CTB)とも呼ばれ、AVC方式におけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、16x16画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。   CU is also called a Coding Tree Block (CTB), and is a partial area of a picture unit image that plays the same role as a macroblock in the AVC method. The latter is fixed to a size of 16 × 16 pixels, whereas the size of the former is not fixed, and is specified in the image compression information in each sequence.

例えば、出力となる符号化データに含まれるシーケンスパラメータセット(SPS(Sequence Parameter Set))において、CUの最大サイズ(LCU(Largest Coding Unit))と最小サイズ((SCU(Smallest Coding Unit))が規定される。   For example, in the sequence parameter set (SPS (Sequence Parameter Set)) included in the output encoded data, the maximum size (LCU (Largest Coding Unit)) and minimum size ((SCU (Smallest Coding Unit)) of the CU are specified. Is done.

それぞれのLCU内においては、SCUのサイズを下回らない範囲で、split-flag=1とすることにより、より小さなサイズのCUに分割することができる。図7の例では、LCUの大きさが128であり、最大階層深度が5となる。2Nx2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、NxNの大きさのCUに分割される。   Within each LCU, split-flag = 1 can be divided into smaller CUs within a range that does not fall below the SCU size. In the example of FIG. 7, the LCU size is 128, and the maximum hierarchical depth is 5. When the value of split_flag is “1”, the 2Nx2N CU is divided into NxN CUs that are one level below.

更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。現在、HEVC方式においては、4x4及び8x8に加え、16x16及び32x32直交変換を用いることが可能である。   Furthermore, CU is divided into prediction units (Prediction Units (PU)) that are regions (partial regions of images in units of pictures) that are processing units for intra or inter prediction, and are regions that are processing units for orthogonal transformation It is divided into transform units (Transform Units (TU)), which are (partial regions of images in picture units). Currently, in the HEVC system, it is possible to use 16x16 and 32x32 orthogonal transforms in addition to 4x4 and 8x8.

以上のHEVC方式のように、CUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVC方式におけるマクロブロックはLCUに相当し、ブロック(サブブロック)はCUに相当すると考えることができる。また、AVC方式における動き補償ブロックは、PUに相当すると考えることができる。ただし、CUは、階層構造を有するので、その最上位階層のLCUのサイズは、例えば128x128画素のように、AVC方式のマクロブロックより大きく設定されることが一般的である。   In the case of an encoding method in which a CU is defined and various processes are performed in units of the CU as in the above HEVC method, a macro block in the AVC method corresponds to an LCU, and a block (sub block) corresponds to a CU. Then you can think. A motion compensation block in the AVC method can be considered to correspond to a PU. However, since the CU has a hierarchical structure, the size of the LCU of the highest hierarchy is generally set larger than the macro block of the AVC method, for example, 128 × 128 pixels.

よって、以下、LCUは、AVC方式におけるマクロブロックをも含むものとし、CUは、AVC方式におけるブロック(サブブロック)をも含むものとする。つまり、以下の説明に用いる「ブロック」は、ピクチャ内の任意の部分領域を示し、その大きさ、形状、および特性等は限定されない。つまり、「ブロック」には、例えば、TU、PU、SCU、CU、LCU、サブブロック、マクロブロック、またはスライス等任意の領域(処理単位)が含まれる。もちろん、これら以外の部分領域(処理単位)も含まれる。サイズや処理単位等を限定する必要がある場合は、適宜説明する。   Therefore, hereinafter, it is assumed that the LCU also includes a macroblock in the AVC scheme, and the CU also includes a block (sub-block) in the AVC scheme. That is, “block” used in the following description indicates an arbitrary partial area in the picture, and its size, shape, characteristics, and the like are not limited. That is, the “block” includes an arbitrary area (processing unit) such as a TU, PU, SCU, CU, LCU, sub-block, macroblock, or slice. Of course, other partial areas (processing units) are also included. When it is necessary to limit the size, processing unit, etc., it will be described as appropriate.

また、本明細書において、CTU(Coding Tree Unit)は、LCU(最大数のCU)のCTB(Coding Tree Block)と、そのLCUベース(レベル)で処理するときのパラメータを含む単位であるとする。また、CTUを構成するCU(Coding Unit)は、CB(Coding Block)と、そのCUベース(レベル)で処理するときのパラメータを含む単位であるとする。   Also, in this specification, a CTU (Coding Tree Unit) is a unit including a CTB (Coding Tree Block) of an LCU (maximum number of CUs) and parameters when processing on the basis of the LCU (level). . Also, a CU (Coding Unit) constituting a CTU is a unit including a CB (Coding Block) and a parameter for processing in the CU base (level).

<画像符号化装置>
図8は、本技術を適用した画像処理装置の一態様である画像符号化装置の構成の一例を示すブロック図である。図8に示される画像符号化装置100は、例えば、HEVCの予測処理、またはそれに準ずる方式の予測処理を用いて動画像の画像データを符号化する。
<Image encoding device>
FIG. 8 is a block diagram illustrating an example of a configuration of an image encoding device that is an aspect of an image processing device to which the present technology is applied. The image encoding device 100 illustrated in FIG. 8 encodes moving image image data using, for example, HEVC prediction processing or prediction processing based on the HEVC prediction processing.

図8に示されるように画像符号化装置100は、画面並べ替えバッファ111、演算部112、直交変換部113、量子化部114、可逆符号化部115、蓄積バッファ116、逆量子化部117、および逆直交変換部118を有する。また、画像符号化装置100は、演算部119、ループフィルタ120、フレームメモリ121、イントラ予測部122、インター予測部123、予測画像選択部124、およびレート制御部125を有する。   As shown in FIG. 8, the image encoding device 100 includes a screen rearrangement buffer 111, a calculation unit 112, an orthogonal transformation unit 113, a quantization unit 114, a lossless encoding unit 115, a storage buffer 116, an inverse quantization unit 117, And an inverse orthogonal transform unit 118. In addition, the image encoding device 100 includes a calculation unit 119, a loop filter 120, a frame memory 121, an intra prediction unit 122, an inter prediction unit 123, a predicted image selection unit 124, and a rate control unit 125.

画面並べ替えバッファ111は、入力された画像データの各フレームの画像をその表示順に記憶し、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部112に供給する。また、画面並べ替えバッファ111は、フレームの順番を並び替えた画像を、イントラ予測部122およびインター予測部123にも供給する。   The screen rearrangement buffer 111 stores the image of each frame of the input image data in the display order, and the image of the frame of the stored display order is encoded for encoding according to GOP (Group Of Picture). The images are rearranged in the order of the frames, and the image in which the order of the frames is rearranged is supplied to the calculation unit 112. In addition, the screen rearrangement buffer 111 also supplies the image in which the order of the frames is rearranged to the intra prediction unit 122 and the inter prediction unit 123.

演算部112は、画面並べ替えバッファ111から読み出された画像から、予測画像選択部124を介してイントラ予測部122若しくはインター予測部123から供給される予測画像を減算し、その差分情報(残差データ)を直交変換部113に供給する。例えば、イントラ符号化が行われる画像の場合、演算部112は、画面並べ替えバッファ111から読み出された画像から、イントラ予測部122から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部112は、画面並べ替えバッファ111から読み出された画像から、インター予測部123から供給される予測画像を減算する。   The calculation unit 112 subtracts the predicted image supplied from the intra prediction unit 122 or the inter prediction unit 123 via the predicted image selection unit 124 from the image read from the screen rearrangement buffer 111, and calculates the difference information (residual). Difference data) is supplied to the orthogonal transform unit 113. For example, in the case of an image on which intra coding is performed, the calculation unit 112 subtracts the prediction image supplied from the intra prediction unit 122 from the image read from the screen rearrangement buffer 111. For example, in the case of an image on which inter coding is performed, the calculation unit 112 subtracts the prediction image supplied from the inter prediction unit 123 from the image read from the screen rearrangement buffer 111.

直交変換部113は、演算部112から供給される残差データに対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。直交変換部113は、その直交変換により得られた変換係数を量子化部114に供給する。   The orthogonal transform unit 113 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the residual data supplied from the computing unit 112. The orthogonal transform unit 113 supplies the transform coefficient obtained by the orthogonal transform to the quantization unit 114.

量子化部114は、直交変換部113から供給される変換係数を量子化する。量子化部114は、レート制御部125から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。量子化部114は、量子化された変換係数を可逆符号化部115に供給する。   The quantization unit 114 quantizes the transform coefficient supplied from the orthogonal transform unit 113. The quantization unit 114 sets a quantization parameter based on the information regarding the target value of the code amount supplied from the rate control unit 125, and performs the quantization. The quantization unit 114 supplies the quantized transform coefficient to the lossless encoding unit 115.

可逆符号化部115は、量子化部114において量子化された変換係数を任意の符号化方式で符号化し、符号化データ(符号化ストリームとも称する)を生成する。また、可逆符号化部115は、例えばシーケンスパラメータセット、ピクチャパラメータセット、スライスヘッダ等のヘッダ情報を生成する。さらに、可逆符号化部115は、イントラ予測のモードを示す情報などをイントラ予測部122から取得し、インター予測のモードを示す情報や差分動きベクトル情報などをインター予測部123から取得し、それらの各種情報をヘッダ情報等に含める。   The lossless encoding unit 115 encodes the transform coefficient quantized by the quantization unit 114 using an arbitrary encoding method, and generates encoded data (also referred to as an encoded stream). Further, the lossless encoding unit 115 generates header information such as a sequence parameter set, a picture parameter set, and a slice header. Furthermore, the lossless encoding unit 115 acquires information indicating the mode of intra prediction from the intra prediction unit 122, acquires information indicating the mode of inter prediction, difference motion vector information, and the like from the inter prediction unit 123. Various information is included in the header information.

可逆符号化部115は、符号化して得られた符号化データを蓄積バッファ116に供給して蓄積させる。   The lossless encoding unit 115 supplies the encoded data obtained by encoding to the accumulation buffer 116 for accumulation.

可逆符号化部115の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。また、coeff_abs_level_remainingと言う、係数情報データのシンタクス処理にTR符号が用いられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。   Examples of the encoding method of the lossless encoding unit 115 include variable-length encoding or arithmetic encoding. Examples of variable length coding include H.264. CAVLC (Context-Adaptive Variable Length Coding) defined in the H.264 / AVC format. Also, a TR code is used for the coefficient information data syntax processing called coeff_abs_level_remaining. Examples of arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).

蓄積バッファ116は、可逆符号化部115から供給された符号化データを、一時的に保持する。蓄積バッファ116は、所定のタイミングにおいて、保持している符号化データを、画像符号化装置100の外部に出力する。すなわち、蓄積バッファ116は、符号化データを伝送する伝送部でもある。   The accumulation buffer 116 temporarily holds the encoded data supplied from the lossless encoding unit 115. The accumulation buffer 116 outputs the stored encoded data to the outside of the image encoding device 100 at a predetermined timing. That is, the accumulation buffer 116 is also a transmission unit that transmits encoded data.

また、量子化部114において量子化された変換係数は、逆量子化部117にも供給される。逆量子化部117は、その量子化された変換係数を、量子化部114による量子化に対応する方法で逆量子化する。逆量子化部117は、その逆量子化により得られた変換係数を、逆直交変換部118に供給する。   The transform coefficient quantized by the quantization unit 114 is also supplied to the inverse quantization unit 117. The inverse quantization unit 117 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 114. The inverse quantization unit 117 supplies the transform coefficient obtained by the inverse quantization to the inverse orthogonal transform unit 118.

逆直交変換部118は、逆量子化部117から供給された変換係数を、直交変換部113による直交変換処理に対応する方法で逆直交変換する。逆直交変換部118は、逆直交変換された出力(復元された残差データ)を演算部119に供給する。   The inverse orthogonal transform unit 118 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 117 by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 113. The inverse orthogonal transform unit 118 supplies the output (restored residual data) subjected to the inverse orthogonal transform to the calculation unit 119.

演算部119は、逆直交変換部118から供給された、復元された残差データに、予測画像選択部124を介してイントラ予測部122若しくはインター予測部123から供給される予測画像を加算し、局所的に再構成された画像(以下、復号画像とも称する)を得る。その復号画像は、ループフィルタ120若しくはイントラ予測部122に供給される。   The calculation unit 119 adds the predicted image supplied from the intra prediction unit 122 or the inter prediction unit 123 via the predicted image selection unit 124 to the restored residual data supplied from the inverse orthogonal transform unit 118, A locally reconstructed image (hereinafter also referred to as a decoded image) is obtained. The decoded image is supplied to the loop filter 120 or the intra prediction unit 122.

ループフィルタ120は、演算部119から供給される復号画像に対して適宜ループフィルタ処理を行う。このループフィルタ処理は、少なくともデブロッキングフィルタ処理を含むフィルタ処理であれば任意である。例えば、ループフィルタ120が、復号画像に対してデブロッキングフィルタ処理を行ってデブロック歪を除去するとともに、ウィナーフィルタ(Wiener Filter)を用いて適応ループフィルタ処理を行うことにより画質改善を行うようにしてもよい。また、ループフィルタ120は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部115に供給し、それを符号化させるようにすることもできる。ループフィルタ120は、フィルタ処理を適宜施した復号画像をフレームメモリ121に供給する。   The loop filter 120 appropriately performs a loop filter process on the decoded image supplied from the calculation unit 119. This loop filter process is arbitrary as long as it is a filter process including at least a deblocking filter process. For example, the loop filter 120 performs deblocking filter processing on the decoded image to remove deblocking distortion, and performs image quality improvement by performing adaptive loop filter processing using a Wiener filter (Wiener Filter). May be. Further, the loop filter 120 can supply information such as filter coefficients used for the filter processing to the lossless encoding unit 115 and encode it as necessary. The loop filter 120 supplies the decoded image to which the filter process is appropriately performed to the frame memory 121.

フレームメモリ121は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像としてインター予測部123に供給する。   The frame memory 121 stores the supplied decoded image, and supplies the stored decoded image to the inter prediction unit 123 as a reference image at a predetermined timing.

イントラ予測部122は、演算部119から参照画像として供給される復号画像である処理対象ピクチャ内の画素値を用いて予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部122は、予め用意された複数のイントラ予測モードでこのイントラ予測を行う。   The intra prediction unit 122 performs intra prediction (intra-screen prediction) that generates a predicted image using pixel values in a processing target picture that is a decoded image supplied as a reference image from the calculation unit 119. The intra prediction unit 122 performs this intra prediction in a plurality of intra prediction modes prepared in advance.

イントラ予測部122は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ111から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部122は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部124に供給する。   The intra prediction unit 122 generates predicted images in all candidate intra prediction modes, evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 111, and selects the optimum mode. select. When the intra prediction unit 122 selects the optimal intra prediction mode, the intra prediction unit 122 supplies the predicted image generated in the optimal mode to the predicted image selection unit 124.

また、上述したように、イントラ予測部122は、採用されたイントラ予測モードを示すイントラ予測モード情報等を、適宜可逆符号化部115に供給し、符号化させる。   Further, as described above, the intra prediction unit 122 appropriately supplies the intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 115 and performs encoding.

インター予測部123は、画面並べ替えバッファ111から供給される入力画像と、フレームメモリ121から供給される参照画像とを用いてインター予測処理(動き予測処理および補償処理)を行う。より具体的には、インター予測部123は、インター予測処理として、動き予測を行って検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。インター予測部123は、予め用意された複数のインター予測モードでこのようなインター予測を行う。   The inter prediction unit 123 performs inter prediction processing (motion prediction processing and compensation processing) using the input image supplied from the screen rearrangement buffer 111 and the reference image supplied from the frame memory 121. More specifically, the inter prediction unit 123 performs motion compensation processing according to motion vectors detected by performing motion prediction as inter prediction processing, and generates a predicted image (inter predicted image information). The inter prediction unit 123 performs such inter prediction in a plurality of inter prediction modes prepared in advance.

インター予測部123は、候補となる全てのインター予測モードで予測画像を生成する。インター予測部123は、画面並べ替えバッファ111から供給される入力画像と、生成した差分動きベクトルの情報などを用いて、各予測画像のコスト関数値を評価し、最適なモードを選択する。インター予測部123は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部124に供給する。   The inter prediction unit 123 generates a prediction image in all candidate inter prediction modes. The inter prediction unit 123 evaluates the cost function value of each prediction image using the input image supplied from the screen rearrangement buffer 111, information on the generated difference motion vector, and the like, and selects an optimal mode. When the optimal inter prediction mode is selected, the inter prediction unit 123 supplies the predicted image generated in the optimal mode to the predicted image selection unit 124.

インター予測部123は、採用されたインター予測モードを示す情報や、符号化データを復号する際に、そのインター予測モードで処理を行うために必要な情報等を可逆符号化部115に供給し、符号化させる。必要な情報としては、例えば、生成された差分動きベクトルの情報や、予測動きベクトル情報として、予測動きベクトルのインデックスを示すフラグなどがある。   The inter prediction unit 123 supplies information indicating the adopted inter prediction mode, information necessary for performing processing in the inter prediction mode, and the like to the lossless encoding unit 115 when decoding the encoded data, Encode. The necessary information includes, for example, information on the generated differential motion vector and a flag indicating an index of the predicted motion vector as predicted motion vector information.

予測画像選択部124は、演算部112や演算部119に供給する予測画像の供給元を選択する。例えば、イントラ符号化の場合、予測画像選択部124は、予測画像の供給元としてイントラ予測部122を選択し、そのイントラ予測部122から供給される予測画像を演算部112や演算部119に供給する。また、例えば、インター符号化の場合、予測画像選択部124は、予測画像の供給元としてインター予測部123を選択し、そのインター予測部123から供給される予測画像を演算部112や演算部119に供給する。   The predicted image selection unit 124 selects a supply source of the predicted image supplied to the calculation unit 112 or the calculation unit 119. For example, in the case of intra coding, the predicted image selection unit 124 selects the intra prediction unit 122 as the supply source of the predicted image, and supplies the predicted image supplied from the intra prediction unit 122 to the calculation unit 112 and the calculation unit 119. To do. Further, for example, in the case of inter coding, the prediction image selection unit 124 selects the inter prediction unit 123 as a supply source of the prediction image, and calculates the prediction image supplied from the inter prediction unit 123 as the calculation unit 112 or the calculation unit 119. To supply.

レート制御部125は、蓄積バッファ116に蓄積された符号化データの符号量に基づいて、オーバフローあるいはアンダーフローが発生しないように、量子化部114の量子化動作のレートを制御する。   The rate control unit 125 controls the quantization operation rate of the quantization unit 114 based on the code amount of the encoded data accumulated in the accumulation buffer 116 so that no overflow or underflow occurs.

<可逆符号化部>
図9は、可逆符号化部115の、TR符号化に関する主な構成例を示すブロック図である。図9に示されるように、可逆符号化部115は、TR符号化に関する構成として、例えば、制御部151、テーブル選択部152、TR符号化部153、およびテーブル指定情報バッファ154を有する。
<Lossless encoding unit>
FIG. 9 is a block diagram illustrating a main configuration example of the lossless encoding unit 115 regarding TR encoding. As illustrated in FIG. 9, the lossless encoding unit 115 includes, for example, a control unit 151, a table selection unit 152, a TR encoding unit 153, and a table designation information buffer 154 as a configuration related to TR encoding.

制御部151は、テーブル選択部152乃至テーブル指定情報バッファ154の各処理部をそれぞれ制御する。   The control unit 151 controls each processing unit of the table selection unit 152 to the table designation information buffer 154, respectively.

テーブル選択部152は、可逆符号化部115に供給される係数データを取得し、各係数データについて、TR符号化に用いられる符号化テーブルを選択する。テーブル選択部152は、選択したテーブルを示すテーブル指定情報をTR符号化部153およびテーブル指定情報バッファ154に供給する。   The table selection unit 152 acquires coefficient data supplied to the lossless encoding unit 115 and selects an encoding table used for TR encoding for each coefficient data. The table selection unit 152 supplies table designation information indicating the selected table to the TR encoding unit 153 and the table designation information buffer 154.

TR符号化部153は、テーブル選択部152により選択された符号化テーブル(例えば、テーブル選択部152から供給されるテーブル指定情報において指定される符号化テーブル)を用いて、処理対象の係数データ(カレント係数データ)を符号化する。TR符号化部153は、その符号化テーブルを用いた符号化により得られた符号化データを、例えば蓄積バッファ116等に出力する。   The TR encoding unit 153 uses the encoding table selected by the table selection unit 152 (for example, the encoding table specified in the table specification information supplied from the table selection unit 152) to process coefficient data ( Current coefficient data) is encoded. The TR encoding unit 153 outputs encoded data obtained by encoding using the encoding table, for example, to the accumulation buffer 116 or the like.

テーブル指定情報バッファ154は、テーブル選択部152から供給される各係数データのテーブル指定情報を記憶する。また、テーブル指定情報バッファ154は、必要に応じて(例えばテーブル選択部152の要求に従って)、記憶しているテーブル指定情報を、カレント係数データの周辺の係数データとして、テーブル選択部152に供給する。   The table designation information buffer 154 stores table designation information for each coefficient data supplied from the table selection unit 152. Further, the table designation information buffer 154 supplies the stored table designation information to the table selection unit 152 as coefficient data around the current coefficient data as necessary (for example, according to a request from the table selection unit 152). .

このテーブル指定情報は、任意の情報であるが、例えばテーブル番号を含んでいてもよい。以下においては、符号化テーブルのテーブル番号をテーブル指定情報として用いる場合について説明する。   The table designation information is arbitrary information, but may include a table number, for example. Below, the case where the table number of an encoding table is used as table designation | designated information is demonstrated.

<テーブル選択部>
図10は、テーブル選択部152の主な構成例を示すブロック図である。図10に示されるように、テーブル選択部152は、周辺履歴演算部161、テーブル処理部162、選択部163、ベースレベル決定部164、演算部165、演算部166、選択部167、シフト処理部171、テーブル選択部172、選択部173、ベースレベル決定部174、演算部175、演算部176、および選択部177を有する。
<Table selection part>
FIG. 10 is a block diagram illustrating a main configuration example of the table selection unit 152. As illustrated in FIG. 10, the table selection unit 152 includes a peripheral history calculation unit 161, a table processing unit 162, a selection unit 163, a base level determination unit 164, a calculation unit 165, a calculation unit 166, a selection unit 167, and a shift processing unit. 171, a table selection unit 172, a selection unit 173, a base level determination unit 174, a calculation unit 175, a calculation unit 176, and a selection unit 177.

図10に示されるように、テーブル選択部152は、2係数データずつ並行に処理する。点線181で囲まれる図中上段の構成が1つめの係数データを処理するための構成であり、点線182で囲まれる図中下段の構成が2つめの係数データを処理するための構成である。   As shown in FIG. 10, the table selection unit 152 processes two coefficient data in parallel. The configuration in the upper part of the drawing surrounded by the dotted line 181 is a configuration for processing the first coefficient data, and the configuration in the lower part of the drawing surrounded by the dotted line 182 is a configuration for processing the second coefficient data.

周辺履歴演算部161は、カレント係数データ(処理対象の係数データ)について、符号化に用いる符号化テーブルのテーブル番号(curr_table No.)を求める。例えば、カレント係数データが画像データの符号化単位の1つである符号化サブブロック(coded_sub_block)の先頭の(最初に処理される)係数データである場合、テーブル指定情報バッファ154からカレント係数データの周辺の係数データの符号化に用いられた符号化テーブルのテーブル番号(周辺Table No.)を取得し、その取得したテーブル番号から、カレント係数データの符号化テーブルのテーブル番号(curr_table No.)を求める。   The peripheral history calculation unit 161 obtains a table number (curr_table No.) of an encoding table used for encoding for current coefficient data (coefficient data to be processed). For example, if the current coefficient data is the first (first processed) coefficient data of a coded sub-block (coded_sub_block) that is one of the coding units of image data, the current coefficient data is stored in the table designation information buffer 154. Obtain the table number (peripheral Table No.) of the encoding table used for encoding the peripheral coefficient data, and use the table number (curr_table No.) of the encoding table of the current coefficient data from the acquired table number. Ask.

この演算方法の詳細については後述するが、例えば、カレント係数データに対して周辺の係数データが存在しない場合、周辺履歴演算部161は、所定の初期値(例えばテーブル番号0)を、カレント係数データの符号化テーブルのテーブル番号(curr_table No.)として設定する。   Although details of this calculation method will be described later, for example, when there is no peripheral coefficient data for the current coefficient data, the peripheral history calculation unit 161 uses a predetermined initial value (for example, table number 0) as the current coefficient data. Set as the table number (curr_table No.) of the encoding table.

周辺履歴演算部161は、設定したテーブル番号(curr_table No.)を、TR符号化部153やテーブル指定情報バッファ154に供給するとともに、選択部163にも供給する。   The peripheral history calculation unit 161 supplies the set table number (curr_table No.) to the TR encoding unit 153 and the table designation information buffer 154 and also to the selection unit 163.

また、カレント係数データが符号化サブブロック(coded_sub_block)の先頭の係数データでない場合、周辺履歴演算部161は、選択部177が選択したテーブル番号(next_table_1)(つまり、カレント係数データの1つ前の係数データの処理において、「次の係数データの符号化に用いられる符号化テーブルのテーブル番号」として設定された値)を取得し、その取得したテーブル番号を、カレント係数データの符号化テーブルのテーブル番号(curr_table No.)として選択部163に供給する。   If the current coefficient data is not the first coefficient data of the coded sub-block (coded_sub_block), the peripheral history calculation unit 161 selects the table number (next_table_1) selected by the selection unit 177 (that is, the one before the current coefficient data). In the coefficient data processing, a value set as “the table number of the encoding table used for encoding the next coefficient data”) is acquired, and the acquired table number is used as the table of the encoding table of the current coefficient data. The number is supplied to the selection unit 163 as a number (curr_table No.).

テーブル処理部162は、テーブル選択部152に供給される係数データを、各符号化テーブル(図10の例の場合、テーブル番号0の符号化テーブル(Table_0)乃至テーブル番号4の符号化テーブル(Table_4))を用いてTR符号化する。テーブル処理部162は、各符号化テーブルを用いたTR符号化結果を選択部163に供給する。   The table processing unit 162 converts the coefficient data supplied to the table selection unit 152 into each encoding table (in the example of FIG. 10, the encoding table (Table_0) with the table number 0 to the encoding table (Table_4) with the table number 4). )) Is used for TR encoding. The table processing unit 162 supplies the TR encoding result using each encoding table to the selection unit 163.

選択部163は、テーブル処理部162から供給される各TR符号化結果の中から、周辺履歴演算部161から供給されるテーブル番号(curr_table No.)の符号化テーブルを用いたTR符号化結果を選択する。選択部163は、選択したTR符号化結果をcoeff_abs_level_remainingとして、演算部165に供給する。   The selection unit 163 selects the TR encoding result using the encoding table of the table number (curr_table No.) supplied from the peripheral history calculation unit 161 from the TR encoding results supplied from the table processing unit 162. select. The selection unit 163 supplies the selected TR encoding result to the arithmetic unit 165 as coeff_abs_level_remaining.

ベースレベル決定部164は、ベースレベル(baselevel)の決定に関する処理を行う。例えば、ベースレベル決定部164は、scfが1かどうか、g1_flag[7:0]のどのbitが該当しているか否か、g1_flag=1の時、g2_flagが0か1か、g1_flagがすべて出たかどうか等の条件に基づいてベースレベルを決定する。ベースレベル決定部164は、決定したベースレベル(baselevel)を演算部165に供給する。   The base level determination unit 164 performs processing related to determination of the base level. For example, the base level determination unit 164 determines whether or not scf is 1, which bit of g1_flag [7: 0] corresponds, and when g1_flag = 1, whether g2_flag is 0 or 1 or all g1_flag is output The base level is determined based on conditions such as whether or not. The base level determination unit 164 supplies the determined base level to the calculation unit 165.

演算部165は、選択部163から供給されるcoeff_abs_level_remainingに、ベースレベル決定部164により決定されたベースレベル(baselevel)を加算し、その値を、cLastAbsLevelとして選択部167に供給する。   The calculation unit 165 adds the base level (baselevel) determined by the base level determination unit 164 to coeff_abs_level_remaining supplied from the selection unit 163, and supplies the value to the selection unit 167 as cLastAbsLevel.

演算部166は、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)に値「+1」を加算する。選択部167には、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)や演算部166により「+1」が加算されたテーブル番号が供給される。   The calculation unit 166 adds the value “+1” to the table number (curr_table) of the encoding table used for encoding the current coefficient data. The selection unit 167 is supplied with the table number (curr_table) of the encoding table used for encoding the current coefficient data and the table number added with “+1” by the calculation unit 166.

選択部167は、演算部165から供給されるcLastAbsLevelに基づいて、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)と、演算部166より供給される「+1」が加算されたテーブル番号との内、いずれか一方を選択する。選択部167は、選択したテーブル番号を、次の係数データの符号化に用いられる符号化テーブルのテーブル番号(next_table No.(すなわちnext_table_0))として、TR符号化部153やテーブル指定情報バッファ154に供給するとともに、選択部173にも供給する。   Based on the cLastAbsLevel supplied from the operation unit 165, the selection unit 167 adds the table number (curr_table) of the encoding table used for encoding the current coefficient data and “+1” supplied from the operation unit 166. Select one of the table numbers. The selection unit 167 uses the selected table number as the table number (next_table No. (ie, next_table_0)) of the encoding table used for encoding the next coefficient data in the TR encoding unit 153 and the table designation information buffer 154. In addition to the supply, the selection unit 173 is also supplied.

テーブル選択部152に入力された係数データは、シフト処理部171にも供給される。シフト処理部171は、カレント係数データを次の係数データにシフトする。つまり、シフト処理部171は、テーブル処理部162に供給される係数データの次の係数データをテーブル処理部172に供給する。   The coefficient data input to the table selection unit 152 is also supplied to the shift processing unit 171. The shift processing unit 171 shifts the current coefficient data to the next coefficient data. In other words, the shift processing unit 171 supplies the coefficient data next to the coefficient data supplied to the table processing unit 162 to the table processing unit 172.

テーブル処理部172は、シフト処理部171により新たにカレント係数データにされた係数データを、各符号化テーブル(図10の例の場合、テーブル番号0の符号化テーブル(Table_0)乃至テーブル番号4の符号化テーブル(Table_4))を用いてTR符号化する。テーブル処理部172は、各符号化テーブルを用いたTR符号化結果を選択部173に供給する。   The table processing unit 172 converts the coefficient data newly made into current coefficient data by the shift processing unit 171 into each encoding table (in the example of FIG. 10, the encoding table (Table_0) from the table number 0 to the table number 4). Perform TR encoding using the encoding table (Table_4). The table processing unit 172 supplies the TR encoding result using each encoding table to the selection unit 173.

選択部173は、テーブル処理部172から供給される各TR符号化結果の中から、選択部167から供給されるテーブル番号(next_table_0)の符号化テーブルを用いたTR符号化結果を選択する。選択部173は、選択したTR符号化結果をcoeff_abs_level_remainingとして、演算部175に供給する。   The selection unit 173 selects a TR encoding result using the encoding table of the table number (next_table_0) supplied from the selection unit 167 from the TR encoding results supplied from the table processing unit 172. The selection unit 173 supplies the selected TR encoding result to the calculation unit 175 as coeff_abs_level_remaining.

ベースレベル決定部174は、ベースレベル(baselevel)の決定に関する処理を行う。例えば、ベースレベル決定部174は、scfが1かどうか、g1_flag[7:0]のどのbitが該当しているか否か、g1_flag=1の時、g2_flagが0か1か、g1_flagがすべて出たかどうか等の条件に基づいてベースレベルを決定する。ベースレベル決定部174は、決定したベースレベル(baselevel)を演算部175に供給する。   The base level determination unit 174 performs processing related to determination of a base level. For example, the base level determination unit 174 determines whether or not scf is 1, which bit of g1_flag [7: 0] corresponds, and when g1_flag = 1, whether g2_flag is 0 or 1 or all g1_flag is output The base level is determined based on conditions such as whether or not. The base level determination unit 174 supplies the determined base level to the calculation unit 175.

演算部175は、選択部173から供給されるcoeff_abs_level_remainingに、ベースレベル決定部174により決定されたベースレベル(baselevel)を加算し、その値を、cLastAbsLevelとして選択部177に供給する。   The calculation unit 175 adds the base level (baselevel) determined by the base level determination unit 174 to coeff_abs_level_remaining supplied from the selection unit 173, and supplies the value to the selection unit 177 as cLastAbsLevel.

演算部176は、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)に値「+1」を加算する。選択部177には、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)や演算部176により「+1」が加算されたテーブル番号が供給される。   The calculation unit 176 adds the value “+1” to the table number (curr_table) of the encoding table used for encoding the current coefficient data. The selection unit 177 is supplied with the table number (curr_table) of the encoding table used for encoding the current coefficient data and the table number added with “+1” by the calculation unit 176.

選択部177は、演算部175から供給されるcLastAbsLevelに基づいて、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)と、演算部176より供給される「+1」が加算されたテーブル番号との内、いずれか一方を選択する。選択部177は、選択したテーブル番号を、次の係数データの符号化に用いられる符号化テーブルのテーブル番号(next_table No.(すなわちnext_table_1))として、TR符号化部153やテーブル指定情報バッファ154に供給する。   Based on the cLastAbsLevel supplied from the operation unit 175, the selection unit 177 adds the table number (curr_table) of the encoding table used for encoding the current coefficient data and “+1” supplied from the operation unit 176. Select one of the table numbers. The selection unit 177 sets the selected table number as the table number (next_table No. (ie, next_table_1)) of the encoding table used for encoding the next coefficient data in the TR encoding unit 153 and the table designation information buffer 154. Supply.

<符号化テーブルの設定方法>
次に、周辺履歴演算部161による符号化テーブルの設定の仕方について、図11を参照して説明する。
<Setting method of encoding table>
Next, how to set the encoding table by the peripheral history calculation unit 161 will be described with reference to FIG.

直交変換処理単位であるTUは、複数の符号化サブブロック(coded_sub_block)により構成される。図11Aの例の場合、TU190は、8x8(縦8個×横8個)の係数データにより構成され、2x2の符号化サブブロック(符号化サブブロック191−1乃至符号化サブブロック191−4)が形成されている。なお、図11Aにおいて、小さな正方形は係数データを示している。そして、符号化サブブロック191−1乃至符号化サブブロック191−4は、それぞれ、4x4(縦4個×横4個)の係数データにより構成されている。符号化サブブロック191−1乃至符号化サブブロック191−4を互いに区別して説明する必要が無い場合、符号化サブブロック191と称する。   The TU, which is an orthogonal transform processing unit, is composed of a plurality of coded sub-blocks (coded_sub_block). In the case of the example of FIG. 11A, the TU 190 is configured by 8 × 8 (vertical 8 × horizontal 8) coefficient data, and 2 × 2 encoding sub-blocks (encoding sub-block 191-1 to encoding sub-block 191-4). Is formed. In FIG. 11A, a small square indicates coefficient data. The encoding sub-block 191-1 to the encoding sub-block 191-4 are each composed of coefficient data of 4 × 4 (4 vertical × 4 horizontal). When it is not necessary to distinguish between the encoding sub-block 191-1 to the encoding sub-block 191-4, they are referred to as an encoding sub-block 191.

なお、TU190のサイズは任意であり、8x8に限定されない。例えば、HEVCでは、TUのサイズとして、4x4、8x8、16x16、32x32等が認められている。もちろん、これら以外のサイズであってもよいし、正方形でなくてもよい。符号化サブブロック191も、TU190より小さければよく、4x4に限定されない。   The size of the TU 190 is arbitrary and is not limited to 8x8. For example, in HEVC, 4x4, 8x8, 16x16, 32x32, etc. are accepted as TU sizes. Of course, the size may be other than these or may not be square. The encoding sub-block 191 only needs to be smaller than the TU 190, and is not limited to 4x4.

各符号化サブブロック191内において、各係数データは、図11Bに示されるような順序(アップライトスキャン(up-right_scan)順)で符号化される。図11Bにおいて、各小さな四角は係数データを示し、そこに示される数字は、処理順を示す。つまり、符号化サブブロック191の各係数データの符号化は、番号0の係数データから、0→1→2→・・・・→15の順に進む。すなわち、この斜線模様で示される、符号化サブブロック191の右下隅の係数データが、この符号化サブブロック191における先頭の係数データ(最初に処理される係数データ)である。   Within each encoding sub-block 191, each coefficient data is encoded in the order shown in FIG. 11B (up-right_scan order). In FIG. 11B, each small square indicates coefficient data, and the numbers shown therein indicate the processing order. That is, the encoding of each coefficient data of the encoding sub-block 191 proceeds in the order of 0 → 1 → 2 →. That is, the coefficient data at the lower right corner of the encoding sub-block 191 indicated by the hatched pattern is the first coefficient data (coefficient data processed first) in the encoding sub-block 191.

また、この場合、図11AのTU190において、各符号化サブブロック191は、符号化サブブロック191−1、符号化サブブロック191−2、符号化サブブロック191−3、符号化サブブロック191−4の順に処理される。   Also, in this case, in the TU 190 of FIG. 11A, each encoding subblock 191 includes an encoding subblock 191-1, an encoding subblock 191-2, an encoding subblock 191-3, and an encoding subblock 191-4. Are processed in this order.

なお、スキャン順は、任意であり、アップライトスキャン順に限定されない。例えば、ホリゾンタルスキャン(horizontal_scan)順であってもよいし、バーティカルスキャン(vertical_scan)順であってもよいし、それ以外の順序であってもよい。   The scan order is arbitrary and is not limited to the upright scan order. For example, the order may be horizontal scan (horizontal_scan) order, vertical scan (vertical_scan) order, or any other order.

このような構成のTU190に対して、周辺履歴演算部161は、符号化サブブロック191の先頭の係数データの符号化に用いる符号化テーブル(のテーブル番号)を、その周辺の係数データの符号化に用いられた符号化テーブル(のテーブル番号)に基づいて設定する。   For the TU 190 having such a configuration, the peripheral history calculation unit 161 encodes an encoding table (its table number) used for encoding the first coefficient data of the encoding sub-block 191 to encode the peripheral coefficient data. This is set based on the encoding table (table number) used in the above.

より具体的には、周辺履歴演算部161は、符号化サブブロック191の先頭の係数データ(図11Aにおいて「C」が示される係数データ)をカレント係数データ(処理対象の係数データ)とする場合、そのカレント係数データの右に隣接する係数データ(図11Aにおいて「A」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)と、カレント係数データの下に隣接する係数データ(図11Aにおいて「B」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)とに基づいて、カレント係数データの符号化に用いる符号化テーブル(のテーブル番号)を設定する。   More specifically, the peripheral history calculation unit 161 sets the first coefficient data (coefficient data indicated by “C” in FIG. 11A) of the encoding sub-block 191 as current coefficient data (coefficient data to be processed). The coding table (the table number) used for coding the coefficient data adjacent to the right of the current coefficient data (coefficient data indicated by “A” in FIG. 11A) and the current coefficient data are adjacent to each other. Based on the coding table (the table number) used for coding the coefficient data (coefficient data indicated by “B” in FIG. 11A) (the table number of the coding table used for coding the current coefficient data) ) Is set.

例えば、符号化サブブロック191−1の先頭の係数データをカレント係数データとする場合、図11Aに示されるように、そのカレント係数データの右に隣接する係数データ(「A」が示される係数データ)も、そのカレント係数データの下に隣接する係数データ(「B」が示される係数データ)も存在しない。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として所定の初期値(例えばテーブル番号0)を設定する。   For example, when the first coefficient data of the encoding sub-block 191-1 is the current coefficient data, as shown in FIG. 11A, the coefficient data adjacent to the right of the current coefficient data (coefficient data indicating “A”) ), There is no coefficient data adjacent to the current coefficient data (coefficient data indicated by “B”). Accordingly, the peripheral history calculation unit 161 sets a predetermined initial value (for example, table number 0) as an encoding table (table number) used for encoding the current coefficient data.

また、例えば、符号化サブブロック191−2の先頭の係数データをカレント係数データとする場合、図11Aに示されるように、そのカレント係数データの右に隣接する係数データは存在しないが、そのカレント係数データの下に隣接する係数データが存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として、そのカレント係数データの下に隣接する係数データ(「B」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)を設定する。   For example, when the first coefficient data of the encoding sub-block 191-2 is current coefficient data, there is no coefficient data adjacent to the right of the current coefficient data, as shown in FIG. Adjacent coefficient data exists below the coefficient data. Accordingly, the peripheral history calculation unit 161 uses, as an encoding table (table number) used for encoding the current coefficient data, the coefficient data adjacent to the current coefficient data (coefficient data indicating “B”). An encoding table (table number) used for encoding is set.

同様に、例えば、符号化サブブロック191−3の先頭の係数データをカレント係数データとする場合、図11Aに示されるように、そのカレント係数データの下に隣接する係数データは存在しないが、そのカレント係数データの右に隣接する係数データが存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として、そのカレント係数データの右に隣接する係数データ(「A」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)を設定する。   Similarly, for example, when the first coefficient data of the encoding sub-block 191-3 is the current coefficient data, there is no coefficient data adjacent to the current coefficient data as shown in FIG. 11A. Adjacent coefficient data exists to the right of the current coefficient data. Therefore, the peripheral history calculation unit 161 uses, as an encoding table (table number) used for encoding the current coefficient data, coefficient data adjacent to the right of the current coefficient data (coefficient data indicating “A”). An encoding table (table number) used for encoding is set.

さらに、例えば、符号化サブブロック191−4の先頭の係数データをカレント係数データとする場合、図11Aに示されるように、そのカレント係数データの右に隣接する係数データも、そのカレント係数データの下に隣接する係数データも存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの右に隣接する係数データ(「A」が示される係数データ)の符号化に用いられた符号化テーブルのテーブル番号と、そのカレント係数データの下に隣接する係数データ(「B」が示される係数データ)の符号化に用いられた符号化テーブルのテーブル番号との平均値を設定する。   Furthermore, for example, when the first coefficient data of the encoding sub-block 191-4 is used as current coefficient data, as shown in FIG. 11A, coefficient data adjacent to the right of the current coefficient data is also the current coefficient data. There is also adjacent coefficient data below. Therefore, the peripheral history calculation unit 161 encodes the coefficient data adjacent to the right of the current coefficient data (coefficient data indicated by “A”) as the table number of the encoding table used for encoding the current coefficient data. The average value of the table number of the encoding table used for the encoding and the table number of the encoding table used for encoding the coefficient data adjacent to the current coefficient data (coefficient data indicated by “B”) Set.

その他の係数データの符号化に用いる符号化テーブル(のテーブル番号)は、図5のフローチャートを参照して説明した場合と同様に設定されるものとすると、TU190の各係数データの符号化に用いる符号化テーブル(のテーブル番号)は、例えば、図12の例のように設定される。   If the encoding table (table number) used for encoding other coefficient data is set in the same manner as described with reference to the flowchart of FIG. 5, it is used for encoding each coefficient data of TU190. The encoding table (table number) is set as shown in the example of FIG.

一般的に、TU190の左上により低周波成分が集まり、右下により高周波成分が集まる。つまり、TU190の右下の係数データほどその値が小さくなり、左上の係数データほどその値が大きくなる傾向がある。したがって、TU190の右下の係数データほどテーブル番号が小さな符号化テーブルで符号化し、左上の係数データほどテーブル番号が大きな符号化テーブルで符号化することにより、符号化効率の向上を期待することができる。換言するに、TU190のより右下の係数データをテーブル番号がより大きな符号化テーブルで符号化し、より左上の係数データをテーブル番号がより小さな符号化テーブルで符号化するようにすると、符号化効率が低減するおそれがある。   In general, low frequency components are collected at the upper left of the TU 190, and high frequency components are collected at the lower right. In other words, the lower right coefficient data of TU 190 has a smaller value, and the upper left coefficient data tends to have a larger value. Therefore, it is possible to expect an improvement in encoding efficiency by encoding with the encoding table having a smaller table number as the coefficient data at the lower right of the TU 190 and encoding with an encoding table having a larger table number as the upper left coefficient data. it can. In other words, if the lower right coefficient data of the TU 190 is encoded with an encoding table with a larger table number, and the upper left coefficient data is encoded with an encoding table with a smaller table number, the encoding efficiency is increased. May be reduced.

また、このような値の分布の傾向から、各係数データの値は、その周辺の係数データの値との相関性が高い。つまり、各係数データは、その周辺の係数データの符号化に用いられた符号化テーブルのテーブル番号と一致若しくは近似するテーブル番号の符号化テーブルを用いて符号化することにより、符号化効率の向上を期待することができる。換言するに、互いに位置が近い係数データに、テーブル番号が大きく異なる符号化テーブルを割り当てるようにすると、符号化効率が低減するおそれがある。   Further, from the tendency of such value distribution, each coefficient data value is highly correlated with the peripheral coefficient data values. That is, each coefficient data is encoded by using an encoding table having a table number that matches or approximates the table number of the encoding table used for encoding the peripheral coefficient data, thereby improving the encoding efficiency. Can be expected. In other words, if encoding tables having greatly different table numbers are assigned to coefficient data whose positions are close to each other, encoding efficiency may be reduced.

図12の例の方が、図6Aや図6Bの場合よりも、TU190のより右下の係数データにより小さなテーブル番号の符号化テーブルを割り当て、より左上の係数データにより大きなテーブル番号の符号化テーブルを割り当てている。また、図12の例の方が、図6Aや図6Bの場合よりも、互いに位置が近い係数データに割り当てられた符号化テーブル同士のテーブル番号の差が小さい。   In the example of FIG. 12, an encoding table having a smaller table number is assigned to the lower right coefficient data of the TU 190 and an encoding table having a larger table number is assigned to the upper left coefficient data than in the case of FIGS. 6A and 6B. Assigned. Further, the example of FIG. 12 has a smaller table number difference between the coding tables assigned to the coefficient data whose positions are closer to each other than in the case of FIGS. 6A and 6B.

したがって、図12の例の方が、図6Aや図6Bの場合よりも、符号化効率の低減を抑制することができる。   Therefore, the example of FIG. 12 can suppress the reduction in encoding efficiency compared to the cases of FIGS. 6A and 6B.

なお、以上においては、カレント係数データの右に隣接する係数データも、そのカレント係数データの下に隣接する係数データも存在する場合、すなわち、利用可能な周辺の係数データの符号化に用いられた符号化テーブルが複数存在する場合、カレント係数データの符号化に用いる符号化テーブルのテーブル番号として、それらの符号化テーブルのテーブル番号の平均値を設定するように説明したが、これに限らず、例えば、それらの符号化テーブルのテーブル番号の中央値を設定するようにしてもよい。また、その他の演算の結果を、カレント係数データの符号化に用いる符号化テーブルのテーブル番号として設定するようにしてもよい。   In the above description, the coefficient data adjacent to the right of the current coefficient data and the coefficient data adjacent to the current coefficient data are present, that is, used for encoding of the peripheral coefficient data that can be used. In the case where there are a plurality of encoding tables, the table number of the encoding table used for encoding the current coefficient data has been described as setting the average value of the table numbers of these encoding tables. For example, you may make it set the median of the table number of those encoding tables. Further, the result of other calculation may be set as a table number of an encoding table used for encoding current coefficient data.

また、例えば、カレント係数データの符号化に用いる符号化テーブルのテーブル番号として、それらの符号化テーブルのテーブル番号のいずれかを設定するようにしてもよい。例えば、それらの符号化テーブルのテーブル番号の最大値や最小値を設定するようにしてもよい。   Further, for example, any one of the table numbers of the encoding tables may be set as the table number of the encoding table used for encoding the current coefficient data. For example, the maximum value and the minimum value of the table numbers of those encoding tables may be set.

<符号化処理の流れ>
次に、画像符号化装置100により実行される各処理の流れの例を説明する。最初に、符号化処理の流れの例を、図13のフローチャートを参照して説明する。
<Flow of encoding process>
Next, an example of the flow of each process executed by the image encoding device 100 will be described. First, an example of the flow of the encoding process will be described with reference to the flowchart of FIG.

符号化処理が開始されると、ステップS101において、画面並べ替えバッファ111は、入力された動画像の各フレーム(ピクチャ)の画像をその表示する順番に記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。   When the encoding process is started, in step S101, the screen rearrangement buffer 111 stores the images of the frames (pictures) of the input moving image in the order in which the images are displayed. Rearrange in the order of conversion.

ステップS102において、イントラ予測部122は、イントラ予測モードのイントラ予測処理を行う。   In step S102, the intra prediction unit 122 performs intra prediction processing in the intra prediction mode.

ステップS103において、インター予測部123は、インター予測モードでの動き予測や動き補償等を行うインター予測処理を行う。   In step S103, the inter prediction unit 123 performs inter prediction processing for performing motion prediction, motion compensation, and the like in the inter prediction mode.

ステップS104において、予測画像選択部124は、コスト関数値等に基づいて、ステップS102のイントラ予測により生成された予測画像と、ステップS103のインター予測により生成された予測画像のいずれか一方を選択する。   In step S104, the predicted image selection unit 124 selects either a predicted image generated by the intra prediction in step S102 or a predicted image generated by the inter prediction in step S103, based on the cost function value or the like. .

ステップS105において、演算部112は、ステップS101の処理によりフレーム順を並び替えられた入力画像と、ステップS104の処理により選択された予測画像との差分を演算する。つまり、演算部112は、入力画像と予測画像との残差データを生成する。このようにして求められた残差データは、元の画像データに比べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。   In step S105, the calculation unit 112 calculates a difference between the input image whose frame order is rearranged by the process of step S101 and the predicted image selected by the process of step S104. That is, the calculation unit 112 generates residual data between the input image and the predicted image. The residual data obtained in this way is reduced in data amount compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.

ステップS106において、直交変換部113は、ステップS105の処理により生成された残差データを直交変換する。   In step S106, the orthogonal transform unit 113 performs orthogonal transform on the residual data generated by the process in step S105.

ステップS107において、量子化部114は、レート制御部125により算出された量子化パラメータを用いて、ステップS106の処理により得られた直交変換係数を量子化する。   In step S107, the quantization unit 114 quantizes the orthogonal transform coefficient obtained by the process in step S106, using the quantization parameter calculated by the rate control unit 125.

ステップS108において、逆量子化部117は、ステップS107の処理により生成された量子化された係数(量子化係数とも称する)を、その量子化の特性に対応する特性で逆量子化する。   In step S108, the inverse quantization unit 117 inversely quantizes the quantized coefficient (also referred to as a quantization coefficient) generated by the process in step S107 with a characteristic corresponding to the quantization characteristic.

ステップS109において、逆直交変換部118は、ステップS108の処理により得られた直交変換係数を逆直交変換する。   In step S109, the inverse orthogonal transform unit 118 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process of step S108.

ステップS110において、演算部119は、ステップS109の処理により復元された残差データに、ステップS104の処理により選択された予測画像を加算することにより、復号画像の画像データを生成する。   In step S110, the calculation unit 119 generates image data of a decoded image by adding the predicted image selected by the process of step S104 to the residual data restored by the process of step S109.

ステップS111において、ループフィルタ120は、ステップS110の処理により生成された復号画像の画像データに対して適宜ループフィルタ処理を行う。   In step S111, the loop filter 120 appropriately performs loop filter processing on the image data of the decoded image generated by the processing in step S110.

ステップS112において、フレームメモリ121は、ステップS111の処理が行われた、局所的に復号された復号画像を記憶する。   In step S112, the frame memory 121 stores the locally decoded decoded image that has undergone the process of step S111.

ステップS113において、可逆符号化部115は、ステップS107の処理により得られた、量子化された係数を符号化する。すなわち、残差データに対応するデータに対して、可変長符号化や算術符号化等の可逆符号化が行われる。   In step S113, the lossless encoding unit 115 encodes the quantized coefficient obtained by the process of step S107. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on data corresponding to the residual data.

また、可逆符号化部115は、ステップS104の処理により選択された予測画像の予測モードに関する情報を符号化し、符号化データのヘッダ情報に付加する。つまり、可逆符号化部115は、イントラ予測部122から供給される最適イントラ予測モード情報、または、インター予測部123から供給される最適インター予測モードに応じた情報なども符号化し、符号化データのヘッダ情報に付加する。   In addition, the lossless encoding unit 115 encodes information related to the prediction mode of the prediction image selected by the processing in step S104 and adds the information to the header information of the encoded data. That is, the lossless encoding unit 115 also encodes the optimal intra prediction mode information supplied from the intra prediction unit 122 or the information corresponding to the optimal inter prediction mode supplied from the inter prediction unit 123, and the like. Add to header information.

ステップS114において蓄積バッファ116は、ステップS113の処理により得られた符号化データ等を蓄積する。蓄積バッファ116に蓄積された符号化データ等は、ビットストリームとして適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。   In step S114, the accumulation buffer 116 accumulates the encoded data obtained by the process in step S113. The encoded data or the like stored in the storage buffer 116 is appropriately read as a bit stream and transmitted to the decoding side via a transmission path or a recording medium.

ステップS115においてレート制御部125は、ステップS114の処理により蓄積バッファ116に蓄積された符号化データ等の符号量(発生符号量)に基づいて、オーバフローあるいはアンダーフローが発生しないように、ステップS107の量子化処理のレートを制御する。   In step S115, the rate control unit 125 performs step S107 to prevent overflow or underflow based on the code amount (generated code amount) of the encoded data or the like accumulated in the accumulation buffer 116 by the process of step S114. Controls the rate of quantization processing.

ステップS115の処理が終了すると、符号化処理が終了する。   When the process of step S115 ends, the encoding process ends.

<TR符号化処理の流れ>
次に、ステップS113の可逆符号化処理として実行されるTR符号化処理の流れの例を、図14のフローチャートを参照して説明する。
<Flow of TR encoding process>
Next, an example of the flow of the TR encoding process executed as the lossless encoding process in step S113 will be described with reference to the flowchart of FIG.

TR符号化処理が開始されると、ステップS121において、テーブル選択部152は、係数データの符号化に用いる符号化テーブルを選択する。   When the TR encoding process is started, in step S121, the table selection unit 152 selects an encoding table used for encoding coefficient data.

ステップS122において、TR符号化部153は、ステップS121において選択された符号化テーブルを用いて、係数データを符号化する。   In step S122, the TR encoding unit 153 encodes the coefficient data using the encoding table selected in step S121.

ステップS123において、テーブル指定情報バッファ154は、ステップS121において選択された符号化テーブル(のテーブル番号)を示すテーブル指定情報を記憶する。   In step S123, the table designation information buffer 154 stores table designation information indicating the encoding table (table number) selected in step S121.

ステップS123の処理が終了すると、TR符号化処理が終了する。   When the process of step S123 ends, the TR encoding process ends.

<符号化テーブル選択処理の流れ>
次に、図14のステップS121において実行される符号化テーブル選択処理の流れの例を、図15のフローチャートを参照して説明する。
<Encoding table selection process flow>
Next, an example of the flow of the encoding table selection process executed in step S121 of FIG. 14 will be described with reference to the flowchart of FIG.

ステップS131において、周辺履歴演算部161は、変数StatCoeffA, StatCoeffB, prevStatCoeffをそれぞれ初期値(例えば「0」)に設定する。   In step S131, the peripheral history calculation unit 161 sets variables StatCoeffA, StatCoeffB, and prevStatCoeff to initial values (for example, “0”).

変数StatCoeffAは、カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。変数StatCoeffBは、カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。変数prevStatCoeffは、直前に処理された係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。   The variable StatCoeffA indicates the table number of the encoding table used for encoding the coefficient data adjacent to the right of the current coefficient data. The variable StatCoeffB indicates the table number of the encoding table used for encoding the coefficient data adjacent to the current coefficient data. The variable prevStatCoeff indicates the table number of the encoding table used for encoding the coefficient data processed immediately before.

ステップS132において、制御部151は、当該TU内において、処理対象とする符号化サブブロック(coded_sub_block)を、所定の順に従って選択する。また、制御部151は、選択した符号化サブブロックにおいて、所定のスキャン順における先頭の係数データを処理対象(カレント係数データ)として選択する。   In step S132, the control unit 151 selects a coded sub-block (coded_sub_block) to be processed in a predetermined order in the TU. In addition, the control unit 151 selects the first coefficient data in a predetermined scan order as a processing target (current coefficient data) in the selected encoding sub-block.

ステップS133において、周辺履歴演算部161は、カレント係数データの周辺の係数データの有無により、変数initValueを設定する。   In step S133, the peripheral history calculation unit 161 sets a variable initValue depending on the presence / absence of coefficient data around the current coefficient data.

例えば、カレント係数データが、符号化サブブロック191−1(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右に隣接する係数データ(A)も、下に隣接する係数データ(B)も、当該TU190の外側に位置するので、変数StatCoeffAも変数StatCoeffBも、値が「invalid」(履歴がない)になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-1 (FIG. 11A), the coefficient data (A) adjacent to the right of the current coefficient data is also adjacent below. Since the coefficient data (B) is also located outside the TU 190, the values of both the variable StatCoeffA and the variable StatCoeffB are “invalid” (no history).

したがって、この場合、周辺履歴演算部161は、変数initValueに変数prevStatCoeffの値を設定する。このカレント係数データがTU190の先頭の係数データ(例えば、符号化サブブロック191−1の先頭の係数データ(C))である場合、変数prevStatCoeffの値は、ステップS131において設定された初期値(例えば「0」)である。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable prevStatCoeff to the variable initValue. When this current coefficient data is the first coefficient data of TU 190 (for example, the first coefficient data (C) of the encoding sub-block 191-1), the value of the variable prevStatCoeff is the initial value (for example, the value set in step S131). “0”).

また、例えば、カレント係数データが、符号化サブブロック191−2(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右に隣接する係数データ(A)は、当該TU190の外側に位置するので、変数StatCoeffAの値は「invalid」(履歴がない)になる。これに対して、カレント係数データの下に隣接する係数データ(B)は、当該TU190内に存在するので、変数StatCoeffBの値は、そのカレント係数データの下に隣接する係数データ(B)の符号化に用いられた符号化テーブルのテーブル番号になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-2 (FIG. 11A), the coefficient data (A) adjacent to the right of the current coefficient data is the TU190. The value of the variable StatCoeffA is “invalid” (no history). On the other hand, since the coefficient data (B) adjacent to the current coefficient data exists in the TU 190, the value of the variable StatCoeffB is the sign of the coefficient data (B) adjacent to the current coefficient data. This is the table number of the encoding table used for encoding.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffBの値を設定する。図12の例の場合、変数initValueの値は、「3」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable StatCoeffB in the variable initValue. In the example of FIG. 12, the value of the variable initValue is set to “3”.

また、例えば、カレント係数データが、符号化サブブロック191−3(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの下に隣接する係数データ(B)は、当該TU190の外側に位置するので、変数StatCoeffBの値は「invalid」(履歴がない)になる。これに対して、カレント係数データの右に隣接する係数データ(A)は、当該TU190内に存在するので、変数StatCoeffAの値は、そのカレント係数データの右に隣接する係数データ(A)の符号化に用いられた符号化テーブルのテーブル番号になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-3 (FIG. 11A), the coefficient data (B) adjacent to the current coefficient data is the TU 190. The value of the variable StatCoeffB is “invalid” (no history). On the other hand, since the coefficient data (A) adjacent to the right of the current coefficient data exists in the TU 190, the value of the variable StatCoeffA is the sign of the coefficient data (A) adjacent to the right of the current coefficient data. This is the table number of the encoding table used for encoding.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffAの値を設定する。図12の例の場合、変数initValueの値は、「4」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable StatCoeffA in the variable initValue. In the example of FIG. 12, the value of the variable initValue is set to “4”.

さらに、例えば、カレント係数データが、符号化サブブロック191−4(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右に隣接する係数データ(A)も、下に隣接する係数データ(B)も存在する。したがって、変数StatCoeffAの値は、そのカレント係数データの右に隣接する係数データ(A)の符号化に用いられた符号化テーブルのテーブル番号になり、変数StatCoeffBの値は、そのカレント係数データの下に隣接する係数データ(B)の符号化に用いられた符号化テーブルのテーブル番号になる。   Furthermore, for example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-4 (FIG. 11A), the coefficient data (A) adjacent to the right of the current coefficient data is also below There is also adjacent coefficient data (B). Therefore, the value of the variable StatCoeffA is the table number of the encoding table used for encoding the coefficient data (A) adjacent to the right of the current coefficient data, and the value of the variable StatCoeffB is the value under the current coefficient data. Is the table number of the encoding table used for encoding the coefficient data (B) adjacent to.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffAと変数StatCoeffBの平均値を設定する。図12の例の場合、変数StatCoeffAも変数StatCoeffBも「7」になるので、変数initValueの値は、「7」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the average value of the variable StatCoeffA and the variable StatCoeffB as the variable initValue. In the case of the example in FIG. 12, since the variable StatCoeffA and the variable StatCoeffB are both “7”, the value of the variable initValue is set to “7”.

ステップS134において、周辺履歴演算部161は、以上のように設定した変数initValueを、変数cRiceParamに設定する。変数cRiceParamは、カレント係数データの符号化に用いる符号化テーブルのテーブル番号を示す変数である。つまり、周辺履歴演算部161は、ステップS133において選択した符号化テーブル(のテーブル番号)を、カレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として設定する。この変数cRiceParamがTR符号化部153に供給されて符号化に利用される。つまり、TR符号化部153は、この変数cRiceParamが示す符号化テーブルを用いてカレント係数データを符号化する。   In step S134, the peripheral history calculation unit 161 sets the variable initValue set as described above to the variable cRiceParam. The variable cRiceParam is a variable indicating the table number of the encoding table used for encoding the current coefficient data. That is, the peripheral history calculation unit 161 sets the encoding table (table number) selected in step S133 as the encoding table (table number) used for encoding the current coefficient data. This variable cRiceParam is supplied to the TR encoding unit 153 and used for encoding. That is, the TR encoding unit 153 encodes the current coefficient data using the encoding table indicated by the variable cRiceParam.

また、ステップS134において、周辺履歴演算部161は、以上のように設定した変数initValueを、変数prevStatCoeffに設定する。つまり、周辺履歴演算部161は、ステップS133において選択した符号化テーブル(のテーブル番号)を、直前に処理された係数データの符号化に用いられた符号化テーブル(のテーブル番号)として設定する。この変数prevStatCoeffの値は、次の係数データに対する処理において利用されるので、現在のカレント係数データの符号化に用いられた符号化テーブル(のテーブル番号)を示す。   In step S134, the peripheral history calculation unit 161 sets the variable initValue set as described above to the variable prevStatCoeff. That is, the peripheral history calculation unit 161 sets the coding table (table number) selected in step S133 as the coding table (table number) used for coding the coefficient data processed immediately before. Since the value of this variable prevStatCoeff is used in the process for the next coefficient data, it indicates the encoding table (table number) used for encoding the current current coefficient data.

ステップS135において、制御部151は、処理対象の符号化サブブロック内に未処理の係数データが存在するか否かを判定する。存在すると判定された場合、制御部151は、当該符号化サブブロック内において、カレント係数データを、所定のスキャン順に従っての次の係数データに移動する。そして、処理はステップS136に進む。   In step S135, the control unit 151 determines whether or not unprocessed coefficient data exists in the encoding sub-block to be processed. When it is determined that the data exists, the control unit 151 moves the current coefficient data to the next coefficient data according to a predetermined scan order in the coding sub-block. Then, the process proceeds to step S136.

ステップS136において、選択部167は、変数cLastAbsLevelと、変数cLastRiceParamとが、以下の条件式(1)を満たすか否かを判定する。   In step S136, the selection unit 167 determines whether or not the variable cLastAbsLevel and the variable cLastRiceParam satisfy the following conditional expression (1).

cLastAbsLevel > (3*(1<<cLastRiceParam)) ・・・(1)   cLastAbsLevel> (3 * (1 << cLastRiceParam)) (1)

満たすと判定された場合、処理はステップS137に進む。ステップS137において、選択部167は、変数cRiceParamの値に「+1」を加算する。つまり、符号化に用いるテーブルを変更する。   When it determines with satisfy | filling, a process progresses to step S137. In step S137, the selection unit 167 adds “+1” to the value of the variable cRiceParam. That is, the table used for encoding is changed.

ステップS137の処理が終了すると、処理はステップS135に戻り、それ以降の処理が繰り返される。また、ステップS136において、条件式(1)を満たさないと判定された場合、処理はステップS135に戻り、それ以降の処理が繰り返される。   When the process of step S137 ends, the process returns to step S135, and the subsequent processes are repeated. If it is determined in step S136 that the conditional expression (1) is not satisfied, the process returns to step S135, and the subsequent processes are repeated.

ステップS135において、当該符号化サブブロックの全ての係数データを処理したと判定された場合、処理はステップS138に進む。   If it is determined in step S135 that all the coefficient data of the coding sub-block has been processed, the process proceeds to step S138.

ステップS138において、制御部151は、当該TUについて、全ての符号化サブブロックを処理したか否かを判定する。未処理の符号化サブブロックが存在すると判定された場合、処理はステップS132に戻り、それ以降の処理が繰り返される。   In step S138, the control unit 151 determines whether or not all the encoded sub-blocks have been processed for the TU. If it is determined that there is an unprocessed encoded sub-block, the process returns to step S132, and the subsequent processes are repeated.

また、ステップS138において、当該TUについて全ての符号化サブブロックを処理したと判定された場合、符号化テーブル選択処理が終了し、処理が図14に戻る。   If it is determined in step S138 that all coding sub-blocks have been processed for the TU, the coding table selection process ends, and the process returns to FIG.

以上のように各処理を実行することにより、符号化効率の低減を抑制することができる。   By executing each process as described above, it is possible to suppress a reduction in encoding efficiency.

<符号化テーブルの設定方法>
以上においては、カレント係数データの周辺の係数データの例として、カレント係数データ(C)の右に隣接する係数データ(A)と、そのカレント係数データ(C)の下に隣接する係数データ(B)とを示したが、カレント係数データの周辺の係数データは、この例に限定されない。例えば、カレント係数データ(C)の右下に隣接する係数データ(図11Aにおいて「D」が示される係数データ)をカレント係数データの周辺の係数データに含めるようにしてもよい。
<Setting method of encoding table>
In the above, as an example of the coefficient data around the current coefficient data, coefficient data (A) adjacent to the right of the current coefficient data (C) and coefficient data (B However, the coefficient data around the current coefficient data is not limited to this example. For example, the coefficient data adjacent to the lower right of the current coefficient data (C) (coefficient data indicated by “D” in FIG. 11A) may be included in the coefficient data around the current coefficient data.

この場合、カレント係数データ(C)の周辺の係数データが存在しない場合、カレント係数データの右に隣接する係数データ(A)のみが存在する場合、並びに、カレント係数データの下に隣接する係数データ(B)のみが存在する場合は、図12や図15を参照して説明した場合と同様である。   In this case, when there is no coefficient data around the current coefficient data (C), there is only coefficient data (A) adjacent to the right of the current coefficient data, and coefficient data adjacent below the current coefficient data. The case where only (B) exists is the same as the case described with reference to FIGS.

これに対して、例えば、符号化サブブロック191−4の先頭の係数データをカレント係数データとする場合、図11Aに示されるように、そのカレント係数データの右に隣接する係数データ(A)、そのカレント係数データの下に隣接する係数データ(B)、並びに、そのカレント係数データの右下に隣接する係数データ(D)が全て存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの右に隣接する係数データ(A)、そのカレント係数データの下に隣接する係数データ(B)、並びに、そのカレント係数データの右下に隣接する係数データ(D)の符号化に用いられた符号化テーブルのテーブル番号との平均値を設定する。   On the other hand, for example, when the first coefficient data of the encoding sub-block 191-4 is current coefficient data, as shown in FIG. 11A, coefficient data (A) adjacent to the right of the current coefficient data, The coefficient data (B) adjacent to the current coefficient data and the coefficient data (D) adjacent to the lower right of the current coefficient data all exist. Therefore, the peripheral history calculation unit 161 uses the coefficient data (A) adjacent to the right of the current coefficient data as the table number of the encoding table used for encoding the current coefficient data, and is adjacent to the current coefficient data. An average value of the coefficient data (B) and the table number of the encoding table used for encoding the coefficient data (D) adjacent to the lower right of the current coefficient data is set.

この場合の符号化テーブルの割り当ての例を図16に示す。図16に示されるように、符号化サブブロック191−4の先頭の係数データ(カレント係数データ)の符号化に用いられる符号化テーブルのテーブル番号には、そのカレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号(7)と、そのカレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号(7)と、そのカレント係数データの右下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号(10)との平均値((7+7+10)/3=8)が設定されている。   An example of encoding table allocation in this case is shown in FIG. As shown in FIG. 16, the table number of the encoding table used for encoding the first coefficient data (current coefficient data) of the encoding sub-block 191-4 includes a coefficient adjacent to the right of the current coefficient data. The table number (7) of the encoding table used for encoding the data, the table number (7) of the encoding table used for encoding the coefficient data adjacent to the current coefficient data, and the current An average value ((7 + 7 + 10) / 3 = 8) with the table number (10) of the encoding table used for encoding the adjacent coefficient data is set at the lower right of the coefficient data.

したがって、図16の例の方が、図6Aや図6Bの場合よりも、TU190のより右下の係数データにより小さなテーブル番号の符号化テーブルを割り当て、より左上の係数データにより大きなテーブル番号の符号化テーブルを割り当てている。また、図16の例の方が、図6Aや図6Bの場合よりも、互いに位置が近い係数データに割り当てられた符号化テーブル同士のテーブル番号の差が小さい。   Therefore, the example of FIG. 16 assigns a smaller table number encoding table to the lower right coefficient data of TU 190 and assigns a larger table number code to the upper left coefficient data than in the case of FIGS. 6A and 6B. Allocating table is assigned. In the example of FIG. 16, the difference between the table numbers of the coding tables assigned to the coefficient data whose positions are close to each other is smaller than in the case of FIGS. 6A and 6B.

つまり、各係数データ対してこのように符号化テーブルを割り当てることにより、図6Aや図6Bの場合よりも、符号化効率の低減を抑制することができる。   That is, by assigning an encoding table to each coefficient data in this way, it is possible to suppress a reduction in encoding efficiency as compared with the cases of FIGS. 6A and 6B.

なお、この場合も、図12の例の場合と同様に、平均値の代わりに、中央値等、その他の演算の結果を用いるようにしてもよい。また、例えば、周辺の係数データの符号化に用いられた符号化テーブルのテーブル番号の最大値や最小値等、いずれかのテーブル番号を用いるようにしてもよい。   Also in this case, as in the case of the example of FIG. 12, the result of other calculations such as the median may be used instead of the average value. Further, for example, any table number such as the maximum value or the minimum value of the table number of the encoding table used for encoding the peripheral coefficient data may be used.

<符号化テーブル選択処理の流れ>
この場合の符号化テーブル選択処理の流れの例を、図17のフローチャートを参照して説明する。
<Encoding table selection process flow>
An example of the flow of the coding table selection process in this case will be described with reference to the flowchart of FIG.

符号化テーブル選択処理が開始されると、ステップS131において、周辺履歴演算部161は、変数StatCoeffA, StatCoeffB, StatCoeffD, prevStatCoeffをそれぞれ初期値(例えば「0」)に設定する。変数StatCoeffDは、カレント係数データの右下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。   When the coding table selection process is started, in step S131, the peripheral history calculation unit 161 sets variables StatCoeffA, StatCoeffB, StatCoeffD, and prevStatCoeff to initial values (for example, “0”). The variable StatCoeffD indicates the table number of the encoding table used for encoding the coefficient data adjacent to the lower right of the current coefficient data.

ステップS152の処理は、図15のステップS132の処理と同様に実行される。   The process in step S152 is executed in the same manner as the process in step S132 in FIG.

ステップS153において、周辺履歴演算部161は、カレント係数データの周辺の係数データの有無により、変数initValueを設定する。   In step S153, the peripheral history calculation unit 161 sets a variable initValue depending on the presence / absence of coefficient data around the current coefficient data.

カレント係数データが、符号化サブブロック191−1(図11A)の先頭の係数データ(C)、符号化サブブロック191−2(図11A)の先頭の係数データ(C)、若しくは、符号化サブブロック191−3(図11A)の先頭の係数データ(C)である場合は、図15のステップS133の処理の場合と同様に、変数initValueを設定する。   The current coefficient data is the first coefficient data (C) of the coding sub-block 191-1 (FIG. 11A), the first coefficient data (C) of the coding sub-block 191-2 (FIG. 11A), or the coding sub-block. If it is the first coefficient data (C) of the block 191-3 (FIG. 11A), the variable initValue is set as in the case of the process of step S133 of FIG.

これに対して、カレント係数データが、符号化サブブロック191−4(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右に隣接する係数データ(A)も、下に隣接する係数データ(B)も、右下に隣接する係数データ(D)も存在する。したがって、変数StatCoeffAの値は、そのカレント係数データの右に隣接する係数データ(A)の符号化に用いられた符号化テーブルのテーブル番号になり、変数StatCoeffBの値は、そのカレント係数データの下に隣接する係数データ(B)の符号化に用いられた符号化テーブルのテーブル番号になり、変数StatCoeffDの値は、そのカレント係数データの下に隣接する係数データ(D)の符号化に用いられた符号化テーブルのテーブル番号になる。   On the other hand, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-4 (FIG. 11A), the coefficient data (A) adjacent to the right of the current coefficient data is also There is also coefficient data (B) adjacent to and coefficient data (D) adjacent to the lower right. Therefore, the value of the variable StatCoeffA is the table number of the encoding table used for encoding the coefficient data (A) adjacent to the right of the current coefficient data, and the value of the variable StatCoeffB is the value under the current coefficient data. Is the table number of the coding table used for coding the coefficient data (B) adjacent to the current coefficient data, and the value of the variable StatCoeffD is used for coding the coefficient data (D) adjacent to the current coefficient data. It becomes the table number of the encoding table.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffA、変数StatCoeffB、および変数StatCoeffDの平均値を設定する。図16の例の場合、変数StatCoeffAと変数StatCoeffBが「7」になり、変数StatCoeffDが「10」になるので、変数initValueの値は、「8」に設定される。   Accordingly, in this case, the peripheral history calculation unit 161 sets the average value of the variable StatCoeffA, the variable StatCoeffB, and the variable StatCoeffD as the variable initValue. In the example of FIG. 16, the variable StatCoeffA and the variable StatCoeffB are “7” and the variable StatCoeffD is “10”, so the value of the variable initValue is set to “8”.

ステップS154乃至ステップS158の各処理は、図15のステップS134乃至ステップS138の各処理と同様に実行される。   Steps S154 to S158 are executed in the same manner as steps S134 to S138 in FIG.

このように符号化テーブル選択処理を実行することにより、符号化効率の低減を抑制することができる。   By executing the encoding table selection process in this way, it is possible to suppress a decrease in encoding efficiency.

<符号化テーブルの設定方法>
また、カレント係数データの周辺の係数データは、カレント係数データにななめに隣接する係数データとしてもよい。例えば、カレント係数データ(C)の右上に隣接する係数データ(図11Aにおいて「E」が示される係数データ)と、カレント係数データ(C)の左下に隣接する係数データ(図11Aにおいて「F」が示される係数データ)とを、カレント係数データの周辺の係数データとしてもよい。
<Setting method of encoding table>
Further, the coefficient data around the current coefficient data may be coefficient data adjacent to the current coefficient data. For example, coefficient data adjacent to the upper right of the current coefficient data (C) (coefficient data indicated by “E” in FIG. 11A) and coefficient data adjacent to the lower left of the current coefficient data (C) (“F” in FIG. 11A). May be used as coefficient data around the current coefficient data.

上述したように、TU190の係数データは、一般的に、右下に位置するほどその値が小さくなり、左上に位置するほどその値が大きくなる傾向がある。したがって、各係数データの値は、右上・左下の斜め方向に相関性が高くなる。つまり、カレント係数データの符号化を、右上に隣接する係数データや左下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号と一致若しくは近似するテーブル番号の符号化テーブルを用いて行うことにより、符号化効率の向上を期待することができる。   As described above, the coefficient data of the TU 190 generally tends to have a smaller value as it is located at the lower right and a larger value as it is located at the upper left. Therefore, the value of each coefficient data is highly correlated in the upper right and lower left diagonal directions. In other words, encoding of the current coefficient data is performed using an encoding table having a table number that matches or approximates the table number of the encoding table used for encoding the coefficient data adjacent to the upper right and the coefficient data adjacent to the lower left. By doing so, an improvement in encoding efficiency can be expected.

例えば、図11Aの例において、符号化サブブロック191−1の先頭の係数データをカレント係数データとする場合、そのカレント係数データの右上と左下に隣接する係数データは存在しない。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として所定の初期値(例えばテーブル番号0)を設定する。   For example, in the example of FIG. 11A, when the first coefficient data of the encoding sub-block 191-1 is current coefficient data, there is no coefficient data adjacent to the upper right and lower left of the current coefficient data. Accordingly, the peripheral history calculation unit 161 sets a predetermined initial value (for example, table number 0) as an encoding table (table number) used for encoding the current coefficient data.

また、例えば、図11Aの例において、符号化サブブロック191−2の先頭の係数データをカレント係数データとする場合、そのカレント係数データの右上に隣接する係数データは存在しないが、そのカレント係数データの左下に隣接する係数データが存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として、そのカレント係数データの左下に隣接する係数データ(「F」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)を設定する。   For example, in the example of FIG. 11A, when the first coefficient data of the encoding sub-block 191-2 is current coefficient data, there is no coefficient data adjacent to the upper right of the current coefficient data, but the current coefficient data There is adjacent coefficient data at the lower left of. Accordingly, the peripheral history calculation unit 161 uses, as an encoding table (table number) used for encoding the current coefficient data, coefficient data adjacent to the lower left of the current coefficient data (coefficient data indicating “F”). An encoding table (table number) used for encoding is set.

同様に、例えば、図11Aの例において、符号化サブブロック191−3の先頭の係数データをカレント係数データとする場合、そのカレント係数データの左下に隣接する係数データは存在しないが、そのカレント係数データの右上に隣接する係数データが存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブル(のテーブル番号)として、そのカレント係数データの右上に隣接する係数データ(「E」が示される係数データ)の符号化に用いられた符号化テーブル(のテーブル番号)を設定する。   Similarly, for example, in the example of FIG. 11A, when the first coefficient data of the encoding sub-block 191-3 is current coefficient data, there is no coefficient data adjacent to the lower left of the current coefficient data, but the current coefficient There is coefficient data adjacent to the upper right of the data. Therefore, the peripheral history calculation unit 161 uses, as an encoding table (table number) used for encoding the current coefficient data, coefficient data adjacent to the upper right of the current coefficient data (coefficient data indicating “E”). An encoding table (table number) used for encoding is set.

さらに、例えば、図11Aの例において、符号化サブブロック191−4の先頭の係数データをカレント係数データとする場合、そのカレント係数データの右上に隣接する係数データも、そのカレント係数データの左下に隣接する係数データも存在する。したがって、周辺履歴演算部161は、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの右上に隣接する係数データ(「E」が示される係数データ)の符号化に用いられた符号化テーブルのテーブル番号と、そのカレント係数データの左下に隣接する係数データ(「F」が示される係数データ)の符号化に用いられた符号化テーブルのテーブル番号との平均値を設定する。   Furthermore, for example, in the example of FIG. 11A, when the first coefficient data of the encoding sub-block 191-4 is the current coefficient data, the coefficient data adjacent to the upper right of the current coefficient data is also located at the lower left of the current coefficient data. There is also adjacent coefficient data. Therefore, the peripheral history calculation unit 161 encodes the coefficient data adjacent to the upper right of the current coefficient data (coefficient data indicated by “E”) as the table number of the encoding table used for encoding the current coefficient data. The average value of the table number of the encoding table used for the encoding table and the table number of the encoding table used for encoding the coefficient data adjacent to the lower left of the current coefficient data (coefficient data indicating “F”) Set.

その他の係数データの符号化に用いる符号化テーブル(のテーブル番号)は、図5のフローチャートを参照して説明した場合と同様に設定されるものとすると、TU190の各係数データの符号化に用いる符号化テーブル(のテーブル番号)は、例えば、図18の例のように設定される。   If the encoding table (table number) used for encoding other coefficient data is set in the same manner as described with reference to the flowchart of FIG. 5, it is used for encoding each coefficient data of TU190. The encoding table (table number) is set as shown in the example of FIG.

図18において、例えば、カレント係数データが、符号化サブブロック191−1の先頭の係数データである場合、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、初期値「0」が設定されている。   In FIG. 18, for example, when the current coefficient data is the first coefficient data of the encoding sub-block 191-1, the initial value “0” is set as the table number of the encoding table used for encoding the current coefficient data. Is set.

また、例えば、カレント係数データが、符号化サブブロック191−2の先頭の係数データである場合、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号「7」が設定されている。   For example, when the current coefficient data is the first coefficient data of the encoding sub-block 191-2, the table number of the encoding table used for encoding the current coefficient data is adjacent to the lower left of the current coefficient data. The table number “7” of the encoding table used for encoding the coefficient data to be set is set.

また、例えば、カレント係数データが、符号化サブブロック191−3の先頭の係数データである場合、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号「5」が設定されている。   Also, for example, when the current coefficient data is the first coefficient data of the encoding sub-block 191-3, it is adjacent to the upper right of the current coefficient data as the table number of the encoding table used for encoding the current coefficient data. The table number “5” of the encoding table used for encoding the coefficient data to be set is set.

また、例えば、カレント係数データが、符号化サブブロック191−4の先頭の係数データである場合、そのカレント係数データの符号化に用いる符号化テーブルのテーブル番号として、そのカレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号「12」と、そのカレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号「12」との平均値「12」が設定されている。   Further, for example, when the current coefficient data is the first coefficient data of the encoding sub-block 191-4, the current coefficient data is adjacent to the upper right of the current coefficient data as the table number of the encoding table used for encoding the current coefficient data. The table number “12” of the encoding table used for encoding the coefficient data to be encoded and the table number “12” of the encoding table used for encoding the coefficient data adjacent to the lower left of the current coefficient data An average value “12” is set.

このように、図18の例の方が、図6Aや図6Bの場合よりも、TU190のより右下の係数データにより小さなテーブル番号の符号化テーブルを割り当て、より左上の係数データにより大きなテーブル番号の符号化テーブルを割り当てている。また、図18の例の方が、図6Aや図6Bの場合よりも、互いに位置が近い係数データ(特に、右上・左下の斜め方向に位置が近い係数データ)に割り当てられた符号化テーブル同士のテーブル番号の差が小さい。   In this way, the example of FIG. 18 assigns an encoding table having a smaller table number to the lower right coefficient data of TU 190, and assigns a larger table number to the upper left coefficient data than in the case of FIGS. 6A and 6B. The encoding table is assigned. In the example of FIG. 18, the coding tables assigned to the coefficient data closer to each other than the cases of FIGS. 6A and 6B (particularly, coefficient data closer to the upper right and lower left diagonal directions) The difference in table numbers is small.

つまり、各係数データ対してこのように符号化テーブルを割り当てることにより、図6Aや図6Bの場合よりも、符号化効率の低減を抑制することができる。   That is, by assigning an encoding table to each coefficient data in this way, it is possible to suppress a reduction in encoding efficiency as compared with the cases of FIGS. 6A and 6B.

なお、この場合も、図12の例の場合と同様に、平均値の代わりに、中央値等、その他の演算の結果を用いるようにしてもよい。また、例えば、周辺の係数データの符号化に用いられた符号化テーブルのテーブル番号の最大値や最小値等、いずれかのテーブル番号を用いるようにしてもよい。   Also in this case, as in the case of the example of FIG. 12, the result of other calculations such as the median may be used instead of the average value. Further, for example, any table number such as the maximum value or the minimum value of the table number of the encoding table used for encoding the peripheral coefficient data may be used.

なお、この場合の符号化テーブル選択処理は、カレント係数データの周辺の係数データの位置が異なる以外は、図15のフローチャートを参照して説明した例と同様に実行される。   Note that the coding table selection process in this case is executed in the same manner as the example described with reference to the flowchart of FIG. 15 except that the positions of the coefficient data around the current coefficient data are different.

したがって、この場合も、符号化テーブル選択処理を実行することにより、符号化効率の低減を抑制することができる。   Therefore, also in this case, it is possible to suppress a reduction in encoding efficiency by executing the encoding table selection process.

なお、以上のようなカレント係数データの周辺の係数データの位置は、任意であり、上述した例以外の位置であってもよい。また、カレント係数データに隣接していなくてもよい。また、以上のようなカレント係数データの周辺の係数データの数も任意である。例えば、利用するカレント係数データの周辺の係数データが4個以上であってもよい。例えば、上述した各例におけるカレント係数データの周辺の係数データを組み合わせてもよい。また、例えば、上述した各例におけるカレント係数データの周辺の係数データを、上述した各例以外の位置の係数データと組み合わせるようにしてもよい。   The position of the coefficient data around the current coefficient data as described above is arbitrary, and may be a position other than the above-described example. Further, it may not be adjacent to the current coefficient data. The number of coefficient data around the current coefficient data as described above is also arbitrary. For example, the number of coefficient data around the current coefficient data to be used may be four or more. For example, the coefficient data around the current coefficient data in each example described above may be combined. Further, for example, the coefficient data around the current coefficient data in each example described above may be combined with the coefficient data at a position other than each example described above.

<2.第2の実施の形態>
<符号化テーブルの割り当て>
以上においては、符号化サブブロックの先頭の係数データの符号化に用いる符号化テーブルを、周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定するように説明したが、これに限らず、符号化サブブロックの先頭以外の係数データの符号化に用いる符号化テーブルも、周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定するようにしてもよい。
<2. Second Embodiment>
<Assignment of encoding table>
In the above description, the encoding table used for encoding the first coefficient data of the encoding sub-block has been described based on the encoding table used for encoding the peripheral coefficient data. Not limited to this, the coding table used for coding coefficient data other than the head of the coding sub-block may be set based on the coding table used for coding the neighboring coefficient data.

また、周辺の係数データの符号化に用いられた符号化テーブルとして、カレント係数データに隣接し、かつ、当該符号化サブブロックと異なる符号化サブブロックに属する係数データの符号化に用いられた符号化テーブルに基づいて、カレント係数データの符号化に用いる符号化テーブルを設定するようにしてもよい。   In addition, as a coding table used for coding peripheral coefficient data, a code used for coding coefficient data adjacent to the current coefficient data and belonging to a coding sub-block different from the coding sub-block. An encoding table used for encoding current coefficient data may be set based on the encoding table.

<テーブル選択部>
その場合のテーブル選択部152の主な構成例を、図19に示す。図19に示されるように、この場合のテーブル選択部152は、図10の場合と基本的に同様の構成を有するが、図10の選択部167の代わりに選択部211を有し、図10の選択部177の代わりに選択部212を有する。
<Table selection part>
FIG. 19 shows a main configuration example of the table selection unit 152 in that case. As shown in FIG. 19, the table selection unit 152 in this case has basically the same configuration as that in FIG. 10, but has a selection unit 211 instead of the selection unit 167 in FIG. The selection unit 212 is provided instead of the selection unit 177.

選択部211には、変数cLastAbsLevel、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)、「+1」が加算されたテーブル番号の他に、周辺係数データのテーブル番号(周辺Table No.)と、係数位置情報_0が供給される。   In addition to the variable cLastAbsLevel, the table number of the encoding table used for encoding the current coefficient data (curr_table), the table number to which “+1” is added, the selection unit 211 includes the table number of the peripheral coefficient data (the peripheral table No.) and coefficient position information_0 are supplied.

係数位置情報_0は、カレント係数データの、符号化サブブロック内の位置を示す情報である。   The coefficient position information_0 is information indicating the position of the current coefficient data in the coding sub-block.

選択部211は、周辺係数データのテーブル番号(周辺Table No.)に基づいて次のカレント係数データの符号化に用いる符号化テーブルを設定するか、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)若しくは「+1」が加算されたテーブル番号を次のカレント係数データの符号化に用いる符号化テーブルとして設定するかを、この係数位置情報_0に基づいて選択する。   The selection unit 211 sets an encoding table used for encoding the next current coefficient data based on a table number (peripheral Table No.) of the peripheral coefficient data, or an encoding table used for encoding the current coefficient data. Whether to set the table number (curr_table) or the table number added with “+1” as an encoding table used for encoding the next current coefficient data is selected based on this coefficient position information_0.

そして、周辺係数データのテーブル番号(周辺Table No.)に基づいて次のカレント係数データの符号化に用いる符号化テーブルを設定すると判定された場合、選択部211は、供給される周辺係数データのテーブル番号(周辺Table No.)を選択し、その値に基づいて次のカレント係数データの符号化に用いる符号化テーブル(next_table_0)を設定する。   When it is determined that the encoding table used for encoding the next current coefficient data is set based on the table number of the peripheral coefficient data (peripheral Table No.), the selection unit 211 selects the supplied peripheral coefficient data. A table number (neighboring Table No.) is selected, and an encoding table (next_table_0) used for encoding the next current coefficient data is set based on the value.

また、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)か、若しくは「+1」が加算されたテーブル番号を、次のカレント係数データの符号化に用いる符号化テーブルとして設定すると判定された場合、選択部211は、変数cLastAbsLevelに基づいて、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)と、演算部166より供給される「+1」が加算されたテーブル番号との内、いずれか一方を選択し、その値に基づいて次のカレント係数データの符号化に用いる符号化テーブル(next_table_0)を設定する。   In addition, when a table number (curr_table) of an encoding table used for encoding current coefficient data or a table number added with “+1” is set as an encoding table used for encoding the next current coefficient data. When it is determined, the selection unit 211 adds the table number (curr_table) of the encoding table used for encoding the current coefficient data and “+1” supplied from the calculation unit 166 based on the variable cLastAbsLevel. One of the table numbers is selected, and an encoding table (next_table_0) used for encoding the next current coefficient data is set based on the selected value.

選択部211は、設定した次の係数データの符号化に用いられる符号化テーブルのテーブル番号(next_table_0)を、TR符号化部153やテーブル指定情報バッファ154に供給するとともに、選択部173にも供給する。   The selection unit 211 supplies the table number (next_table_0) of the encoding table used for encoding the set next coefficient data to the TR encoding unit 153 and the table designation information buffer 154 and also to the selection unit 173. To do.

同様に、選択部211には、変数cLastAbsLevel、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)、「+1」が加算されたテーブル番号の他に、周辺係数データのテーブル番号(周辺Table No.)と、係数位置情報_1が供給される。   Similarly, the selection unit 211 includes a variable cLastAbsLevel, a table number of a coding table used for coding current coefficient data (curr_table), a table number added with “+1”, and a table number of peripheral coefficient data. (Peripheral Table No.) and coefficient position information_1 are supplied.

係数位置情報_1は、カレント係数データの、符号化サブブロック内の位置を示す情報である。   The coefficient position information_1 is information indicating the position of the current coefficient data in the coding sub-block.

選択部211は、周辺係数データのテーブル番号(周辺Table No.)に基づいて次のカレント係数データの符号化に用いる符号化テーブルを設定するか、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)若しくは「+1」が加算されたテーブル番号を次のカレント係数データの符号化に用いる符号化テーブルとして設定するかを、この係数位置情報_1に基づいて選択する。   The selection unit 211 sets an encoding table used for encoding the next current coefficient data based on a table number (peripheral Table No.) of the peripheral coefficient data, or an encoding table used for encoding the current coefficient data. Whether to set the table number (curr_table) or the table number added with “+1” as the encoding table used for encoding the next current coefficient data is selected based on the coefficient position information_1.

そして、周辺係数データのテーブル番号(周辺Table No.)に基づいて次のカレント係数データの符号化に用いる符号化テーブルを設定すると判定された場合、選択部211は、供給される周辺係数データのテーブル番号(周辺Table No.)を選択し、その値に基づいて次のカレント係数データの符号化に用いる符号化テーブル(next_table_1)を設定する。   When it is determined that the encoding table used for encoding the next current coefficient data is set based on the table number of the peripheral coefficient data (peripheral Table No.), the selection unit 211 selects the supplied peripheral coefficient data. A table number (neighboring Table No.) is selected, and an encoding table (next_table_1) used for encoding the next current coefficient data is set based on the value.

また、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)か、若しくは「+1」が加算されたテーブル番号を、次のカレント係数データの符号化に用いる符号化テーブルとして設定すると判定された場合、選択部211は、変数cLastAbsLevelに基づいて、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号(curr_table)と、演算部176より供給される「+1」が加算されたテーブル番号との内、いずれか一方を選択し、その値に基づいて次のカレント係数データの符号化に用いる符号化テーブル(next_table_1)を設定する。   In addition, when a table number (curr_table) of an encoding table used for encoding current coefficient data or a table number added with “+1” is set as an encoding table used for encoding the next current coefficient data. If determined, the selection unit 211 adds the table number (curr_table) of the encoding table used for encoding the current coefficient data and “+1” supplied from the calculation unit 176 based on the variable cLastAbsLevel. One of the table numbers is selected, and an encoding table (next_table_1) used for encoding the next current coefficient data is set based on the value.

選択部212は、設定した次の係数データの符号化に用いられる符号化テーブルのテーブル番号(next_table_1)を、TR符号化部153やテーブル指定情報バッファ154に供給する。   The selection unit 212 supplies the table number (next_table_1) of the encoding table used for encoding the set next coefficient data to the TR encoding unit 153 and the table designation information buffer 154.

<符号化テーブルの設定方法>
この場合も、カレント係数データの周辺の係数データの位置や数は、任意である。以下においては、カレント係数データに右上・左下方向にななめに隣接する、当該符号化サブブロック以外の符号化サブブロックに属する係数データを、カレント係数データの周辺の係数データとする場合を例に説明する。
<Setting method of encoding table>
Also in this case, the position and number of coefficient data around the current coefficient data are arbitrary. In the following, an example is described in which coefficient data belonging to an encoding sub-block other than the current encoding sub-block that is adjacent to the current coefficient data in the upper right and lower left directions is coefficient data around the current coefficient data. To do.

すなわち、カレント係数データ(C)の右上に隣接する係数データ(図11Aにおいて「E」が示される係数データ)と、カレント係数データ(C)の左下に隣接する係数データ(図11Aにおいて「F」が示される係数データ)とが、当該符号化サブブロック以外の符号化サブブロックに属する係数データである場合、その係数データが、カレント係数データの周辺の係数データとされる。   That is, coefficient data adjacent to the upper right of the current coefficient data (C) (coefficient data indicated by “E” in FIG. 11A) and coefficient data adjacent to the lower left of the current coefficient data (C) (“F” in FIG. 11A). Is the coefficient data belonging to the encoding sub-block other than the encoding sub-block, the coefficient data is the coefficient data around the current coefficient data.

この場合、TU190の各係数データの符号化に用いる符号化テーブル(のテーブル番号)は、例えば、図18の例のように設定される。   In this case, the encoding table (table number) used for encoding each coefficient data of TU 190 is set as shown in the example of FIG.

利用可能なカレント係数データの周辺の係数データの数が0の場合、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号として、初期値(例えば「0」)が設定される。   When the number of coefficient data around the available current coefficient data is 0, an initial value (for example, “0”) is set as the table number of the encoding table used for encoding the current coefficient data.

また、利用可能なカレント係数データの周辺の係数データの数が1つの場合、その係数データの符号化に用いられた符号化テーブルのテーブル番号が、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号として設定される。   When the number of coefficient data around the available current coefficient data is one, the table number of the encoding table used for encoding the coefficient data is the encoding table used for encoding the current coefficient data. Is set as the table number.

さらに、利用可能なカレント係数データの周辺の係数データの数が2つの場合、それらの係数データの符号化に用いられた符号化テーブルのテーブル番号の平均値が、カレント係数データの符号化に用いられる符号化テーブルのテーブル番号として設定される。   Furthermore, when the number of coefficient data around the available current coefficient data is two, the average value of the table numbers of the encoding table used for encoding the coefficient data is used for encoding the current coefficient data. This is set as the table number of the encoding table.

なお、この場合も、図12の例の場合と同様に、平均値の代わりに、中央値等、その他の演算の結果を用いるようにしてもよい。また、例えば、周辺の係数データの符号化に用いられた符号化テーブルのテーブル番号の最大値や最小値等、いずれかのテーブル番号を用いるようにしてもよい。   Also in this case, as in the case of the example of FIG. 12, the result of other calculations such as the median may be used instead of the average value. Further, for example, any table number such as the maximum value or the minimum value of the table number of the encoding table used for encoding the peripheral coefficient data may be used.

<符号化テーブル選択処理の流れ>
この場合の符号化テーブル選択処理の流れの例を、図21および図22のフローチャートを参照して説明する。
<Encoding table selection process flow>
An example of the flow of the coding table selection process in this case will be described with reference to the flowcharts of FIGS.

ステップS201において、周辺履歴演算部161は、変数StatCoeffE, StatCoeffF, prevStatCoeffをそれぞれ初期値(例えば「0」)に設定する。   In step S201, the peripheral history calculation unit 161 sets variables StatCoeffE, StatCoeffF, and prevStatCoeff to initial values (for example, “0”).

変数StatCoeffEは、カレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。変数StatCoeffFは、カレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルのテーブル番号を示す。   The variable StatCoeffE indicates the table number of the encoding table used for encoding the coefficient data adjacent to the upper right of the current coefficient data. The variable StatCoeffF indicates the table number of the encoding table used for encoding the coefficient data adjacent to the lower left of the current coefficient data.

ステップS202の処理は、図15のステップS132の処理と同様に実行される。   The process in step S202 is executed in the same manner as the process in step S132 in FIG.

ステップS203において、周辺履歴演算部161は、カレント係数データの周辺の係数データの有無により、変数initValueを設定する。   In step S203, the peripheral history calculation unit 161 sets a variable initValue depending on the presence / absence of coefficient data around the current coefficient data.

例えば、カレント係数データが、符号化サブブロック191−1(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右上に隣接する係数データ(E)も、左下に隣接する係数データ(F)も、当該TU190の外側に位置するので、変数StatCoeffEも変数StatCoeffFも、値が「invalid」(履歴がない)になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-1 (FIG. 11A), the coefficient data (E) adjacent to the upper right of the current coefficient data is also adjacent to the lower left. Since the coefficient data (F) is also located outside the TU 190, the values of both the variable StatCoeffE and the variable StatCoeffF are “invalid” (no history).

したがって、この場合、周辺履歴演算部161は、変数initValueに変数prevStatCoeffの値を設定する。このカレント係数データがTU190の先頭の係数データ(例えば、符号化サブブロック191−1の先頭の係数データ(C))である場合、変数prevStatCoeffの値は、ステップS201において設定された初期値(例えば「0」)である。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable prevStatCoeff to the variable initValue. When this current coefficient data is the first coefficient data of TU 190 (for example, the first coefficient data (C) of the encoding sub-block 191-1), the value of the variable prevStatCoeff is the initial value (for example, the value set in step S201). “0”).

また、例えば、カレント係数データが、符号化サブブロック191−2(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右上に隣接する係数データ(E)は、当該TU190の外側に位置するので、変数StatCoeffEの値は「invalid」(履歴がない)になる。これに対して、カレント係数データの左下に隣接する係数データ(F)は、当該TU190内に存在するので、変数StatCoeffFの値は、そのカレント係数データの左下に隣接する係数データ(F)の符号化に用いられた符号化テーブルのテーブル番号になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-2 (FIG. 11A), the coefficient data (E) adjacent to the upper right of the current coefficient data is the TU190. The value of variable StatCoeffE is “invalid” (no history). On the other hand, since the coefficient data (F) adjacent to the lower left of the current coefficient data exists in the TU 190, the value of the variable StatCoeffF is the code of the coefficient data (F) adjacent to the lower left of the current coefficient data. This is the table number of the encoding table used for encoding.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffFの値を設定する。図20の例の場合、変数initValueの値は、「7」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable StatCoeffF in the variable initValue. In the example of FIG. 20, the value of the variable initValue is set to “7”.

また、例えば、カレント係数データが、符号化サブブロック191−3(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの左下に隣接する係数データ(F)は、当該TU190の外側に位置するので、変数StatCoeffFの値は「invalid」(履歴がない)になる。これに対して、カレント係数データの右上に隣接する係数データ(E)は、当該TU190内に存在するので、変数StatCoeffEの値は、そのカレント係数データの右上に隣接する係数データ(E)の符号化に用いられた符号化テーブルのテーブル番号になる。   For example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-3 (FIG. 11A), the coefficient data (F) adjacent to the lower left of the current coefficient data is the TU190. The value of the variable StatCoeffF is “invalid” (no history). On the other hand, since the coefficient data (E) adjacent to the upper right of the current coefficient data exists in the TU 190, the value of the variable StatCoeffE is the sign of the coefficient data (E) adjacent to the upper right of the current coefficient data. This is the table number of the encoding table used for encoding.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffEの値を設定する。図20の例の場合、変数initValueの値は、「5」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the value of the variable StatCoeffE in the variable initValue. In the example of FIG. 20, the value of the variable initValue is set to “5”.

さらに、例えば、カレント係数データが、符号化サブブロック191−4(図11A)の先頭の係数データ(C)である場合、そのカレント係数データの右上に隣接する係数データ(E)も、左下に隣接する係数データ(F)も存在する。したがって、変数StatCoeffEの値は、そのカレント係数データの右上に隣接する係数データ(E)の符号化に用いられた符号化テーブルのテーブル番号になり、変数StatCoeffFの値は、そのカレント係数データの左下に隣接する係数データ(F)の符号化に用いられた符号化テーブルのテーブル番号になる。   Further, for example, when the current coefficient data is the first coefficient data (C) of the encoding sub-block 191-4 (FIG. 11A), the coefficient data (E) adjacent to the upper right of the current coefficient data is also moved to the lower left. There is also adjacent coefficient data (F). Therefore, the value of the variable StatCoeffE is the table number of the encoding table used for encoding the coefficient data (E) adjacent to the upper right of the current coefficient data, and the value of the variable StatCoeffF is the lower left of the current coefficient data. Is the table number of the encoding table used for encoding the coefficient data (F) adjacent to.

したがって、この場合、周辺履歴演算部161は、変数initValueに変数StatCoeffEと変数StatCoeffFの平均値を設定する。図20の例の場合、変数StatCoeffEが「13」で変数StatCoeffFが「16」になるので、変数initValueの値は、「15」に設定される。   Therefore, in this case, the peripheral history calculation unit 161 sets the average value of the variable StatCoeffE and the variable StatCoeffF as the variable initValue. In the example of FIG. 20, the variable StatCoeffE is “13” and the variable StatCoeffF is “16”, so the value of the variable initValue is set to “15”.

ステップS204およびステップS205の各処理は、図15のステップS134およびステップS135の各処理と同様に実行される。   Each process of step S204 and step S205 is performed similarly to each process of step S134 and step S135 of FIG.

ステップS205において、未処理の係数データが存在すると判定された場合、処理は、図22に進む。   If it is determined in step S205 that there is unprocessed coefficient data, the process proceeds to FIG.

図22のステップS211において、選択部211および選択部212は、カレント係数データの右上に隣接する係数データ(E)も、左下に隣接する係数データ(F)も、当該TU190の外側か当該符号化サブブロック191内に位置し、利用不可能であるか否かが判定される。   In step S211 in FIG. 22, the selection unit 211 and the selection unit 212 determine whether the coefficient data (E) adjacent to the upper right of the current coefficient data and the coefficient data (F) adjacent to the lower left are outside the TU 190 or the encoding. It is determined whether it is located in the sub-block 191 and cannot be used.

カレント係数データの右上に隣接する係数データ(E)と、左下に隣接する係数データ(F)との内、少なくともいずれか一方が、当該TU190かつ当該符号化サブブロック191以外の符号化サブブロック191内に位置し、利用可能であると判定された場合、処理はステップS212に進む。   At least one of the coefficient data (E) adjacent to the upper right of the current coefficient data and the coefficient data (F) adjacent to the lower left is the encoding sub-block 191 other than the TU 190 and the encoding sub-block 191. If it is determined that it is available and available, the process proceeds to step S212.

ステップS212において、周辺履歴演算部161は、カレント係数データの周辺の係数データの有無により、変数cRiceParamを設定する。   In step S212, the peripheral history calculation unit 161 sets a variable cRiceParam according to the presence / absence of coefficient data around the current coefficient data.

例えば、カレント係数データの右上に隣接する係数データ(E)が当該TU190の外側か若しくは当該符号化サブブロック191内に位置し、かつ、カレント係数データの左下に隣接する係数データ(F)が当該TU190内の当該符号化サブブロック191以外の符号化サブブロック191に属する場合、選択部211および選択部212は、変数cRiceParamに変数StatCoeffF(すなわち、カレント係数データの左下に隣接する係数データ(F)の符号化に用いられた符号化テーブルのテーブル番号)を設定する。   For example, the coefficient data (E) adjacent to the upper right of the current coefficient data is located outside the TU 190 or in the encoding sub-block 191, and the coefficient data (F) adjacent to the lower left of the current coefficient data is the When belonging to a coding subblock 191 other than the coding subblock 191 in the TU 190, the selection unit 211 and the selection unit 212 have a variable cRiceParam and a variable StatCoeffF (that is, coefficient data (F) adjacent to the lower left of the current coefficient data) (The table number of the encoding table used for encoding).

また、例えば、カレント係数データの左下に隣接する係数データ(F)が当該TU190の外側か若しくは当該符号化サブブロック191内に位置し、かつ、カレント係数データの右上に隣接する係数データ(E)が当該TU190内の当該符号化サブブロック191以外の符号化サブブロック191に属する場合、選択部211および選択部212は、変数cRiceParamに変数StatCoeffE(すなわち、カレント係数データの右上に隣接する係数データ(E)の符号化に用いられた符号化テーブルのテーブル番号)を設定する。   Also, for example, coefficient data (F) adjacent to the lower left of current coefficient data is located outside the TU 190 or within the encoding sub-block 191 and is adjacent to the upper right of the current coefficient data (E). Belongs to a coding sub-block 191 other than the coding sub-block 191 in the TU 190, the selection unit 211 and the selection unit 212 have the variable cRiceParam and the variable StatCoeffE (that is, the coefficient data adjacent to the upper right of the current coefficient data ( The table number of the encoding table used for the encoding of E) is set.

さらに、例えば、カレント係数データの右上に隣接する係数データ(E)と、カレント係数データの左下に隣接する係数データ(F)との両方が、当該TU190TU190内の当該符号化サブブロック191以外の符号化サブブロック191に属する場合、選択部211および選択部212は、変数cRiceParamに、変数StatCoeffE(すなわち、カレント係数データの右上に隣接する係数データ(E)の符号化に用いられた符号化テーブルのテーブル番号)と、変数StatCoeffF(すなわち、カレント係数データの左下に隣接する係数データ(F)の符号化に用いられた符号化テーブルのテーブル番号)との平均値を設定する。   Further, for example, both the coefficient data (E) adjacent to the upper right of the current coefficient data and the coefficient data (F) adjacent to the lower left of the current coefficient data are codes other than the encoding sub-block 191 in the TU 190TU190. In the encoding sub-block 191, the selection unit 211 and the selection unit 212 include the encoding table used for encoding the variable StatCoeffE (that is, the coefficient data (E) adjacent to the upper right of the current coefficient data) in the variable cRiceParam. The average value of the variable StatCoeffF (that is, the table number of the encoding table used for encoding the coefficient data (F) adjacent to the lower left of the current coefficient data) is set.

ステップS212の処理が終了すると、処理は図21のステップS205に戻り、それ以降の処理が繰り返される。   When the process of step S212 ends, the process returns to step S205 of FIG. 21, and the subsequent processes are repeated.

また、ステップS211において、選択部211および選択部212は、カレント係数データの右上に隣接する係数データ(E)も、左下に隣接する係数データ(F)も、当該TU190の外側か当該符号化サブブロック191内に位置し、利用不可能であると判定された場合、処理はステップS213に進む。
ステップS213およびステップS214の各処理は、図15のステップS136およびステップS137の各処理と同様に実行される。
In step S211, the selection unit 211 and the selection unit 212 determine whether the coefficient data (E) adjacent to the upper right of the current coefficient data and the coefficient data (F) adjacent to the lower left are outside the TU 190 or the encoding sub If it is determined that it is located in the block 191 and cannot be used, the process proceeds to step S213.
Each process of step S213 and step S214 is performed similarly to each process of step S136 and step S137 of FIG.

ステップS214の処理が終了すると、処理は図21のステップS205に戻る。   When the process of step S214 ends, the process returns to step S205 of FIG.

図21のステップS205において、当該符号化サブブロック191の全ての係数データを処理したと判定された場合、処理はステップS206に進む。   If it is determined in step S205 in FIG. 21 that all the coefficient data of the encoding sub-block 191 has been processed, the process proceeds to step S206.

ステップS206の処理は、図15のステップS138の処理と同様に実行される。   The process of step S206 is executed in the same manner as the process of step S138 of FIG.

ステップS206において、当該TU190内の全ての符号化サブブロックを処理したと判定された場合、符号化テーブル選択処理が終了し、処理は図14に戻る。   If it is determined in step S206 that all the encoding sub-blocks in the TU 190 have been processed, the encoding table selection process ends, and the process returns to FIG.

以上のように符号化テーブル選択処理を実行することにより、符号化サブブロック191の先頭以外の係数データについても、符号化効率の低減を抑制することができる。   By executing the coding table selection process as described above, it is possible to suppress a reduction in coding efficiency for coefficient data other than the head of the coding sub-block 191.

本技術は、画像データを符号化するあらゆる画像処理装置に適用することができる。   The present technology can be applied to any image processing apparatus that encodes image data.

また、本技術は、例えば、画像情報を、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮し、そのビットストリームを、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して送信する際に用いられる画像処理装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像処理装置に適用することができる。   Further, the present technology, for example, converts image information into MPEG, H.264, or the like. Compressed by orthogonal transform such as discrete cosine transform and motion compensation, such as 26x, and used when transmitting the bitstream via network media such as satellite broadcasting, cable television, the Internet, or mobile phones It can be applied to an image processing apparatus. In addition, the present technology can be applied to an image processing device used when processing on a storage medium such as an optical, magnetic disk, and flash memory.

<3.第3の実施の形態>
<多視点画像符号化・復号システムへの適用>
上述した一連の処理は、多視点画像符号化・復号システムに適用することができる。図23は、多視点画像符号化方式の一例を示す。
<3. Third Embodiment>
<Application to multi-view image encoding / decoding system>
The series of processes described above can be applied to a multi-view image encoding / decoding system. FIG. 23 shows an example of a multi-view image encoding method.

図23に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの情報を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの情報を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューの符号化・復号は、ベースビューの情報を利用するようにしても良いし、他のノンベースビューの情報を利用するようにしてもよい。   As shown in FIG. 23, the multi-viewpoint image includes images of a plurality of viewpoints (views). The multiple views of this multi-viewpoint image are encoded using the base view that encodes and decodes using only the image of its own view without using the information of other views, and the information of other views. -It consists of a non-base view that performs decoding. Non-base view encoding / decoding may use base view information or other non-base view information.

図23の例のような多視点画像を符号化・復号する場合、多視点画像は、視点毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各視点の符号化データは、それぞれ(すなわち視点毎に)復号される。このような各視点の符号化・復号に対して、以上の各実施の形態において説明した方法を適用してもよい。このようにすることにより、符号化効率の低減を抑制することができる。つまり、多視点画像の場合も同様に、符号化効率の低減を抑制することができる。   When encoding / decoding a multi-view image as in the example of FIG. 23, the multi-view image is encoded for each viewpoint. When decoding the encoded data thus obtained, the encoded data of each viewpoint is decoded (that is, for each viewpoint). The method described in each of the above embodiments may be applied to such viewpoint encoding / decoding. By doing so, it is possible to suppress a reduction in encoding efficiency. That is, similarly, in the case of a multi-viewpoint image, it is possible to suppress a reduction in encoding efficiency.

<多視点画像符号化・復号システム>
図24は、上述した多視点画像符号化・復号を行う多視点画像符号化・復号システムの、多視点画像符号化装置を示す図である。図24に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
<Multi-view image encoding / decoding system>
FIG. 24 is a diagram illustrating a multi-view image encoding apparatus of the multi-view image encoding / decoding system that performs the above-described multi-view image encoding / decoding. As illustrated in FIG. 24, the multi-view image encoding device 600 includes an encoding unit 601, an encoding unit 602, and a multiplexing unit 603.

符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。   The encoding unit 601 encodes the base view image and generates a base view image encoded stream. The encoding unit 602 encodes the non-base view image and generates a non-base view image encoded stream. The multiplexing unit 603 multiplexes the base view image encoded stream generated by the encoding unit 601 and the non-base view image encoded stream generated by the encoding unit 602 to generate a multi-view image encoded stream. To do.

図25は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図25に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。   FIG. 25 is a diagram illustrating a multi-view image decoding apparatus that performs the above-described multi-view image decoding. As illustrated in FIG. 25, the multi-view image decoding device 610 includes a demultiplexing unit 611, a decoding unit 612, and a decoding unit 613.

逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。   The demultiplexing unit 611 demultiplexes the multi-view image encoded stream in which the base view image encoded stream and the non-base view image encoded stream are multiplexed, and the base view image encoded stream and the non-base view image The encoded stream is extracted. The decoding unit 612 decodes the base view image encoded stream extracted by the demultiplexing unit 611 to obtain a base view image. The decoding unit 613 decodes the non-base view image encoded stream extracted by the demultiplexing unit 611 to obtain a non-base view image.

例えば、このような多視点画像符号化・復号システムにおいて、多視点画像符号化装置600の符号化部601および符号化部602として、以上の各実施の形態において説明した画像符号化装置100を適用してもよい。このようにすることにより、多視点画像の符号化においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、符号化効率の低減を抑制することができる。   For example, in such a multi-view image encoding / decoding system, the image encoding device 100 described in each of the above embodiments is applied as the encoding unit 601 and the encoding unit 602 of the multi-view image encoding device 600. May be. By doing so, the method described in each of the above embodiments can be applied to the encoding of multi-viewpoint images. That is, a reduction in encoding efficiency can be suppressed.

<4.第4の実施の形態>
<階層画像符号化・復号システムへの適用>
また、上述した一連の処理は、階層画像符号化(スケーラブル符号化)・復号システムに適用することができる。図26は、階層画像符号化方式の一例を示す。
<4. Fourth Embodiment>
<Application to hierarchical image encoding / decoding system>
The series of processes described above can be applied to a hierarchical image encoding (scalable encoding) / decoding system. FIG. 26 shows an example of a hierarchical image encoding method.

階層画像符号化(スケーラブル符号化)は、画像データを、所定のパラメータについてスケーラビリティ(scalability)機能を有するように、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化するものである。階層画像復号は、その階層画像符号化(スケーラブル復号)は、その階層画像符号化に対応する復号である。   Hierarchical image coding (scalable coding) is a method in which image data is divided into a plurality of layers (hierarchized) so as to have a scalability function with respect to a predetermined parameter, and is encoded for each layer. In the hierarchical image decoding, the hierarchical image encoding (scalable decoding) is decoding corresponding to the hierarchical image encoding.

図26に示されるように、画像の階層化においては、スケーラビリティ機能を有する所定のパラメータを基準として1の画像が複数の画像(レイヤ)に分割される。つまり、階層化された画像(階層画像)は、その所定のパラメータの値が互いに異なる複数の階層(レイヤ)の画像を含む。この階層画像の複数のレイヤは、他のレイヤの画像を利用せずに自身のレイヤの画像のみを用いて符号化・復号を行うベースレイヤと、他のレイヤの画像を利用して符号化・復号を行うノンベースレイヤ(エンハンスメントレイヤとも称する)とによりなる。ノンベースレイヤは、ベースレイヤの画像を利用するようにしても良いし、他のノンベースレイヤの画像を利用するようにしてもよい。   As shown in FIG. 26, in image hierarchization, one image is divided into a plurality of images (layers) based on a predetermined parameter having a scalability function. That is, the hierarchized image (hierarchical image) includes images of a plurality of hierarchies (layers) having different predetermined parameter values. A plurality of layers of this hierarchical image are encoded / decoded using only the image of the own layer without using the image of the other layer, and encoded / decoded using the image of the other layer. It consists of a non-base layer (also called enhancement layer) that performs decoding. As the non-base layer, an image of the base layer may be used, or an image of another non-base layer may be used.

一般的に、ノンベースレイヤは、冗長性が低減されるように、自身の画像と、他のレイヤの画像との差分画像のデータ(差分データ)により構成される。例えば、1の画像をベースレイヤとノンベースレイヤ(エンハンスメントレイヤとも称する)に2階層化した場合、ベースレイヤのデータのみで元の画像よりも低品質な画像が得られ、ベースレイヤのデータとノンベースレイヤのデータを合成することで、元の画像(すなわち高品質な画像)が得られる。   In general, the non-base layer is composed of difference image data (difference data) between its own image and an image of another layer so that redundancy is reduced. For example, when one image is divided into two layers of a base layer and a non-base layer (also referred to as an enhancement layer), an image with lower quality than the original image can be obtained using only the base layer data. By synthesizing the base layer data, an original image (that is, a high-quality image) can be obtained.

このように画像を階層化することにより、状況に応じて多様な品質の画像を容易に得ることができる。例えば携帯電話のような、処理能力の低い端末に対しては、ベースレイヤ(base layer)のみの画像圧縮情報を伝送し、空間時間解像度の低い、或いは、画質の良くない動画像を再生し、テレビやパーソナルコンピュータのような、処理能力の高い端末に対しては、ベースレイヤ(base layer)に加えて、エンハンスメントレイヤ(enhancement layer)の画像圧縮情報を伝送し、空間時間解像度の高い、或いは、画質の高い動画像を再生するといったように、トランスコード処理を行うことなく、端末やネットワークの能力に応じた画像圧縮情報を、サーバから送信することが可能となる。   By hierarchizing images in this way, it is possible to easily obtain images of various qualities depending on the situation. For example, to a terminal with low processing capability, such as a mobile phone, image compression information of only the base layer is transmitted, and a moving image with low spatiotemporal resolution or poor image quality is reproduced. For terminals with high processing capabilities, such as televisions and personal computers, in addition to the base layer, the image compression information of the enhancement layer is transmitted and the spatial time resolution is high, or Image compression information corresponding to the capabilities of the terminal and the network can be transmitted from the server without performing transcoding processing, such as playing a moving image with high image quality.

図26の例のような階層画像を符号化・復号する場合、階層画像は、レイヤ毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各レイヤの符号化データは、それぞれ(すなわちレイヤ毎に)復号される。このような各レイヤの符号化・復号に対して、以上の各実施の形態において説明した方法を適用してもよい。このようにすることにより、符号化効率の低減を抑制することができる。つまり、階層画像の場合も同様に、符号化効率の低減を抑制することができる。   When encoding / decoding a hierarchical image as in the example of FIG. 26, the hierarchical image is encoded for each layer. When decoding the encoded data thus obtained, the encoded data of each layer is decoded (that is, for each layer). The methods described in the above embodiments may be applied to such encoding / decoding of each layer. By doing so, it is possible to suppress a reduction in encoding efficiency. That is, similarly in the case of a hierarchical image, it is possible to suppress a reduction in encoding efficiency.

<スケーラブルなパラメータ>
このような階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)において、スケーラビリティ(scalability)機能を有するパラメータは、任意である。例えば、空間解像度をそのパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)の場合、レイヤ毎に画像の解像度が異なる。
<Scalable parameters>
In such hierarchical image encoding / hierarchical image decoding (scalable encoding / scalable decoding), parameters having a scalability function are arbitrary. For example, spatial resolution may be used as the parameter (spatial scalability). In the case of this spatial scalability, the resolution of the image is different for each layer.

また、このようなスケーラビリティ性を持たせるパラメータとして、他には、例えば、時間解像度を適用しても良い(temporal scalability)。このテンポラルスケーラビリティ(temporal scalability)の場合、レイヤ毎にフレームレートが異なる。   In addition, for example, temporal resolution may be applied as a parameter for providing such scalability (temporal scalability). In the case of this temporal scalability, the frame rate is different for each layer.

さらに、このようなスケーラビリティ性を持たせるパラメータとして、例えば、信号雑音比(SNR(Signal to Noise ratio))を適用しても良い(SNR scalability)。このSNRスケーラビリティ(SNR scalability)の場合、レイヤ毎にSN比が異なる。   Further, for example, a signal-to-noise ratio (SNR) may be applied as a parameter for providing such scalability (SNR scalability). In the case of this SNR scalability (SNR scalability), the SN ratio is different for each layer.

スケーラビリティ性を持たせるパラメータは、上述した例以外であっても、もちろんよい。例えば、ベースレイヤ(base layer)が8ビット(bit)画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、10ビット(bit)画像が得られるビット深度スケーラビリティ(bit-depth scalability)がある。   Of course, the parameters for providing scalability may be other than the example described above. For example, the base layer is composed of an 8-bit image, and by adding an enhancement layer to this, a bit-depth scalability for obtaining a 10-bit image is obtained. is there.

また、ベースレイヤ(base layer)が4:2:0フォーマットのコンポーネント画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、4:2:2フォーマットのコンポーネント画像が得られるクロマスケーラビリティ(chroma scalability)がある。   In addition, the base layer is composed of component images in 4: 2: 0 format, and the enhancement layer (enhancement layer) is added to this, resulting in chroma scalability (chroma) scalability).

<階層画像符号化・復号システム>
図27は、上述した階層画像符号化・復号を行う階層画像符号化・復号システムの、階層画像符号化装置を示す図である。図27に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
<Hierarchical image encoding / decoding system>
FIG. 27 is a diagram illustrating a hierarchical image encoding apparatus of the hierarchical image encoding / decoding system that performs the hierarchical image encoding / decoding described above. As illustrated in FIG. 27, the hierarchical image encoding device 620 includes an encoding unit 621, an encoding unit 622, and a multiplexing unit 623.

符号化部621は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部622は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部623は、符号化部621において生成されたベースレイヤ画像符号化ストリームと、符号化部622において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。   The encoding unit 621 encodes the base layer image and generates a base layer image encoded stream. The encoding unit 622 encodes the non-base layer image and generates a non-base layer image encoded stream. The multiplexing unit 623 multiplexes the base layer image encoded stream generated by the encoding unit 621 and the non-base layer image encoded stream generated by the encoding unit 622 to generate a hierarchical image encoded stream. .

図28は、上述した階層画像復号を行う階層画像復号装置を示す図である。図28に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。   FIG. 28 is a diagram illustrating a hierarchical image decoding apparatus that performs the hierarchical image decoding described above. As illustrated in FIG. 28, the hierarchical image decoding device 630 includes a demultiplexing unit 631, a decoding unit 632, and a decoding unit 633.

逆多重化部631は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部632は、逆多重化部631により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部633は、逆多重化部631により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。   The demultiplexing unit 631 demultiplexes the hierarchical image encoded stream in which the base layer image encoded stream and the non-base layer image encoded stream are multiplexed, and the base layer image encoded stream and the non-base layer image code Stream. The decoding unit 632 decodes the base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a base layer image. The decoding unit 633 decodes the non-base layer image encoded stream extracted by the demultiplexing unit 631 to obtain a non-base layer image.

例えば、このような階層画像符号化・復号システムにおいて、階層画像符号化装置620の符号化部621および符号化部622として、以上の各実施の形態において説明した画像符号化装置100を適用してもよい。このようにすることにより、階層画像の符号化においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、符号化効率の低減を抑制することができる。   For example, in such a hierarchical image encoding / decoding system, the image encoding device 100 described in each of the above embodiments is applied as the encoding unit 621 and the encoding unit 622 of the hierarchical image encoding device 620. Also good. By doing so, the method described in each of the above embodiments can be applied to the encoding of the hierarchical image. That is, a reduction in encoding efficiency can be suppressed.

<5.第5の実施の形態>
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
<5. Fifth embodiment>
<Computer>
The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software is installed in the computer. Here, the computer includes, for example, a general-purpose personal computer that can execute various functions by installing a computer incorporated in dedicated hardware and various programs.

図29は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。   FIG. 29 is a block diagram illustrating an example of a hardware configuration of a computer that executes the above-described series of processes using a program.

図29に示されるコンピュータ800において、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804を介して相互に接続されている。   In a computer 800 shown in FIG. 29, a CPU (Central Processing Unit) 801, a ROM (Read Only Memory) 802, and a RAM (Random Access Memory) 803 are connected to each other via a bus 804.

バス804にはまた、入出力インタフェース810も接続されている。入出力インタフェース810には、入力部811、出力部812、記憶部813、通信部814、およびドライブ815が接続されている。   An input / output interface 810 is also connected to the bus 804. An input unit 811, an output unit 812, a storage unit 813, a communication unit 814, and a drive 815 are connected to the input / output interface 810.

入力部811は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部812は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部813は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部814は、例えば、ネットワークインタフェースよりなる。ドライブ815は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア821を駆動する。   The input unit 811 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like. The output unit 812 includes, for example, a display, a speaker, an output terminal, and the like. The storage unit 813 includes, for example, a hard disk, a RAM disk, a nonvolatile memory, and the like. The communication unit 814 includes a network interface, for example. The drive 815 drives a removable medium 821 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.

以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部813に記憶されているプログラムを、入出力インタフェース810およびバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。   In the computer configured as described above, the CPU 801 loads the program stored in the storage unit 813 into the RAM 803 via the input / output interface 810 and the bus 804 and executes the program, for example. Is performed. The RAM 803 also appropriately stores data necessary for the CPU 801 to execute various processes.

コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア821に記録して適用することができる。その場合、プログラムは、リムーバブルメディア821をドライブ815に装着することにより、入出力インタフェース810を介して、記憶部813にインストールすることができる。   The program executed by the computer (CPU 801) can be recorded and applied to, for example, a removable medium 821 as a package medium or the like. In that case, the program can be installed in the storage unit 813 via the input / output interface 810 by attaching the removable medium 821 to the drive 815.

また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部814で受信し、記憶部813にインストールすることができる。   This program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting. In that case, the program can be received by the communication unit 814 and installed in the storage unit 813.

その他、このプログラムは、ROM802や記憶部813に、あらかじめインストールしておくこともできる。   In addition, this program can be installed in the ROM 802 or the storage unit 813 in advance.

なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。   The program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.

また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   Further, in the present specification, the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but is not necessarily performed in chronological order. It also includes processes that are executed individually.

また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。   In this specification, the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .

また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。   In addition, in the above description, the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit). Of course, a configuration other than that described above may be added to the configuration of each device (or each processing unit). Furthermore, if the configuration and operation of the entire system are substantially the same, a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). .

以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。   The preferred embodiments of the present disclosure have been described in detail above with reference to the accompanying drawings, but the technical scope of the present disclosure is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field of the present disclosure can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it is understood that it belongs to the technical scope of the present disclosure.

例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。   For example, the present technology can take a configuration of cloud computing in which one function is shared by a plurality of devices via a network and jointly processed.

また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。   In addition, each step described in the above flowchart can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.

さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。   Further, when a plurality of processes are included in one step, the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.

上述した実施形態に係る画像符号化装置100は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。   The image encoding device 100 according to the above-described embodiment includes, for example, a transmitter or receiver, optical disc, magnetic field in satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication. The present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a disk and a flash memory, or a playback device that reproduces an image from the storage medium. Hereinafter, four application examples will be described.

<6.第6の実施の形態>
<第1の応用例:テレビジョン受像機>
図30は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース(I/F)部909、制御部910、ユーザインタフェース(I/F)部911、及びバス912を備える。
<6. Sixth Embodiment>
<First Application Example: Television Receiver>
FIG. 30 illustrates an example of a schematic configuration of a television device to which the above-described embodiment is applied. The television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface (I / F) unit 909, and a control unit. 910, a user interface (I / F) unit 911, and a bus 912.

チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。   The tuner 902 extracts a signal of a desired channel from a broadcast signal received via the antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. That is, the tuner 902 has a role as a transmission unit in the television device 900 that receives an encoded stream in which an image is encoded.

デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。   The demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Also, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.

デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。   The decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.

映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。   The video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video. In addition, the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network. Further, the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting. Further, the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.

表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。   The display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays a video on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.

音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。   The audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904 and outputs audio from the speaker 908. The audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.

外部インタフェース部909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。   The external interface unit 909 is an interface for connecting the television apparatus 900 to an external device or a network. For example, a video stream or an audio stream received via the external interface unit 909 may be decoded by the decoder 904. That is, the external interface unit 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.

制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。   The control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like. For example, the program stored in the memory is read and executed by the CPU when the television apparatus 900 is activated. For example, the CPU controls the operation of the television device 900 according to an operation signal input from the user interface unit 911 by executing the program.

ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。   The user interface unit 911 is connected to the control unit 910. The user interface unit 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like. The user interface unit 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.

バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909及び制御部910を相互に接続する。   The bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910 to each other.

このように構成されたテレビジョン装置900において、映像信号処理部905が、例えば、デコーダ904から供給される画像データを符号化し、得られた符号化データを、外部インタフェース部909を介してテレビジョン装置900の外部に出力させることができるようにしてもよい。そして、その映像信号処理部905が、上述した画像符号化装置100の機能を有するようにしてもよい。つまり、映像信号処理部905が、デコーダ904から供給される画像データを以上の各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、テレビジョン装置900は、出力する符号化データの符号化効率の低減を抑制することができる。   In the television apparatus 900 configured as described above, the video signal processing unit 905 encodes the image data supplied from the decoder 904, for example, and the obtained encoded data is transmitted to the television via the external interface unit 909. You may enable it to output to the exterior of the apparatus 900. FIG. The video signal processing unit 905 may have the function of the image encoding device 100 described above. That is, the video signal processing unit 905 may encode the image data supplied from the decoder 904 by the method described in the above embodiments. By doing in this way, the television apparatus 900 can suppress the reduction in the encoding efficiency of the encoded data to be output.

<第2の応用例:携帯電話機>
図31は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
<Second application example: mobile phone>
FIG. 31 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied. A cellular phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.

アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。   The antenna 921 is connected to the communication unit 922. The speaker 924 and the microphone 925 are connected to the audio codec 923. The operation unit 932 is connected to the control unit 931. The bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.

携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。   The mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.

音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。   In the voice call mode, an analog voice signal generated by the microphone 925 is supplied to the voice codec 923. The audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922. The communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. Then, the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923. The audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.

また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929に供給し、その記憶媒体に書き込ませる。   Further, in the data communication mode, for example, the control unit 931 generates character data that constitutes an e-mail in response to an operation by the user via the operation unit 932. In addition, the control unit 931 causes the display unit 930 to display characters. In addition, the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922. The communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. Then, the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931. The control unit 931 displays the content of the electronic mail on the display unit 930, supplies the electronic mail data to the recording / reproducing unit 929, and writes the data in the storage medium.

記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。   The recording / reproducing unit 929 has an arbitrary readable / writable storage medium. For example, the storage medium may be a built-in storage medium such as RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Universal Serial Bus) memory, or memory card. It may be a storage medium.

また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929に供給し、その記憶媒体に書き込ませる。   In the shooting mode, for example, the camera unit 926 captures an image of a subject, generates image data, and outputs the generated image data to the image processing unit 927. The image processing unit 927 encodes the image data input from the camera unit 926, supplies the encoded stream to the recording / reproducing unit 929, and writes the encoded stream in the storage medium.

さらに、画像表示モードにおいて、記録再生部929は、記憶媒体に記録されている符号化ストリームを読み出して画像処理部927へ出力する。画像処理部927は、記録再生部929から入力される符号化ストリームを復号し、画像データを表示部930に供給し、その画像を表示させる。   Further, in the image display mode, the recording / reproducing unit 929 reads the encoded stream recorded on the storage medium and outputs the encoded stream to the image processing unit 927. The image processing unit 927 decodes the encoded stream input from the recording / reproducing unit 929, supplies the image data to the display unit 930, and displays the image.

また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。   Further, in the videophone mode, for example, the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to. The communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal. These transmission signal and reception signal may include an encoded bit stream. Then, the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928. The demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923. The image processing unit 927 decodes the video stream and generates video data. The video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930. The audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.

このように構成された携帯電話機920において、例えば画像処理部927が、画像符号化装置100の機能を有するようにしてもよい。つまり、画像処理部927が、以上の各実施の形態において説明した方法により、画像データを符号化するようにしてもよい。このようにすることにより、携帯電話機920は、符号化効率の低減を抑制することができる。   In the mobile phone 920 configured as described above, for example, the image processing unit 927 may have the function of the image encoding device 100. That is, the image processing unit 927 may encode the image data by the method described in each of the above embodiments. In this way, the mobile phone 920 can suppress a reduction in encoding efficiency.

<第3の応用例:記録再生装置>
図32は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
<Third application example: recording / reproducing apparatus>
FIG. 32 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied. For example, the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium. In addition, the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example. In addition, the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.

記録再生装置940は、チューナ941、外部インタフェース(I/F)部942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、およびユーザインタフェース(I/F)部950を備える。   The recording / reproducing apparatus 940 includes a tuner 941, an external interface (I / F) unit 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, and a control. Part 949 and a user interface (I / F) part 950.

チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。   The tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 serves as a transmission unit in the recording / reproducing apparatus 940.

外部インタフェース部942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE(Institute of Electrical and Electronic Engineers)1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。即ち、外部インタフェース部942は、記録再生装置940における伝送部としての役割を有する。   The external interface unit 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network. The external interface unit 942 may be, for example, an IEEE (Institute of Electrical and Electronic Engineers) 1394 interface, a network interface, a USB interface, or a flash memory interface. For example, video data and audio data received via the external interface unit 942 are input to the encoder 943. That is, the external interface unit 942 has a role as a transmission unit in the recording / reproducing apparatus 940.

エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。   The encoder 943 encodes the video data and the audio data when the video data and the audio data input from the external interface unit 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.

HDD944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。   The HDD 944 records an encoded bit stream in which content data such as video and audio is compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.

ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVD(Digital Versatile Disc)ディスク(DVD-Video、DVD-RAM(DVD - Random Access Memory)、DVD-R(DVD - Recordable)、DVD-RW(DVD - Rewritable)、DVD+R(DVD + Recordable)、DVD+RW(DVD + Rewritable)等)又はBlu-ray(登録商標)ディスクなどであってよい。   The disk drive 945 performs recording and reading of data with respect to the mounted recording medium. The recording medium loaded in the disk drive 945 is, for example, a DVD (Digital Versatile Disc) disk (DVD-Video, DVD-RAM (DVD-Random Access Memory), DVD-R (DVD-Recordable), DVD-RW (DVD- Rewritable), DVD + R (DVD + Recordable), DVD + RW (DVD + Rewritable), etc.) or Blu-ray (registered trademark) disc.

セレクタ946は、映像および音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。   The selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.

デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ947は、生成した音声データを外部のスピーカへ出力する。   The decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 947 outputs the generated audio data to an external speaker.

OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。   The OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.

制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置940の動作を制御する。   The control unit 949 includes a processor such as a CPU, and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, and the like. The program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example. The CPU executes the program to control the operation of the recording / reproducing device 940 in accordance with, for example, an operation signal input from the user interface unit 950.

ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置940を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。   The user interface unit 950 is connected to the control unit 949. The user interface unit 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like. The user interface unit 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.

このように構成された記録再生装置940において、例えばエンコーダ943が、画像符号化装置100の機能を有するようにしてもよい。つまり、エンコーダ943が、以上の各実施の形態において説明方法により、画像データを符号化するようにしてもよい。このようにすることにより、記録再生装置940は、符号化効率の低減を抑制することができる。   In the recording / reproducing apparatus 940 configured as described above, for example, the encoder 943 may have the function of the image encoding apparatus 100. That is, the encoder 943 may encode the image data by the method described in each of the above embodiments. By doing in this way, the recording / reproducing apparatus 940 can suppress the reduction in encoding efficiency.

<第4の応用例:撮像装置>
図33は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
<Fourth Application Example: Imaging Device>
FIG. 33 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied. The imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.

撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース(I/F)部966、メモリ部967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース(I/F)部971、およびバス972を備える。   The imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface (I / F) unit 966, a memory unit 967, a media drive 968, an OSD 969, and a control unit 970. A user interface (I / F) unit 971 and a bus 972.

光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース部971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD969、および制御部970を相互に接続する。   The optical block 961 is connected to the imaging unit 962. The imaging unit 962 is connected to the signal processing unit 963. The display unit 965 is connected to the image processing unit 964. The user interface unit 971 is connected to the control unit 970. The bus 972 connects the image processing unit 964, the external interface unit 966, the memory unit 967, the media drive 968, the OSD 969, and the control unit 970 to each other.

光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。   The optical block 961 includes a focus lens and a diaphragm mechanism. The optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962. The imaging unit 962 includes an image sensor such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.

信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。   The signal processing unit 963 performs various camera signal processes such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962. The signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.

画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。   The image processing unit 964 encodes the image data input from the signal processing unit 963, and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface unit 966 or the media drive 968. In addition, the image processing unit 964 decodes encoded data input from the external interface unit 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.

OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。   The OSD 969 generates a GUI image such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.

外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース部966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース部966は、撮像装置960における伝送部としての役割を有する。   The external interface unit 966 is configured as a USB input / output terminal, for example. The external interface unit 966 connects the imaging device 960 and a printer, for example, when printing an image. Further, a drive is connected to the external interface unit 966 as necessary. For example, a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960. Furthermore, the external interface unit 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface unit 966 has a role as a transmission unit in the imaging device 960.

メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。   The recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory. Further, a recording medium may be fixedly attached to the media drive 968, and a non-portable storage unit such as a built-in hard disk drive or an SSD (Solid State Drive) may be configured.

制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置960の動作を制御する。   The control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM. The memory stores a program executed by the CPU, program data, and the like. The program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example. For example, the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface unit 971 by executing the program.

ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。   The user interface unit 971 is connected to the control unit 970. The user interface unit 971 includes, for example, buttons and switches for the user to operate the imaging device 960. The user interface unit 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.

このように構成された撮像装置960において、例えば画像処理部964が、画像符号化装置100の機能を有するようにしてもよい。つまり、画像処理部964が、以上の各実施の形態において説明した方法により、画像データを符号化するようにしてもよい。このようにすることにより、撮像装置960は、符号化効率の低減を抑制することができる。   In the imaging device 960 configured as described above, for example, the image processing unit 964 may have the function of the image encoding device 100. That is, the image processing unit 964 may encode the image data by the method described in each of the above embodiments. By doing in this way, the imaging device 960 can suppress a reduction in encoding efficiency.

なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。   Note that the present technology is also applicable to HTTP streaming such as MPEG DASH, in which an appropriate one is selected from a plurality of encoded data having different resolutions prepared in advance and used in segment units. Can do. That is, information regarding encoding and decoding can be shared among a plurality of such encoded data.

<7.第7の実施の形態>
<実施のその他の例>
以上において本技術を適用する装置やシステム等の例を説明したが、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
<7. Seventh Embodiment>
<Other examples of implementation>
In the above, examples of devices and systems to which the present technology is applied have been described. However, the present technology is not limited thereto, and any configuration mounted on such devices or devices constituting the system, for example, a system LSI (Large Scale) Integration) etc., a module using a plurality of processors, etc., a unit using a plurality of modules, etc., a set in which other functions are added to the unit, etc. (that is, a partial configuration of the apparatus) .

<ビデオセット>
本技術をセットとして実施する場合の例について、図34を参照して説明する。図34は、本技術を適用したビデオセットの概略的な構成の一例を示している。
<Video set>
An example of implementing the present technology as a set will be described with reference to FIG. FIG. 34 illustrates an example of a schematic configuration of a video set to which the present technology is applied.

近年、電子機器の多機能化が進んでおり、その開発や製造において、その一部の構成を販売や提供等として実施する場合、1機能を有する構成として実施を行う場合だけでなく、関連する機能を有する複数の構成を組み合わせ、複数の機能を有する1セットとして実施を行う場合も多く見られるようになってきた。   In recent years, multi-functionalization of electronic devices has progressed, and in the development and manufacture, when implementing a part of the configuration as sales or provision, etc., not only when implementing as a configuration having one function, but also related In many cases, a plurality of configurations having functions are combined and implemented as a set having a plurality of functions.

図34に示されるビデオセット1300は、このような多機能化された構成であり、画像の符号化や復号(いずれか一方でもよいし、両方でも良い)に関する機能を有するデバイスに、その機能に関連するその他の機能を有するデバイスを組み合わせたものである。   The video set 1300 shown in FIG. 34 has such a multi-functional configuration, and a device having a function relating to image encoding and decoding (either one or both) can be used for the function. It is a combination of devices having other related functions.

図34に示されるように、ビデオセット1300は、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314等のモジュール群と、コネクティビティ1321、カメラ1322、およびセンサ1323等の関連する機能を有するデバイスとを有する。   As shown in FIG. 34, the video set 1300 includes a module group such as a video module 1311, an external memory 1312, a power management module 1313, and a front end module 1314, and an associated module 1321, a camera 1322, a sensor 1323, and the like. And a device having a function.

モジュールは、互いに関連するいくつかの部品的機能をまとめ、まとまりのある機能を持った部品としたものである。具体的な物理的構成は任意であるが、例えば、それぞれ機能を有する複数のプロセッサ、抵抗やコンデンサ等の電子回路素子、その他のデバイス等を配線基板等に配置して一体化したものが考えられる。また、モジュールに他のモジュールやプロセッサ等を組み合わせて新たなモジュールとすることも考えられる。   A module is a component having a coherent function by combining several component functions related to each other. The specific physical configuration is arbitrary. For example, a plurality of processors each having a function, electronic circuit elements such as resistors and capacitors, and other devices arranged on a wiring board or the like can be considered. . It is also possible to combine the module with another module, a processor, or the like to form a new module.

図34の例の場合、ビデオモジュール1311は、画像処理に関する機能を有する構成を組み合わせたものであり、アプリケーションプロセッサ、ビデオプロセッサ、ブロードバンドモデム1333、およびRFモジュール1334を有する。   In the case of the example in FIG. 34, the video module 1311 is a combination of configurations having functions related to image processing, and includes an application processor, a video processor, a broadband modem 1333, and an RF module 1334.

プロセッサは、所定の機能を有する構成をSoC(System On a Chip)により半導体チップに集積したものであり、例えばシステムLSI(Large Scale Integration)等と称されるものもある。この所定の機能を有する構成は、論理回路(ハードウエア構成)であってもよいし、CPU、ROM、RAM等と、それらを用いて実行されるプログラム(ソフトウエア構成)であってもよいし、その両方を組み合わせたものであってもよい。例えば、プロセッサが、論理回路とCPU、ROM、RAM等とを有し、機能の一部を論理回路(ハードウエア構成)により実現し、その他の機能をCPUにおいて実行されるプログラム(ソフトウエア構成)により実現するようにしてもよい。   The processor is a configuration in which a configuration having a predetermined function is integrated on a semiconductor chip by an SoC (System On a Chip). For example, there is a processor called a system LSI (Large Scale Integration). The configuration having the predetermined function may be a logic circuit (hardware configuration), a CPU, a ROM, a RAM, and the like, and a program (software configuration) executed using them. , Or a combination of both. For example, a processor has a logic circuit and a CPU, ROM, RAM, etc., a part of the function is realized by a logic circuit (hardware configuration), and other functions are executed by the CPU (software configuration) It may be realized by.

図34のアプリケーションプロセッサ1331は、画像処理に関するアプリケーションを実行するプロセッサである。このアプリケーションプロセッサ1331において実行されるアプリケーションは、所定の機能を実現するために、演算処理を行うだけでなく、例えばビデオプロセッサ1332等、ビデオモジュール1311内外の構成を必要に応じて制御することもできる。   The application processor 1331 in FIG. 34 is a processor that executes an application related to image processing. The application executed in the application processor 1331 not only performs arithmetic processing to realize a predetermined function, but also can control the internal and external configurations of the video module 1311 such as the video processor 1332 as necessary. .

ビデオプロセッサ1332は、画像の符号化・復号(その一方若しくは両方)に関する機能を有するプロセッサである。   The video processor 1332 is a processor having a function relating to image encoding / decoding (one or both of them).

ブロードバンドモデム1333は、インターネットや公衆電話回線網等の広帯域の回線を介して行われる有線若しくは無線(またはその両方)の広帯域通信により送信するデータ(デジタル信号)をデジタル変調する等してアナログ信号に変換したり、その広帯域通信により受信したアナログ信号を復調してデータ(デジタル信号)に変換したりする。ブロードバンドモデム1333は、例えば、ビデオプロセッサ1332が処理する画像データ、画像データが符号化されたストリーム、アプリケーションプログラム、設定データ等、任意の情報を処理する。   The broadband modem 1333 converts the data (digital signal) transmitted by wired or wireless (or both) broadband communication via a broadband line such as the Internet or a public telephone line network into an analog signal by digitally modulating the data. The analog signal received by the broadband communication is demodulated and converted into data (digital signal). The broadband modem 1333 processes arbitrary information such as image data processed by the video processor 1332, a stream obtained by encoding the image data, an application program, setting data, and the like.

RFモジュール1334は、アンテナを介して送受信されるRF(Radio Frequency)信号に対して、周波数変換、変復調、増幅、フィルタ処理等を行うモジュールである。例えば、RFモジュール1334は、ブロードバンドモデム1333により生成されたベースバンド信号に対して周波数変換等を行ってRF信号を生成する。また、例えば、RFモジュール1334は、フロントエンドモジュール1314を介して受信されたRF信号に対して周波数変換等を行ってベースバンド信号を生成する。   The RF module 1334 is a module that performs frequency conversion, modulation / demodulation, amplification, filter processing, and the like on an RF (Radio Frequency) signal transmitted and received via an antenna. For example, the RF module 1334 generates an RF signal by performing frequency conversion or the like on the baseband signal generated by the broadband modem 1333. Further, for example, the RF module 1334 generates a baseband signal by performing frequency conversion or the like on the RF signal received via the front end module 1314.

なお、図34において点線1341に示されるように、アプリケーションプロセッサ1331とビデオプロセッサ1332を、一体化し、1つのプロセッサとして構成されるようにしてもよい。   Note that, as indicated by a dotted line 1341 in FIG. 34, the application processor 1331 and the video processor 1332 may be integrated into a single processor.

外部メモリ1312は、ビデオモジュール1311の外部に設けられた、ビデオモジュール1311により利用される記憶デバイスを有するモジュールである。この外部メモリ1312の記憶デバイスは、どのような物理構成により実現するようにしてもよいが、一般的にフレーム単位の画像データのような大容量のデータの格納に利用されることが多いので、例えばDRAM(Dynamic Random Access Memory)のような比較的安価で大容量の半導体メモリにより実現するのが望ましい。   The external memory 1312 is a module having a storage device that is provided outside the video module 1311 and is used by the video module 1311. The storage device of the external memory 1312 may be realized by any physical configuration, but is generally used for storing a large amount of data such as image data in units of frames. For example, it is desirable to realize it by a relatively inexpensive and large-capacity semiconductor memory such as a DRAM (Dynamic Random Access Memory).

パワーマネージメントモジュール1313は、ビデオモジュール1311(ビデオモジュール1311内の各構成)への電力供給を管理し、制御する。   The power management module 1313 manages and controls power supply to the video module 1311 (each component in the video module 1311).

フロントエンドモジュール1314は、RFモジュール1334に対してフロントエンド機能(アンテナ側の送受信端の回路)を提供するモジュールである。図34に示されるように、フロントエンドモジュール1314は、例えば、アンテナ部1351、フィルタ1352、および増幅部1353を有する。   The front-end module 1314 is a module that provides the RF module 1334 with a front-end function (a circuit on a transmitting / receiving end on the antenna side). As illustrated in FIG. 34, the front end module 1314 includes, for example, an antenna unit 1351, a filter 1352, and an amplification unit 1353.

アンテナ部1351は、無線信号を送受信するアンテナおよびその周辺の構成を有する。アンテナ部1351は、増幅部1353から供給される信号を無線信号として送信し、受信した無線信号を電気信号(RF信号)としてフィルタ1352に供給する。フィルタ1352は、アンテナ部1351を介して受信されたRF信号に対してフィルタ処理等を行い、処理後のRF信号をRFモジュール1334に供給する。増幅部1353は、RFモジュール1334から供給されるRF信号を増幅し、アンテナ部1351に供給する。   The antenna unit 1351 has an antenna that transmits and receives radio signals and a peripheral configuration thereof. The antenna unit 1351 transmits the signal supplied from the amplification unit 1353 as a radio signal, and supplies the received radio signal to the filter 1352 as an electric signal (RF signal). The filter 1352 performs a filtering process on the RF signal received via the antenna unit 1351 and supplies the processed RF signal to the RF module 1334. The amplifying unit 1353 amplifies the RF signal supplied from the RF module 1334 and supplies the amplified RF signal to the antenna unit 1351.

コネクティビティ1321は、外部との接続に関する機能を有するモジュールである。コネクティビティ1321の物理構成は、任意である。例えば、コネクティビティ1321は、ブロードバンドモデム1333が対応する通信規格以外の通信機能を有する構成や、外部入出力端子等を有する。   The connectivity 1321 is a module having a function related to connection with the outside. The physical configuration of the connectivity 1321 is arbitrary. For example, the connectivity 1321 has a configuration having a communication function other than the communication standard supported by the broadband modem 1333, an external input / output terminal, and the like.

例えば、コネクティビティ1321が、Bluetooth(登録商標)、IEEE 802.11(例えばWi-Fi(Wireless Fidelity、登録商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等の無線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した信号を送受信するアンテナ等を有するようにしてもよい。また、例えば、コネクティビティ1321が、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)等の有線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した端子を有するようにしてもよい。さらに、例えば、コネクティビティ1321が、アナログ入出力端子等のその他のデータ(信号)伝送機能等を有するようにしてもよい。   For example, the connectivity 1321 is compliant with wireless communication standards such as Bluetooth (registered trademark), IEEE 802.11 (for example, Wi-Fi (Wireless Fidelity, registered trademark)), NFC (Near Field Communication), IrDA (InfraRed Data Association), etc. You may make it have a module which has a function, an antenna etc. which transmit / receive the signal based on the standard. Further, for example, the connectivity 1321 has a module having a communication function compliant with a wired communication standard such as USB (Universal Serial Bus), HDMI (registered trademark) (High-Definition Multimedia Interface), and a terminal compliant with the standard. You may do it. Further, for example, the connectivity 1321 may have other data (signal) transmission functions such as analog input / output terminals.

なお、コネクティビティ1321が、データ(信号)の伝送先のデバイスを含むようにしてもよい。例えば、コネクティビティ1321が、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等の記録媒体に対してデータの読み出しや書き込みを行うドライブ(リムーバブルメディアのドライブだけでなく、ハードディスク、SSD(Solid State Drive)、NAS(Network Attached Storage)等も含む)を有するようにしてもよい。また、コネクティビティ1321が、画像や音声の出力デバイス(モニタやスピーカ等)を有するようにしてもよい。   The connectivity 1321 may include a data (signal) transmission destination device. For example, the drive 1321 reads / writes data to / from a recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory (not only a removable medium drive, but also a hard disk, SSD (Solid State Drive) And NAS (Network Attached Storage) etc.). In addition, the connectivity 1321 may include an image or audio output device (a monitor, a speaker, or the like).

カメラ1322は、被写体を撮像し、被写体の画像データを得る機能を有するモジュールである。カメラ1322の撮像により得られた画像データは、例えば、ビデオプロセッサ1332に供給されて符号化される。   The camera 1322 is a module having a function of capturing a subject and obtaining image data of the subject. Image data obtained by imaging by the camera 1322 is supplied to, for example, a video processor 1332 and encoded.

センサ1323は、例えば、音声センサ、超音波センサ、光センサ、照度センサ、赤外線センサ、イメージセンサ、回転センサ、角度センサ、角速度センサ、速度センサ、加速度センサ、傾斜センサ、磁気識別センサ、衝撃センサ、温度センサ等、任意のセンサ機能を有するモジュールである。センサ1323により検出されたデータは、例えば、アプリケーションプロセッサ1331に供給されてアプリケーション等により利用される。   The sensor 1323 includes, for example, a voice sensor, an ultrasonic sensor, an optical sensor, an illuminance sensor, an infrared sensor, an image sensor, a rotation sensor, an angle sensor, an angular velocity sensor, a velocity sensor, an acceleration sensor, an inclination sensor, a magnetic identification sensor, an impact sensor, It is a module having an arbitrary sensor function such as a temperature sensor. For example, the data detected by the sensor 1323 is supplied to the application processor 1331 and used by an application or the like.

以上においてモジュールとして説明した構成をプロセッサとして実現するようにしてもよいし、逆にプロセッサとして説明した構成をモジュールとして実現するようにしてもよい。   The configuration described as a module in the above may be realized as a processor, or conversely, the configuration described as a processor may be realized as a module.

以上のような構成のビデオセット1300において、後述するようにビデオプロセッサ1332に本技術を適用することができる。したがって、ビデオセット1300は、本技術を適用したセットとして実施することができる。   In the video set 1300 having the above configuration, the present technology can be applied to the video processor 1332 as described later. Therefore, the video set 1300 can be implemented as a set to which the present technology is applied.

<ビデオプロセッサの構成例>
図35は、本技術を適用したビデオプロセッサ1332(図34)の概略的な構成の一例を示している。
<Example of video processor configuration>
FIG. 35 illustrates an example of a schematic configuration of a video processor 1332 (FIG. 34) to which the present technology is applied.

図35の例の場合、ビデオプロセッサ1332は、ビデオ信号およびオーディオ信号の入力を受けてこれらを所定の方式で符号化する機能と、符号化されたビデオデータおよびオーディオデータを復号し、ビデオ信号およびオーディオ信号を再生出力する機能とを有する。   In the case of the example of FIG. 35, the video processor 1332 receives the video signal and the audio signal, encodes them in a predetermined method, decodes the encoded video data and audio data, A function of reproducing and outputting an audio signal.

図35に示されるように、ビデオプロセッサ1332は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、フレームメモリ1405、およびメモリ制御部1406を有する。また、ビデオプロセッサ1332は、エンコード・デコードエンジン1407、ビデオES(Elementary Stream)バッファ1408Aおよび1408B、並びに、オーディオESバッファ1409Aおよび1409Bを有する。さらに、ビデオプロセッサ1332は、オーディオエンコーダ1410、オーディオデコーダ1411、多重化部(MUX(Multiplexer))1412、逆多重化部(DMUX(Demultiplexer))1413、およびストリームバッファ1414を有する。   As shown in FIG. 35, the video processor 1332 includes a video input processing unit 1401, a first image enlargement / reduction unit 1402, a second image enlargement / reduction unit 1403, a video output processing unit 1404, a frame memory 1405, and a memory control unit 1406. Have The video processor 1332 includes an encoding / decoding engine 1407, video ES (Elementary Stream) buffers 1408A and 1408B, and audio ES buffers 1409A and 1409B. Further, the video processor 1332 includes an audio encoder 1410, an audio decoder 1411, a multiplexing unit (MUX (Multiplexer)) 1412, a demultiplexing unit (DMUX (Demultiplexer)) 1413, and a stream buffer 1414.

ビデオ入力処理部1401は、例えばコネクティビティ1321(図34)等から入力されたビデオ信号を取得し、デジタル画像データに変換する。第1画像拡大縮小部1402は、画像データに対してフォーマット変換や画像の拡大縮小処理等を行う。第2画像拡大縮小部1403は、画像データに対して、ビデオ出力処理部1404を介して出力する先でのフォーマットに応じて画像の拡大縮小処理を行ったり、第1画像拡大縮小部1402と同様のフォーマット変換や画像の拡大縮小処理等を行ったりする。ビデオ出力処理部1404は、画像データに対して、フォーマット変換やアナログ信号への変換等を行って、再生されたビデオ信号として例えばコネクティビティ1321等に出力する。   The video input processing unit 1401 acquires a video signal input from, for example, the connectivity 1321 (FIG. 34) and converts it into digital image data. The first image enlargement / reduction unit 1402 performs format conversion, image enlargement / reduction processing, and the like on the image data. The second image enlargement / reduction unit 1403 performs image enlargement / reduction processing on the image data in accordance with the format of the output destination via the video output processing unit 1404, or is the same as the first image enlargement / reduction unit 1402. Format conversion and image enlargement / reduction processing. The video output processing unit 1404 performs format conversion, conversion to an analog signal, and the like on the image data and outputs the reproduced video signal to, for example, the connectivity 1321 or the like.

フレームメモリ1405は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、およびエンコード・デコードエンジン1407によって共用される画像データ用のメモリである。フレームメモリ1405は、例えばDRAM等の半導体メモリとして実現される。   The frame memory 1405 is a memory for image data shared by the video input processing unit 1401, the first image scaling unit 1402, the second image scaling unit 1403, the video output processing unit 1404, and the encoding / decoding engine 1407. . The frame memory 1405 is realized as a semiconductor memory such as a DRAM, for example.

メモリ制御部1406は、エンコード・デコードエンジン1407からの同期信号を受けて、アクセス管理テーブル1406Aに書き込まれたフレームメモリ1405へのアクセススケジュールに従ってフレームメモリ1405に対する書き込み・読み出しのアクセスを制御する。アクセス管理テーブル1406Aは、エンコード・デコードエンジン1407、第1画像拡大縮小部1402、第2画像拡大縮小部1403等で実行される処理に応じて、メモリ制御部1406により更新される。   The memory control unit 1406 receives the synchronization signal from the encoding / decoding engine 1407, and controls the writing / reading access to the frame memory 1405 according to the access schedule to the frame memory 1405 written in the access management table 1406A. The access management table 1406A is updated by the memory control unit 1406 in accordance with processing executed by the encoding / decoding engine 1407, the first image enlargement / reduction unit 1402, the second image enlargement / reduction unit 1403, and the like.

エンコード・デコードエンジン1407は、画像データのエンコード処理、並びに、画像データが符号化されたデータであるビデオストリームのデコード処理を行う。例えば、エンコード・デコードエンジン1407は、フレームメモリ1405から読み出した画像データを符号化し、ビデオストリームとしてビデオESバッファ1408Aに順次書き込む。また、例えば、ビデオESバッファ1408Bからビデオストリームを順次読み出して復号し、画像データとしてフレームメモリ1405に順次書き込む。エンコード・デコードエンジン1407は、これらの符号化や復号において、フレームメモリ1405を作業領域として使用する。また、エンコード・デコードエンジン1407は、例えばマクロブロック毎の処理を開始するタイミングで、メモリ制御部1406に対して同期信号を出力する。   The encoding / decoding engine 1407 performs encoding processing of image data and decoding processing of a video stream which is data obtained by encoding the image data. For example, the encoding / decoding engine 1407 encodes the image data read from the frame memory 1405 and sequentially writes the data as a video stream in the video ES buffer 1408A. Further, for example, the video stream is sequentially read from the video ES buffer 1408B, decoded, and sequentially written in the frame memory 1405 as image data. The encoding / decoding engine 1407 uses the frame memory 1405 as a work area in the encoding and decoding. Also, the encoding / decoding engine 1407 outputs a synchronization signal to the memory control unit 1406, for example, at a timing at which processing for each macroblock is started.

ビデオESバッファ1408Aは、エンコード・デコードエンジン1407によって生成されたビデオストリームをバッファリングして、多重化部(MUX)1412に供給する。ビデオESバッファ1408Bは、逆多重化部(DMUX)1413から供給されたビデオストリームをバッファリングして、エンコード・デコードエンジン1407に供給する。   The video ES buffer 1408A buffers the video stream generated by the encoding / decoding engine 1407 and supplies the buffered video stream to the multiplexing unit (MUX) 1412. The video ES buffer 1408B buffers the video stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered video stream to the encoding / decoding engine 1407.

オーディオESバッファ1409Aは、オーディオエンコーダ1410によって生成されたオーディオストリームをバッファリングして、多重化部(MUX)1412に供給する。オーディオESバッファ1409Bは、逆多重化部(DMUX)1413から供給されたオーディオストリームをバッファリングして、オーディオデコーダ1411に供給する。   The audio ES buffer 1409A buffers the audio stream generated by the audio encoder 1410 and supplies it to the multiplexing unit (MUX) 1412. The audio ES buffer 1409B buffers the audio stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered audio stream to the audio decoder 1411.

オーディオエンコーダ1410は、例えばコネクティビティ1321等から入力されたオーディオ信号を例えばデジタル変換し、例えばMPEGオーディオ方式やAC3(AudioCode number 3)方式等の所定の方式で符号化する。オーディオエンコーダ1410は、オーディオ信号が符号化されたデータであるオーディオストリームをオーディオESバッファ1409Aに順次書き込む。オーディオデコーダ1411は、オーディオESバッファ1409Bから供給されたオーディオストリームを復号し、例えばアナログ信号への変換等を行って、再生されたオーディオ信号として例えばコネクティビティ1321等に供給する。   The audio encoder 1410 converts, for example, an audio signal input from the connectivity 1321 or the like, for example, into a digital format, and encodes the audio signal using a predetermined method such as an MPEG audio method or an AC3 (Audio Code number 3) method. The audio encoder 1410 sequentially writes an audio stream, which is data obtained by encoding an audio signal, in the audio ES buffer 1409A. The audio decoder 1411 decodes the audio stream supplied from the audio ES buffer 1409B, performs conversion to an analog signal, for example, and supplies the reproduced audio signal to, for example, the connectivity 1321 or the like.

多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化する。この多重化の方法(すなわち、多重化により生成されるビットストリームのフォーマット)は任意である。また、この多重化の際に、多重化部(MUX)1412は、所定のヘッダ情報等をビットストリームに付加することもできる。つまり、多重化部(MUX)1412は、多重化によりストリームのフォーマットを変換することができる。例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームに変換する。また、例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、記録用のファイルフォーマットのデータ(ファイルデータ)に変換する。   The multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream. The multiplexing method (that is, the format of the bit stream generated by multiplexing) is arbitrary. At the time of this multiplexing, the multiplexing unit (MUX) 1412 can also add predetermined header information or the like to the bit stream. That is, the multiplexing unit (MUX) 1412 can convert the stream format by multiplexing. For example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream to convert it into a transport stream that is a bit stream in a transfer format. Further, for example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream, thereby converting the data into file format data (file data) for recording.

逆多重化部(DMUX)1413は、多重化部(MUX)1412による多重化に対応する方法で、ビデオストリームとオーディオストリームとが多重化されたビットストリームを逆多重化する。つまり、逆多重化部(DMUX)1413は、ストリームバッファ1414から読み出されたビットストリームからビデオストリームとオーディオストリームとを抽出する(ビデオストリームとオーディオストリームとを分離する)。つまり、逆多重化部(DMUX)1413は、逆多重化によりストリームのフォーマットを変換(多重化部(MUX)1412による変換の逆変換)することができる。例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321やブロードバンドモデム1333等から供給されたトランスポートストリームを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。また、例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321により各種記録媒体から読み出されたファイルデータを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。   The demultiplexing unit (DMUX) 1413 demultiplexes the bit stream in which the video stream and the audio stream are multiplexed by a method corresponding to the multiplexing by the multiplexing unit (MUX) 1412. That is, the demultiplexer (DMUX) 1413 extracts the video stream and the audio stream from the bit stream read from the stream buffer 1414 (separates the video stream and the audio stream). That is, the demultiplexer (DMUX) 1413 can convert the stream format by demultiplexing (inverse conversion of the conversion by the multiplexer (MUX) 1412). For example, the demultiplexing unit (DMUX) 1413 obtains a transport stream supplied from, for example, the connectivity 1321 or the broadband modem 1333 via the stream buffer 1414 and demultiplexes the video stream and the audio stream. And can be converted to Further, for example, the demultiplexer (DMUX) 1413 obtains the file data read from various recording media by the connectivity 1321, for example, via the stream buffer 1414, and demultiplexes the video stream and the audio. Can be converted to a stream.

ストリームバッファ1414は、ビットストリームをバッファリングする。例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321やブロードバンドモデム1333等に供給する。   The stream buffer 1414 buffers the bit stream. For example, the stream buffer 1414 buffers the transport stream supplied from the multiplexing unit (MUX) 1412 and, for example, in the connectivity 1321 or the broadband modem 1333 at a predetermined timing or based on an external request or the like. Supply.

また、例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321等に供給し、各種記録媒体に記録させる。   Further, for example, the stream buffer 1414 buffers the file data supplied from the multiplexing unit (MUX) 1412 and supplies it to the connectivity 1321 at a predetermined timing or based on an external request, for example. It is recorded on various recording media.

さらに、ストリームバッファ1414は、例えばコネクティビティ1321やブロードバンドモデム1333等を介して取得したトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。   Further, the stream buffer 1414 buffers a transport stream acquired through, for example, the connectivity 1321 or the broadband modem 1333, and performs a demultiplexing unit (DMUX) at a predetermined timing or based on a request from the outside. 1413.

また、ストリームバッファ1414は、例えばコネクティビティ1321等において各種記録媒体から読み出されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。   Further, the stream buffer 1414 buffers file data read from various recording media in, for example, the connectivity 1321, and the demultiplexer (DMUX) 1413 at a predetermined timing or based on an external request or the like. To supply.

次に、このような構成のビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321等からビデオプロセッサ1332に入力されたビデオ信号は、ビデオ入力処理部1401において4:2:2Y/Cb/Cr方式等の所定の方式のデジタル画像データに変換され、フレームメモリ1405に順次書き込まれる。このデジタル画像データは、第1画像拡大縮小部1402または第2画像拡大縮小部1403に読み出されて、4:2:0Y/Cb/Cr方式等の所定の方式へのフォーマット変換および拡大縮小処理が行われ、再びフレームメモリ1405に書き込まれる。この画像データは、エンコード・デコードエンジン1407によって符号化され、ビデオストリームとしてビデオESバッファ1408Aに書き込まれる。   Next, an example of the operation of the video processor 1332 having such a configuration will be described. For example, a video signal input to the video processor 1332 from the connectivity 1321 or the like is converted into digital image data of a predetermined format such as 4: 2: 2Y / Cb / Cr format by the video input processing unit 1401 and stored in the frame memory 1405. Written sequentially. This digital image data is read by the first image enlargement / reduction unit 1402 or the second image enlargement / reduction unit 1403, and format conversion to a predetermined method such as 4: 2: 0Y / Cb / Cr method and enlargement / reduction processing are performed. Is written again in the frame memory 1405. This image data is encoded by the encoding / decoding engine 1407 and written as a video stream in the video ES buffer 1408A.

また、コネクティビティ1321等からビデオプロセッサ1332に入力されたオーディオ信号は、オーディオエンコーダ1410によって符号化され、オーディオストリームとして、オーディオESバッファ1409Aに書き込まれる。   Also, an audio signal input to the video processor 1332 from the connectivity 1321 or the like is encoded by the audio encoder 1410 and written as an audio stream in the audio ES buffer 1409A.

ビデオESバッファ1408Aのビデオストリームと、オーディオESバッファ1409Aのオーディオストリームは、多重化部(MUX)1412に読み出されて多重化され、トランスポートストリーム若しくはファイルデータ等に変換される。多重化部(MUX)1412により生成されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークに出力される。また、多重化部(MUX)1412により生成されたファイルデータは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。   The video stream of the video ES buffer 1408A and the audio stream of the audio ES buffer 1409A are read and multiplexed by the multiplexing unit (MUX) 1412 and converted into a transport stream or file data. The transport stream generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414 and then output to the external network via, for example, the connectivity 1321 or the broadband modem 1333. Further, the file data generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414, and then output to, for example, the connectivity 1321 and recorded on various recording media.

また、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからビデオプロセッサ1332に入力されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。また、例えばコネクティビティ1321等において各種記録媒体から読み出され、ビデオプロセッサ1332に入力されたファイルデータは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。つまり、ビデオプロセッサ1332に入力されたトランスポートストリームまたはファイルデータは、逆多重化部(DMUX)1413によりビデオストリームとオーディオストリームとに分離される。   For example, a transport stream input from an external network to the video processor 1332 via the connectivity 1321 or the broadband modem 1333 is buffered in the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413. The Further, for example, file data read from various recording media by the connectivity 1321 and input to the video processor 1332 is buffered by the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413. That is, the transport stream or file data input to the video processor 1332 is separated into a video stream and an audio stream by the demultiplexer (DMUX) 1413.

オーディオストリームは、オーディオESバッファ1409Bを介してオーディオデコーダ1411に供給され、復号されてオーディオ信号が再生される。また、ビデオストリームは、ビデオESバッファ1408Bに書き込まれた後、エンコード・デコードエンジン1407により順次読み出されて復号されてフレームメモリ1405に書き込まれる。復号された画像データは、第2画像拡大縮小部1403によって拡大縮小処理されて、フレームメモリ1405に書き込まれる。そして、復号された画像データは、ビデオ出力処理部1404に読み出されて、4:2:2Y/Cb/Cr方式等の所定の方式にフォーマット変換され、さらにアナログ信号に変換されて、ビデオ信号が再生出力される。   The audio stream is supplied to the audio decoder 1411 via the audio ES buffer 1409B, decoded, and an audio signal is reproduced. The video stream is written to the video ES buffer 1408B, and then sequentially read and decoded by the encoding / decoding engine 1407, and written to the frame memory 1405. The decoded image data is enlarged / reduced by the second image enlargement / reduction unit 1403 and written to the frame memory 1405. The decoded image data is read out to the video output processing unit 1404, format-converted to a predetermined system such as 4: 2: 2Y / Cb / Cr system, and further converted into an analog signal to be converted into a video signal. Is played out.

このように構成されるビデオプロセッサ1332に本技術を適用する場合、エンコード・デコードエンジン1407に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、エンコード・デコードエンジン1407が、上述した画像符号化装置100の機能を有するようにしてもよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図22を参照して上述した各実施の形態と同様の効果を得ることができる。   When the present technology is applied to the video processor 1332 configured as described above, the present technology according to each embodiment described above may be applied to the encoding / decoding engine 1407. That is, for example, the encoding / decoding engine 1407 may have the function of the image encoding device 100 described above. By doing so, the video processor 1332 can obtain the same effects as those of the embodiments described above with reference to FIGS. 1 to 22.

なお、エンコード・デコードエンジン1407において、本技術(すなわち、画像符号化装置100の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。   Note that in the encoding / decoding engine 1407, the present technology (that is, the function of the image encoding device 100) may be realized by hardware such as a logic circuit or software such as an embedded program. Alternatively, it may be realized by both of them.

<ビデオプロセッサの他の構成例>
図36は、本技術を適用したビデオプロセッサ1332の概略的な構成の他の例を示している。図36の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
<Other configuration examples of video processor>
FIG. 36 illustrates another example of a schematic configuration of a video processor 1332 to which the present technology is applied. In the case of the example of FIG. 36, the video processor 1332 has a function of encoding / decoding video data by a predetermined method.

より具体的には、図36に示されるように、ビデオプロセッサ1332は、制御部1511、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、および内部メモリ1515を有する。また、ビデオプロセッサ1332は、コーデックエンジン1516、メモリインタフェース1517、多重化・逆多重化部(MUX DMUX)1518、ネットワークインタフェース1519、およびビデオインタフェース1520を有する。   More specifically, as illustrated in FIG. 36, the video processor 1332 includes a control unit 1511, a display interface 1512, a display engine 1513, an image processing engine 1514, and an internal memory 1515. The video processor 1332 includes a codec engine 1516, a memory interface 1517, a multiplexing / demultiplexing unit (MUX DMUX) 1518, a network interface 1519, and a video interface 1520.

制御部1511は、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516等、ビデオプロセッサ1332内の各処理部の動作を制御する。   The control unit 1511 controls the operation of each processing unit in the video processor 1332 such as the display interface 1512, the display engine 1513, the image processing engine 1514, and the codec engine 1516.

図36に示されるように、制御部1511は、例えば、メインCPU1531、サブCPU1532、およびシステムコントローラ1533を有する。メインCPU1531は、ビデオプロセッサ1332内の各処理部の動作を制御するためのプログラム等を実行する。メインCPU1531は、そのプログラム等に従って制御信号を生成し、各処理部に供給する(つまり、各処理部の動作を制御する)。サブCPU1532は、メインCPU1531の補助的な役割を果たす。例えば、サブCPU1532は、メインCPU1531が実行するプログラム等の子プロセスやサブルーチン等を実行する。システムコントローラ1533は、メインCPU1531およびサブCPU1532が実行するプログラムを指定する等、メインCPU1531およびサブCPU1532の動作を制御する。   As illustrated in FIG. 36, the control unit 1511 includes, for example, a main CPU 1531, a sub CPU 1532, and a system controller 1533. The main CPU 1531 executes a program and the like for controlling the operation of each processing unit in the video processor 1332. The main CPU 1531 generates a control signal according to the program and supplies it to each processing unit (that is, controls the operation of each processing unit). The sub CPU 1532 plays an auxiliary role of the main CPU 1531. For example, the sub CPU 1532 executes a child process such as a program executed by the main CPU 1531, a subroutine, or the like. The system controller 1533 controls operations of the main CPU 1531 and the sub CPU 1532 such as designating a program to be executed by the main CPU 1531 and the sub CPU 1532.

ディスプレイインタフェース1512は、制御部1511の制御の下、画像データを例えばコネクティビティ1321等に出力する。例えば、ディスプレイインタフェース1512は、デジタルデータの画像データをアナログ信号に変換し、再生されたビデオ信号として、またはデジタルデータの画像データのまま、コネクティビティ1321のモニタ装置等に出力する。   The display interface 1512 outputs image data to, for example, the connectivity 1321 under the control of the control unit 1511. For example, the display interface 1512 converts image data of digital data into an analog signal, and outputs it to a monitor device or the like of the connectivity 1321 as a reproduced video signal or as image data of the digital data.

ディスプレイエンジン1513は、制御部1511の制御の下、画像データに対して、その画像を表示させるモニタ装置等のハードウエアスペックに合わせるように、フォーマット変換、サイズ変換、色域変換等の各種変換処理を行う。   Under the control of the control unit 1511, the display engine 1513 performs various conversion processes such as format conversion, size conversion, color gamut conversion, and the like so as to match the image data with hardware specifications such as a monitor device that displays the image. I do.

画像処理エンジン1514は、制御部1511の制御の下、画像データに対して、例えば画質改善のためのフィルタ処理等、所定の画像処理を施す。   The image processing engine 1514 performs predetermined image processing such as filter processing for improving image quality on the image data under the control of the control unit 1511.

内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516により共用される、ビデオプロセッサ1332の内部に設けられたメモリである。内部メモリ1515は、例えば、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516の間で行われるデータの授受に利用される。例えば、内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516から供給されるデータを格納し、必要に応じて(例えば、要求に応じて)、そのデータを、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516に供給する。この内部メモリ1515は、どのような記憶デバイスにより実現するようにしてもよいが、一般的にブロック単位の画像データやパラメータ等といった小容量のデータの格納に利用することが多いので、例えばSRAM(Static Random Access Memory)のような比較的(例えば外部メモリ1312と比較して)小容量だが応答速度が高速な半導体メモリにより実現するのが望ましい。   The internal memory 1515 is a memory provided in the video processor 1332 that is shared by the display engine 1513, the image processing engine 1514, and the codec engine 1516. The internal memory 1515 is used, for example, for data exchange performed between the display engine 1513, the image processing engine 1514, and the codec engine 1516. For example, the internal memory 1515 stores data supplied from the display engine 1513, the image processing engine 1514, or the codec engine 1516, and stores the data as needed (eg, upon request). This is supplied to the image processing engine 1514 or the codec engine 1516. The internal memory 1515 may be realized by any storage device, but is generally used for storing a small amount of data such as image data or parameters in units of blocks. It is desirable to realize it by a semiconductor memory such as a static random access memory that has a relatively small capacity (eg, compared to the external memory 1312) but a high response speed.

コーデックエンジン1516は、画像データの符号化や復号に関する処理を行う。このコーデックエンジン1516が対応する符号化・復号の方式は任意であり、その数は1つであってもよいし、複数であってもよい。例えば、コーデックエンジン1516は、複数の符号化・復号方式のコーデック機能を備え、その中から選択されたもので画像データの符号化若しくは符号化データの復号を行うようにしてもよい。   The codec engine 1516 performs processing related to encoding and decoding of image data. The encoding / decoding scheme supported by the codec engine 1516 is arbitrary, and the number thereof may be one or plural. For example, the codec engine 1516 may be provided with codec functions of a plurality of encoding / decoding schemes, and may be configured to perform encoding of image data or decoding of encoded data using one selected from them.

図36に示される例において、コーデックエンジン1516は、コーデックに関する処理の機能ブロックとして、例えば、MPEG-2 Video1541、AVC/H.2641542、HEVC/H.2651543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、およびMPEG-DASH1551を有する。   In the example shown in FIG. 36, the codec engine 1516 includes, for example, MPEG-2 Video 1541, AVC / H.2641542, HEVC / H.2651543, HEVC / H.265 (Scalable) 1544, as functional blocks for codec processing. HEVC / H.265 (Multi-view) 1545 and MPEG-DASH 1551 are included.

MPEG-2 Video1541は、画像データをMPEG-2方式で符号化したり復号したりする機能ブロックである。AVC/H.2641542は、画像データをAVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.2651543は、画像データをHEVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.265(Scalable)1544は、画像データをHEVC方式でスケーラブル符号化したりスケーラブル復号したりする機能ブロックである。HEVC/H.265(Multi-view)1545は、画像データをHEVC方式で多視点符号化したり多視点復号したりする機能ブロックである。   MPEG-2 Video 1541 is a functional block that encodes and decodes image data in the MPEG-2 format. AVC / H.2641542 is a functional block that encodes and decodes image data using the AVC method. HEVC / H.2651543 is a functional block that encodes and decodes image data using the HEVC method. HEVC / H.265 (Scalable) 1544 is a functional block that performs scalable encoding and scalable decoding of image data using the HEVC method. HEVC / H.265 (Multi-view) 1545 is a functional block that multi-view encodes or multi-view decodes image data using the HEVC method.

MPEG-DASH1551は、画像データをMPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式で送受信する機能ブロックである。MPEG-DASHは、HTTP(HyperText Transfer Protocol)を使ってビデオのストリーミングを行う技術であり、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択し伝送することを特徴の1つとする。MPEG-DASH1551は、規格に準拠するストリームの生成やそのストリームの伝送制御等を行い、画像データの符号化・復号については、上述したMPEG-2 Video1541乃至HEVC/H.265(Multi-view)1545を利用する。   MPEG-DASH 1551 is a functional block that transmits and receives image data by the MPEG-DASH (MPEG-Dynamic Adaptive Streaming over HTTP) method. MPEG-DASH is a technology for streaming video using HTTP (HyperText Transfer Protocol), and selects and transmits appropriate data from multiple encoded data with different resolutions prepared in segments. This is one of the features. MPEG-DASH 1551 generates a stream conforming to the standard, controls transmission of the stream, and the like. For encoding / decoding of image data, MPEG-2 Video 1541 to HEVC / H.265 (Multi-view) 1545 described above are used. Is used.

メモリインタフェース1517は、外部メモリ1312用のインタフェースである。画像処理エンジン1514やコーデックエンジン1516から供給されるデータは、メモリインタフェース1517を介して外部メモリ1312に供給される。また、外部メモリ1312から読み出されたデータは、メモリインタフェース1517を介してビデオプロセッサ1332(画像処理エンジン1514若しくはコーデックエンジン1516)に供給される。   The memory interface 1517 is an interface for the external memory 1312. Data supplied from the image processing engine 1514 or the codec engine 1516 is supplied to the external memory 1312 via the memory interface 1517. The data read from the external memory 1312 is supplied to the video processor 1332 (the image processing engine 1514 or the codec engine 1516) via the memory interface 1517.

多重化・逆多重化部(MUX DMUX)1518は、符号化データのビットストリーム、画像データ、ビデオ信号等、画像に関する各種データの多重化や逆多重化を行う。この多重化・逆多重化の方法は任意である。例えば、多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、複数のデータを1つにまとめるだけでなく、所定のヘッダ情報等をそのデータに付加することもできる。また、逆多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、1つのデータを複数に分割するだけでなく、分割した各データに所定のヘッダ情報等を付加することもできる。つまり、多重化・逆多重化部(MUX DMUX)1518は、多重化・逆多重化によりデータのフォーマットを変換することができる。例えば、多重化・逆多重化部(MUX DMUX)1518は、ビットストリームを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームや、記録用のファイルフォーマットのデータ(ファイルデータ)に変換することができる。もちろん、逆多重化によりその逆変換も可能である。   A multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes and demultiplexes various data related to images such as a bit stream of encoded data, image data, and a video signal. This multiplexing / demultiplexing method is arbitrary. For example, at the time of multiplexing, the multiplexing / demultiplexing unit (MUX DMUX) 1518 can not only combine a plurality of data into one but also add predetermined header information or the like to the data. Further, in the demultiplexing, the multiplexing / demultiplexing unit (MUX DMUX) 1518 not only divides one data into a plurality of data but also adds predetermined header information or the like to each divided data. it can. That is, the multiplexing / demultiplexing unit (MUX DMUX) 1518 can convert the data format by multiplexing / demultiplexing. For example, the multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes the bit stream, thereby transporting a transport stream that is a bit stream in a transfer format and data in a file format for recording (file data). Can be converted to Of course, the inverse transformation is also possible by demultiplexing.

ネットワークインタフェース1519は、例えばブロードバンドモデム1333やコネクティビティ1321等向けのインタフェースである。ビデオインタフェース1520は、例えばコネクティビティ1321やカメラ1322等向けのインタフェースである。   The network interface 1519 is an interface for the broadband modem 1333, the connectivity 1321, etc., for example. The video interface 1520 is an interface for the connectivity 1321, the camera 1322, and the like, for example.

次に、このようなビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからトランスポートストリームを受信すると、そのトランスポートストリームは、ネットワークインタフェース1519を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、例えば、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてファイルデータに変換され、ビデオインタフェース1520を介して例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。   Next, an example of the operation of the video processor 1332 will be described. For example, when a transport stream is received from an external network via the connectivity 1321 or the broadband modem 1333, the transport stream is supplied to a multiplexing / demultiplexing unit (MUX DMUX) 1518 via the network interface 1519. Demultiplexed and decoded by codec engine 1516. For example, the image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and is connected to, for example, the connectivity 1321 through the display interface 1512. And the image is displayed on the monitor. Further, for example, image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by a multiplexing / demultiplexing unit (MUX DMUX) 1518, converted into file data, and video data The data is output to, for example, the connectivity 1321 through the interface 1520 and recorded on various recording media.

さらに、例えば、コネクティビティ1321等により図示せぬ記録媒体から読み出された、画像データが符号化された符号化データのファイルデータは、ビデオインタフェース1520を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてトランスポートストリームに変換され、ネットワークインタフェース1519を介して例えばコネクティビティ1321やブロードバンドモデム1333等に供給され図示せぬ他の装置に伝送される。   Further, for example, encoded data file data obtained by encoding image data read from a recording medium (not shown) by the connectivity 1321 or the like is transmitted via a video interface 1520 via a multiplexing / demultiplexing unit (MUX DMUX). ) 1518 to be demultiplexed and decoded by the codec engine 1516. Image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and supplied to, for example, the connectivity 1321 through the display interface 1512. The image is displayed on the monitor. Further, for example, image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by a multiplexing / demultiplexing unit (MUX DMUX) 1518, and converted into a transport stream, The data is supplied to, for example, the connectivity 1321 and the broadband modem 1333 via the network interface 1519 and transmitted to another device (not shown).

なお、ビデオプロセッサ1332内の各処理部の間での画像データやその他のデータの授受は、例えば、内部メモリ1515や外部メモリ1312を利用して行われる。また、パワーマネージメントモジュール1313は、例えば制御部1511への電力供給を制御する。   Note that transfer of image data and other data between the processing units in the video processor 1332 is performed using, for example, the internal memory 1515 and the external memory 1312. The power management module 1313 controls power supply to the control unit 1511, for example.

このように構成されるビデオプロセッサ1332に本技術を適用する場合、コーデックエンジン1516に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、コーデックエンジン1516が、上述した画像符号化装置100を実現する機能ブロックを有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図22を参照して上述した各実施の形態と同様の効果を得ることができる。   When the present technology is applied to the video processor 1332 configured as described above, the present technology according to each of the above-described embodiments may be applied to the codec engine 1516. That is, for example, the codec engine 1516 may have a functional block that realizes the above-described image encoding device 100. By doing so, the video processor 1332 can obtain the same effects as those of the embodiments described above with reference to FIGS. 1 to 22.

なお、コーデックエンジン1516において、本技術(すなわち、画像符号化装置100の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。   In the codec engine 1516, the present technology (that is, the function of the image encoding device 100) may be realized by hardware such as a logic circuit, or may be realized by software such as an embedded program. Alternatively, it may be realized by both of them.

以上にビデオプロセッサ1332の構成を2例示したが、ビデオプロセッサ1332の構成は任意であり、上述した2例以外のものであってもよい。また、このビデオプロセッサ1332は、1つの半導体チップとして構成されるようにしてもよいが、複数の半導体チップとして構成されるようにしてもよい。例えば、複数の半導体を積層する3次元積層LSIとしてもよい。また、複数のLSIにより実現されるようにしてもよい。   Two examples of the configuration of the video processor 1332 have been described above, but the configuration of the video processor 1332 is arbitrary and may be other than the two examples described above. The video processor 1332 may be configured as one semiconductor chip, but may be configured as a plurality of semiconductor chips. For example, a three-dimensional stacked LSI in which a plurality of semiconductors are stacked may be used. Further, it may be realized by a plurality of LSIs.

<装置への適用例>
ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図30)、携帯電話機920(図31)、記録再生装置940(図32)、撮像装置960(図33)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図22を参照して上述した各実施の形態と同様の効果を得ることができる。
<Application example to equipment>
Video set 1300 can be incorporated into various devices that process image data. For example, the video set 1300 can be incorporated in the television device 900 (FIG. 30), the mobile phone 920 (FIG. 31), the recording / reproducing device 940 (FIG. 32), the imaging device 960 (FIG. 33), or the like. By incorporating the video set 1300, the apparatus can obtain the same effects as those of the embodiments described above with reference to FIGS.

なお、上述したビデオセット1300の各構成の一部であっても、ビデオプロセッサ1332を含むものであれば、本技術を適用した構成として実施することができる。例えば、ビデオプロセッサ1332のみを本技術を適用したビデオプロセッサとして実施することができる。また、例えば、上述したように点線1341により示されるプロセッサやビデオモジュール1311等を、本技術を適用したプロセッサやモジュール等として実施することができる。さらに、例えば、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314を組み合わせ、本技術を適用したビデオユニット1361として実施することもできる。いずれの構成の場合であっても、図1乃至図22を参照して上述した各実施の形態と同様の効果を得ることができる。   Note that even a part of each configuration of the video set 1300 described above can be implemented as a configuration to which the present technology is applied as long as it includes the video processor 1332. For example, only the video processor 1332 can be implemented as a video processor to which the present technology is applied. Further, for example, as described above, the processor or the video module 1311 indicated by the dotted line 1341 can be implemented as a processor or a module to which the present technology is applied. Furthermore, for example, the video module 1311, the external memory 1312, the power management module 1313, and the front end module 1314 can be combined and implemented as a video unit 1361 to which the present technology is applied. Regardless of the configuration, the same effects as those of the embodiments described above with reference to FIGS. 1 to 22 can be obtained.

つまり、ビデオプロセッサ1332を含むものであればどのような構成であっても、ビデオセット1300の場合と同様に、画像データを処理する各種装置に組み込むことができる。例えば、ビデオプロセッサ1332、点線1341により示されるプロセッサ、ビデオモジュール1311、または、ビデオユニット1361を、テレビジョン装置900(図30)、携帯電話機920(図31)、記録再生装置940(図32)、撮像装置960(図33)等に組み込むことができる。そして、本技術を適用したいずれかの構成を組み込むことにより、その装置は、ビデオセット1300の場合と同様に、図1乃至図22を参照して上述した各実施の形態と同様の効果を得ることができる。   That is, any configuration including the video processor 1332 can be incorporated into various devices that process image data, as in the case of the video set 1300. For example, a video processor 1332, a processor indicated by a dotted line 1341, a video module 1311, or a video unit 1361, a television device 900 (FIG. 30), a mobile phone 920 (FIG. 31), a recording / playback device 940 (FIG. 32), It can be incorporated in an imaging device 960 (FIG. 33) or the like. Then, by incorporating any configuration to which the present technology is applied, the apparatus obtains the same effects as those of the embodiments described above with reference to FIGS. 1 to 22, as in the case of the video set 1300. be able to.

また、本明細書では、各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。   Further, in this specification, an example has been described in which various types of information are multiplexed into an encoded stream and transmitted from the encoding side to the decoding side. However, the method for transmitting such information is not limited to such an example. For example, these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream. Here, the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream). Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.

なお、本技術は以下のような構成も取ることができる。
(1) 符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定する設定部と、
前記設定部により設定された符号化テーブルを用いて、前記カレント係数データを符号化する符号化部と
を備える画像処理装置。
(2)
前記設定部は、前記周辺の係数データの符号化に用いられた符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
(1)に記載の画像処理装置。
(3) 前記設定部は、前記周辺の係数データの符号化に用いられた符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの右下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
(1)または(2)に記載の画像処理装置。
(4) 前記設定部は、前記周辺の係数データの符号化に用いられた符号化テーブルとして、前記カレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
(1)乃至(3)のいずれかに記載の画像処理装置。
(5) 前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが単数の場合、前記符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
(1)乃至(4)のいずれかに記載の画像処理装置。
(6) 前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の平均値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
(1)乃至(5)のいずれかに記載の画像処理装置。
(7) 前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の中央値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
(1)乃至(6)のいずれかに記載の画像処理装置。
(8) 前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのいずれかを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
(1)乃至(7)のいずれかに記載の画像処理装置。
(9) 前記設定部は、前記カレント係数データが、前記画像データの符号化単位における先頭の係数データである場合、前記カレント係数データの符号化に用いる符号化テーブルを、前記周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定する
(1)乃至(8)のいずれかに記載の画像処理装置。
(10) 前記設定部は、全ての係数データについて、前記カレント係数データの符号化に用いる符号化テーブルを、前記周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定する
(1)乃至(9)のいずれかに記載の画像処理装置。
(11) 前記設定部は、前記周辺の係数データの符号化に用いられた符号化テーブルとして、前記カレント係数データに隣接し、かつ、前記カレント係数データの符号化単位と異なる符号化単位に属する係数データの符号化に用いられた符号化テーブルに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
(10)に記載の画像処理装置。
(12) 符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた符号化テーブルに基づいて設定し、
設定された符号化テーブルを用いて、前記カレント係数データを符号化する
画像処理方法。
In addition, this technique can also take the following structures.
(1) An encoding table used for encoding current coefficient data that is a processing target of image data to be encoded is set based on an encoding table used for encoding coefficient data around the current coefficient data. A setting section to
An image processing apparatus comprising: an encoding unit that encodes the current coefficient data using an encoding table set by the setting unit.
(2)
The setting unit, as an encoding table used for encoding the peripheral coefficient data, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and the current coefficient data The image processing apparatus according to (1), wherein an encoding table used for encoding the current coefficient data is set based on an encoding table used for encoding the coefficient data adjacent thereto below.
(3) The setting unit includes, as an encoding table used for encoding the peripheral coefficient data, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and the current Based on the encoding table used for encoding the coefficient data adjacent to the coefficient data and the encoding table used for encoding the coefficient data adjacent to the lower right of the current coefficient data, the current The image processing apparatus according to (1) or (2), wherein an encoding table used for encoding coefficient data is set.
(4) The setting unit includes, as an encoding table used for encoding the peripheral coefficient data, an encoding table used for encoding coefficient data adjacent to the upper right of the current coefficient data, and the current The encoding table used for encoding the current coefficient data is set based on the encoding table used for encoding the coefficient data adjacent to the lower left of the coefficient data. (1) to (3) The image processing apparatus described.
(5) In the case where there is a single encoding table used for encoding the peripheral coefficient data that can be used, the setting unit uses the encoding table as an encoding table used for encoding the current coefficient data. The image processing device according to any one of (1) to (4) to be set.
(6) When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit performs encoding using an average value of the table numbers of the plurality of encoding tables as a table number. The image processing device according to any one of (1) to (5), wherein the table is set as an encoding table used for encoding the current coefficient data.
(7) When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit performs encoding using a median of table numbers of the plurality of encoding tables as a table number. The image processing device according to any one of (1) to (6), wherein the table is set as an encoding table used for encoding the current coefficient data.
(8) When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit converts any one of the plurality of encoding tables into the encoding of the current coefficient data. The image processing device according to any one of (1) to (7), which is set as an encoding table to be used.
(9) When the current coefficient data is the first coefficient data in the encoding unit of the image data, the setting unit uses an encoding table used for encoding the current coefficient data as the peripheral coefficient data. The image processing device according to any one of (1) to (8), which is set based on an encoding table used for encoding.
(10) The setting unit sets, for all coefficient data, an encoding table used for encoding the current coefficient data based on the encoding table used for encoding the peripheral coefficient data. The image processing device according to any one of (9) to (9).
(11) The setting unit, as an encoding table used for encoding the peripheral coefficient data, is adjacent to the current coefficient data and belongs to an encoding unit different from the encoding unit of the current coefficient data. The image processing apparatus according to (10), wherein an encoding table used for encoding the current coefficient data is set based on an encoding table used for encoding coefficient data.
(12) An encoding table used for encoding current coefficient data that is a processing target of image data to be encoded is set based on the encoding table used for encoding the coefficient data around the current coefficient data. And
An image processing method for encoding the current coefficient data using a set encoding table.

100 画像符号化装置, 115 可逆符号化部, 151 制御部, 152 テーブル選択部, 153 TR符号化部, 154 テーブル指定情報バッファ, 161 周辺履歴演算部, 162 テーブル処理部, 163 選択部, 164 ベースレベル決定部, 165 演算部, 166 演算部, 167 選択部, 171 シフト処理部, 172 テーブル処理部, 173 選択部, 174 ベースレベル決定部, 175 演算部, 176 演算部, 177 選択部, 190 TU, 191 符号化サブブロック, 211 選択部, 212 選択部   DESCRIPTION OF SYMBOLS 100 Image coding apparatus, 115 Lossless encoding part, 151 Control part, 152 Table selection part, 153 TR encoding part, 154 Table designation | designated information buffer, 161 Peripheral history calculation part, 162 Table processing part, 163 Selection part, 164 Base Level determination unit, 165 calculation unit, 166 calculation unit, 167 selection unit, 171 shift processing unit, 172 table processing unit, 173 selection unit, 174 base level determination unit, 175 calculation unit, 176 calculation unit, 177 selection unit, 190 TU , 191 encoding sub-block, 211 selection unit, 212 selection unit

Claims (12)

符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた複数の符号化テーブルに基づいて設定する設定部と、
前記設定部により設定された符号化テーブルを用いて、前記カレント係数データを符号化する符号化部と
を備える画像処理装置。
An encoding table used for encoding current coefficient data which is a processing target of image data to be encoded is set based on a plurality of encoding tables used for encoding the coefficient data around the current coefficient data. A setting section;
An image processing apparatus comprising: an encoding unit that encodes the current coefficient data using an encoding table set by the setting unit.
前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
請求項1に記載の画像処理装置。
The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and encoding of coefficient data adjacent below the current coefficient data. The image processing apparatus according to claim 1, wherein an encoding table used for encoding the current coefficient data is set based on the encoding table used in step 1.
前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの下に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの右下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
請求項1に記載の画像処理装置。
The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the right of the current coefficient data, and encoding of coefficient data adjacent below the current coefficient data. The encoding table used for encoding the current coefficient data is set based on the encoding table used for the current coefficient data and the encoding table used for encoding the coefficient data adjacent to the lower right of the current coefficient data. The image processing apparatus according to claim 1.
前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データの右上に隣接する係数データの符号化に用いられた符号化テーブルと、前記カレント係数データの左下に隣接する係数データの符号化に用いられた符号化テーブルとに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
請求項1に記載の画像処理装置。
The setting unit includes, as the plurality of encoding tables, an encoding table used for encoding coefficient data adjacent to the upper right of the current coefficient data, and encoding of coefficient data adjacent to the lower left of the current coefficient data. The image processing apparatus according to claim 1, wherein an encoding table used for encoding the current coefficient data is set based on the encoding table used in step 1.
前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが単数の場合、前記符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
請求項1に記載の画像処理装置。
The setting unit sets the encoding table as an encoding table used for encoding the current coefficient data when there is a single encoding table used for encoding the peripheral coefficient data that can be used. Item 8. The image processing apparatus according to Item 1.
前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の平均値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
請求項1に記載の画像処理装置。
The setting unit, when there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, an encoding table having an average value of table numbers of the plurality of encoding tables as a table number, The image processing apparatus according to claim 1, wherein the image processing apparatus is set as an encoding table used for encoding the current coefficient data.
前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのテーブル番号の中央値をテーブル番号とする符号化テーブルを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
請求項1に記載の画像処理装置。
When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit includes an encoding table having a table number as a median value of the table numbers of the plurality of encoding tables, The image processing apparatus according to claim 1, wherein the image processing apparatus is set as an encoding table used for encoding the current coefficient data.
前記設定部は、利用可能な前記周辺の係数データの符号化に用いられた符号化テーブルが複数の場合、複数の前記符号化テーブルのいずれかを、前記カレント係数データの符号化に用いる符号化テーブルとして設定する
請求項1に記載の画像処理装置。
When there are a plurality of encoding tables used for encoding the peripheral coefficient data that can be used, the setting unit uses any one of the plurality of encoding tables for encoding the current coefficient data. The image processing apparatus according to claim 1, wherein the image processing apparatus is set as a table.
前記設定部は、前記カレント係数データが、前記画像データの符号化単位における先頭の係数データである場合、前記カレント係数データの符号化に用いる符号化テーブルを、前記複数の符号化テーブルに基づいて設定する
請求項1に記載の画像処理装置。
When the current coefficient data is the first coefficient data in the encoding unit of the image data, the setting unit determines an encoding table used for encoding the current coefficient data based on the plurality of encoding tables. The image processing apparatus according to claim 1, which is set.
前記設定部は、全ての係数データについて、前記カレント係数データの符号化に用いる符号化テーブルを、前記複数の符号化テーブルに基づいて設定する
請求項1に記載の画像処理装置。
The image processing apparatus according to claim 1, wherein the setting unit sets, for all coefficient data, an encoding table used for encoding the current coefficient data based on the plurality of encoding tables.
前記設定部は、前記複数の符号化テーブルとして、前記カレント係数データに隣接し、かつ、前記カレント係数データの符号化単位と異なる符号化単位に属する係数データの符号化に用いられた符号化テーブルに基づいて、前記カレント係数データの符号化に用いる符号化テーブルを設定する
請求項10に記載の画像処理装置。
The setting unit, as the plurality of encoding tables, is an encoding table used for encoding coefficient data adjacent to the current coefficient data and belonging to an encoding unit different from the encoding unit of the current coefficient data. The image processing apparatus according to claim 10, wherein an encoding table used for encoding the current coefficient data is set on the basis of the current coefficient data.
符号化される画像データの処理対象であるカレント係数データの符号化に用いる符号化テーブルを、前記カレント係数データの周辺の係数データの符号化に用いられた複数の符号化テーブルに基づいて設定し、
設定された符号化テーブルを用いて、前記カレント係数データを符号化する
画像処理方法。
An encoding table used for encoding current coefficient data to be processed of image data to be encoded is set based on a plurality of encoding tables used for encoding the coefficient data around the current coefficient data. ,
An image processing method for encoding the current coefficient data using a set encoding table.
JP2014231546A 2014-11-14 2014-11-14 Image processing apparatus and method Expired - Fee Related JP6341067B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014231546A JP6341067B2 (en) 2014-11-14 2014-11-14 Image processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014231546A JP6341067B2 (en) 2014-11-14 2014-11-14 Image processing apparatus and method

Publications (2)

Publication Number Publication Date
JP2016096457A JP2016096457A (en) 2016-05-26
JP6341067B2 true JP6341067B2 (en) 2018-06-13

Family

ID=56072015

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014231546A Expired - Fee Related JP6341067B2 (en) 2014-11-14 2014-11-14 Image processing apparatus and method

Country Status (1)

Country Link
JP (1) JP6341067B2 (en)

Also Published As

Publication number Publication date
JP2016096457A (en) 2016-05-26

Similar Documents

Publication Publication Date Title
US10142634B2 (en) Image processing apparatus and method
JP6219823B2 (en) Image processing apparatus and method, and recording medium
JP6358475B2 (en) Image decoding apparatus and method, and image encoding apparatus and method
US10448057B2 (en) Image processing device and method
KR102338523B1 (en) Decoding device, decoding method, encoding device, and encoding method
WO2017126333A1 (en) Image processing device and method
JP6497562B2 (en) Image coding apparatus and method
JP6652126B2 (en) Image processing apparatus and method
WO2015137145A1 (en) Image coding device and method, and image decoding device and method
JPWO2015151791A1 (en) Image decoding apparatus and method
JP2015005899A (en) Decoder and decoding method, encoder and encoding method
JP2015076861A (en) Decoder, decoding method and encoder, and encoding method
JPWO2015064403A1 (en) Image processing apparatus and method
JPWO2015064402A1 (en) Image processing apparatus and method
WO2015056566A1 (en) Image processing device and method
WO2017073360A1 (en) Image processing device and method
KR102338766B1 (en) Image coding apparatus and method, and recording medium
JP6477930B2 (en) Encoding apparatus and encoding method
JP6341067B2 (en) Image processing apparatus and method
WO2014162916A1 (en) Image encoding apparatus and method, and image decoding apparatus and method
JP6402802B2 (en) Image processing apparatus and method, program, and recording medium
WO2017126331A1 (en) Image processing device and method
JPWO2015098563A1 (en) Image encoding apparatus and method, and image decoding apparatus and method
WO2014203762A1 (en) Decoding device, decoding method, encoding device, and encoding method
JP2015050738A (en) Decoder and decoding method, encoder and encoding method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171102

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171215

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180417

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180430

R151 Written notification of patent or utility model registration

Ref document number: 6341067

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees