JPWO2018142596A1 - Encoding apparatus, encoding method, and encoding program - Google Patents

Encoding apparatus, encoding method, and encoding program Download PDF

Info

Publication number
JPWO2018142596A1
JPWO2018142596A1 JP2017526986A JP2017526986A JPWO2018142596A1 JP WO2018142596 A1 JPWO2018142596 A1 JP WO2018142596A1 JP 2017526986 A JP2017526986 A JP 2017526986A JP 2017526986 A JP2017526986 A JP 2017526986A JP WO2018142596 A1 JPWO2018142596 A1 JP WO2018142596A1
Authority
JP
Japan
Prior art keywords
encoding
prediction
unit
variable length
motion compensation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017526986A
Other languages
Japanese (ja)
Inventor
西川 博文
博文 西川
尚吾 清水
尚吾 清水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2018142596A1 publication Critical patent/JPWO2018142596A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding

Abstract

動き補償予測部が、画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、動き補償予測処理に用いられた予測情報(24)を出力する。変換符号化部が、画像フレームと予測フレームとの差分を符号化し、符号化データ(25)として出力する。可変長符号化部(141)が、可変長符号を用いて符号化データ(25)を符号化することにより、符号化データ(25)を可変長符号データ(27)として圧縮する。そして、付加制御部(142)が、可変長符号データ(27)に予測情報(24)を付加する。The motion compensation prediction unit performs a motion compensation prediction process on the image frame and outputs a prediction frame, and also outputs prediction information (24) used for the motion compensation prediction process. The transform encoding unit encodes the difference between the image frame and the prediction frame and outputs it as encoded data (25). The variable length encoding unit (141) encodes the encoded data (25) using the variable length code, thereby compressing the encoded data (25) as the variable length code data (27). Then, the addition control unit (142) adds the prediction information (24) to the variable length code data (27).

Description

本発明は、符号化装置、符号化方法および符号化プログラムに関する。   The present invention relates to an encoding device, an encoding method, and an encoding program.

画像処理を行う際の基本的な情報の一つにオプティカルフローがある。オプティカルフローは画像上での見かけの動きと定義されている。オプティカルフローの検出手法としては、勾配法といった手法が存在する。画像処理の対象となる映像データは、データ量の削減の観点から圧縮して扱うことが一般的である。近年は圧縮方式としてMPEG−2、MPEG−4、AVC/H.264、およびHEVC/H.265といったMPEG方式の国際標準方式が幅広く利用されている。MPEG方式は、圧縮過程において時間方向の相関を削減するため動き補償予測を行う。この動き補償予測処理はオプティカルフローの検出手法に類似している。動き補償予測処理の結果として得られる動きベクトルは、オプティカルフローの代用として利用されることもある。動きベクトルは圧縮過程で取得可能な情報であり、画像処理のために必要な動きにかかわる情報を新たに生成する必要が無い。よって、動きベクトルの取得は、オプティカルフローの算出と比較して、演算処理が少なく、画像処理を低演算処理で実施することを可能にする。
特許文献1には、動きベクトルをオプティカルフローの代用とするだけではなく、画像処理のより具体的な例として、オブジェクト位置を特定する方法が開示されている。
One of basic information for image processing is optical flow. Optical flow is defined as apparent movement on the image. As a method for detecting an optical flow, there is a method such as a gradient method. In general, video data to be subjected to image processing is handled by being compressed from the viewpoint of reducing the amount of data. In recent years, MPEG-2, MPEG-4, AVC / H. H.264, and HEVC / H. An international standard system of MPEG such as H.265 is widely used. The MPEG method performs motion compensation prediction in order to reduce the correlation in the time direction during the compression process. This motion compensation prediction process is similar to the optical flow detection method. The motion vector obtained as a result of the motion compensation prediction process may be used as a substitute for the optical flow. The motion vector is information that can be acquired in the compression process, and there is no need to newly generate information related to motion necessary for image processing. Therefore, the acquisition of the motion vector requires less arithmetic processing than the calculation of the optical flow, and enables image processing to be performed with low arithmetic processing.
Patent Document 1 discloses a method for specifying an object position as a more specific example of image processing in addition to substituting a motion vector for an optical flow.

特開2007−214886号公報JP 2007-214886 A

動き補償予測処理は、与えられた条件内で圧縮性能を最大にすることを目的としているので、映像内の動きを正しく追従することができない場合がある。具体例としては、動きの探索範囲が映像内の動き量より小さい場合には、動き補償結果としては、動き無し、あるいは、探索範囲の最大値を示す可能性もある。また、動き補償予測には、全探索、階層探索、およびテレスコピック探索といった複数の動き探索方法が存在する。複数の動き探索方法のうち、どの動き探索方法を利用するかよって、得られる動きベクトルの特性が異なる。よって、画像処理において、動きベクトルの生成方法を知ることは、画像処理の精度を向上させるために必要である。
しかしながら、従来技術では、動き補償予測処理を用いた符号化処理により映像データを符号化した場合、動きベクトルの生成方法といった動き補償予測処理に用いられた動き探索処理に関わる予測情報が不明であるという課題がある。
The motion compensated prediction process is aimed at maximizing the compression performance within a given condition, and may not be able to correctly follow the motion in the video. As a specific example, when the motion search range is smaller than the motion amount in the video, the motion compensation result may indicate no motion or may indicate the maximum value of the search range. In motion compensation prediction, there are a plurality of motion search methods such as full search, hierarchical search, and telescopic search. The characteristics of the obtained motion vector differ depending on which of the plurality of motion search methods is used. Therefore, in image processing, it is necessary to know the method of generating a motion vector in order to improve the accuracy of image processing.
However, in the related art, when video data is encoded by an encoding process using a motion compensation prediction process, prediction information related to a motion search process used in the motion compensation prediction process such as a motion vector generation method is unknown. There is a problem.

本発明は、動き補償予測処理を用いた符号化処理により映像データを符号化した場合でも、符号化したデータから動き補償予測処理に用いられた動き探索処理に関わる予測情報を抽出できることを目的とする。   An object of the present invention is to extract prediction information related to a motion search process used for a motion compensation prediction process from encoded data even when video data is encoded by an encoding process using a motion compensation prediction process. To do.

本発明に係る符号化装置は、
画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、前記動き補償予測処理に用いられた予測情報を出力する動き補償予測部と、
前記画像フレームと前記予測フレームとの差分を符号化し、符号化した前記差分を符号化データとして出力する変換符号化部と、
可変長符号を用いて前記符号化データを符号化することにより、前記符号化データを可変長符号データとして圧縮する可変長符号化部と、
前記可変長符号データに前記予測情報を付加する付加制御部とを備えた。
The encoding device according to the present invention is:
A motion compensation prediction unit that performs motion compensation prediction processing on an image frame and outputs a prediction frame, and outputs prediction information used in the motion compensation prediction processing;
A transform encoding unit that encodes a difference between the image frame and the prediction frame and outputs the encoded difference as encoded data;
A variable length encoding unit that compresses the encoded data as variable length code data by encoding the encoded data using a variable length code;
And an addition control unit that adds the prediction information to the variable-length code data.

本発明に係る符号化装置では、動き補償予測部が、画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、動き補償予測処理に用いられた予測情報を出力する。変換符号化部が、画像フレームと予測フレームとの差分を符号化し、符号化データとして出力する。可変長符号化部が、可変長符号を用いて前記符号化データを符号化することにより、符号化データを可変長符号データとして圧縮する。そして、付加制御部が、可変長符号データに予測情報を付加する。よって、本発明に係る符号化装置によれば、動き補償予測処理を用いた符号化処理により映像データを符号化した場合でも、符号化したデータから動き補償予測処理に用いられた予測情報を抽出できるという効果を奏する。   In the encoding device according to the present invention, the motion compensation prediction unit performs motion compensation prediction processing on an image frame and outputs a prediction frame, and also outputs prediction information used in the motion compensation prediction processing. The transform encoding unit encodes the difference between the image frame and the predicted frame and outputs the encoded data as encoded data. A variable length encoding unit compresses the encoded data as variable length code data by encoding the encoded data using a variable length code. Then, the addition control unit adds the prediction information to the variable length code data. Therefore, according to the encoding device of the present invention, even when video data is encoded by an encoding process using a motion compensation prediction process, prediction information used for the motion compensation prediction process is extracted from the encoded data. There is an effect that can be done.

実施の形態1に係る符号化装置100の構成図。1 is a configuration diagram of an encoding apparatus 100 according to Embodiment 1. FIG. 実施の形態1に係るエントロピー符号化部140の構成図。FIG. 3 is a configuration diagram of an entropy encoding unit 140 according to Embodiment 1. 実施の形態1に係る符号化方法610および符号化プログラム620による符号化処理S100を示すフロー図。FIG. 6 is a flowchart showing an encoding process S100 by the encoding method 610 and the encoding program 620 according to the first embodiment. 実施の形態1に係る圧縮データ23の構成図。3 is a configuration diagram of compressed data 23 according to Embodiment 1. FIG. 実施の形態1に係る付加制御処理S42の詳細動作を示すフロー図。FIG. 6 is a flowchart showing a detailed operation of additional control processing S42 according to the first embodiment. 実施の形態1の変形例に係る符号化装置100の構成図。FIG. 6 is a configuration diagram of an encoding apparatus 100 according to a modification of the first embodiment. 実施の形態2に係る予測情報24に含まれる探索範囲情報242の例を示す図。The figure which shows the example of the search range information 242 contained in the prediction information 24 concerning Embodiment 2. FIG. は全探索の方法を示す模式図。Is a schematic diagram showing a method of full search. はステップ探索の方法を示す模式図。Is a schematic diagram showing a method of step search. はダイアモンド探索の方法を示す模式図。Is a schematic diagram showing a diamond search method. はヘキサゴン探索の方法を示す模式図。Is a schematic diagram showing a method of searching for a hexagon. は全探索の方法を示すフロー図。Is a flow diagram showing a method of full search. はステップ探索の方法を示すフロー図。FIG. 3 is a flowchart showing a step search method. はダイアモンド探索の方法を示すフロー図。Is a flow diagram showing a diamond search method. はヘキサゴン探索の方法を示すフロー図。Is a flowchart showing a method of searching for a hexagon.

以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In addition, the same code | symbol is attached | subjected to the part which is the same or it corresponds in each figure. In the description of the embodiments, the description of the same or corresponding parts will be omitted or simplified as appropriate.

実施の形態1.
***構成の説明***
図1は、本実施の形態に係る符号化装置100の構成図である。また、図2は、本実施の形態に係るエントロピー符号化部140の構成図である。図1および図2を用いて、本実施の形態に係る符号化装置100の構成について説明する。
図1に示すように、符号化装置100は、コンピュータである。符号化装置100は、符号化器ともいう。
符号化装置100は、プロセッサ910、記憶装置920、画像入力インタフェース930、出力インタフェース940、および通信装置950といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
Embodiment 1 FIG.
*** Explanation of configuration ***
FIG. 1 is a configuration diagram of an encoding apparatus 100 according to the present embodiment. FIG. 2 is a configuration diagram of the entropy encoding unit 140 according to the present embodiment. The configuration of encoding apparatus 100 according to the present embodiment will be described using FIG. 1 and FIG.
As shown in FIG. 1, the encoding apparatus 100 is a computer. The encoding device 100 is also referred to as an encoder.
The encoding device 100 includes hardware such as a processor 910, a storage device 920, an image input interface 930, an output interface 940, and a communication device 950. The storage device 920 includes a memory 921 and an auxiliary storage device 922.

符号化装置100は、機能構成として、動き補償予測部110と、減算部120と、変換符号化部130と、エントロピー符号化部140と、記憶部150とを備える。エントロピー符号化部140は、可変長符号化部141と、付加制御部142とを備える。また、付加制御部142は、多重化部421と、スイッチ部422と、多重化制御部423とを備える。
動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの機能は、ソフトウェアで実現される。
記憶部150は、メモリ921により実現される。また、記憶部150は、補助記憶装置922のみ、あるいは、メモリ921および補助記憶装置922で実現されてもよい。記憶部150の実現方法は任意である。
The encoding apparatus 100 includes a motion compensation prediction unit 110, a subtraction unit 120, a transform encoding unit 130, an entropy encoding unit 140, and a storage unit 150 as functional configurations. The entropy encoding unit 140 includes a variable length encoding unit 141 and an addition control unit 142. In addition, the addition control unit 142 includes a multiplexing unit 421, a switch unit 422, and a multiplexing control unit 423.
The functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 are realized by software.
The storage unit 150 is realized by the memory 921. In addition, the storage unit 150 may be realized only by the auxiliary storage device 922 or by the memory 921 and the auxiliary storage device 922. A method for realizing the storage unit 150 is arbitrary.

プロセッサ910は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。プロセッサ910は、演算処理を行うIC(Integrated Circuit)である。プロセッサ910の具体例は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。   The processor 910 is connected to other hardware via a signal line, and controls these other hardware. The processor 910 is an IC (Integrated Circuit) that performs arithmetic processing. Specific examples of the processor 910 are a CPU (Central Processing Unit), a DSP (Digital Signal Processor), and a GPU (Graphics Processing Unit).

メモリ921は、データを一時的に記憶する記憶装置である。メモリ921の具体例は、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)である。   The memory 921 is a storage device that temporarily stores data. Specific examples of the memory 921 are SRAM (Static Random Access Memory) and DRAM (Dynamic Random Access Memory).

補助記憶装置922は、データを保管する記憶装置である。補助記憶装置922の具体例は、HDD(Hard Disk Drive)である。また、補助記憶装置922は、SD(登録商標)(Secure Digital)メモリカード、CF(CompactFlash)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disk)といった可搬記憶媒体であってもよい。   The auxiliary storage device 922 is a storage device that stores data. A specific example of the auxiliary storage device 922 is an HDD (Hard Disk Drive). The auxiliary storage device 922 includes an SD (registered trademark) (Secure Digital) memory card, a CF (Compact Flash), a NAND flash, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, a DVD (Digital Versatile Disk), and the like. It may be a portable storage medium.

画像入力インタフェース930は、映像を撮影する撮像装置といった入力装置と接続されるポートである。画像入力インタフェース930は、具体的には、USB(Universal Serial Bus)端子である。なお、画像入力インタフェース930は、LAN(Local Area Network)と接続されるポートであってもよい。映像データを構成する複数の画像フレームの各画像フレーム21は、画像入力インタフェース930を介して、符号化装置100に入力される。   The image input interface 930 is a port connected to an input device such as an imaging device that captures video. Specifically, the image input interface 930 is a USB (Universal Serial Bus) terminal. Note that the image input interface 930 may be a port connected to a LAN (Local Area Network). Each image frame 21 of the plurality of image frames constituting the video data is input to the encoding device 100 via the image input interface 930.

出力インタフェース940は、ディスプレイといった表示機器のケーブルが接続されるポートである。出力インタフェース940は、具体的には、USB端子またはHDMI(登録商標)(High Definition Multimedia Interface)端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。なお、符号化装置100は、出力インタフェース940を備えていなくても構わない。   The output interface 940 is a port to which a cable of a display device such as a display is connected. Specifically, the output interface 940 is a USB terminal or a HDMI (registered trademark) (High Definition Multimedia Interface) terminal. The display is specifically an LCD (Liquid Crystal Display). Note that the encoding apparatus 100 may not include the output interface 940.

通信装置950は、ネットワークを介して他の装置と通信を行う。
通信装置950は、レシーバとトランスミッタとを有する。通信装置950は、有線または無線で、LAN、インターネット、あるいは電話回線といった通信網に接続している。通信装置950は、具体的には、通信チップまたはNIC(Network Interface Card)である。通信装置950は、データを通信する通信部である。レシーバは、データを受信する受信部である。トランスミッタは、データを送信する送信部である。符号化装置100により生成された圧縮データ23は、通信装置950を介して、ネットワークに送出される。
The communication device 950 communicates with other devices via a network.
The communication device 950 includes a receiver and a transmitter. The communication device 950 is wired or wirelessly connected to a communication network such as a LAN, the Internet, or a telephone line. The communication device 950 is specifically a communication chip or a NIC (Network Interface Card). The communication device 950 is a communication unit that communicates data. The receiver is a receiving unit that receives data. The transmitter is a transmission unit that transmits data. The compressed data 23 generated by the encoding device 100 is sent to the network via the communication device 950.

補助記憶装置922には、動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの機能を実現するプログラムが記憶されている。動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの機能を実現するプログラムを符号化プログラム620ともいう。このプログラムは、メモリ921にロードされ、プロセッサ910に読み込まれ、プロセッサ910によって実行される。また、補助記憶装置922はOSを記憶している。補助記憶装置922にされているOSの少なくとも一部がメモリ921にロードされる。プロセッサ910はOSを実行しながら、符号化プログラム620を実行する。   The auxiliary storage device 922 stores programs that realize the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142. Yes. A program that realizes the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 is also referred to as a coding program 620. This program is loaded into the memory 921, read into the processor 910, and executed by the processor 910. The auxiliary storage device 922 stores an OS. At least a part of the OS stored in the auxiliary storage device 922 is loaded into the memory 921. The processor 910 executes the encoding program 620 while executing the OS.

符号化装置100は、1つのプロセッサ910のみを備えていてもよいし、複数のプロセッサ910を備えていてもよい。複数のプロセッサ910が、動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの機能を実現するプログラムを連携して実行してもよい。   The encoding apparatus 100 may include only one processor 910 or may include a plurality of processors 910. The plurality of processors 910 cooperate to execute programs that realize the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142. May be.

動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの処理の結果を示す情報、データ、信号値、および変数値は、符号化装置100の補助記憶装置922、メモリ921、または、プロセッサ910内のレジスタまたはキャッシュメモリに記憶される。   Information, data, signal values, and variable values indicating the results of the processes of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 are: The data is stored in the auxiliary storage device 922 of the encoding device 100, the memory 921, or a register or cache memory in the processor 910.

動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142のそれぞれの機能を実現するプログラムは、可搬記録媒体に記憶されてもよい。可搬記録媒体とは、具体的には、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disc)、あるいはSDカードといったメモリカードである。
なお、符号化プログラムプロダクトとは、符号化プログラム620が記録された記憶媒体および記憶装置である。情報提供プログラムプロダクトは、外観に関わらず、コンピュータ読み取り可能なプログラムをロードしているものを指す。
Programs that realize the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 may be stored in a portable recording medium. Good. Specifically, the portable recording medium is a memory card such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, a DVD (Digital Versatile Disc), or an SD card.
The encoding program product is a storage medium and a storage device in which the encoding program 620 is recorded. An information providing program product refers to a program loaded with a computer-readable program regardless of its appearance.

***動作の説明***
図3を用いて、本実施の形態に係る符号化方法610および符号化プログラム620による符号化処理S100について説明する。
符号化処理S100は、動き補償予測処理S10と、減算処理S20と、変換符号化処理S30と、エントロピー符号化処理S40とを有する。
*** Explanation of operation ***
The encoding process S100 by the encoding method 610 and the encoding program 620 according to the present embodiment will be described using FIG.
The encoding process S100 includes a motion compensation prediction process S10, a subtraction process S20, a transform encoding process S30, and an entropy encoding process S40.

まず、ステップS101において、画像入力インタフェース930は、映像を構成する複数の画像フレームのうちの1つの画像フレーム21を取得する。画像入力インタフェース930は、画像フレーム21を動き補償予測部110と減算部120とに出力する。   First, in step S101, the image input interface 930 acquires one image frame 21 among a plurality of image frames constituting a video. The image input interface 930 outputs the image frame 21 to the motion compensation prediction unit 110 and the subtraction unit 120.

<動き補償予測処理S10>
次に、動き補償予測部110は、動き補償予測処理S10を実行する。動き補償予測部110は、画像フレーム21に対して動き補償予測処理を実施して予測フレーム22を出力するとともに、動き補償予測処理に用いられた予測情報24を出力する。動き補償予測部110は、MC(Motion Compensation)ともいう。
具体的には、ステップS102において、動き補償予測部110は、画像フレーム21と、既に変換符号化部130により符号化された画像フレームとを用いて、予測フレーム22を生成する。
また、ステップ103において、動き補償予測部110は、画像フレーム21に対して動き補償予測処理を実施する際に使用される情報を予測情報24として出力する。予測情報24は、予測パラメータともいう。動き補償予測部110は、動き補償予測処理に用いられた探索方法を表す探索方法情報241と、動き補償予測処理に用いられた探索範囲を表す探索範囲情報242とを含む予測情報24を出力する。探索方法は、動き補償がどのような補償方法で行われたのかを示す。また、探索範囲は、動きの探索の範囲はどの程度なのかを示す。
より具体的には、動き補償予測部110は、メモリ921に格納された過去の画像フレームと、画像入力インタフェース930を経由して入力された画像フレーム21とをプロセッサ910に取り込む。動き補償予測部110は、過去の画像フレームと画像フレーム21とを小ブロック単位で比較し、類似する画像位置を検索し、類似する位置を示す座標を含む予測情報24を出力する。また、動き補償予測部110は、類似映像である予測フレーム22をメモリ921に書き出す。
<Motion compensation prediction process S10>
Next, the motion compensation prediction unit 110 executes a motion compensation prediction process S10. The motion compensation prediction unit 110 performs a motion compensation prediction process on the image frame 21 to output a prediction frame 22 and outputs prediction information 24 used for the motion compensation prediction process. The motion compensation prediction unit 110 is also referred to as MC (Motion Compensation).
Specifically, in step S <b> 102, the motion compensation prediction unit 110 generates the prediction frame 22 using the image frame 21 and the image frame that has already been encoded by the transform encoding unit 130.
In step 103, the motion compensation prediction unit 110 outputs information used when the motion compensation prediction process is performed on the image frame 21 as the prediction information 24. The prediction information 24 is also referred to as a prediction parameter. The motion compensation prediction unit 110 outputs prediction information 24 including search method information 241 indicating a search method used in the motion compensation prediction process and search range information 242 indicating a search range used in the motion compensation prediction process. . The search method indicates what compensation method is used for motion compensation. The search range indicates how much the search range for motion is.
More specifically, the motion compensation prediction unit 110 captures the past image frames stored in the memory 921 and the image frames 21 input via the image input interface 930 into the processor 910. The motion compensation prediction unit 110 compares the past image frame and the image frame 21 in units of small blocks, searches for similar image positions, and outputs prediction information 24 including coordinates indicating the similar positions. In addition, the motion compensation prediction unit 110 writes the prediction frame 22 that is a similar video in the memory 921.

<減算処理S20>
ステップS104において、減算部120は、画像フレーム21と予測フレーム22との差分をとる。減算部120は、差分器ともいう。具体的には、減算部120は、動き補償予測部110により生成された予測フレーム22と画像フレーム21との差分をとり、その差分26を変換符号化部130に出力する。より具体的には、減算部120は、メモリ921に格納された予測フレーム22をプロセッサ910に取り込み、画像入力インタフェース930を経由して入力された画像フレーム21と予測フレーム22とをプロセッサ910により減算処理し、減算処理の結果である差分26をメモリ921に格納する。
<Subtraction process S20>
In step S <b> 104, the subtraction unit 120 calculates a difference between the image frame 21 and the predicted frame 22. The subtraction unit 120 is also referred to as a differentiator. Specifically, the subtraction unit 120 takes the difference between the prediction frame 22 generated by the motion compensation prediction unit 110 and the image frame 21 and outputs the difference 26 to the transform coding unit 130. More specifically, the subtraction unit 120 takes the predicted frame 22 stored in the memory 921 into the processor 910 and subtracts the image frame 21 and the predicted frame 22 input via the image input interface 930 by the processor 910. The difference 26 that is the result of the subtraction process is stored in the memory 921.

<変換符号化処理S30>
次に、変換符号化部130は、画像フレーム21と予測フレーム22との差分26を符号化し、符号化した差分26を符号化データ25として出力する。
具体的には、ステップS105において、変換符号化部130は、減算部120から出力された差分26を取得し、差分26に対して離散コサイン変換(DCT:Discrete Cosine Transform)を行う。変換符号化部130は、直交変換および量子化といったDCTを実施する。変換符号化部130は、DCTが施された差分26を符号化データ25として出力する。より具体的には、変換符号化部130は、メモリ921に格納された差分26をプロセッサ910に取り込み、DCTを実施した結果を符号化データ25としてメモリ921に書き出す。
<Transform coding process S30>
Next, the transform encoding unit 130 encodes the difference 26 between the image frame 21 and the predicted frame 22 and outputs the encoded difference 26 as encoded data 25.
Specifically, in step S <b> 105, the transform encoding unit 130 acquires the difference 26 output from the subtracting unit 120, and performs discrete cosine transform (DCT: Discrete Cosine Transform) on the difference 26. The transform coding unit 130 performs DCT such as orthogonal transform and quantization. The transform encoding unit 130 outputs the difference 26 subjected to DCT as encoded data 25. More specifically, the transform encoding unit 130 takes the difference 26 stored in the memory 921 into the processor 910 and writes the result of the DCT as encoded data 25 to the memory 921.

<エントロピー符号化処理S40>
エントロピー符号化部140は、可変長符号化処理S41と、付加制御処理S42とを有する。エントロピー符号化部140は、VLC(Variable−Length Coding)ともいう。
<Entropy encoding process S40>
The entropy encoding unit 140 includes a variable length encoding process S41 and an addition control process S42. The entropy encoding unit 140 is also referred to as VLC (Variable-Length Coding).

<可変長符号化処理S41>
ステップS106において、エントロピー符号化部140の可変長符号化部141は、可変長符号化処理S41を実行する。可変長符号化処理S41は、可変長符号化部141が、可変長符号を用いて符号化データ25を符号化することにより、符号化データ25を可変長符号データ27として圧縮する処理である。具体的には、可変長符号化部141は、変換符号化部130によりメモリ921に書き出された符号化データ25をプロセッサ910に取り込み、可変長符号を用いて符号化する可変長符号処理を実施し、結果を可変長符号データ27としてメモリ921に書き出す。
<Variable length encoding process S41>
In step S106, the variable length coding unit 141 of the entropy coding unit 140 executes a variable length coding process S41. The variable length encoding process S41 is a process in which the variable length encoding unit 141 compresses the encoded data 25 as the variable length code data 27 by encoding the encoded data 25 using the variable length code. Specifically, the variable length encoding unit 141 performs variable length code processing in which the encoded data 25 written to the memory 921 by the transform encoding unit 130 is taken into the processor 910 and encoded using the variable length code. The result is written in the memory 921 as the variable length code data 27.

<付加制御処理S42>
ステップS107において、エントロピー符号化部140の付加制御部142は、付加制御処理S42を実行する。付加制御処理S42は、付加制御部142が、可変長符号データ27に予測情報24を付加する処理である。付加制御部142が、予測情報24を付加した可変長符号データ27を圧縮データ23として出力する。具体的には、付加制御部142は、可変長符号データ27についてデータの区切り位置を検出し、検出した区切り位置に予測情報24を付加する。付加制御部142は、可変長符号データ27のうちのシーケンス層に予測情報24のうちの探索方法情報241を付加し、可変長符号データ27のうちのフレーム層に予測情報24のうちの探索範囲情報242を付加する。
<Additional control processing S42>
In step S107, the addition control unit 142 of the entropy encoding unit 140 executes an addition control process S42. The addition control process S42 is a process in which the addition control unit 142 adds the prediction information 24 to the variable length code data 27. The addition control unit 142 outputs the variable length code data 27 to which the prediction information 24 is added as the compressed data 23. Specifically, the addition control unit 142 detects the data break position for the variable-length code data 27 and adds the prediction information 24 to the detected break position. The addition control unit 142 adds the search method information 241 of the prediction information 24 to the sequence layer of the variable length code data 27, and the search range of the prediction information 24 to the frame layer of the variable length code data 27. Information 242 is added.

図4を用いて、本実施の形態に係る圧縮データ23について説明する。
圧縮データ23は、シーケンス層RS、フレーム層RF、およびマクロブロック層RMBを有する。付加制御部142は、圧縮データ23となる可変長符号データ27について、データの区切り位置Pを検出し、検出した区切り位置Pに予測情報24を付加する。付加制御部142は、可変長符号データ27のうちのシーケンス層RSに予測情報24のうちの探索方法情報241を付加し、可変長符号データ27のうちのフレーム層RFに予測情報24のうちの探索範囲情報242を付加する。
このように、付加制御部142は、シーケンス層RSと呼ばれる圧縮データ全体にかかわる情報を格納する層には探索方法を格納する。また、付加制御部142は、フレーム層RFと呼ばれる各画像にかかわる情報を格納する層には探索範囲を格納する。
MPEG方式の圧縮データには、ユーザが自由に利用可能なデータ領域がある。このデータ領域は、ユーザエリアあるいはSEI(Supplemental Enhancement Information)と呼ばれる。付加制御部142は、予測情報24をこのデータ領域に格納する。これらのユーザに解放されたデータ領域は、受信側で解釈不可能な場合はデータを読み飛ばすことが規定されており、画像処理を行わない装置に、これらの情報が多重された圧縮データ23が入力されても、正しく画像を復号することが可能である。よって、本実施の形態に係る符号化装置100は、既存の装置との互換性を完全に確保することが可能である。
The compressed data 23 according to the present embodiment will be described with reference to FIG.
The compressed data 23 has a sequence layer RS, a frame layer RF, and a macroblock layer RMB. The addition control unit 142 detects a data delimiter position P for the variable-length code data 27 serving as the compressed data 23 and adds the prediction information 24 to the detected delimiter position P. The addition control unit 142 adds the search method information 241 of the prediction information 24 to the sequence layer RS of the variable length code data 27 and adds the search method information 241 of the prediction information 24 to the frame layer RF of the variable length code data 27. Search range information 242 is added.
Thus, the addition control unit 142 stores the search method in a layer that stores information related to the entire compressed data called the sequence layer RS. Further, the addition control unit 142 stores a search range in a layer that stores information related to each image called a frame layer RF.
MPEG compressed data has a data area that can be freely used by a user. This data area is called a user area or SEI (Supplemental Enhancement Information). The addition control unit 142 stores the prediction information 24 in this data area. The data area released to these users is defined as skipping data when it cannot be interpreted on the receiving side, and the compressed data 23 in which these pieces of information are multiplexed is stored in a device that does not perform image processing. Even if input, it is possible to correctly decode the image. Therefore, encoding apparatus 100 according to the present embodiment can completely ensure compatibility with existing apparatuses.

図2および図5を用いて、本実施の形態に係る付加制御処理S42の詳細動作について説明する。
エントロピー符号化部140の付加制御部142は、多重化部421と、スイッチ部422と、多重化制御部423とを備える。スイッチ部422は、多重化制御部423の制御に従って、付加制御部142に対する入力を切り替える。予測情報24の種別には、圧縮データ全体にかかわるパラメータと、映像を構成する複数の画像フレームの各画像フレームにかかわるパラメータとが存在する。多重化制御部423は、予測情報24の種別に応じてスイッチ部422を制御し、多重化部421に可変長符号データ27と予測情報24とを送り込む。
The detailed operation of the additional control process S42 according to the present embodiment will be described with reference to FIGS.
The addition control unit 142 of the entropy encoding unit 140 includes a multiplexing unit 421, a switch unit 422, and a multiplexing control unit 423. The switch unit 422 switches the input to the addition control unit 142 according to the control of the multiplexing control unit 423. The type of the prediction information 24 includes a parameter related to the entire compressed data and a parameter related to each image frame of a plurality of image frames constituting the video. The multiplexing control unit 423 controls the switch unit 422 according to the type of the prediction information 24, and sends the variable length code data 27 and the prediction information 24 to the multiplexing unit 421.

図5を用いて、付加制御処理S42の詳細動作について、さらに説明する。
ステップS421において、多重化制御部423は、スイッチ部422の入力を可変長符号化部141に切り替える。
ステップS422において、多重化制御部423は、可変長符号化部141からシーケンス層RSの可変長符号データ27を多重化部421に出力させる。
ステップS423において、多重化制御部423は、シーケンス層RSの可変長符号データ27の出力が終了したかを判定する。出力が終了していなければ、処理はステップS422に戻る。出力が終了していれば、処理はステップS424に進む。
ステップS424において、多重化制御部423は、スイッチ部422の入力を予測情報24に切り替える。
ステップS425において、多重化制御部423は、予測情報24のうちシーケンス層RSにかかわる予測情報24を多重化部421に出力させる。シーケンス層RSにかかわる予測情報24とは、探索方法情報241である。
ステップS426において、多重化制御部423は、予測情報24のうちシーケンス層RSにかかわる予測情報24の出力が終了したかを判定する。出力が終了していなければ、処理はステップS425に戻る。出力が終了していれば、処理はステップS427に進む。
The detailed operation of the addition control process S42 will be further described with reference to FIG.
In step S421, the multiplexing control unit 423 switches the input of the switch unit 422 to the variable length coding unit 141.
In step S422, the multiplexing control unit 423 causes the variable length coding unit 141 to output the variable length code data 27 of the sequence layer RS to the multiplexing unit 421.
In step S423, the multiplexing control unit 423 determines whether the output of the variable length code data 27 of the sequence layer RS has been completed. If the output has not ended, the process returns to step S422. If the output has been completed, the process proceeds to step S424.
In step S424, the multiplexing control unit 423 switches the input of the switch unit 422 to the prediction information 24.
In step S425, the multiplexing control unit 423 causes the multiplexing unit 421 to output the prediction information 24 related to the sequence layer RS among the prediction information 24. The prediction information 24 related to the sequence layer RS is search method information 241.
In step S426, the multiplexing control unit 423 determines whether the output of the prediction information 24 related to the sequence layer RS in the prediction information 24 is completed. If the output has not ended, the process returns to step S425. If the output has been completed, the process proceeds to step S427.

ステップS427において、多重化制御部423は、スイッチ部422の入力を可変長符号化部141に切り替える。
ステップS428において、多重化制御部423は、可変長符号化部141からフレーム層RFの可変長符号データ27を多重化部421に出力させる。
ステップS429において、多重化制御部423は、フレーム層RFの可変長符号データ27の出力が終了したかを判定する。出力が終了していなければ、処理はステップS427に戻る。出力が終了していれば、処理はステップS430に進む。
ステップS430において、多重化制御部423は、スイッチ部422の入力を予測情報24に切り替える。
ステップS431において、多重化制御部423は、予測情報24のうちフレーム層RFにかかわる予測情報24を多重化部421に出力させる。フレーム層RFにかかわる予測情報24とは、探索範囲情報242である。
ステップS432において、多重化制御部423は、予測情報24のうちフレーム層RFにかかわる予測情報24の出力が終了したかを判定する。出力が終了していなければ、処理はステップS431に戻る。出力が終了していれば、処理はステップS433に進む。
ステップS433において、多重化制御部423は、スイッチ部422の入力を可変長符号化部141に切り替え、マクロブロック層RMBの可変長符号データ27をすべて多重化部431に出力させる。
多重化部431は、スイッチ部422を介して入力される可変長符号データ27と予測情報24とを多重化し、圧縮データ23として出力する。具体的には、多重化部431は、圧縮データ23をメモリ921に書き出す。通信装置950は、多重化部421によりメモリ921に書き出された圧縮データ23をネットワークに送出する。あるいは、出力インタフェース940が、圧縮データ23をディスプレイといった出力装置に出力してもよい。多重化部421は、MUX(multiplexer)ともいう。
In step S427, the multiplexing control unit 423 switches the input of the switch unit 422 to the variable length coding unit 141.
In step S428, the multiplexing control unit 423 causes the variable length coding unit 141 to output the variable length code data 27 of the frame layer RF to the multiplexing unit 421.
In step S429, the multiplexing control unit 423 determines whether the output of the variable length code data 27 of the frame layer RF has been completed. If the output has not ended, the process returns to step S427. If the output has been completed, the process proceeds to step S430.
In step S430, the multiplexing control unit 423 switches the input of the switch unit 422 to the prediction information 24.
In step S431, the multiplexing control unit 423 causes the multiplexing unit 421 to output the prediction information 24 related to the frame layer RF among the prediction information 24. The prediction information 24 related to the frame layer RF is search range information 242.
In step S432, the multiplexing control unit 423 determines whether or not the output of the prediction information 24 related to the frame layer RF in the prediction information 24 is completed. If the output has not ended, the process returns to step S431. If the output has been completed, the process proceeds to step S433.
In step S433, the multiplexing control unit 423 switches the input of the switch unit 422 to the variable length coding unit 141, and causes the multiplexing unit 431 to output all the variable length code data 27 of the macroblock layer RMB.
The multiplexing unit 431 multiplexes the variable length code data 27 and the prediction information 24 input via the switch unit 422 and outputs the result as compressed data 23. Specifically, the multiplexing unit 431 writes the compressed data 23 to the memory 921. The communication device 950 sends the compressed data 23 written in the memory 921 by the multiplexing unit 421 to the network. Alternatively, the output interface 940 may output the compressed data 23 to an output device such as a display. The multiplexing unit 421 is also referred to as a MUX (multiplexer).

***他の構成***
本実施の形態では、動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142の機能がソフトウェアで実現される。しかし、変形例として、動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142の機能がハードウェアで実現されてもよい。
*** Other configurations ***
In the present embodiment, the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 are realized by software. However, as a modification, the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 may be realized by hardware.

図6を用いて、本実施の形態の変形例に係る符号化装置100の構成について説明する。
図6に示すように、符号化装置100は、処理回路909、画像入力インタフェース930、出力インタフェース940、および通信装置950といったハードウェアを備える。
The configuration of encoding apparatus 100 according to a modification of the present embodiment will be described using FIG.
As illustrated in FIG. 6, the encoding device 100 includes hardware such as a processing circuit 909, an image input interface 930, an output interface 940, and a communication device 950.

処理回路909は、上述した動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142の機能および記憶部150を実現する専用の電子回路である。処理回路909は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、または、FPGAである。GAは、Gate Arrayの略語である。ASICは、Application Specific Integrated Circuitの略語である。FPGAは、Field−Programmable Gate Arrayの略語である。   The processing circuit 909 is a dedicated electronic device that realizes the functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 and the storage unit 150 described above. Circuit. Specifically, the processing circuit 909 is a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA, an ASIC, or an FPGA. GA is an abbreviation for Gate Array. ASIC is an abbreviation for Application Specific Integrated Circuit. FPGA is an abbreviation for Field-Programmable Gate Array.

動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142の機能は、1つの処理回路909で実現されてもよいし、複数の処理回路909に分散して実現されてもよい。   The functions of the motion compensation prediction unit 110, the subtraction unit 120, the transform coding unit 130, the variable length coding unit 141, and the addition control unit 142 may be realized by one processing circuit 909, or a plurality of functions may be realized. The processing circuit 909 may be distributed and realized.

別の変形例として、各装置の各部の機能がソフトウェアとハードウェアの組合せで実現されてもよい。すなわち、符号化装置100の一部の機能が専用のハードウェアで実現され、残りの機能がソフトウェアで実現されてもよい。   As another modification, the function of each unit of each device may be realized by a combination of software and hardware. That is, some functions of the encoding device 100 may be realized by dedicated hardware, and the remaining functions may be realized by software.

符号化装置100のプロセッサ910、記憶装置920、および、処理回路909を、総称して「プロセッシングサーキットリ」という。つまり、符号化装置100の構成が図1および図6のいずれに示した構成であっても、動き補償予測部110と、減算部120と、変換符号化部130と、可変長符号化部141と、付加制御部142の機能および記憶部150は、プロセッシングサーキットリにより実現される。   The processor 910, the storage device 920, and the processing circuit 909 of the encoding apparatus 100 are collectively referred to as “processing circuit”. That is, regardless of the configuration of the encoding device 100 shown in FIG. 1 or FIG. 6, the motion compensation prediction unit 110, the subtraction unit 120, the transform encoding unit 130, and the variable length encoding unit 141. The function of the additional control unit 142 and the storage unit 150 are realized by a processing circuit.

「部」を「工程」または「手順」または「処理」に読み替えてもよい。また、「部」の機能をファームウェアで実現してもよい。   “Part” may be read as “process” or “procedure” or “processing”. Further, the function of “unit” may be realized by firmware.

***本実施の形態の効果の説明***
本実施の形態に係る符号化装置100によれば、圧縮データには、動き補償にかかわるパラメータ、具体的には動き補償方法および動き探索範囲が含まれることになる。通常の符号化器には、予測情報が圧縮データには含まれておらず、圧縮データを受信する画像処理を行う装置側では、動き補償がどのような補償方法で行われたのか、また、動きの探索の範囲はどの程度なのかを知るすべがなかった。これらの予測情報を知りえないということは、オブジェクトの動きを検出する画像処理を行う際に、最大の動き量を想定することができず、画像処理の精度が規定できない。すなわち、精度の悪い画像処理になる。本実施の形態に係る符号化装置100によれば、画像処理を行う装置側に動き補償にかかわるパラメータ、具体的には動き補償の探索方法および動き探索範囲を通知することができる。よって、本実施の形態に係る符号化装置100によれば、探索範囲内での動き推定に限定して精度を向上させることができる。また、本実施の形態に係る符号化装置100によれば、動きの探索方法に応じて動き情報を補正することが可能になり、画像処理の効率を向上させることが可能になる。また、本実施の形態に係る符号化装置100によれば、メーカ間で異なる探索方法あるいは探索範囲を持つ符号化器が存在した場合でも、本パラメータをもとにした正規化を行うことで、符号化器のメーカ間差異を最小限に抑えることが可能になる。これは、マルチベンダーシステムを構築する際に極めて重要な意味を持つ。
*** Explanation of effects of this embodiment ***
According to encoding apparatus 100 according to the present embodiment, compressed data includes parameters related to motion compensation, specifically, a motion compensation method and a motion search range. In a normal encoder, prediction information is not included in the compressed data, and on the device side that performs the image processing for receiving the compressed data, what compensation method is used for the motion compensation, There was no way to know what the range of motion search was. The fact that these pieces of prediction information cannot be known means that the maximum amount of motion cannot be assumed when performing image processing for detecting the motion of an object, and the accuracy of image processing cannot be defined. That is, the image processing is inaccurate. According to encoding apparatus 100 according to the present embodiment, it is possible to notify a parameter relating to motion compensation, specifically, a motion compensation search method and a motion search range, to the image processing apparatus side. Therefore, according to coding apparatus 100 according to the present embodiment, it is possible to improve accuracy by limiting to motion estimation within the search range. Also, according to encoding apparatus 100 according to the present embodiment, motion information can be corrected according to a motion search method, and the efficiency of image processing can be improved. Further, according to the encoding device 100 according to the present embodiment, even when there are encoders having different search methods or search ranges among manufacturers, by performing normalization based on this parameter, It is possible to minimize differences between encoder manufacturers. This is extremely important when building a multi-vendor system.

通常、MPEG方式を使用する映像圧縮方式では、画像を細かなマクロブロックに分割し、マクロブロック毎に圧縮した際の情報量が小さくなるような制御が行われる。本制御の中で、対象マクロブロックと類似した領域を探す動き補償処理が行われる。この動き補償処理の結果、動きベクトルが生成され、動きの追従という意味でオプティカルフローに類似した情報となる。しかし、映像圧縮方式では、圧縮した後の情報量を評価尺度として、動きベクトルを使うか否かの判断が行われる。もし動きベクトルを使わないほうが情報量が小さくなると判断できれば、対象のマクロブロックには動きベクトルが付与されない。しかし、本実施の形態に係る符号化装置100によれば、画面のすべてのエリアの動きベクトルを得ることができる。   Usually, in the video compression method using the MPEG method, control is performed so that the amount of information when an image is divided into fine macro blocks and compressed for each macro block is reduced. In this control, motion compensation processing for searching for a region similar to the target macroblock is performed. As a result of this motion compensation processing, a motion vector is generated and becomes information similar to the optical flow in the sense of motion tracking. However, in the video compression method, it is determined whether to use a motion vector by using the amount of information after compression as an evaluation scale. If it can be determined that the amount of information is smaller without using a motion vector, no motion vector is assigned to the target macroblock. However, according to coding apparatus 100 according to the present embodiment, it is possible to obtain motion vectors for all areas of the screen.

本実施の形態に係る符号化装置100によれば、動き補償予測で得られた動きベクトルを活用する画像処理の処理精度の向上および安定化を図ることができる。また、本実施の形態に係る符号化装置100によれば、生成された圧縮データが既存の受信装置の動作に影響を与えないようにすることができる。すなわち、本実施の形態に係る符号化装置100によって生成された圧縮データが、MPEG方式に完全に準拠していることを意味する。   According to encoding apparatus 100 according to the present embodiment, it is possible to improve and stabilize the processing accuracy of image processing that uses motion vectors obtained by motion compensation prediction. Furthermore, according to encoding apparatus 100 according to the present embodiment, it is possible to prevent the generated compressed data from affecting the operation of an existing receiving apparatus. That is, it means that the compressed data generated by the encoding apparatus 100 according to the present embodiment is completely compliant with the MPEG system.

なお、本実施の形態に係る符号化装置は、予測情報を除き、MPEG/H261といった符号化の国際標準方式に準ずる動作を行う。この場合、エントロピー符号化部は図2で示す構成のうち、可変長符号化部141と多重化部421の2要素のみからなる構成となり、可変長符号化部141と多重化部421とは直結される。
上述した国際標準に準ずる符号化装置は、ISO/MPEGあるいはITU/H261で代表される映像国際符号化方式に従う動作を行う。H.261/MPEG1/MPEG2符号化方式のアルゴリズムは、たとえば、安田他「MPEG/マルチメディア符号化の国際標準」(1994)、藤原他「最新MPEG教科書)(1994)、電子情報通信学会「知識ベース」 11章国際標準といった文献に記されている。
Note that the encoding apparatus according to the present embodiment performs an operation according to an encoding international standard system such as MPEG / H261 except for prediction information. In this case, the entropy encoding unit is configured by only two elements of the variable length encoding unit 141 and the multiplexing unit 421 in the configuration shown in FIG. 2, and the variable length encoding unit 141 and the multiplexing unit 421 are directly connected. Is done.
An encoding device that conforms to the international standard described above performs an operation in accordance with a video international encoding system represented by ISO / MPEG or ITU / H261. H. For example, Yasuda et al. "International standard for MPEG / multimedia coding" (1994), Fujiwara et al. "Latest MPEG textbook" (1994), IEICE "Knowledge Base". It is described in literature such as Chapter 11 International Standard.

実施の形態2.
本実施の形態では、実施の形態1の説明に追加する事項について説明する。特に、予測情報24の具体例について説明する。
図7は、本実施の形態に係る予測情報24に含まれる探索範囲の例を示す図である。
図7では、カメラメーカ毎に動き補償の探索範囲が大きく異なることを示している。たとえば、カメラメーカAのカメラは、探索範囲が水平方向±80画素であり、垂直方向が±40画素である。このとき、探索範囲情報242は、水平方向±80画素および垂直方向±40画素という情報である。カメラメーカBのカメラは、水平方向±40画素であり、垂直方向±80画素である。このとき、探索範囲情報242は、水平方向±40画素および垂直方向±80画素という情報である。付加制御部142は、これらの探索範囲を表す探索範囲情報242を、実施の形態1で説明したフレーム層RFの探索範囲情報242として圧縮データ23に埋め込む。
Embodiment 2. FIG.
In this embodiment, matters to be added to the description of Embodiment 1 will be described. In particular, a specific example of the prediction information 24 will be described.
FIG. 7 is a diagram illustrating an example of a search range included in the prediction information 24 according to the present embodiment.
FIG. 7 shows that the search range for motion compensation differs greatly for each camera manufacturer. For example, the camera of camera manufacturer A has a search range of ± 80 pixels in the horizontal direction and ± 40 pixels in the vertical direction. At this time, the search range information 242 is information of ± 80 pixels in the horizontal direction and ± 40 pixels in the vertical direction. The camera of camera manufacturer B has ± 40 pixels in the horizontal direction and ± 80 pixels in the vertical direction. At this time, the search range information 242 is information of ± 40 pixels in the horizontal direction and ± 80 pixels in the vertical direction. The addition control unit 142 embeds the search range information 242 representing these search ranges in the compressed data 23 as the search range information 242 of the frame layer RF described in the first embodiment.

図8から図11は、それぞれが本実施の形態に係る予測情報24に含まれる探索方法情報が表す探索方法の例を示す図である。図8から図11に示すように、探索方法には、複数の探索方法が存在する。図8は全探索の方法を示す模式図である。図9はステップ探索の方法を示す模式図である。ステップ探索は、多段探索ともいう。図10はダイアモンド探索の方法を示す模式図である。図11はヘキサゴン探索の方法を示す模式図である。
また、図12のステップS201からステップS211は全探索の方法を示すフロー図である。図13のステップS301からステップS313はステップ探索の方法を示すフロー図である。図14のステップS401からステップS406はダイアモンド探索の方法を示すフロー図である。図15のステップS501からステップS506はヘキサゴン探索の方法を示すフロー図である。
全探索はすべてのエリアを探索することでその探索範囲内で最適な動き情報が生成可能である。ステップ探索は間引きながら探索を行うことで処理量の削減が可能である。ダイアモンド探索は探索を開始する開始ポイントの周辺から徐々に探索範囲を広げていく方法である。ヘキサゴン探索は探索精度と探索処理削減を両立した方法である。
探索範囲方法241の具体例には、これらの探索方法の識別子がある。これらの探索方法に識別子を付与し、付加制御部142は、その識別子を実施の形態1で示したシーケンス層の探索方法情報241として圧縮データ23に埋め込む。
8 to 11 are diagrams illustrating examples of search methods represented by search method information included in the prediction information 24 according to the present embodiment. As shown in FIGS. 8 to 11, there are a plurality of search methods as search methods. FIG. 8 is a schematic diagram showing a full search method. FIG. 9 is a schematic diagram showing a step search method. Step search is also referred to as multi-stage search. FIG. 10 is a schematic diagram showing a diamond search method. FIG. 11 is a schematic diagram showing a hexagon search method.
In addition, steps S201 to S211 in FIG. 12 are flowcharts showing a full search method. Steps S301 to S313 in FIG. 13 are flowcharts showing a step search method. Steps S401 to S406 in FIG. 14 are flowcharts showing a diamond search method. Steps S501 to S506 in FIG. 15 are flowcharts showing a hexagon search method.
In the full search, optimal motion information can be generated within the search range by searching all areas. The amount of processing can be reduced by performing the step search while thinning out. Diamond search is a method of gradually expanding the search range from the vicinity of the starting point where the search is started. Hexagon search is a method that achieves both search accuracy and search processing reduction.
Specific examples of the search range method 241 include identifiers of these search methods. Identifiers are assigned to these search methods, and the addition control unit 142 embeds the identifiers in the compressed data 23 as the sequence layer search method information 241 described in the first embodiment.

なお、予測情報の探索範囲の一例として矩形の探索範囲を示したが、必ずしも矩形である必要はなく、円あるいは楕円の範囲や、矩形の組み合わせの形状をもつ探索範囲もあり得る。これらの図形を定義する情報を探索範囲の情報として埋め込むことが可能であることは言うまでもない。また、動き探索方法の一例として、特定の方法一つの例を示したが、必ずしも単一の方法である必要はなく、複数の探索方法の組み合わせの場合でも、それらの情報を埋め込むことが可能であることは言うまでもない。   Although a rectangular search range is shown as an example of the search range of the prediction information, the search range is not necessarily a rectangle, and there may be a search range having a circle or ellipse range or a combination of rectangles. It goes without saying that information defining these figures can be embedded as search range information. Also, as an example of the motion search method, an example of a specific method has been shown, but it is not necessarily a single method, and it is possible to embed such information even in the case of a combination of a plurality of search methods. Needless to say.

実施の形態1および2では、符号化装置100の各部が独立した機能ブロックとして符号化装置100を構成している。しかし、上述した実施の形態のような構成でなくてもよく、符号化装置100の構成は任意である。符号化装置100の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、任意である。これらの機能ブロックを、他のどのような組み合わせ、あるいは任意のブロック構成で、符号化装置100を構成しても構わない。
また、符号化装置100は、1つの装置でなく、複数の装置から構成されたシステムでもよい。
In Embodiments 1 and 2, each unit of encoding apparatus 100 constitutes encoding apparatus 100 as an independent functional block. However, the configuration may not be the same as that in the above-described embodiment, and the configuration of the encoding device 100 is arbitrary. The functional blocks of the encoding device 100 are arbitrary as long as the functions described in the above-described embodiments can be realized. These functional blocks may be configured in any other combination or arbitrary block configuration in the encoding apparatus 100.
Also, the encoding apparatus 100 may be a system configured from a plurality of apparatuses instead of a single apparatus.

実施の形態1および2について説明したが、これらの実施の形態のうち、複数の部分を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、1つの部分を実施しても構わない。その他、これらの実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明、その適用物および用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
Although Embodiments 1 and 2 have been described, a combination of a plurality of portions may be implemented among these embodiments. Alternatively, one part of these embodiments may be implemented. In addition, these embodiments may be implemented in any combination as a whole or in part.
The above-described embodiments are essentially preferable examples, and are not intended to limit the scope of the present invention, its application, and uses, and various modifications can be made as necessary. .

21 画像フレーム、22 予測フレーム、23 圧縮データ、24 予測情報、241 探索方法情報、242 探索範囲情報、25 符号化データ、26 差分、27 可変長符号データ、100 符号化装置、110 動き補償予測部、120 減算部、130 変換符号化部、140 エントロピー符号化部、141 可変長符号化部、142 付加制御部、421 多重化部、422 スイッチ部、423 多重化制御部、150 記憶部、909 処理回路、910 プロセッサ、920 記憶装置、921 メモリ、922 補助記憶装置、930 画像入力インタフェース、940 出力インタフェース、950 通信装置、610 符号化方法、620 符号化プログラム、S100 符号化処理、S10 動き補償予測処理、S20 減算処理、S30 変換符号化処理、S40 エントロピー符号化処理、S41 可変長符号化処理、S42 付加制御処理、RS シーケンス層、RF フレーム層、RMB マクロブロック層、P 区切り位置。   21 picture frame, 22 prediction frame, 23 compressed data, 24 prediction information, 241 search method information, 242 search range information, 25 encoded data, 26 difference, 27 variable length code data, 100 encoding device, 110 motion compensation prediction unit , 120 subtracting unit, 130 transform coding unit, 140 entropy coding unit, 141 variable length coding unit, 142 additional control unit, 421 multiplexing unit, 422 switch unit, 423 multiplexing control unit, 150 storage unit, 909 processing Circuit, 910 processor, 920 storage device, 921 memory, 922 auxiliary storage device, 930 image input interface, 940 output interface, 950 communication device, 610 encoding method, 620 encoding program, S100 encoding process, S10 motion compensation prediction process , S20 Subtraction process S30 transform encoding processing, S40 entropy coding process, S41 variable length coding process, S42 addition control process, RS sequence layer, RF frame layer, RMB macroblock layer, P-separated position.

Claims (6)

画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、前記動き補償予測処理に用いられた予測情報を出力する動き補償予測部と、
前記画像フレームと前記予測フレームとの差分を符号化し、符号化した前記差分を符号化データとして出力する変換符号化部と、
可変長符号を用いて前記符号化データを符号化することにより、前記符号化データを可変長符号データとして圧縮する可変長符号化部と、
前記可変長符号データに前記予測情報を付加する付加制御部と
を備えた符号化装置。
A motion compensation prediction unit that performs motion compensation prediction processing on an image frame and outputs a prediction frame, and outputs prediction information used in the motion compensation prediction processing;
A transform encoding unit that encodes a difference between the image frame and the prediction frame and outputs the encoded difference as encoded data;
A variable length encoding unit that compresses the encoded data as variable length code data by encoding the encoded data using a variable length code;
An encoding apparatus comprising: an addition control unit that adds the prediction information to the variable-length code data.
前記付加制御部は、
前記可変長符号データについてデータの区切り位置を検出し、検出した前記区切り位置に前記予測情報を付加する請求項1に記載の符号化装置。
The additional controller is
The encoding apparatus according to claim 1, wherein a data delimiter position is detected for the variable-length code data, and the prediction information is added to the detected delimiter position.
前記動き補償予測部は、
前記動き補償予測処理に用いられた探索方法を表す探索方法情報と、前記動き補償予測処理に用いられた探索範囲を表す探索範囲情報とを含む前記予測情報を出力する請求項1または2に記載の符号化装置。
The motion compensation prediction unit
3. The prediction information including search method information representing a search method used for the motion compensation prediction process and search range information representing a search range used for the motion compensation prediction process is output. Encoding device.
前記付加制御部は、
前記可変長符号データのうちのシーケンス層に前記予測情報のうちの前記探索方法情報を付加し、前記可変長符号データのうちのフレーム層に前記予測情報のうちの前記探索範囲情報を付加する請求項3に記載の符号化装置。
The additional controller is
The search method information of the prediction information is added to a sequence layer of the variable length code data, and the search range information of the prediction information is added to a frame layer of the variable length code data. Item 4. The encoding device according to Item 3.
動き補償予測部が、画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、前記動き補償予測処理に用いられた予測情報を出力し、
変換符号化部が、前記画像フレームと前記予測フレームとの差分を符号化し、符号化した前記差分を符号化データとして出力し、
可変長符号化部が、可変長符号を用いて前記符号化データを符号化することにより、前記符号化データを可変長符号データとして圧縮し、
付加制御部が、前記可変長符号データに前記予測情報を付加する符号化方法。
The motion compensation prediction unit performs a motion compensation prediction process on the image frame and outputs a prediction frame, and outputs prediction information used in the motion compensation prediction process,
The transform encoding unit encodes the difference between the image frame and the prediction frame, and outputs the encoded difference as encoded data.
A variable length encoding unit compresses the encoded data as variable length code data by encoding the encoded data using a variable length code,
An encoding method in which an addition control unit adds the prediction information to the variable-length code data.
画像フレームに対して動き補償予測処理を実施して予測フレームを出力するとともに、前記動き補償予測処理に用いられた予測情報を出力する動き補償予測処理と、
前記画像フレームと前記予測フレームとの差分を符号化し、符号化した前記差分を符号化データとして出力する変換符号化処理と、
可変長符号を用いて前記符号化データを符号化することにより、前記符号化データを可変長符号データとして圧縮する可変長符号化部と、
前記可変長符号データに前記予測情報を付加する付加制御部と
をコンピュータに実行させる符号化プログラム。
A motion compensated prediction process for outputting the prediction information used in the motion compensated prediction process while performing a motion compensated prediction process on the image frame and outputting a predicted frame;
A transform encoding process that encodes a difference between the image frame and the prediction frame and outputs the encoded difference as encoded data;
A variable length encoding unit that compresses the encoded data as variable length code data by encoding the encoded data using a variable length code;
An encoding program that causes a computer to execute an addition control unit that adds the prediction information to the variable-length code data.
JP2017526986A 2017-02-03 2017-02-03 Encoding apparatus, encoding method, and encoding program Pending JPWO2018142596A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/004106 WO2018142596A1 (en) 2017-02-03 2017-02-03 Encoding device, encoding method, and encoding program

Publications (1)

Publication Number Publication Date
JPWO2018142596A1 true JPWO2018142596A1 (en) 2019-02-07

Family

ID=63039459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017526986A Pending JPWO2018142596A1 (en) 2017-02-03 2017-02-03 Encoding apparatus, encoding method, and encoding program

Country Status (2)

Country Link
JP (1) JPWO2018142596A1 (en)
WO (1) WO2018142596A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0955941A (en) * 1995-08-16 1997-02-25 Sony Corp Picture encoding method/device and recording device for picture encoding data
JPH10327415A (en) * 1997-05-22 1998-12-08 Mitsubishi Electric Corp Motion vector detector
JPH11220655A (en) * 1997-10-03 1999-08-10 Sony Corp Coded stream splicing device and method therefor, coded stream generating device and method therefor and information processor and method therefor
JP2005094803A (en) * 2004-11-15 2005-04-07 Toshiba Corp Apparatus and method for motion image coding
JP2010154490A (en) * 2008-11-26 2010-07-08 Hitachi Ltd Video decoding method
JP2010171480A (en) * 2009-01-20 2010-08-05 Panasonic Corp Image decoding device, image encoding device, image decoding method, and image encoding method
JP2011172243A (en) * 2000-04-14 2011-09-01 Sony Corp Decoder and decode information processing method
JP2014049846A (en) * 2012-08-30 2014-03-17 Renesas Electronics Corp Moving image decoding device and operation method thereof

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0955941A (en) * 1995-08-16 1997-02-25 Sony Corp Picture encoding method/device and recording device for picture encoding data
JPH10327415A (en) * 1997-05-22 1998-12-08 Mitsubishi Electric Corp Motion vector detector
JPH11220655A (en) * 1997-10-03 1999-08-10 Sony Corp Coded stream splicing device and method therefor, coded stream generating device and method therefor and information processor and method therefor
JP2011172243A (en) * 2000-04-14 2011-09-01 Sony Corp Decoder and decode information processing method
JP2005094803A (en) * 2004-11-15 2005-04-07 Toshiba Corp Apparatus and method for motion image coding
JP2010154490A (en) * 2008-11-26 2010-07-08 Hitachi Ltd Video decoding method
JP2010171480A (en) * 2009-01-20 2010-08-05 Panasonic Corp Image decoding device, image encoding device, image decoding method, and image encoding method
JP2014049846A (en) * 2012-08-30 2014-03-17 Renesas Electronics Corp Moving image decoding device and operation method thereof

Also Published As

Publication number Publication date
WO2018142596A1 (en) 2018-08-09

Similar Documents

Publication Publication Date Title
CN110024398B (en) Local hash-based motion estimation for screen teleprocessing scenes
KR101836027B1 (en) Constant quality video coding
JP4574090B2 (en) Movie data converter and movie data conversion program
WO2020108033A1 (en) Transcoding method, transcoding device, and computer readable storage medium
JPWO2010100672A1 (en) Compressed video encoding device, compressed video decoding device, compressed video encoding method, and compressed video decoding method
JP2008017305A (en) Image processor and processing method
JP4157234B2 (en) Moving object detection device in moving images
CN115361553A (en) Decoding method, encoding method and related device
KR20130130695A (en) Method and system for encoding video frames using a plurality of processors
WO2005084034A1 (en) Image compression for transmission over mobile networks
JP2004336529A (en) Motion picture data processing apparatus, method and program
US20140153642A1 (en) Image coding apparatus, image coding method, and program
JP2004241869A (en) Watermark embedding and image compressing section
JP5256496B2 (en) Image processing system, image processing method, and program
US20090285285A1 (en) Information processing apparatus and inter-prediction mode determination method
JP2010074241A (en) Moving picture reproducing apparatus, moving picture reproducing method, program, and recording medium
JP2008278000A (en) Moving image decoding device, decoding program, and decoding method
US20220132137A1 (en) Image encoding/decoding method and device using symmetric motion vector difference (smvd), and method for transmitting bitstream
WO2018142596A1 (en) Encoding device, encoding method, and encoding program
WO2013031071A1 (en) Moving image decoding apparatus, moving image decoding method, and integrated circuit
US20090080520A1 (en) Video decoding apparatus and video decoding method
JP6453652B2 (en) Video transmission system
JP2010258576A (en) Scene change detector, and video recorder
JP2012015914A (en) Video processing unit, video processing method and computer program
US10021397B2 (en) Semiconductor device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170518

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170518

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170829

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170919