JP2006238372A - Coder and coding method, decoder and decoding method, image processing system and image processing method, recording medium, and program - Google Patents
Coder and coding method, decoder and decoding method, image processing system and image processing method, recording medium, and program Download PDFInfo
- Publication number
- JP2006238372A JP2006238372A JP2005053877A JP2005053877A JP2006238372A JP 2006238372 A JP2006238372 A JP 2006238372A JP 2005053877 A JP2005053877 A JP 2005053877A JP 2005053877 A JP2005053877 A JP 2005053877A JP 2006238372 A JP2006238372 A JP 2006238372A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- processing
- data
- unit
- prediction
- 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.)
- Granted
Links
Images
Landscapes
- Television Signal Processing For Recording (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、符号化装置および方法、復号装置および方法、画像処理システムおよび画像処理方法、記録媒体、並びにプログラムに関し、特に、アナログ信号を利用した不正コピーを防止する符号化装置および方法、復号装置および方法、画像処理システムおよび画像処理方法、記録媒体、並びにプログラムに関する。 The present invention relates to an encoding apparatus and method, a decoding apparatus and method, an image processing system and an image processing method, a recording medium, and a program, and in particular, an encoding apparatus and method for preventing unauthorized copying using an analog signal, and a decoding apparatus. And an image processing system, an image processing method, a recording medium, and a program.
近年、テレビ番組などのコンテンツをデジタル信号でHD(ハードディスク)やDVD(Digital Versatile Disk)などの記録媒体に記録するデジタル記録再生装置が急速に普及してきている。 2. Description of the Related Art In recent years, digital recording / reproducing apparatuses that record content such as television programs on a recording medium such as an HD (Hard Disk) or DVD (Digital Versatile Disk) as a digital signal have been rapidly spread.
HDやDVDを記録媒体とするデジタル記録再生装置の普及により、視聴者であるユーザが、テレビ番組などを高品質に記録媒体に記録することが容易にできるようになった。 With the widespread use of digital recording / playback devices that use HD and DVD as recording media, users as viewers can easily record television programs and the like on recording media with high quality.
一方で、デジタル記録再生装置の普及により、DVDなどで販売されている、テレビ番組や映画などのコンテンツを不正にコピーすることが容易になるという側面もある。 On the other hand, with the widespread use of digital recording and playback devices, there is also an aspect that it becomes easier to illegally copy content such as TV programs and movies sold on DVDs.
図1は、記録媒体に記録されたコンテンツを再生し、ディスプレイに表示させるとともに、再生されたコンテンツを他の記録媒体に記録する画像処理システムの構成の一例を示している。 FIG. 1 shows an example of the configuration of an image processing system that reproduces content recorded on a recording medium, displays the content on a display, and records the reproduced content on another recording medium.
図1において、画像処理システム1は、DVDなどの光ディスク等の記録媒体に記録されたコンテンツの画像信号を再生し、その結果得られるアナログ画像信号を出力する再生装置11、再生装置11が出力するアナログ画像信号を画像として表示するディスプレイ12、および、再生装置11が出力するアナログ画像信号を利用して、光ディスク等の記録媒体に記録する記録装置13により構成されている。
In FIG. 1, an
再生装置11は、復号部21とD/A(Digital-to-Analog)変換部22とから構成されている。復号部21は、図示せぬ記録媒体から読み出した符号化デジタル画像信号を復号し、その結果得られるデジタル画像信号をD/A変換部22に供給する。D/A変換部22は、復号部21から供給されたデジタル画像信号をアナログ信号に変換し、その結果得られるアナログ画像信号を出力する。
The playback device 11 includes a
ディスプレイ12は、例えばCRT(Cathode-Ray Tube)やLCD(Liquid Crystal Display)等で構成され、D/A変換部22からのアナログ画像信号を画像として表示する。これにより、ユーザは、記録媒体に記録されている画像信号に対応する画像を見ることができる。
The
また、再生装置11から出力されたアナログ画像信号は、記録装置13にも供給(入力)される。
The analog image signal output from the playback device 11 is also supplied (input) to the
記録装置13は、A/D(Analog-to-Digital)変換部31、符号化部32、および記録部33により構成され、入力されるアナログ画像信号を光ディスク等の図示せぬ記録媒体に記録する。
The
A/D変換部31には、再生装置11が出力するアナログ画像信号が入力される。A/D変換部31は、入力されたアナログ画像信号をデジタル信号に変換し、その結果得られるデジタル画像信号を符号化部32に供給する。符号化部32は、A/D変換部31からのデジタル画像信号を符号化し、その結果得られる符号化デジタル画像信号を記録部33に供給する。記録部33は、符号化デジタル画像信号を記録媒体に記録する。
An analog image signal output from the playback device 11 is input to the A /
以上のように構成される画像処理システム1では、再生装置11から出力されたアナログ画像信号を利用して、再生された記録媒体と異なる記録媒体に画像信号を記録することができる。即ち、再生装置11が出力するアナログ画像信号を利用して、コンテンツ(の画像信号)が、不正にコピーされるおそれがある。
In the
従来、このようなアナログ画像信号を利用した不正コピーを防止するために、著作権保護がなされている場合には、アナログ画像信号をスクランブル処理して出力する、あるいはアナログ画像信号の出力を禁止することが提案されている。 Conventionally, in order to prevent unauthorized copying using such an analog image signal, when copyright protection is provided, the analog image signal is scrambled and output, or the output of the analog image signal is prohibited. It has been proposed.
しかしながら、アナログ画像信号をスクランブル処理して出力する、あるいはアナログ画像信号の出力を禁止する方法では、不正コピーを防止することはできるが、ディスプレイ12に正常な画像を表示することもできなくなるという問題が発生する。
However, the method of scrambling and outputting an analog image signal or prohibiting the output of an analog image signal can prevent unauthorized copying, but cannot display a normal image on the
そこで、画像が表示されなくなることや回路規模の増大を招くこと等の不都合を発生することなく、アナログ画像信号を利用した不正コピーを防止する手法が、本出願人により提案されている(例えば、特許文献1参照)。 Therefore, a method for preventing unauthorized copying using an analog image signal without causing inconvenience such as an image not being displayed or an increase in circuit scale has been proposed by the present applicant (for example, Patent Document 1).
特許文献1に記載の手法では、アナログ画像信号をA/D変換することにより得られるデジタル画像信号の位相ずれに着目し、そのデジタル画像信号に対して位相ずれに着目した符号化を施すことによってコピー前の画像の質を落とさずに、良好な質を維持したままでのコピーを不可能とし、これによりアナログ画像信号を利用した不正コピーを防止するが、デジタルコンテンツの流通が一般的になっている近年においては、上述のように不正コピーを防止するための別の手法の提案が要請されている。
In the method described in
本発明は、このような状況に鑑みてなされたものであり、アナログ信号を利用した不正コピーを防止することができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to prevent unauthorized copying using an analog signal.
本発明の符号化装置は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出手段と、抽出手段により抽出された画素を用いて、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出手段とを備えることを特徴とする。 The encoding apparatus according to the present invention estimates a first motion vector in a processing block having a plurality of processing regions in first frame data and second frame data different from the first frame data. A motion vector estimating means; a second motion vector estimating means for estimating a second motion vector different from the first motion vector in the processing block; and a first motion vector and a second motion for each processing region. Corresponding to the processing region based on one of the motion vector selection means for selecting one of the vectors, and the first motion vector and the second motion vector selected by the motion vector selection means A first motion vector selected by the motion vector selection means using the extraction means for extracting the pixels to be extracted and the pixels extracted by the extraction means When anda predictive data calculation means for calculating a prediction data for predicting the pixel data of the processing region corresponding to either one of the second motion vector.
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理手段を更に備えさせるようにすることができる。 Image processing means for applying processing for enhancing the edge of the image to the first frame data and the second frame data can be further provided.
画像処理手段は、ハイパスフィルタであるものとすることができる。 The image processing means may be a high pass filter.
フレームデータにノイズを付加するノイズ付加手段を更に備えさせるようにすることができる。 A noise adding means for adding noise to the frame data can be further provided.
第1の動きベクトル推定手段により推定された第1の動きベクトルと、第1のフレームデータとを基に、第1の動きベクトルの検出誤差を算出する誤差算出手段を更に備えさせるようにすることができ、第1の動きベクトル推定手段には、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定させるようにすることができ、第2の動きベクトル推定手段には、第1のフレームデータおよび第2のフレームデータに対して、誤差算出手段により算出された第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、第2の動きベクトルを推定させるようにすることができる。 An error calculating means for calculating a detection error of the first motion vector based on the first motion vector estimated by the first motion vector estimating means and the first frame data is further provided. The first motion vector estimation means can be made to estimate the first motion vector by block matching processing for the first frame data and the second frame data, and the second motion vector The estimation means includes the second motion by block matching processing weighted on the first frame data and the second frame data based on the detection error of the first motion vector calculated by the error calculation means. The vector can be estimated.
予測データ算出手段には、抽出手段により抽出された複数の画素の画素値にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係を基に、最小自乗法を用いて、第1の動きベクトルに対応する場合の係数の最適値を第1の予測データとして、第2の動きベクトルに対応する場合の係数の最適値を第2の予測データとして、それぞれ算出させるようにすることができる。 The prediction data calculation means is based on the relationship between the sum of values obtained by multiplying the pixel values of the plurality of pixels extracted by the extraction means by predetermined coefficients and the pixel values of the pixels in the corresponding first frame data. In addition, using the least square method, the optimal value of the coefficient corresponding to the first motion vector is set as the first prediction data, and the optimal value of the coefficient corresponding to the second motion vector is set as the second prediction. Each data can be calculated.
予測データ算出手段により算出された予測データには、第1の動きベクトルに対応する第1の予測データと、第2の動きベクトルに対応する第2の予測データとを含ませるようにすることができる。 The prediction data calculated by the prediction data calculation means may include the first prediction data corresponding to the first motion vector and the second prediction data corresponding to the second motion vector. it can.
第1のフレームデータに対応する符号化結果を出力する出力手段を更に備えさせるようにすることができ、出力手段には、第1の動きベクトル推定手段により推定された第1の動きベクトルと、第2の動きベクトル推定手段により推定された第2の動きベクトルと、動きベクトル選択手段による選択結果を示すデータと、予測データ算出手段により算出された予測データとを出力させるようにすることができる。 An output unit that outputs an encoding result corresponding to the first frame data can be further provided, and the output unit includes a first motion vector estimated by the first motion vector estimation unit, The second motion vector estimated by the second motion vector estimation means, the data indicating the selection result by the motion vector selection means, and the prediction data calculated by the prediction data calculation means can be output. .
本発明の符号化方法は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出ステップと、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出ステップとを含むことを特徴とする。 The encoding method of the present invention is configured to estimate a first motion vector in a processing block having a plurality of processing regions in first frame data and second frame data different from the first frame data. A motion vector estimation step, a second motion vector estimation step for estimating a second motion vector different from the first motion vector in the processing block, and a first motion vector and a second motion for each processing region. A processing region based on one of a motion vector selection step for selecting one of the vectors and a first motion vector and a second motion vector selected by the processing of the motion vector selection step Extraction step to extract the pixel corresponding to, and motion vector selection using the pixel extracted by the processing of extraction step A prediction data calculation step of calculating prediction data for predicting pixel data in a processing region corresponding to one of the first motion vector and the second motion vector selected by the processing of the step. It is characterized by that.
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理ステップを更に含ませるようにすることができる。 It is possible to further include an image processing step for performing processing for enhancing the edge of the image with respect to the first frame data and the second frame data.
画像処理ステップの処理は、ハイパスフィルタを施す処理であるものとすることができる。 The processing of the image processing step can be processing for applying a high-pass filter.
フレームデータにノイズを付加するノイズ付加ステップを更に含ませるようにすることができる。 A noise adding step for adding noise to the frame data can be further included.
第1の動きベクトル推定ステップの処理により推定された第1の動きベクトルと、第1のフレームデータとを基に、第1の動きベクトルの検出誤差を算出する誤差算出ステップを更に含ませるようにすることができ、第1の動きベクトル推定ステップの処理では、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定させ、第2の動きベクトル推定ステップの処理では、第1のフレームデータおよび第2のフレームデータに対して、誤差算出ステップの処理により算出された第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、第2の動きベクトルを推定する処理が実行させるようにすることができる。 An error calculation step of calculating a detection error of the first motion vector based on the first motion vector estimated by the processing of the first motion vector estimation step and the first frame data is further included. In the process of the first motion vector estimation step, the first motion vector is estimated by the block matching process for the first frame data and the second frame data, and the second motion vector estimation step In the processing, the first motion data and the second frame data are subjected to the second motion by block matching processing weighted based on the detection error of the first motion vector calculated by the processing of the error calculation step. A process for estimating a vector can be executed.
予測データ算出ステップの処理では、抽出ステップの処理により抽出された複数の画素の画素値にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係を基に、最小自乗法を用いて、第1の動きベクトルに対応する場合の係数の最適値が第1の予測データとして、第2の動きベクトルに対応する場合の係数の最適値が第2の予測データとして、それぞれ算出されるようにすることができる。 In the processing of the prediction data calculation step, the sum of the values obtained by multiplying the pixel values of the plurality of pixels extracted by the processing of the extraction step by respective predetermined coefficients and the pixel values of the pixels in the corresponding first frame data Based on the relationship, using the least square method, the optimal value of the coefficient when corresponding to the first motion vector is the first prediction data, and the optimal value of the coefficient when corresponding to the second motion vector is the first The second prediction data can be calculated respectively.
予測データ算出ステップの処理により算出された予測データは、第1の動きベクトルに対応する第1の予測データと、第2の動きベクトルに対応する第2の予測データとを含むものとすることができる。 The prediction data calculated by the process of the prediction data calculation step may include first prediction data corresponding to the first motion vector and second prediction data corresponding to the second motion vector.
第1のフレームデータに対応する符号化結果を出力する出力ステップを更に含み、出力ステップの処理では、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトルと、第2の動きベクトル推定ステップの処理により推定された第2の動きベクトルと、動きベクトル選択ステップの処理による選択結果を示すデータと、予測データ算出ステップの処理により算出された予測データとを出力させるようにすることができる。 The method further includes an output step of outputting an encoding result corresponding to the first frame data. In the processing of the output step, the first motion vector estimated by the processing of the first motion vector estimation step, and the second motion Outputting the second motion vector estimated by the vector estimation step processing, the data indicating the selection result by the motion vector selection step processing, and the prediction data calculated by the prediction data calculation step processing Can do.
本発明の第1の記録媒体に記録されているプログラムは、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出ステップと、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出ステップとを含むことを特徴とする。 The program recorded on the first recording medium of the present invention includes the first frame data and the second frame data different from the first frame data in the first block in the processing block having a plurality of processing areas. A first motion vector estimation step for estimating a motion vector, a second motion vector estimation step for estimating a second motion vector different from the first motion vector in the processing block, and a first for each processing region A motion vector selection step for selecting one of the motion vector and the second motion vector, and any one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step Based on either of these, an extraction step for extracting pixels corresponding to the processing region, and extraction by the processing of the extraction step Using the element, the prediction data for predicting the pixel data of the processing region corresponding to one of the first motion vector and the second motion vector selected by the motion vector selection step is calculated. And a prediction data calculation step.
本発明の第1のプログラムは、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出ステップと、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出ステップとを含むことを特徴とする処理をコンピュータに実行させる。 The first program of the present invention is configured to estimate a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data. , A second motion vector estimation step for estimating a second motion vector different from the first motion vector in the processing block, and a first motion vector and a second motion vector for each processing region Processing based on one of a motion vector selection step for selecting one of the motion vectors, and the first motion vector and the second motion vector selected by the processing of the motion vector selection step Using the extraction step for extracting pixels corresponding to the region and the pixels extracted by the processing of the extraction step, A prediction data calculation step for calculating prediction data for predicting pixel data in a processing region corresponding to one of the first motion vector and the second motion vector selected by the processing of the selection step; The computer is caused to execute a process characterized by including.
本発明の復号装置は、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定手段により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出手段とを備えることを特徴とする。 The decoding apparatus according to the present invention performs any one of a first motion vector in a processing block having a plurality of processing regions, a second motion vector in the processing block, and the first motion vector and the second motion vector. A motion vector determining means for receiving an input of optimal motion vector information for each processing region indicating whether it is optimal to use for decoding, and determining an optimal motion vector for each processing region of the processing block; and pixels included in the processing region And a calculation unit that receives input of prediction data for predicting data and calculates pixel data in the processing block based on the motion vector determined by the motion vector determination unit and the prediction data. To do.
算出手段により算出された画素データに、ノイズを付加するノイズ付加手段を更に備えさせるようにすることができる。 The pixel data calculated by the calculating means can be further provided with noise adding means for adding noise.
予測データには、第1の動きベクトルに対応する第1の予測データと、第2の動きベクトルに対応する第2の予測データとを含ませるようにすることができる。 The prediction data can include first prediction data corresponding to the first motion vector and second prediction data corresponding to the second motion vector.
第1の予測データ、第2の予測データ、および、最適動きベクトル情報の入力を受け、処理領域ごとに、算出手段による処理に第1の予測データと第2の予測データとのいずれを用いるかを選択する予測データ選択手段を更に備えさせるようにすることができる。 Which of the first prediction data and the second prediction data is used for the processing by the calculation means for each processing region upon receiving the input of the first prediction data, the second prediction data, and the optimal motion vector information It is possible to further include prediction data selection means for selecting.
予測データは、処理領域に対応する周辺画素にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係を基に、最小自乗法を用いて算出された、係数の最適値であるものとすることができる。 Prediction data is obtained by using the method of least squares based on the relationship between the sum of values obtained by multiplying the peripheral pixels corresponding to the processing region by predetermined coefficients and the pixel values of the corresponding pixels in the first frame data. It can be the calculated optimum value of the coefficient.
算出手段には、動きベクトル決定手段により決定された動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出させ、抽出された画素値に予測データを乗算することにより、処理ブロック内の画素データを算出させるようにすることができる。 Based on the motion vector determined by the motion vector determination unit, the calculation unit extracts the pixel value of the peripheral pixel corresponding to the target pixel, and multiplies the extracted pixel value by the prediction data, thereby The pixel data can be calculated.
本発明の復号方法は、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップとを含むことを特徴とする。 In the decoding method of the present invention, any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is selected. A motion vector determining step for receiving optimal motion vector information for each processing region indicating whether it is optimal to use for decoding and determining an optimal motion vector for each processing region of the processing block; and pixels included in the processing region Including a calculation step of receiving pixel data in the processing block based on the motion vector determined by the processing of the motion vector determination step and the prediction data in response to input of prediction data for predicting data Features.
算出ステップの処理により算出された画素データに、ノイズを付加するノイズ付加ステップを更に含ませるようにすることができる。 It is possible to further include a noise adding step for adding noise to the pixel data calculated by the processing of the calculating step.
予測データには、第1の動きベクトルに対応する第1の予測データと、第2の動きベクトルに対応する第2の予測データとを含ませるようにすることができる。 The prediction data can include first prediction data corresponding to the first motion vector and second prediction data corresponding to the second motion vector.
第1の予測データ、第2の予測データ、および、最適動きベクトル情報の入力を受け、処理領域ごとに、算出ステップの処理による処理に第1の予測データと第2の予測データとのいずれを用いるかを選択する予測データ選択ステップを更に含ませるようにすることができる。 In response to the input of the first prediction data, the second prediction data, and the optimal motion vector information, for each processing region, either the first prediction data or the second prediction data is used for the processing by the calculation step. A prediction data selection step for selecting whether to use can be further included.
予測データは、処理領域に対応する周辺画素にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係を基に、最小自乗法を用いて算出された、係数の最適値であるものとすることができる。 Prediction data is obtained by using the method of least squares based on the relationship between the sum of values obtained by multiplying the peripheral pixels corresponding to the processing region by predetermined coefficients and the pixel values of the corresponding pixels in the first frame data. It can be the calculated optimum value of the coefficient.
算出ステップの処理には、動きベクトル決定ステップの処理により決定された動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出し、抽出された画素値に予測データを乗算することにより、処理ブロック内の画素データを算出する処理を含ませるようにすることができる。 In the process of the calculation step, based on the motion vector determined by the process of the motion vector determination step, the pixel value of the peripheral pixel corresponding to the target pixel is extracted, and the extracted pixel value is multiplied by the prediction data. A process for calculating pixel data in the processing block can be included.
本発明の第2の記録媒体に記録されているプログラムは、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップとを含むことを特徴とする。 The program recorded on the second recording medium of the present invention includes a first motion vector in a processing block having a plurality of processing areas, a second motion vector in the processing block, and a first motion vector and a second motion vector. Motion vector determination that receives optimal motion vector information for each processing region and determines the optimal motion vector for each processing region of the processing block. Pixel data in the processing block is received based on the motion vector determined by the processing of the motion vector determination step and the prediction data, upon receiving the input of the prediction data for predicting the pixel data included in the step and the processing region And a calculating step for calculating.
本発明の第2のプログラムは、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップとを含むことを特徴とする処理をコンピュータに実行させる。 The second program of the present invention includes a first motion vector in a processing block having a plurality of processing regions, a second motion vector in the processing block, and a first motion vector and a second motion vector. Included in the processing region is a motion vector determination step that receives the input of the optimal motion vector information indicating which is optimal for decoding for each processing region, and determines the optimal motion vector for each processing region of the processing block. A calculation step of calculating pixel data in the processing block based on the motion vector determined by the processing of the motion vector determination step and the prediction data. The computer is caused to execute a process characterized by the above.
本発明の第1の画像処理システムは、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムであって、符号化部は、画像データに含まれる第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出手段と、抽出手段により抽出された画素を用いて、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出手段とを備えることを特徴とする。 The first image processing system of the present invention includes an encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat encoding processing and decoding processing on image data composed of a plurality of frame data. Thus, the image processing system is configured to degrade the image data, and the encoding unit includes the first frame data included in the image data and the second frame data different from the first frame data. A first motion vector estimating means for estimating a first motion vector in a processing block having a plurality of processing regions; and a second motion vector for estimating a second motion vector different from the first motion vector in the processing block. Motion vector estimation means and motion for selecting one of the first motion vector and the second motion vector for each processing region An extractor for extracting a pixel corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the motion vector selector; Prediction data for predicting pixel data in a processing region corresponding to one of the first motion vector and the second motion vector selected by the motion vector selection means using the pixels extracted by And prediction data calculation means for calculating.
フレームデータにノイズを付加するノイズ付加手段を更に備えさせるようにすることができ、復号部から出力される画像データは、ノイズ付加手段によりフレームデータにノイズが付加された後、符号化部に供給されるものとすることができる。 Noise adding means for adding noise to the frame data can be further provided. The image data output from the decoding unit is supplied to the encoding unit after noise is added to the frame data by the noise adding unit. Can be.
本発明の第1の画像処理方法は、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムの画像処理方法であって、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素を抽出する抽出ステップと、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データを算出する予測データ算出ステップとを含むことを特徴とする。 A first image processing method of the present invention includes an encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat encoding processing and decoding processing on image data composed of a plurality of frame data. The image processing method of the image processing system configured to degrade the image data, wherein a plurality of processing regions are defined in the first frame data and the second frame data different from the first frame data. A first motion vector estimation step for estimating a first motion vector in a processing block, and a second motion vector estimation step for estimating a second motion vector different from the first motion vector in the processing block; A motion vector selection block for selecting one of the first motion vector and the second motion vector for each processing region. And an extraction step for extracting pixels corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step; Predict pixel data of a processing region corresponding to one of the first motion vector and the second motion vector selected by the motion vector selection step processing using the pixels extracted by the step processing. And a prediction data calculation step for calculating prediction data for the purpose.
本発明の第2の画像処理システムは、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムであって、復号部は、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定手段により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出手段とを備えることを特徴とする。 The second image processing system of the present invention includes an encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat encoding processing and decoding processing on image data composed of a plurality of frame data. The image processing system is configured to degrade the image data, and the decoding unit includes: a first motion vector in a processing block having a plurality of processing regions; a second motion vector in the processing block; Optimal motion vector information is input for each processing region indicating which of the first motion vector and the second motion vector is best used for decoding, and the optimal motion is determined for each processing region of the processing block. The motion vector determination means for determining the vector and the prediction data for predicting the pixel data included in the processing region are input, and the motion vector is received. A motion vector determined by Le determining means, based on the prediction data, characterized by comprising a calculating means for calculating the pixel data in the processing block.
フレームデータにノイズを付加するノイズ付加手段を更に備えさせるようにすることができ、復号部から出力される画像データは、ノイズ付加手段によりフレームデータにノイズが付加された後、符号化部に供給されるものとすることができる。 Noise adding means for adding noise to the frame data can be further provided. The image data output from the decoding unit is supplied to the encoding unit after noise is added to the frame data by the noise adding unit. Can be.
本発明の第2の画像処理方法は、符号化部および復号部を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムの画像処理方法であって、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップとを含むことを特徴とする。 A second image processing method of the present invention includes an encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat encoding processing and decoding processing on image data composed of a plurality of frame data. According to the image processing method of the image processing system configured to degrade the image data, the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first Optimal motion vector information is input for each processing region indicating which of the first motion vector and the second motion vector is best used for decoding, and the optimal motion is determined for each processing region of the processing block. A motion vector determination step for determining a vector and input of prediction data for predicting pixel data included in the processing region, A motion vector determined by the processing of the vector determining step, based on the prediction data, characterized in that it comprises a calculation step of calculating the pixel data in the processing block.
本発明の符号化装置および符号化方法、第1のプログラム、並びに、第1の画像処理システムおよび画像処理方法においては、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルが推定され、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルが推定され、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかが選択され、選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素が抽出され、抽出された画素を用いて、選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データが算出される。 In the encoding apparatus and encoding method, the first program, and the first image processing system and image processing method of the present invention, the first frame data and the second frame different from the first frame data In the data, a first motion vector in a processing block having a plurality of processing regions is estimated, and in the processing block, a second motion vector different from the first motion vector is estimated. For each processing region, the first motion vector is estimated. Either one of the motion vector and the second motion vector is selected, and a pixel corresponding to the processing region is selected based on one of the selected first motion vector and second motion vector. A processing region corresponding to one of the first motion vector and the second motion vector selected using the extracted pixels. Prediction data for predicting the pixel data is calculated.
本発明の復号装置および復号方法、第2のプログラム、並びに、第2の画像処理システムおよび画像処理方法においては、複数の処理領域を有する処理ブロックにおける第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルが決定され、処理領域に含まれる画素データを予測するための予測データの入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データが算出される。 In the decoding apparatus and decoding method, the second program, and the second image processing system and image processing method of the present invention, the first motion vector in the processing block having a plurality of processing regions, the second in the processing block Processing block processing is received by receiving input of motion vector and optimum motion vector information for each processing region indicating which of the first motion vector and the second motion vector is best used for decoding. An optimal motion vector is determined for each region, receives prediction data for predicting pixel data included in the processing region, and based on the motion vector determined by the processing of the motion vector determination step and the prediction data Pixel data in the processing block is calculated.
本発明によると、画像データを符号化することができ、特に、2つの動きベクトルを探索することにより、残差情報なしに、符号化および復号処理を行うことができる。 According to the present invention, image data can be encoded, and in particular, encoding and decoding processes can be performed without residual information by searching for two motion vectors.
また、他の本発明によると、画像データを復号することができ、特に、2つの動きベクトルのいずれかを用いて画像データを復号することにより、残差情報なしに、符号化および復号処理を行うことができる。 In addition, according to another aspect of the present invention, image data can be decoded. In particular, by decoding image data using one of two motion vectors, encoding and decoding processing can be performed without residual information. It can be carried out.
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。 Embodiments of the present invention will be described below. Correspondences between constituent elements described in the claims and specific examples in the embodiments of the present invention are exemplified as follows. This description is to confirm that specific examples supporting the invention described in the claims are described in the embodiments of the invention. Accordingly, although there are specific examples that are described in the embodiment of the invention but are not described here as corresponding to the configuration requirements, the specific examples are not included in the configuration. It does not mean that it does not correspond to a requirement. On the contrary, even if a specific example is described here as corresponding to a configuration requirement, this means that the specific example does not correspond to a configuration requirement other than the configuration requirement. not.
更に、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。 Further, this description does not mean that all the inventions corresponding to the specific examples described in the embodiments of the invention are described in the claims. In other words, this description is an invention corresponding to the specific example described in the embodiment of the invention, and the existence of an invention not described in the claims of this application, that is, in the future, a divisional application will be made. Nor does it deny the existence of an invention added by amendment.
請求項1に記載の符号化装置(例えば、図2の符号化装置63または符号化部82)は、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定手段(例えば、図3のブロックマッチング動き探索部108)と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段(例えば、図3の評価値変更ブロックマッチング動き探索部111)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段(例えば、図3の最適動き決定部112)と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素(例えば、図13の5つのタップ)を抽出する抽出手段(例えば、図12の第1のタップ抽出部246および第2のタップ抽出部247)と、抽出手段により抽出された画素を用いて、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データ(例えば、フィルタ係数)を算出する予測データ算出手段(例えば、図12の第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249)とを備えることを特徴とする。
The encoding device according to claim 1 (for example, the encoding device 63 or the
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理手段(例えば、図3のハイパスフィルタ106およびハイパスフィルタ107)を更に備えることができる。
The image processing means (for example, the high-
フレームデータにノイズを付加するノイズ付加手段(例えば、図2のA/D変換部81)を更に備えることができる。
Noise addition means (for example, the A /
第1の動きベクトル推定手段により推定された第1の動きベクトルと、第1のフレームデータとを基に、第1の動きベクトルの検出誤差を算出する誤差算出手段(例えば、図3の絶対値誤差算出部109)を更に備えることができ、第1の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定することができ、第2の動きベクトル推定手段は、第1のフレームデータおよび第2のフレームデータに対して、誤差算出手段により算出された第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、第2の動きベクトルを推定することができる。 Based on the first motion vector estimated by the first motion vector estimation means and the first frame data, error calculation means for calculating a detection error of the first motion vector (for example, the absolute value in FIG. 3). An error calculation unit 109), and the first motion vector estimation means can estimate the first motion vector by block matching processing for the first frame data and the second frame data, The second motion vector estimation means performs block matching processing weighted on the first frame data and the second frame data based on the detection error of the first motion vector calculated by the error calculation means, A second motion vector can be estimated.
予測データ算出手段は、抽出手段により抽出された複数の画素の画素値にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて、第1の動きベクトルに対応する場合の係数の最適値を第1の予測データとして、第2の動きベクトルに対応する場合の係数の最適値を第2の予測データとして、それぞれ算出することができる。 The prediction data calculation means is a relationship between the sum of values obtained by multiplying the pixel values of the plurality of pixels extracted by the extraction means by a predetermined coefficient and the pixel values of the pixels in the corresponding first frame data (for example, Based on Equations 3 and 4), using the least square method, the optimum value of the coefficient corresponding to the first motion vector is used as the first prediction data, and the coefficient corresponding to the second motion vector is used. Can be calculated as the second prediction data.
第1のフレームデータに対応する符号化結果を出力する出力手段(例えば、図3の符号出力部115)を更に備えることができ、出力手段は、第1の動きベクトル推定手段により推定された第1の動きベクトルと、第2の動きベクトル推定手段により推定された第2の動きベクトルと、動きベクトル選択手段による選択結果を示すデータと、予測データ算出手段により算出された予測データとを出力することができる。
An output unit (for example, the
請求項9に記載の符号化方法は、複数のフレームデータからなる画像データの供給を受けて符号化する符号化装置(例えば、図2の符号化装置63または符号化部82)の符号化方法であって、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定ステップ(例えば、図17のステップS7およびステップS8の処理)と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップ(例えば、図17のステップS10の処理)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップ(例えば、図17のステップS11の処理)と、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素(例えば、図13の5つのタップ)を抽出する抽出ステップ(例えば、図20のステップS83またはステップS86の処理)と、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データ(例えば、フィルタ係数)を算出する予測データ算出ステップ(例えば、図20のステップS85またはステップS88の処理)とを含むことを特徴とする。
The encoding method according to
第1のフレームデータおよび第2のフレームデータに対して、画像のエッジを強調させる処理を施す画像処理ステップ(例えば、図17のステップS6の処理)を更に含むことができる。 An image processing step (for example, the processing in step S6 in FIG. 17) for performing processing for enhancing the edge of the image on the first frame data and the second frame data can be further included.
フレームデータにノイズを付加するノイズ付加ステップを更に含むことができる。 A noise adding step for adding noise to the frame data may be further included.
第1の動きベクトル推定ステップの処理により推定された第1の動きベクトルと、第1のフレームデータとを基に、第1の動きベクトルの検出誤差を算出する誤差算出ステップ(例えば、図17のステップS9の処理)を更に備えることができ、第1の動きベクトル推定ステップの処理では、第1のフレームデータおよび第2のフレームデータに対するブロックマッチング処理により、第1の動きベクトルを推定することができ、第2の動きベクトル推定ステップの処理では、第1のフレームデータおよび第2のフレームデータに対して、誤差算出ステップの処理により算出された第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、第2の動きベクトルを推定する処理を実行することができる。 Based on the first motion vector estimated by the processing of the first motion vector estimation step and the first frame data, an error calculation step for calculating a detection error of the first motion vector (for example, FIG. 17). Step S9) can be further provided. In the first motion vector estimation step, the first motion vector can be estimated by block matching processing on the first frame data and the second frame data. In the process of the second motion vector estimation step, the first frame data and the second frame data are weighted based on the detection error of the first motion vector calculated by the error calculation step. The process of estimating the second motion vector can be executed by the block matching process.
予測データ算出ステップの処理では、抽出ステップの処理により抽出された複数の画素の画素値にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて、第1の動きベクトルに対応する場合の係数の最適値が第1の予測データとして、第2の動きベクトルに対応する場合の係数の最適値が第2の予測データとして、それぞれ算出することができる。 In the processing of the prediction data calculation step, the sum of the values obtained by multiplying the pixel values of the plurality of pixels extracted by the processing of the extraction step by respective predetermined coefficients and the pixel values of the pixels in the corresponding first frame data Based on the relationship (for example, Equation 3 and Equation 4), using the least square method, the optimum value of the coefficient when corresponding to the first motion vector corresponds to the second motion vector as the first prediction data In this case, the optimum coefficient values can be calculated as the second prediction data.
第1のフレームデータに対応する符号化結果を出力する出力ステップ(例えば、図17のステップS14の処理)を更に含むことができ、出力ステップの処理では、第1の動きベクトル推定ステップの処理により推定された第1の動きベクトルと、第2の動きベクトル推定ステップの処理により推定された第2の動きベクトルと、動きベクトル選択ステップの処理による選択結果を示すデータと、予測データ算出ステップの処理により算出された予測データとを出力することができる。 An output step (for example, the process of step S14 in FIG. 17) for outputting an encoding result corresponding to the first frame data can be further included. In the process of the output step, the process of the first motion vector estimation step is performed. The estimated first motion vector, the second motion vector estimated by the processing of the second motion vector estimation step, the data indicating the selection result by the processing of the motion vector selection step, and the processing of the prediction data calculation step The prediction data calculated by the above can be output.
また、請求項17に記載の記録媒体に記録されているプログラム、および、請求項18に記載のプログラムにおいても、各ステップが対応する実施の形態(但し一例)は、請求項9に記載の符号化方法と同様である。
Further, in the program recorded on the recording medium according to claim 17 and the program according to claim 18, an embodiment (however, an example) to which each step corresponds corresponds to the code according to
請求項19に記載の復号装置(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)は、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段(例えば、図14または図16の動き対象位置算出部273)と、処理領域に含まれる画素データを予測するための予測データ(例えば、フィルタ係数)の入力を受け、動きベクトル決定手段により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出手段(例えば、図14または図16の画素切り出し部274およびフィルタ係数乗算部276)とを備えることを特徴とする。
The decoding device according to claim 19 (for example, the
算出手段により算出された画素データに、ノイズを付加するノイズ付加手段(例えば、図2のD/A変換部72またはD/A変換部85)を更に備えることができる。
Noise addition means (for example, the D /
第1の予測データ、第2の予測データ、および、最適動きベクトル情報の入力を受け、処理領域ごとに、算出手段による処理に第1の予測データと第2の予測データとのいずれを用いるかを選択する予測データ選択手段(例えば、図14または図16の係数選択部275)を更に備えることができる。 Which of the first prediction data and the second prediction data is used for the processing by the calculation means for each processing region upon receiving the input of the first prediction data, the second prediction data, and the optimal motion vector information Prediction data selection means (for example, the coefficient selection unit 275 in FIG. 14 or 16) can be further provided.
予測データは、処理領域に対応する周辺画素(例えば、図13の5つのタップ)にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて算出された、係数の最適値であるものとすることができる。 The prediction data is a relationship between the sum of values obtained by multiplying the peripheral pixels (for example, five taps in FIG. 13) corresponding to the processing region by predetermined coefficients and the pixel values of the pixels in the corresponding first frame data. Based on (for example, Formula 3 and Formula 4), it can be an optimum value of the coefficient calculated using the least square method.
算出手段は、動きベクトル決定手段により決定された動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出し(例えば、図14または図16の画素切り出し部274の処理)、抽出された画素値に予測データを乗算する(例えば、図14または図16のフィルタ係数乗算部276の処理)ことにより、処理ブロック内の画素データを算出することができる。
Based on the motion vector determined by the motion vector determination unit, the calculation unit extracts the pixel value of the peripheral pixel corresponding to the target pixel (for example, the processing of the
請求項25に記載の復号方法は、符号化された画像データの供給を受けて復号する復号装置(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)の復号方法であって、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップ(例えば、図21のステップS115の処理)と、処理領域に含まれる画素データを予測するための予測データ(例えば、フィルタ係数)の入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップ(例えば、図21のステップS118の処理)とを含むことを特徴とする。
The decoding method according to claim 25 is a decoding method of a decoding device (for example, the
算出ステップの処理により算出された画素データに、ノイズを付加するノイズ付加ステップを更に含むことができる。 A noise addition step of adding noise to the pixel data calculated by the calculation step processing can be further included.
第1の予測データ、第2の予測データ、および、最適動きベクトル情報の入力を受け、処理領域ごとに、算出ステップの処理による処理に第1の予測データと第2の予測データとのいずれを用いるかを選択する予測データ選択ステップ(例えば、図21のステップS117の処理)を更に含むことができる。 In response to the input of the first prediction data, the second prediction data, and the optimal motion vector information, for each processing region, either the first prediction data or the second prediction data is used for the processing by the calculation step. A prediction data selection step (for example, the process of step S117 in FIG. 21) for selecting whether to use can be further included.
予測データは、処理領域に対応する周辺画素(例えば、図13の5つのタップ)にそれぞれ所定の係数を乗算した値の和と、対応する第1のフレームデータ内の画素の画素値との関係(例えば、式3および式4)を基に、最小自乗法を用いて算出された、係数の最適値であるものとすることができる。 The prediction data is a relationship between the sum of values obtained by multiplying the peripheral pixels (for example, five taps in FIG. 13) corresponding to the processing region by predetermined coefficients and the pixel values of the pixels in the corresponding first frame data. Based on (for example, Formula 3 and Formula 4), it can be an optimum value of the coefficient calculated using the least square method.
算出ステップの処理は、動きベクトル決定ステップの処理により決定された動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出し(例えば、図21のステップS116の処理)、抽出された画素値に予測データを乗算する(例えば、図21のステップ118の処理)ことにより、処理ブロック内の画素データを算出する処理を含むことができる。 In the calculation step processing, pixel values of peripheral pixels corresponding to the target pixel are extracted based on the motion vector determined by the motion vector determination step processing (for example, the processing in step S116 in FIG. 21). A process of calculating pixel data in the processing block can be included by multiplying the pixel value by the prediction data (for example, the process of step 118 in FIG. 21).
また、請求項31に記載の記録媒体に記録されているプログラム、および、請求項32に記載のプログラムにおいても、各ステップが対応する実施の形態(但し一例)は、請求項25に記載の復号方法と同様である。
Further, in the program recorded on the recording medium according to
請求項33に記載の画像処理システムは、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムにであって、符号化部は、画像データに含まれる第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定手段(例えば、図3のブロックマッチング動き探索部108)と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段(例えば、図3の評価値変更ブロックマッチング動き探索部111)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段(例えば、図3の最適動き決定部112)と、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素(例えば、図13の5つのタップ)を抽出する抽出手段(例えば、図12の第1のタップ抽出部246および第2のタップ抽出部247)と、抽出手段により抽出された画素を用いて、動きベクトル選択手段により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データ(例えば、フィルタ係数)を算出する予測データ算出手段(例えば、図12の第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249)とを備えることを特徴とする。
An image processing system according to a thirty-third aspect includes an encoding unit (for example, the encoding device 63 or the
フレームデータにノイズを付加するノイズ付加手段(例えば、図2のA/D変換部81)を更に備えることができ、復号部から出力される画像データは、ノイズ付加手段によりフレームデータにノイズが付加された後、符号化部に供給されるものとすることができる。
A noise adding unit (for example, the A /
請求項35に記載の画像処理方法は、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムの画像処理方法であって、第1のフレームデータ、および、第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトルを推定する第1の動きベクトル推定ステップ(例えば、図17のステップS7およびステップS8の処理)と、処理ブロックにおいて、第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップ(例えば、図17のステップS10の処理)と、処理領域ごとに、第1の動きベクトルと第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップ(例えば、図17のステップS11の処理)と、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に基づいて、処理領域に対応する画素(例えば、図13の5つのタップ)を抽出する抽出ステップ(例えば、図20のステップS83またはステップS86の処理)と、抽出ステップの処理により抽出された画素を用いて、動きベクトル選択ステップの処理により選択された第1の動きベクトルと第2の動きベクトルとのうちのいずれか一方に対応する処理領域の画素データを予測するための予測データ(例えば、フィルタ係数)を算出する予測データ算出ステップ(例えば、図20のステップS85またはステップS88の処理)とを含むことを特徴とする。
The image processing method according to claim 35 includes an encoding unit (for example, the encoding device 63 or the
請求項36に記載の画像処理システムは、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムであって、復号部は、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段(例えば、図14または図16の動き対象位置算出部273)と、処理領域に含まれる画素データを予測するための予測データ(例えば、フィルタ係数)の入力を受け、動きベクトル決定手段により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出手段(例えば、図14または図16の画素切り出し部274およびフィルタ係数乗算部276)とを備えることを特徴とする。
An image processing system according to a thirty-sixth aspect includes an encoding unit (for example, the encoding device 63 or the
フレームデータにノイズを付加するノイズ付加手段(例えば、図2のA/D変換部81)を更に備えることができ、復号部から出力される画像データは、ノイズ付加手段によりフレームデータにノイズが付加された後、符号化部に供給されるものとすることができる。
A noise adding unit (for example, the A /
請求項38に記載の画像処理方法は、符号化部(例えば、図2の符号化装置63または符号化部82)および復号部(例えば、図2の復号部71または復号部84、もしくは、図3のデコーダ114)を含み、符号化部および復号部において、複数のフレームデータで構成される画像データに対して符号化処理および復号処理を繰り返すことにより、画像データが劣化するようになされている画像処理システムの画像処理方法であって、複数の処理領域(例えば、画素)を有する処理ブロック(例えば、動き探索を実行するときのブロック)における第1の動きベクトル、処理ブロックにおける第2の動きベクトル、および、第1の動きベクトルと第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを処理領域ごとに示す最適動きベクトル情報の入力を受け、処理ブロックの処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップ(例えば、図21のステップS115の処理)と、処理領域に含まれる画素データを予測するための予測データ(例えば、フィルタ係数)の入力を受け、動きベクトル決定ステップの処理により決定された動きベクトルと、予測データとを基に、処理ブロック内の画素データを算出する算出ステップ(例えば、図21のステップS118の処理)とを含むことを特徴とする。
The image processing method according to claim 38 includes an encoding unit (for example, the encoding device 63 or the
以下、図を参照して、本発明の実施の形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図2は、本発明を適用した画像表示システム51の構成を示すブロック図である。
FIG. 2 is a block diagram showing a configuration of an
この画像表示システム51は、アナログの画像データを出力する再生機61と、再生機61から出力される画像データによる画像を表示するディスプレイ62と、再生機61から出力されるアナログ画像データを符号化する符号化装置63により構成されている。
This
再生機61は、復号部71およびD/A(Digital-to-Analog)変換部72を備えている。復号部71は、図示しない光ディスク等の記録媒体から再生された、符号化されている画像データを復号し、D/A変換部72に供給する。D/A変換部72は、復号されて得られたデジタルの画像データをアナログの画像データに変換し、アナログの画像データを出力する。ディスプレイ62は、例えばCRT(Cathode-Ray Tube)ディスプレイ、LCD(Liquid Crystal Display)等で構成され、供給されたアナログ画像データを表示する。
The player 61 includes a
符号化装置63は、A/D(Analog-to-Digital)変換部81、符号化部82、記録部83、復号部84、D/A変換部85、および、ディスプレイ86で構成され、コピー前のデータによる出力の質を落とすことなく、良好な質を維持したままでのコピーを不可能とすることができるような処理を施すことができるように構成されている。A/D変換部81は、再生機61より出力されるアナログの画像データを、A/D変換し、符号化部82に供給する。符号化部82は、デジタルの画像データを符号化し、記録部83および復号部84に供給する。記録部83は、供給されたデジタルの符号化画像データを、光ディスク等の記録媒体に記録する。復号部84は、供給されたデジタルの符号化画像データを復号し、D/A変換部85に供給する。D/A変換部85は、復号されて得られたデジタルの画像データをアナログデータに変換し、アナログの画像データをディスプレイ86に出力する。ディスプレイ86は、例えばCRTディスプレイ、LCD等で構成され、供給されたアナログ画像データを表示する。
The encoding device 63 includes an A / D (Analog-to-Digital)
ところで、D/A変換部72においてデジタルの画像データをD/A変換するとき、A/D変換部81においてアナログの画像データをA/D変換するとき、および、D/A変換部85においてデジタルの画像データをD/A変換するとき、もしくは、再生機61からディスプレイ62または符号化装置63にアナログデータを伝送するとき、画像データにノイズが付加されてしまう。
By the way, when D / A converting digital image data in the D /
特に、A/D変換、D/A変換、または、アナログデータの伝送において、高周波成分の歪みや位相ずれなどが、画像データに発生する。この高周波成分の歪みや位相ずれなどは、アナログノイズとも称される。 In particular, in A / D conversion, D / A conversion, or analog data transmission, high-frequency component distortion or phase shift occurs in image data. This distortion or phase shift of the high frequency component is also referred to as analog noise.
このアナログノイズのうち、高周波成分の歪みは、主にホワイトノイズと呼ばれるノイズに起因するものである。 Among the analog noise, the distortion of the high frequency component is mainly caused by noise called white noise.
D/A変換部72、および、D/A変換部85において、デジタルの画像データがアナログの画像データに変換される過程、A/D変換部81において、アナログの画像データがデジタルの画像データに変換される過程、または、アナログデータが伝送される過程において、周波数成分がほぼ均一なホワイトノイズが画像データに付加される。ホワイトノイズのレベルは、時系列でランダムに変化し、その分布はほぼ正規分布に従う。すなわち、各画素に対応するアナログの画像データに付加されるホワイトノイズのレベルはランダムに変化する。
A process in which digital image data is converted into analog image data in the D /
したがって、例えば、復号部71から出力されるデジタル画像データにおいて、水平方向と垂直方向に整列して位置する画素のうちの所定の複数の画素が同一の画素値を有していたとしても、D/A変換部72よりD/A変換されて伝送され、更に、A/D変換部81によりA/D変換された後のデジタルの画像データのうち、変換前は同一の画素値を有していた画素の画素値は、もとの値を中心値としたある程度の範囲内に分散された値となってしまう。これらの分散された値と、もとの値との差異は乱数で表現される性質のものであり、一律に決まるものではない。その結果、画像データに高周波成分の歪みが生じる。また、水平方向だけでなく、垂直方向にも同様に高周波成分の歪みが生じる。なお、各画素に付加されるホワイトノイズのレベルの散らばり具合によっては、高周波成分以外の成分の歪みが生じる場合もある。
Therefore, for example, in the digital image data output from the
また、アナログノイズのうち、位相ずれによる歪みが付加されることにより、画像データの画素の位置は、本来の画像データの画素の位置と比べて、水平方向および垂直方向にずれてしまう。なお、水平方向の位相ずれの幅は、水平方向の画素間隔より小さくなったり大きくなったりする一方、垂直方向の位相ずれの幅は、垂直方向の画素間隔の整数倍となる。また、位相ずれは、水平方向または垂直方向の一方向のみ生じる場合がある。なお、位相がずれて空いてしまった画素には、例えば、本来の画像データの画素の画素値ではない、同期信号などに基づく値が設定される。 In addition, by adding distortion due to phase shift among analog noise, the position of the pixel of the image data is shifted in the horizontal direction and the vertical direction as compared with the position of the pixel of the original image data. Note that the width of the phase shift in the horizontal direction is smaller or larger than the pixel interval in the horizontal direction, while the width of the phase shift in the vertical direction is an integral multiple of the pixel interval in the vertical direction. Further, the phase shift may occur only in one direction in the horizontal direction or the vertical direction. For example, a value based on a synchronization signal, which is not a pixel value of a pixel of original image data, is set for a pixel that has become empty due to a phase shift.
この位相ずれが発生することにより、位相ずれの幅だけ画像の表示位置がずれ、ずれた部分に、画素値以外の同期信号などに基づく画像が表示されてしまうことになる。しかしながら、表示位置のずれはわずかであり、多くの場合、ユーザが視認することができるレベルにおける画像の画質にはほとんど影響を及ぼさない。 When this phase shift occurs, the display position of the image is shifted by the width of the phase shift, and an image based on a synchronization signal other than the pixel value is displayed in the shifted portion. However, the display position shift is slight, and in many cases, it hardly affects the image quality at a level that can be visually recognized by the user.
なお、画像処理やデータ伝送において付加されるノイズには、上記したノイズ以外のノイズも含まれる場合があることはいうまでもない。 Needless to say, noise added in image processing and data transmission may include noise other than the noise described above.
なお、D/A変換部72、A/D変換部81、および、D/A変換部85は、それぞれ、デジタルの画像データがアナログの画像データに変換される過程において、または、アナログの画像データがデジタルの画像データに変換される過程において、ノイズ成分(特に、ハイパスフィルタにより強調されるノイズ成分)を、出力されるデータに付加するようにしても良い。
The D /
また、D/A変換部72は復号部71と、A/D変換部81は、符号化部82と、D/A変換部85は復号部84と、それぞれ、1つの構成要素として構成とするようにしても良い。
The D /
また、図2の再生機61および符号化装置63を構成する各部は、それぞれ、独立した装置として構成するようにしても良い。すなわち、例えば、D/A変換部72と復号部71とをそれぞれ独立した装置として構成したり、2つの構成要素を持つ1つの装置として構成しても良い。また、符号化部82や復号部84をそれぞれ独立した装置として構成したり、A/D変換部81と符号化部82との2つの構成要素を持つ1つの装置として構成したり、D/A変換部85と復号部84との2つの構成要素を持つ1つの装置として構成するようにしてもよい。
2 may be configured as independent devices. The units constituting the regenerator 61 and the encoding device 63 in FIG. That is, for example, the D /
図3は、図2の符号化部82の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of the
符号化部82は、複数のフレームデータのうちの所定のフレームを基準フレームとし、図4に示されるように、基準フレームをフレーム内符号化するとともに、基準フレーム以外のフレームを、1つ前のフレームに対する動き検出により符号化するものである。通常、動き検出による符号化においては、残差補償が行われるようになされているが、符号化部82は、残差補償を行わず、2種類のブロックマッチングを行うことにより、予測精度を向上させるようになされている。
The
基準フレーム抽出部101は、A/D変換部81によりデジタルデータに変換された画像データの供給を受け、基準フレームは、基準フレーム符号化部102に供給し、基準フレーム以外のフレームは、フレームメモリ105に供給する。
The reference
基準フレーム符号化部102は、例えば、JPEG(Joint Photographic Experts Group)やADRC(Adaptive Dynamic Range Coding)などのフレーム内符号化方法を用いて、供給された基準フレームを符号化し、基準フレームデコータ103、デコーダ114、および、符号出力部115に供給する。
The reference
基準フレームデコータ103は、供給された符号化データを、対応する方法でデコードし、フレームメモリ104に供給する。
The
フレームメモリ104は、基準フレームデコーダ103、または、後述するデコーダ114から供給されたフレームデータを一時保存し、ハイパスフィルタ(HPF)107に供給する。
The
フレームメモリ105は、基準フレーム抽出部101から供給されたフレームデータを一時保存し、ハイパスフィルタ(HPF)106に供給する。
The
すなわち、フレームメモリ104に一時保存されるフレームデータは、フレームメモリ105に一時保存されるフレームデータに対して、時間的に1つ前のフレームデータである。以下、フレームメモリ105に一時保存されるフレームデータを現フレームデータ、フレームメモリ104に一時保存されるフレームデータを前フレームデータと称するものとする。
That is, the frame data temporarily stored in the
ハイパスフィルタ106およびハイパスフィルタ107は、供給されたフレームデータにハイパスフィルタをかけ、ブロックマッチング動き探索部108、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。また、ハイパスフィルタ106は、絶対値誤差算出部109にもデータを供給する。
The high-
すなわち、フレームメモリ104に一時保存されている前フレームデータが、図5のフレーム131である場合、ハイパスフィルタ107から出力される前フレームデータは、エッジ部分が強調されたフレーム132となり、フレームメモリ105に一時保存されている現フレームデータが、図5のフレーム141である場合、ハイパスフィルタ106から出力される現フレームデータは、エッジ部分が強調されたフレーム142となる。
That is, when the previous frame data temporarily stored in the
なお、ハイパスフィルタ106およびハイパスフィルタ107に代わって、例えば、Sobel(ゾーベル)フィルタなどのエッジ抽出フィルタのように、エッジなどの元の画像の特徴を抽出するとともに、ノイズも強調するフィルタを用いるようにしても良い。
Instead of the high-
ブロックマッチング動き探索部108は、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、ブロックマッチングを行い、算出された第1の動きベクトルを、符号メモリ110、最適動き決定部112、および最適近傍予測フィルタ最小自乗設計部113に供給する。
The block matching
ブロックマッチング処理とは、画像中の画素の輝度の差を利用して、移動物体の位置をブロックごとに割り出す技術である。具体的には、図6に示されるように、前フレームデータであるフレーム151および現フレームデータであるフレーム152が、それぞれ所定のブロックに分割され、フレーム152の探索元であるブロック163に対して、対応するフレーム151のブロック161周辺の探索範囲162内においてマッチング処理が行われて、フレーム153に示されるような第1の動きベクトルが算出される。
Block matching processing is a technique for determining the position of a moving object for each block using the difference in luminance of pixels in an image. Specifically, as shown in FIG. 6, the
ブロックマッチング動き探索部108は、更に、算出された第1の動きベクトルと前フレームデータから、第1の動きベクトルを用いた動き予測により、このフレームが復号された場合の予測フレームを算出し、絶対値算出部109に供給する。
The block matching
絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームと、ハイパスフィルタ106から供給された現フレームデータを基に、ブロックマッチング動き探索部108により実行された動きベクトル探索処理により得られた第1の動きベクトルによる予測の野絶対値誤差を算出し、評価値変更ブロックマッチング動き探索部111に供給する。
The absolute value
図7を用いて、絶対値誤差算出部109が実行する処理について説明する。
The processing executed by the absolute value
例えば、図7のブロック161と、ブロック161を含むフレームの次のフレーム(現フレーム)に含まれるブロック162に示されるように、ブロック内に、複数の動きが混入した場合、ブロックマッチング動き探索部108による通常のブロックマッチングで算出される第1の動きベクトルは、いずれかの動きに引きずられ、ブロック内の一方の動きには合致するが、他方の動きには合致しないものとなってしまう。
For example, when a plurality of motions are mixed in the block as shown in the
例えば、ブロックマッチング動き探索部108から供給された予測フレームの対応するブロックがブロック163である場合、通常のブロックマッチング処理では、ブロック163の一方の動き(右側のボールの上側への動き)は正確に反映されているが、他方の動き(左側のボールが下に向かって動く動き)は正確に反映されない。
For example, when the corresponding block of the prediction frame supplied from the block matching
そこで、絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームの対応するブロック163と、現フレームに含まれるブロック164とを比較して、絶対値誤差を求める。絶対値誤差算出部109により得られた絶対値誤差を視覚化すると、ブロック165に示されるようになる。そして、ブロック内を、例えば、4×4の正方行列として、この絶対値誤差を数値化すると、ブロック内の絶対値誤差の大きさと位置を示すマトリクス166を得ることができる。絶対値誤差算出部109は、このマトリクス166を絶対値誤差情報として、評価値変更ブロックマッチング動き探索部111に供給する。
Therefore, the absolute value
符号メモリ110は、供給された符号を一時保存し、デコーダ114および符号出力部115に供給する。
The
評価値変更ブロックマッチング動き探索部111は、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータに対して、絶対値誤差算出部109により算出された絶対値誤差(図7を用いて説明したマトリクス166に対応する情報)で画素位置ごとに重み付けを行うことにより、ブロックマッチング動き探索部108で得られた第1の動きベクトルの誤差が大きい部分の重みが増すようにしてブロックマッチングを行い、算出された第2の動きベクトルを、符号メモリ110、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。
The evaluation value change block matching
すなわち、ブロック内の位置(x、y)における差分自乗誤差値をf(x、y)とし、ブロック内の位置(x、y)におけるブロックマッチング動き探索部108による動き探索の絶対値誤差をg(x、y)とした場合、ブロックマッチング動き探索部108による動き探索が次の式(1)で表される場合、評価値変更ブロックマッチング動き探索部111による動き探索は、次の式(2)で表される。
That is, the difference square error value at the position (x, y) in the block is f (x, y), and the absolute value error of the motion search by the block matching
評価値変更ブロックマッチング動き探索部111の処理の詳細については後述する。
Details of the process of the evaluation value change block matching
最適動き決定部112は、ブロックマッチング動き探索部108から供給された第1の動きベクトル、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル、並びに、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、各ブロックの画素位置ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるべきかを示す最適動きフラグを生成し、符号メモリ110および最適近傍予測フィルタ最小自乗設計部113に供給する。最適動き決定部112の処理の詳細と最適動きフラグについては後述する。
The optimal
最適近傍予測フィルタ最小自乗設計部113は、ブロックマッチング動き探索部108から供給された第1の動きベクトル、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル、最適動き決定部112から供給された最適動きフラグ、並びに、ハイパスフィルタ106およびハイパスフィルタ107から供給された現フレームデータと前フレームデータを用いて、2つの動きベクトルごとに、最適予測フィルタを設計し、そのフィルタ係数を、符号メモリ110に供給する。最適近傍予測フィルタ最小自乗設計部113の詳細については後述する。
The optimal neighborhood prediction filter least
デコーダ114は、基準フレーム符号化部102から供給される基準フレームの符号化データ、符号メモリ114から供給される、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、および、最適予測フィルタを基に、デコードを行い、デコードされたフレームデータを、フレームメモリ104に供給する。デコーダ114の詳細については後述する。
The
符号出力部115は、符号メモリ114から供給される、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、および、最適予測フィルタを、記録部83または復号部84に出力する。
The
次に、図8は、評価値変更ブロックマッチング動き探索部111の更に詳細な機能を示す機能ブロック図である。
Next, FIG. 8 is a functional block diagram showing further detailed functions of the evaluation value change block matching
評価値変更ブロックマッチング動き探索部111は、絶対値誤差取得部171、現フレームデータ取得部172、前フレームデータ取得部173、および、重み付けブロックマッチング動き探索部174で構成されている。
The evaluation value change block matching
絶対値誤差取得部171は、絶対値誤差算出部109から供給された絶対値誤差を取得し、重み付けブロックマッチング動き探索部174に供給する。
The absolute value
現フレームデータ取得部172は、ハイパスフィルタ106から供給された現フレームデータを取得し、重み付けブロックマッチング動き探索部174に供給する。
The current frame
前フレームデータ取得部173は、ハイパスフィルタ107から供給された前フレームデータを取得し、重み付けブロックマッチング動き探索部174に供給する。
The previous frame
重み付けブロックマッチング動き探索部174は、絶対値誤差取得部171により取得された絶対値誤差(図7を用いて説明したマトリクス166に対応する情報)で画素位置ごとに重み付けを行い、現フレームデータと前フレームデータに対してブロックマッチングを行い、検出された第2の動きベクトルを出力する。
The weighted block matching
具体的には、図9に示されるように、前フレームデータであるフレーム151および現フレームデータであるフレーム152が、それぞれ所定のブロックに分割され、フレーム152の探索元であるブロック163に対して、対応するフレーム151のブロック161周辺の探索範囲162内とのマッチング処理が、絶対値誤差に基づいて重み付けされて実行される。したがって、第1の動きベクトルが、図6を用いて説明したように、人間の横方向の動きを検出したものであったのに対して、重み付けブロックマッチング動き探索部174においては、フレーム181に示されるように、例えば、手やボールの動きなど、第1の動きベクトルとは異なる縦方向や斜め方向の動きが、第2の動きベクトルとして検出される。
Specifically, as shown in FIG. 9, the
図10は、最適動き決定部112の更に詳細な機能を示す機能ブロック図である。
FIG. 10 is a functional block diagram showing further detailed functions of the optimum
最適動き決定部112は、第1の動き探索結果取得部201、第2の動き探索結果取得部202、前フレームデータ取得部203、現フレームデータ取得部204、第1の予測データ生成部205、第2の予測データ生成部206、第1の予測誤差検出部207、第2の予測誤差検出部208、および、最適動きフラグ検出部209で構成されている。
The optimal
第1の動き探索結果取得部201は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1の予測データ生成部205に供給する。
The first motion search
第2の動き探索結果取得部202は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2の予測データ生成部206に供給する。
The second motion search
前フレームデータ取得部203は、ハイパスフィルタ106から供給された前フレームデータを取得し、第1の予測データ生成部205および第2の予測データ生成部206に供給する。
The previous frame
現フレームデータ取得部204は、ハイパスフィルタ107から供給された現フレームデータを取得し、第1の予測誤差検出部207および第2の予測誤差検出部208に供給する。
The current frame
第1の予測データ生成部205は、第1の動き探索結果取得部201から供給された第1の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第1の動きベクトルを用いて復号処理を行った場合の画像データに対応する第1の予測データを生成し、第1の予測誤差検出部207に供給する。
The first prediction
第2の予測データ生成部206は、第2の動き探索結果取得部202から供給された第2の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第2の動きベクトルを用いて復号処理を行った場合の画像データに対応する第2の予測データを生成し、第2の予測誤差検出部208に供給する。
The second prediction
第1の予測誤差検出部207は、第1の予測データ生成部205から供給された第1の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第1の予測データと現フレームデータとの予測誤差である第1の予測誤差を検出し、最適動きフラグ検出部209に供給する。
The first prediction
第2の予測誤差検出部208は、第2の予測データ生成部206から供給された第2の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第2の予測データと現フレームデータとの予測誤差である第2の予測誤差を検出し、最適動きフラグ検出部209に供給する。
The second prediction
最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのは、第1の予測データであるか第2の予測データであるかを判断し、ブロック内の画素ごとに、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグを設定し、出力する。
The optimum motion
図11を参照して、最適動きフラグの設定について説明する。 The setting of the optimum motion flag will be described with reference to FIG.
第1の予測データ生成部205により第1の動きベクトルを用いて生成された第1の予測データに含まれるあるブロックがブロック221である場合、第1の予測誤差検出部207において、現フレームデータ取得部204により取得された現フレームデータの対応するブロック223とブロック221とが比較されて第1の予測誤差が検出される。そして、第2の予測データ生成部206により第2の動きベクトルを用いて生成された第2の予測データに含まれるあるブロックがブロック222である場合、第2の予測誤差検出部208において、現フレームデータ取得部204により取得された現フレームデータの対応するブロック223とブロック222とが比較されて第2の予測誤差が検出される。
When a certain block included in the first prediction data generated by using the first motion vector by the first prediction
例えば、第1の動きベクトルを使うべき画素位置にフラグ0が、第2の動きベクトルを使うべき画素位置にフラグ1が設定される場合、最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのが第1の予測データである場合に対応する画素位置にフラグ0を設定し、予測誤差が少ないのが第2の予測データである場合に対応する画素位置にフラグ1を設定する。
For example, when the
図11の動きフラグ224は、例えば、ブロック内の画素数が4×4である場合の最適動きフラグの例を示している。すなわち、図中右側のボールの動きは、ブロック221に示されるように、第1の動きベクトルで精度よく予測され、図中左側のボールの動きは、ブロック222に示されるように、第2の動きベクトルで精度よく予測されるので、それぞれの画素位置に、対応するフラグが設定される。
The
なお、ここでは、各ブロックの画素位置ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるべきかを示す最適動きフラグを生成するものとして説明したが、最適動きフラグは、画素単位で設定する以外にも、例えば、2×2や3×3などの所定の範囲内の複数の画素における最適動きフラグとして設定するようにしても良い。 In addition, although demonstrated here as what produces | generates the optimal motion flag which shows which of the 1st motion vector and the 2nd motion vector should be used for every pixel position of each block, In addition to being set in units of pixels, for example, it may be set as an optimal motion flag in a plurality of pixels within a predetermined range such as 2 × 2 or 3 × 3.
次に、図12は、最適近傍予測フィルタ最小自乗設計部113の更に詳細な機能を示す機能ブロック図である。
Next, FIG. 12 is a functional block diagram showing further detailed functions of the optimum neighborhood prediction filter least
最適近傍予測フィルタ最小自乗設計部113は、第1の動き探索結果取得部241、第2の動き探索結果取得部242、最適動きフラグ取得部243、前フレームデータ取得部244、現フレームデータ取得部245、第1のタップ抽出部246、第2のタップ抽出部247、第1の近傍予測フィルタ係数算出部248、および、第2の近傍予測フィルタ係数算出部249で構成されている。
The optimal neighborhood prediction filter least
第1の動き探索結果取得部241は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1のタップ抽出部246に供給する。
The first motion search
第2の動き探索結果取得部242は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2のタップ抽出部247に供給する。
The second motion search
最適動きフラグ取得部243は、最適動き決定部112から供給された最適動きフラグを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
The optimal motion flag acquisition unit 243 acquires the optimal motion flag supplied from the optimal
前フレームデータ取得部244は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1のタップ抽出部246および第2のタップ抽出部247に供給する。
The previous frame
現フレームデータ取得部245は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
The current frame
第1のタップ抽出部246は、第1の動き探索結果取得部241から第1の動きベクトルの供給を受け、第1の近傍予測フィルタ係数算出部248から指定された注目画素に対して、第1の動きベクトルに基づいて予測される画素位置の周辺の複数画素を第1のタップとし、第1のタップのそれぞれの位置の情報と第1のタップに対応する画素値を抽出し、第1の近傍予測フィルタ係数算出部248に供給する。
The first
第2のタップ抽出部247は、第2の動き探索結果取得部242から第2の動きベクトルの供給を受け、第2の近傍予測フィルタ係数算出部249から指定された注目画素に対して、第2の動きベクトルに基づいて予測される画素位置の周辺の複数画素を第2のタップとし、第2のタップのそれぞれの位置の情報と第2のタップに対応する画素値を抽出し、第2の近傍予測フィルタ係数算出部249に供給する。
The second tap extraction unit 247 is supplied with the second motion vector from the second motion search
例えば、第1のタップおよび第2のタップとして、5つの画素が抽出される場合、図13に示されるように、第1の動きベクトルまたは第2の動きベクトルにあわせて、注目画素に対応する画素と、その周辺画素との5つの画素が、第1のタップまたは第2のタップとして抽出されて、それぞれの位置情報と、タップの位置に対応する画素値が、第1の近傍予測フィルタ係数算出部248または第2の近傍予測フィルタ係数算出部249に供給される。
For example, when five pixels are extracted as the first tap and the second tap, as shown in FIG. 13, the pixel corresponds to the target pixel according to the first motion vector or the second motion vector. Five pixels of the pixel and its surrounding pixels are extracted as the first tap or the second tap, and the position information and the pixel value corresponding to the position of the tap are the first neighborhood prediction filter coefficients. The
なお、図13においては、注目画素に対応して予測される画素位置と、その上下左右に隣接する5つの画素を、予測フィルタを算出するための周辺画素として選択するものとして説明したが、予測フィルタを算出するための周辺画素は、これに限らず、例えば、5つ以外の数の画素を抽出することができるようにしても良いし、斜めの位置に隣接する画素や、隣接する2つ以上の連続する画素、または、隣接しない周辺画素などを、予測フィルタを算出するための周辺画素として選択することができるようにしても良い。 In FIG. 13, the pixel position predicted corresponding to the target pixel and the five pixels adjacent to the top, bottom, left, and right are described as being selected as peripheral pixels for calculating the prediction filter. The peripheral pixels for calculating the filter are not limited to this. For example, a number of pixels other than five may be extracted, pixels adjacent to an oblique position, or two adjacent pixels may be extracted. The above continuous pixels or neighboring pixels that are not adjacent to each other may be selected as neighboring pixels for calculating a prediction filter.
第1の近傍予測フィルタ係数算出部248は、現フレームデータ取得部245から現フレームの供給を受け、最適動きフラグ取得部243から供給される最適動きフラグを基に、第1の動きフラグを使用するべき画素を注目画素とする。そして、第1の近傍予測フィルタ係数算出部248は、第1のタップ抽出部246に注目画素に対応する第1のタップを要求して、第1のタップに対応するそれぞれの位置における画素値を取得する。
The first neighborhood prediction filter
そして、第1の近傍予測フィルタ係数算出部248は、第1の動きフラグを使用するべきそれぞれの画素において、次の式(3)を求める。
And the 1st neighborhood prediction filter
ここで、ft(x、y)は、現フレームの注目画素の画素値であり、ft-1(x、y)は、前フレームの対応する第1のタップのそれぞれの位置の画素値を示す。式(3)のa1乃至a5は、第1の動きベクトルに対応する予測係数である。 Here, f t (x, y) is the pixel value of the pixel of interest in the current frame, and f t−1 (x, y) is the pixel value at each position of the corresponding first tap in the previous frame. Indicates. In Equation (3), a 1 to a 5 are prediction coefficients corresponding to the first motion vector.
そして、第1の近傍予測フィルタ係数算出部248は、式(3)を基に、最小自乗法を用いて、第1の動きベクトルに対する予測係数a1乃至a5の最適の値を算出し、最適フィルタ係数として出力する。
Then, the first neighborhood prediction filter
第2の近傍予測フィルタ係数算出部249は、現フレームデータ取得部245から現フレームの供給を受け、最適動きフラグ取得部243から供給される最適動きフラグを基に、第2の動きフラグを使用するべき画素を注目画素とする。そして、第2の近傍予測フィルタ係数算出部249は、第2のタップ抽出部247に注目画素に対応する第2のタップを要求して、第2のタップに対応するそれぞれの位置における画素値を取得する。
The second neighborhood prediction filter
そして、第2の近傍予測フィルタ係数算出部249は、第2の動きフラグを使用するべきそれぞれの画素において、次の式(4)を求める。
Then, the second neighborhood prediction filter
ここで、ft(x、y)は、現フレームの注目画素の画素値であり、ft-1(x、y)は、前フレームの対応する第2のタップのそれぞれの位置の画素値を示す。式(3)のb1乃至b5は、第2の動きベクトルに対応する予測係数である。 Here, f t (x, y) is the pixel value of the pixel of interest in the current frame, and f t−1 (x, y) is the pixel value at each position of the corresponding second tap in the previous frame. Indicates. In Equation (3), b 1 to b 5 are prediction coefficients corresponding to the second motion vector.
第2の近傍予測フィルタ係数算出部249は、式(4)を基に、最小自乗法を用いて、第2の動きベクトルに対する予測係数b1乃至b5の最適の値を算出し、最適フィルタ係数として出力する。
The second neighborhood prediction filter
以上説明したように、符号化部82においては、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5を生成して符号メモリ110に一時記憶させ、符号出力部115から出力するとともに、デコーダ114においてデコードさせて、次のフレーム符号化に利用する。
As described above, in the
次に、図14は、図3のデコーダ114の更に詳細な機能を示す機能ブロック図である。
Next, FIG. 14 is a functional block diagram showing further detailed functions of the
デコーダ114は、基準フレームデコーダ271、フレームメモリ272、動き対象位置算出部273、画素切り出し部274、係数選択部275、フィルタ係数乗算部276、および、フレームメモリ227で構成されている。
The
基準フレームデコーダ271は、基準フレームの符号を取得し、基準フレームを復号して出力するとともに、フレームメモリ272に供給する。
The
フレームメモリ272は、基準フレームデコーダ271から供給された、復号された基準フレーム、または、後述するフレームメモリ277から供給された、復号された基準フレーム以外のフレームの供給を受け、これを一時保持し、画素切り出し部274に供給する。
The
すなわち、デコーダ114においては、フレーム内符号化された基準フレームと、その他のフレームの動き成分である、上述した、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5の供給を受け、復号処理が行われるようになされている。したがって、図15に示されるように、基準フレームは、基準フレームデコーダ271において、フレーム内での復号処理が行われ、動き成分を符号として供給されている基準フレーム以外のフレームは、前のフレームの復号結果を基に、復号処理が行われるようになされている。
That is, in the
動き対象位置算出部273は、第1の動きベクトル、第2の動きベクトル、および、最適動きフラグの供給を受け、画素ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるかを決定し、注目画素の動き対象位置を算出し、画素切り出し部274に供給する。
The motion target
画素切り出し部274は、フレームメモリ272に保持されている、一つ前の復号画像データを読み出し、動き対象位置算出部273から供給される動き対象位置の周辺画素を、符号化時に近傍予測フィルタ係数を設定したときに用いたタップと同様に(例えば、図13に示される5タップ)設定して切り出し、フィルタ係数乗算部276に供給する。
The
係数選択部275は、最適動きフラグと最適フィルタ係数の供給を受け、注目画素を予測するためのフィルタ係数として、第1の動きフラグに対応する最適フィルタ係数a1乃至a5または第2の動きフラグに対応する最適フィルタ係数b1乃至b5のいずれを用いるかを決定し、フィルタ係数乗算部276に供給する。
The coefficient selection unit 275 is supplied with the optimal motion flag and the optimal filter coefficient, and uses the optimal filter coefficients a 1 to a 5 corresponding to the first motion flag or the second motion as filter coefficients for predicting the target pixel. Which of the optimum filter coefficients b 1 to b 5 corresponding to the flag is to be used is determined and supplied to the
フィルタ係数乗算部276は、画素切り出し部274から、最適な動きベクトルを基に抽出された周辺画素(例えば、5タップ)の供給を受け、係数選択部275から供給されたフィルタ係数を乗算して注目画素の画素値を求める。フィルタ係数乗算部276は、このようにして求められた1フレーム分の画素値、すなわち、復号された画像データを、フレームメモリ227に供給する。
The filter
フレームメモリ227は、フィルタ係数乗算部276から供給された復号された画像データを保持し、復号結果として出力するとともに、次のフレームの復号に用いるため、フレームメモリ272に供給して保持させる。
The frame memory 227 holds the decoded image data supplied from the filter
デコーダ114から出力される復号結果は、フレームメモリ104に供給され、次のフレームの符号化に用いられる。
The decoding result output from the
図3乃至図15を用いて説明したようにして、符号化部82においてフレームデータが符号化される。
As described with reference to FIGS. 3 to 15, the
次に、図16は、図2の復号部84の更に詳細な構成を示す機能ブロック図である。
Next, FIG. 16 is a functional block diagram showing a more detailed configuration of the
なお、図14における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。 Note that portions corresponding to those in FIG. 14 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
すなわち、図16の復号部84は、図14のデコーダ114と基本的に同様の構成および機能を有しており、同様の処理を実行するものである。
That is, the
なお、図2の再生機61が、符号化部82により符号化され、記録部83により所定の記録媒体に記録された画像データを再生することができるようになされている場合、復号部71も、図16に示される復号部84と基本的に同様の構成および機能を有しており、同様の処理を実行することができるようになされている。
In the case where the player 61 in FIG. 2 is configured to be able to reproduce the image data encoded by the
次に、図17のフローチャートを参照して、符号化部82が実行する符号化処理について説明する。
Next, the encoding process executed by the
ステップS1において、基準フレーム抽出部101は、供給されたフレームデータは、基準フレームであるか否かを判断する。ステップS1において、基準フレームではないと判断された場合、処理は、後述するステップS6に進む。
In step S1, the reference
このとき供給されたフレーム画像データは、再生機61の復号部71で復号され、D/A変換部72でアナログデータに変換されて、D/A変換部72からA/D変換部81へアナログの画像データが伝送されて、A/D変換部81において、デジタルの画像データに変換されたものである。したがって、ステップS1において供給されたフレームデータには、D/A変換部72またはA/D変換部81のデータ変換処理の過程で、または、その間の伝送路上で、例えば、上述したアナログノイズなどのノイズ成分が付加されている。
The frame image data supplied at this time is decoded by the
なお、上述したように、D/A変換部72またはA/D変換部81において、ノイズ成分が積極的に付加されている場合もある。そのような場合、ステップS1の前の段階において、A/D変換部81は、供給されたアナログの画像データをデジタルの画像データに変換するとともに、ノイズ成分を付加する処理を実行し、ノイズ成分が付加されたデジタルの画像データを、符号化部82に供給する。
Note that, as described above, in some cases, a noise component is positively added in the D /
ステップS1において、基準フレームであると判断された場合、ステップS2において、基準フレーム抽出部101は、供給されたフレームデータを、基準フレーム符号化部102に供給するので、基準フレーム符号化部102は、例えば、JPEGやADRCなどのフレーム内符号化方法を用いて、供給された基準フレームを符号化し、基準フレームデコータ103、デコーダ114、および、符号出力部115に供給する。
If it is determined in step S1 that the frame is a reference frame, in step S2, the reference
ステップS3において、符号出力部115は、符号化された基準フレームを出力する。
In step S3, the
ステップS4において、基準フレームデコーダ103は、供給された基準フレームをデコードし、フレームメモリ104に供給する。
In step S <b> 4, the
ステップS5において、フレームメモリ104は、基準フレームデコーダ103においてデコードされた基準フレームをキャッシュし、処理は、後述するステップS17に進む。
In step S5, the
ステップS1において、基準フレームではないと判断された場合、ステップS6において、基準フレーム抽出部101は、供給されたフレームデータを、フレームメモリ105に供給する。そして、フレームメモリ105は、供給されたフレームデータをハイパスフィルタ106に、フレームメモリ104は、保存されているフレームデータをハイパスフィルタ107に、それぞれ供給するので、ハイパスフィルタ106は現フレームにハイパスフィルタをかけて、ブロックマッチング動き探索部108、絶対値誤差算出部109、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給し、ハイパスフィルタ107は前フレームにハイパスフィルタをかけて、ブロックマッチング動き探索部108、評価値変更ブロックマッチング動き探索部111、最適動き決定部112、および、最適近傍予測フィルタ最小自乗設計部113に供給する。
If it is determined in step S <b> 1 that the frame is not a reference frame, the reference
ステップS7において、ブロックマッチング動き探索部108は、供給されたフレームから、未処理ブロックのいずれかを選択する。
In step S7, the block matching
ステップS8において、ブロックマッチング動き探索部108は、第1の動きベクトルの探索処理を実行する。具体的には、ブロックマッチング動き探索部108は、図6を用いて説明したように、現フレームデータであるフレーム152のうちの選択された探索元であるブロック163に対して、対応する前フレームデータのブロック161周辺の探索範囲162内とのマッチング処理を実行し、第1の動きベクトルを算出し、算出された第1の動きベクトルを、符号メモリ110、最適動き決定部112、および最適近傍予測フィルタ最小自乗設計部113に供給する。
In step S8, the block matching
ステップS9において、ブロックマッチング動き探索部108は、算出された第1の動きベクトルと前フレームデータから、予測フレームを算出し、絶対値算出部109に供給するので、絶対値誤差算出部109は、ブロックマッチング動き探索部108から供給された予測フレームと、ハイパスフィルタ106から供給された現フレームデータを基に、ブロックマッチング動き探索部108により実行された第1の動きベクトル探索処理の絶対値誤差(例えば、図7を用いて説明したマトリクス166に対応する情報)を算出し、評価値変更ブロックマッチング動き探索部111に供給する。
In step S9, the block matching
ステップS10において、図18を用いて後述する評価値変更ブロックマッチング動き探索処理が実行される。 In step S10, an evaluation value change block matching motion search process described later with reference to FIG. 18 is executed.
ステップS11において、図19を用いて後述する最適動き決定処理が実行される。 In step S11, the optimum motion determination process described later with reference to FIG. 19 is executed.
ステップS12において、図20を用いて後述する最適フィルタ係数算出処理が実行される。 In step S12, the optimum filter coefficient calculation process described later with reference to FIG. 20 is executed.
ステップS13において、デコーダ114または符号出力部115は、フレーム内のすべてのブロックの処理が終了され、符号メモリ110に、1フレーム分の符号が記録されたか否かを判断する。ステップS13において、フレーム内のすべてのブロックの処理が終了されていないと判断された場合、処理は、ステップS7に戻り、それ以降の処理が繰り返される。
In step S <b> 13, the
ステップS13において、フレーム内のすべてのブロックの処理が終了されたと判断された場合、ステップS14において、符号出力部115は、符号メモリ110から1フレーム分の符号を読み出して、符号データを出力する。
If it is determined in step S13 that the processing of all blocks in the frame has been completed, the
ステップS15において、図21を用いて後述する復号処理が、デコーダ114において実行される。 In step S15, a decoding process, which will be described later with reference to FIG.
ステップS16において、フレームメモリ104は、デコーダ114から供給された、デコードされたフレームデータをキャッシュする。
In step S16, the
ステップS17において、基準フレーム抽出部101は、最後のフレームの処理が終了したか否かを判断する。ステップS17において、最後のフレームの処理が終了していないと判断された場合、処理は、ステップS1に戻り、それ以降の処理が繰り返される。ステップS17において、最後のフレームの処理が終了したと判断された場合、処理は終了される。
In step S <b> 17, the reference
このような処理により、符号化部82においてフレームデータが符号化される。
By such processing, the
次に、図18のフローチャートを参照して、図17のステップS10において実行される、評価値変更ブロックマッチング動き探索処理について説明する。 Next, the evaluation value change block matching motion search process executed in step S10 of FIG. 17 will be described with reference to the flowchart of FIG.
ステップS31において、評価値変更ブロックマッチング動き探索部111の絶対値誤差取得部171は、絶対値誤差算出部109から供給された、第1の動きベクトルの探索処理結果と得られるべき画像との絶対値誤差(例えば、図7を用いて説明したマトリクス166に対応する情報)を取得し、重み付けブロックマッチング動き探索部174に供給する。
In step S31, the absolute value
ステップS32において、現フレームデータ取得部172は、ハイパスフィルタ106から供給された現フレームデータを取得し、前フレームデータ取得部173は、ハイパスフィルタ107から供給された前フレームデータを取得し、それぞれ、重み付けブロックマッチング動き探索部174に供給する。
In step S32, the current frame
ステップS33において、重み付けブロックマッチング動き探索部174は、絶対値誤差取得部171により取得された絶対値誤差に対応する重み付けを施して、現フレームデータと前フレームデータに対してブロックマッチングを行い、第2の動きベクトルの探索処理を実行し、探索結果として第2の動きベクトルを出力する。具体的には、重み付けブロックマッチング動き探索部174は、図9を用いて説明したように、現フレームデータであるフレーム152の探索元であるブロック163に対して、対応する前フレームデータのフレーム151のブロック161周辺の探索範囲162内とのマッチング処理を、絶対値誤差に基づいた重み付けに基づいて実行する。ステップS33の処理の終了後、処理は、図17のステップS10に戻り、ステップS11に進む。
In step S33, the weighted block matching
このような処理により、通常のブロックマッチングとは異なる方法でブロックマッチングが行われ、通常のブロックマッチングによって求められる第1の動きベクトルとは異なる第2の動きベクトルが探索される。 By such processing, block matching is performed by a method different from normal block matching, and a second motion vector different from the first motion vector obtained by normal block matching is searched.
次に、図19のフローチャートを参照して、図17のステップS11において実行される、最適動き決定処理について説明する。 Next, the optimal motion determination process executed in step S11 of FIG. 17 will be described with reference to the flowchart of FIG.
ステップS51において、最適動き決定部112の第1の動き探索結果取得部201は、ブロックマッチング動き探索部108から供給された第1の動きベクトル探索結果を取得して、第1の予測データ生成部205に供給し、第2の動き探索結果取得部202は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトル探索結果を取得して、第2の予測データ生成部206に供給する。
In step S51, the first motion search
ステップS52において、前フレームデータ取得部203は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1の予測データ生成部205および第2の予測データ生成部206に供給する。
In step S <b> 52, the previous frame
ステップS53において、第1の予測データ生成部205は、第1の動き探索結果取得部201から供給された第1の動きベクトル探索結果である第1の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第1の動きベクトルを用いて復号処理を行った場合の画像データに対応する第1の予測データを生成し、第1の予測誤差検出部207に供給する。
In step S <b> 53, the first prediction
ステップS54において、第2の予測データ生成部206は、第2の動き探索結果取得部202から供給された第2の動きベクトル探索結果である第2の動きベクトル、および、前フレームデータ取得部203から供給された前フレームデータを取得し、第2の動きベクトルを用いて復号処理を行った場合の画像データに対応する第2の予測データを生成し、第2の予測誤差検出部208に供給する。
In step S54, the second prediction
ステップS55において、現フレームデータ取得部204は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の予測誤差検出部207および第2の予測誤差検出部208に供給する。
In step S55, the current frame
ステップS56において、第1の予測誤差検出部207は、第1の予測データ生成部205から供給された第1の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第1の予測データと現フレームデータとの予測誤差である第1の予測誤差を画素ごとに検出し、最適動きフラグ検出部209に供給する。
In step S <b> 56, the first prediction
ステップS57において、第2の予測誤差検出部208は、第2の予測データ生成部206から供給された第2の予測データ、および、現フレームデータ取得部204から供給された現フレームデータを取得し、第2の予測データと現フレームデータとの予測誤差である第2の予測誤差を画素ごとに検出し、最適動きフラグ検出部209に供給する。
In step S57, the second prediction
ステップS58において、最適動きフラグ検出部209は、第1の予測誤差検出部207から供給された第1の予測誤差、および、第2の予測誤差検出部208から供給された第2の予測誤差を画素ごとに比較し、予測誤差が少ないのは、第1の予測データであるか第2の予測データであるかを判断し、ブロック内の画素ごとに、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグを検出して出力し、処理は、図17のステップS11に戻り、ステップS12に進む。
In step S58, the optimal motion
このような処理により、ブロック内のそれぞれの画素を復号するに当たって、第1の動きベクトルを使うべきであるか、第2の動きベクトルを使うべきであるかを示す最適動きフラグが生成されて、出力される。 By such a process, an optimal motion flag indicating whether the first motion vector should be used or the second motion vector should be used in decoding each pixel in the block, Is output.
次に、図20のフローチャートを参照して、図17のステップS12において実行される、最適フィルタ係数算出処理について説明する。 Next, the optimum filter coefficient calculation process executed in step S12 of FIG. 17 will be described with reference to the flowchart of FIG.
ステップS81において、最適近傍予測フィルタ最小自乗設計部113の第1の動き探索結果取得部241は、ブロックマッチング動き探索部108から供給された第1の動きベクトルを取得し、第1のタップ抽出部246に供給し、第2の動き探索結果取得部242は、評価値変更ブロックマッチング動き探索部111から供給された第2の動きベクトルを取得し、第2のタップ抽出部247に供給する。
In step S81, the first motion search
ステップS82において、前フレームデータ取得部244は、ハイパスフィルタ107から供給された前フレームデータを取得し、第1のタップ抽出部246および第2のタップ抽出部247に供給し、現フレームデータ取得部245は、ハイパスフィルタ106から供給された現フレームデータを取得し、第1の近傍予測フィルタ係数算出部248および第2の近傍予測フィルタ係数算出部249に供給する。
In step S82, the previous frame
ステップS83において、第1の近傍予測フィルタ係数算出部248は、最適動きフラグ取得部243から供給される最適動きフラグを基に、第1の動きフラグを使用するべき画素を注目画素として、第1のタップ抽出部246に注目画素に対応する第1のタップを要求する。そして、第1のタップ抽出部246は、第1の動き探索結果取得部241から供給された第1の動きベクトル探索結果である第1の動きベクトルを基に、前フレームデータ取得部244により抽出された前フレームデータから、フィルタ検出用の所定数の第1のタップのそれぞれの位置と対応する画素値を抽出し、第1の近傍予測フィルタ係数算出部248に供給する。
In step S83, the first neighborhood prediction filter
ステップS84において、第1の近傍予測フィルタ係数算出部248は、抽出された第1のタップを基に、現フレームデータの対象となる画素値と、予測タップの画素値との関係式である、上述した式(3)を作成する。
In step S84, the first neighborhood prediction filter
ステップS85において、第1の近傍予測フィルタ係数算出部248は、最小自乗法を用いて、第1の近傍予測フィルタ係数を算出して出力する。
In step S85, the first neighborhood prediction filter
ステップS86において、第2の近傍予測フィルタ係数算出部249は、最適動きフラグ取得部243から供給される最適動きフラグを基に、第2の動きフラグを使用するべき画素を注目画素として、第2のタップ抽出部247に注目画素に対応する第1のタップを要求する。そして、第2のタップ抽出部247は、第2の動き探索結果取得部242から供給された第2の動きベクトル探索結果である第2の動きベクトルを基に、前フレームデータ取得部244により抽出された前フレームデータから、フィルタ検出用の所定数の第1のタップのそれぞれの位置と対応する画素値を抽出し、第2の近傍予測フィルタ係数算出部249に供給する。
In step S <b> 86, the second neighborhood prediction filter
ステップS87において、第2の近傍予測フィルタ係数算出部249は、抽出された第2のタップを基に、現フレームデータの対象となる画素値と、予測タップの画素値との関係式である、上述した式(4)を作成する。
In step S87, the second neighborhood prediction filter
ステップS88において、第2の近傍予測フィルタ係数算出部249は、最小自乗法を用いて、第2の近傍予測フィルタ係数を算出して出力し、処理は、図17のステップS12に戻り、ステップS13に進む。
In step S88, the second neighborhood prediction filter
このような処理により、最適近傍予測フィルタ最小自乗設計部113は、第1の動きベクトルに対する予測係数a1乃至a5の最適の値、および、第2の動きベクトルに対する予測係数b1乃至b5の最適の値を算出し、最適フィルタ係数として出力することができる。
Through such processing, the optimum neighborhood prediction filter least
次に、図21のフローチャートを参照して、図17のステップS15において実行されるとともに、復号部84または復号部71において実行される復号処理について説明する。
Next, the decoding process executed in step S15 of FIG. 17 and executed in the
ステップS111において、デコーダ114、復号部84、または復号部71は、供給された符号化フレームは、基準フレームであるか否かを判断する。ステップS111において、基準フレームではないと判断された場合、処理は、ステップS114に進む。
In step S111, the
なお、供給された符号化フレームが、上述した符号化処理により符号化されたフレームデータである場合、そのフレームデータには、D/A変換部72、A/D変換部81、または、D/A変換部85のデータ変換処理の過程で、または、その間の伝送路上で、例えば、上述したアナログノイズなどのノイズ成分が付加されている。
When the supplied encoded frame is frame data encoded by the above-described encoding process, the frame data includes D /
ステップS111において、基準フレームであると判断された場合、ステップS112において、デコーダ114、復号部84、または復号部71の基準フレームデコーダ271は、供給された基準フレームを復号する。
If it is determined in step S111 that the frame is a reference frame, in step S112, the
なお、復号処理では、以下の処理においても、デコーダ114、復号部84、または復号部71のうちのいずれにおいても同様の処理が実行されるので、デコーダ114、復号部84、または復号部71という記載は必要に応じて省略する。
In the decoding process, since the same process is executed in any of the
ステップS113において、基準フレームデコーダ271は、復号された基準フレームを出力するとともに、フレームメモリ272に供給する。フレームメモリ272は、供給されたフレームデータをキャッシュし、処理は、後述するステップS122に進む。
In step S113, the
ステップS111において、基準フレームではないと判断された場合、ステップS114において、動き対象位置算出部273は、供給された、基準フレーム以外のフレームの符号化データのうち、未処理ブロックのいずれかを選択する。
If it is determined in step S111 that the frame is not a reference frame, in step S114, the motion target
第ステップS115において、動き対象位置算出部273は、1の動きベクトル、および、第2の動きベクトル、並びに、最適動きフラグを基に、画素ごとに、第1の動きベクトルと第2の動きベクトルとのいずれを用いるかを決定し、注目画素の動き対象位置を算出して、画素切り出し部274に供給する。
In step S115, the motion target
ステップS116において、画素切り出し部274は、フレームメモリ272に保持されている、一つ前の復号画像データ(すなわち、前フレームデータ)から、符号化時に近傍予測フィルタ係数を設定したときに用いたタップ(例えば、図13に示される5タップ)と同様に、注目画素の周辺画素を設定し、その画素値を取得して、フィルタ係数乗算部276に供給する。
In step S116, the
ステップS117において、係数選択部275は、供給された最適動きフラグに基づいて、フィルタ乗算部276の演算に用いる最適フィルタ係数を、画素ごとに選択し、フィルタ係数乗算部276に供給する。
In step S <b> 117, the coefficient selection unit 275 selects, for each pixel, the optimum filter coefficient used for the calculation of the
ステップS118において、フィルタ係数乗算部276は、画素切り出し部274から供給された周辺画素の画素値に係数選択部275から供給されたフィルタ係数を乗算して合計することにより、注目画素の画素値を求める。フィルタ係数乗算部276は、画素値とフィルタ係数との乗算結果の合計によって得られた画素値、すなわち、復号された画像データの1画素分の画素値を、フレームメモリ227に供給する。
In step S118, the filter
ステップS119において、デコーダ114、復号部84、または復号部71は、ブロック内のすべての画素の処理が終了されたか否かを判断する。ステップS119において、ブロック内のすべての画素の処理が終了されていないと判断された場合、処理は、ステップS115に戻り、それ以降の処理が繰り返される。
In step S119, the
ステップS119において、ブロック内のすべての画素の処理が終了されたと判断された場合、ステップS120において、デコーダ114、復号部84、または復号部71は、フレーム内のすべてのブロックの処理が終了されたか否かを判断する。ステップS120において、フレーム内のすべてのブロックの処理が終了されていないと判断された場合、処理は、ステップS114に戻り、それ以降の処理が繰り返される。
If it is determined in step S119 that the processing of all the pixels in the block has been completed, in step S120, the
ステップS120において、フレーム内のすべてのブロックの処理が終了されたと判断された場合、ステップS121において、フレームメモリ277は、1フレーム分の復号結果を出力するとともに、フレームメモリ272に供給する。フレームメモリ272は供給された復号結果をキャッシュする。
If it is determined in step S120 that the processing of all blocks in the frame has been completed, the frame memory 277 outputs the decoding result for one frame and supplies it to the
ステップS113またはステップS121の処理の終了後、ステップS122において、デコーダ114、復号部84、または復号部71は、最後のフレームの処理が終了したか否かを判断する。ステップS121において、最後のフレームの処理が終了していないと判断された場合、処理は、ステップS111に戻り、それ以降の処理が繰り返される。ステップS121において、最後のフレームの処理が終了したと判断された場合、復号部84、または復号部71の処理は終了され、デコーダ114が復号処理を実行している場合、処理は、図17のステップS15に戻り、ステップS16に進む。
After the process of step S113 or step S121 is completed, in step S122, the
このような処理により、フレーム内符号化された基準フレームと、その他のフレームの動き成分、すなわち、上述した、第1の動きベクトル、第2の動きベクトル、最適動きフラグ、並びに、第1の動きフラグに対応する最適フィルタ係数a1乃至a5および第2の動きフラグに対応する最適フィルタ係数b1乃至b5で構成される符号化フレームを復号することができる。 By such processing, the intra-frame-encoded reference frame and the motion components of the other frames, that is, the first motion vector, the second motion vector, the optimum motion flag, and the first motion described above. It is possible to decode an encoded frame including the optimum filter coefficients a 1 to a 5 corresponding to the flag and the optimum filter coefficients b 1 to b 5 corresponding to the second motion flag.
なお、上述したように、D/A変換部72またはD/A変換部85において、例えば、上述したアナログノイズなどのノイズ成分が積極的に付加されている場合もある。そのような場合、復号部71または復号部84において復号処理が行われた後、換言すれば、ステップS122の後の段階において、D/A変換部72またはD/A変換部85は、供給されたデジタルの画像データをアナログの画像データに変換するとともに、ノイズ成分を付加する処理を実行する。
As described above, in the D /
以上説明した処理により、符号化フレームデータに残差情報を含めることなく、符号化および復号処理を行うことができる。図2を用いて説明した画像表示システム51において、復号部71で復号されて出力される画像データは、D/A変換部72においてアナログ画像信号に変換され、伝送される。伝送されたアナログデータは、ディスプレイ62で表示されるか、A/D変換部81でデジタルデータに変換されて、符号化装置63に供給される。
By the processing described above, encoding and decoding processing can be performed without including residual information in the encoded frame data. In the
すなわち、符号化装置63に供給される画像は、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加された画像である。
That is, the image supplied to the encoding device 63 is an image to which noise has been added by the conversion processing of the D /
従来の符号化における場合のように、符号化情報に動き残差が含まれていた場合、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加されても、残差情報を基に、画像の劣化を防ぐことができるようになされている。
As in the case of conventional encoding, when motion residuals are included in the encoded information, by the conversion process of the D /
しかしながら、本発明を適用した場合、符号化フレームデータに残差情報を含めずに、符号化および復号処理を行うことができるので、D/A変換部72やA/D変換部81の変換処理により、または、データの伝送途中において、ノイズが付加されることにより、再生機61から出力されるアナログ画像信号を、良好な画質を維持したまま記録媒体に記録する(ダビングする、コピーする)ことができなくなる。
However, when the present invention is applied, since encoding and decoding processing can be performed without including residual information in the encoded frame data, conversion processing of the D /
更に、符号化装置63には、図3を用いて説明したように、ハイパスフィルタ106およびハイパスフィルタ107が設けられ、エッジなどの元の画像の特徴を抽出するとともに、ノイズも強調するようになされている。したがって、画像を記録媒体に記録(いわゆる、ダビングまたはコピーを実行)し、再生させる場合、符号化処理および復号処理が繰り返されることにより、ノイズが強調され、画像は大きく劣化する。
Further, as described with reference to FIG. 3, the encoding device 63 is provided with a high-
すなわち、本発明を適用した画像表示システムによると、再生機61から出力されるアナログ画像信号を、良好な画質を維持したまま記録媒体に記録する(ダビングする、コピーする)ことが不可能となる。 That is, according to the image display system to which the present invention is applied, it becomes impossible to record (dubbing or copying) the analog image signal output from the playback device 61 on a recording medium while maintaining good image quality. .
したがって、本発明を適用した図2の画像表示システム51は、コピー前のデータによる出力の質を落とすことなく、良好な質を維持したままでのコピーを不可能とすることができるような静止画像の符号化および復号が行われるような構成となっている。
Therefore, the
上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。この場合、例えば、図2を用いて説明した画像表示システムのすべてまたは一部は、図22に示されるようなパーソナルコンピュータ301により構成される。
The series of processes described above can also be executed by software. The software is a computer in which the program constituting the software is incorporated in dedicated hardware, or various functions can be executed by installing various programs, for example, a general-purpose personal computer For example, it is installed from a recording medium. In this case, for example, all or part of the image display system described with reference to FIG. 2 includes a
図22において、CPU(Central Processing Unit)311は、ROM(Read Only Memory)312に記憶されているプログラム、または記憶部318からRAM(Random Access Memory)313にロードされたプログラムにしたがって、各種の処理を実行する。RAM313にはまた、CPU311が各種の処理を実行する上において必要なデータなども適宜記憶される。
In FIG. 22, a CPU (Central Processing Unit) 311 performs various processes according to a program stored in a ROM (Read Only Memory) 312 or a program loaded from a
CPU311、ROM312、およびRAM313は、バス314を介して相互に接続されている。このバス314にはまた、入出力インタフェース315も接続されている。
The
入出力インタフェース315には、キーボード、マウスなどよりなる入力部316、ディスプレイやスピーカなどよりなる出力部317、ハードディスクなどより構成される記憶部318、モデム、ターミナルアダプタなどより構成される通信部319が接続されている。通信部319は、インターネットを含むネットワークを介しての通信処理を行う。
The input /
入出力インタフェース315にはまた、必要に応じてドライブ320が接続され、磁気ディスク331、光ディスク332、光磁気ディスク333、もしくは、半導体メモリ334などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部318にインストールされる。
A drive 320 is connected to the input /
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。 When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a network or a recording medium into a general-purpose personal computer or the like.
この記録媒体は、図22に示されるように、装置本体とは別に、ユーザにプログラムを供給するために配布される、プログラムが記憶されている磁気ディスク331(フロッピディスクを含む)、光ディスク332(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク333(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ334などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに供給される、プログラムが記憶されているROM312や、記憶部318に含まれるハードディスクなどで構成される。
As shown in FIG. 22, this recording medium is distributed to supply a program to a user separately from the apparatus main body, and includes a magnetic disk 331 (including a floppy disk) on which a program is stored, an optical disk 332 ( Package media including CD-ROM (compact disk-read only memory), DVD (including digital versatile disk), magneto-optical disk 333 (including MD (mini-disk) (trademark)), or
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。 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 may be performed in parallel or It also includes processes that are executed individually.
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。 In the present specification, the term “system” represents the entire apparatus constituted by a plurality of apparatuses.
51 画像表示システム, 61 再生機, 62 符号化装置, 71 復号部, 72 D/A変換部, 81 A/D変換部, 82 符号化部, 83 記録部, 84 復号部, 85 D/A変換部, 86 ディスプレイ, 101 基準フレーム抽出部, 102 基準フレーム符号化部, 103 基準フレームデコーダ, 104,105 フレームメモリ, 106,107 ハイパスフィルタ, 108 ブロックマッチング動き探索部, 109 絶対値誤差算出部, 110 符号メモリ, 111 評価値変更ブロックマッチング動き探索部, 112 最適動き決定部, 113 最適近傍予測フィルタ最小自乗設計部, 114 デコーダ, 115 符号出力部, 171 絶対値誤差取得部, 172 現フレームデータ取得部, 173 前フレームデータ取得部, 174 重み付けブロックマッチング動き探索部, 201 第1の動き探索結果取得部, 202 第2の動き探索結果取得部, 203 前フレームデータ取得部, 204 現フレームデータ取得部, 205 第1の予測データ生成部, 206 第2の予測データ生成部, 207 第1の予測誤差検出部, 208 第2の予測誤差検出部, 241 第1の動き探索結果取得部, 242 第2の動き探索結果取得部, 243 最適動きフラグ取得部, 244 前フレームデータ取得部, 245 現フレームデータ取得部, 246 第1のタップ抽出部, 247 第2のタップ抽出部, 248 第1の近傍予測フィルタ係数算出部, 249 第2の近傍予測フィルタ係数算出部, 271 基準フレームデコーダ, 272 フレームメモリ, 273 動き対象位置検出部, 274 画素切り出し部, 275 係数選択部, 276 フィルタ係数乗算部, 277 フレームメモリ 51 image display system, 61 player, 62 encoding device, 71 decoding unit, 72 D / A conversion unit, 81 A / D conversion unit, 82 encoding unit, 83 recording unit, 84 decoding unit, 85 D / A conversion , 86 display, 101 reference frame extraction unit, 102 reference frame encoding unit, 103 reference frame decoder, 104, 105 frame memory, 106, 107 high-pass filter, 108 block matching motion search unit, 109 absolute value error calculation unit, 110 Code memory, 111 evaluation value change block matching motion search unit, 112 optimal motion determination unit, 113 optimal neighborhood prediction filter least square design unit, 114 decoder, 115 code output unit, 171 absolute value error acquisition unit, 172 current frame data acquisition unit , 17 Previous frame data acquisition unit, 174 Weighted block matching motion search unit, 201 First motion search result acquisition unit, 202 Second motion search result acquisition unit, 203 Previous frame data acquisition unit, 204 Current frame data acquisition unit, 205 1 prediction data generation unit, 206 second prediction data generation unit, 207 first prediction error detection unit, 208 second prediction error detection unit, 241 first motion search result acquisition unit, 242 second motion search Result acquisition unit, 243 optimal motion flag acquisition unit, 244 previous frame data acquisition unit, 245 current frame data acquisition unit, 246 first tap extraction unit, 247 second tap extraction unit, 248 first neighborhood prediction filter coefficient calculation 249 second neighborhood prediction filter coefficient calculation unit 271 reference frame deco 272 frame memory, 273 motion target position detection unit, 274 pixel segmentation unit, 275 coefficient selection unit, 276 filter coefficient multiplication unit, 277 frame memory
Claims (38)
第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、
前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出手段と、
前記抽出手段により抽出された前記画素を用いて、前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出手段と
を備えることを特徴とする符号化装置。 In an encoding apparatus that receives and encodes image data consisting of a plurality of frame data,
First motion vector estimation means for estimating a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data;
A second motion vector estimating means for estimating a second motion vector different from the first motion vector in the processing block;
Motion vector selection means for selecting one of the first motion vector and the second motion vector for each processing region;
Extraction means for extracting pixels corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the motion vector selection means;
A pixel in the processing region corresponding to one of the first motion vector and the second motion vector selected by the motion vector selection unit using the pixel extracted by the extraction unit. An encoding device comprising: prediction data calculation means for calculating prediction data for predicting data.
を更に備えることを特徴とする請求項1に記載の符号化装置。 The encoding apparatus according to claim 1, further comprising: an image processing unit that performs processing for enhancing an edge of an image with respect to the first frame data and the second frame data.
ことを特徴とする請求項2に記載の符号化装置。 The encoding apparatus according to claim 2, wherein the image processing means is a high-pass filter.
を更に備えることを特徴とする請求項1に記載の符号化装置。 The encoding apparatus according to claim 1, further comprising noise adding means for adding noise to the frame data.
前記第1の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルを推定し、
前記第2の動きベクトル推定手段は、前記第1のフレームデータおよび前記第2のフレームデータに対して、前記誤差算出手段により算出された前記第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、前記第2の動きベクトルを推定する
ことを特徴とする請求項1に記載の符号化装置。 Error calculating means for calculating a detection error of the first motion vector based on the first motion vector estimated by the first motion vector estimating means and the first frame data;
The first motion vector estimation means estimates the first motion vector by block matching processing for the first frame data and the second frame data,
The second motion vector estimation unit weights the first frame data and the second frame data based on the detection error of the first motion vector calculated by the error calculation unit. The encoding apparatus according to claim 1, wherein the second motion vector is estimated by block matching processing.
ことを特徴とする請求項1に記載の符号化装置。 The prediction data calculation means includes a sum of values obtained by multiplying pixel values of the plurality of pixels extracted by the extraction means by respective predetermined coefficients, and pixel values of pixels in the corresponding first frame data. Based on the relationship, using the least square method, the optimal value of the coefficient in the case of corresponding to the first motion vector is used as the first prediction data, and the coefficient of the coefficient in the case of corresponding to the second motion vector is determined. The encoding device according to claim 1, wherein the optimum value is calculated as the second prediction data.
前記第1の動きベクトルに対応する第1の予測データと、
前記第2の動きベクトルに対応する第2の予測データと
を含む
ことを特徴とする請求項6に記載の符号化装置。 The prediction data calculated by the prediction data calculation means is
First prediction data corresponding to the first motion vector;
The encoding apparatus according to claim 6, further comprising: second prediction data corresponding to the second motion vector.
前記出力手段は、
前記第1の動きベクトル推定手段により推定された前記第1の動きベクトルと、
前記第2の動きベクトル推定手段により推定された前記第2の動きベクトルと、
前記動きベクトル選択手段による選択結果を示すデータと、
前記予測データ算出手段により算出された前記予測データと
を出力する
ことを特徴とする請求項1に記載の符号化装置。 Output means for outputting an encoding result corresponding to the first frame data;
The output means includes
The first motion vector estimated by the first motion vector estimation means;
The second motion vector estimated by the second motion vector estimation means;
Data indicating a selection result by the motion vector selection means;
The encoding apparatus according to claim 1, wherein the prediction data calculated by the prediction data calculation means is output.
第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出ステップと、
前記抽出ステップの処理により抽出された前記画素を用いて、前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出ステップと
を含むことを特徴とする符号化方法。 In an encoding method of an encoding apparatus that receives and encodes image data consisting of a plurality of frame data,
A first motion vector estimation step for estimating a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data;
A second motion vector estimating step for estimating a second motion vector different from the first motion vector in the processing block;
A motion vector selection step for selecting one of the first motion vector and the second motion vector for each processing region;
An extraction step for extracting a pixel corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step;
The pixel corresponding to any one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step using the pixels extracted by the processing of the extraction step. A prediction data calculation step of calculating prediction data for predicting pixel data of a processing region.
を更に含むことを特徴とする請求項9に記載の符号化方法。 The encoding method according to claim 9, further comprising an image processing step of performing processing for enhancing an edge of an image on the first frame data and the second frame data.
ことを特徴とする請求項10に記載の符号化方法。 The encoding method according to claim 10, wherein the process of the image processing step is a process of applying a high-pass filter.
を更に含むことを特徴とする請求項9に記載の符号化方法。 The encoding method according to claim 9, further comprising a noise adding step of adding noise to the frame data.
前記第1の動きベクトル推定ステップの処理では、前記第1のフレームデータおよび前記第2のフレームデータに対するブロックマッチング処理により、前記第1の動きベクトルが推定され、
前記第2の動きベクトル推定ステップの処理では、前記第1のフレームデータおよび前記第2のフレームデータに対して、前記誤差算出ステップの処理により算出された前記第1の動きベクトルの検出誤差に基づいて重み付けされたブロックマッチング処理により、前記第2の動きベクトルを推定する処理が実行される
ことを特徴とする請求項9に記載の符号化方法。 An error calculating step of calculating a detection error of the first motion vector based on the first motion vector estimated by the processing of the first motion vector estimating step and the first frame data; Including
In the processing of the first motion vector estimation step, the first motion vector is estimated by block matching processing for the first frame data and the second frame data,
In the process of the second motion vector estimation step, based on the detection error of the first motion vector calculated by the process of the error calculation step with respect to the first frame data and the second frame data. The encoding method according to claim 9, wherein a process of estimating the second motion vector is executed by block matching process weighted in the same manner.
ことを特徴とする請求項9に記載の符号化方法。 In the process of the predicted data calculation step, the sum of values obtained by multiplying the pixel values of the plurality of pixels extracted by the process of the extraction step by a predetermined coefficient, and the corresponding pixels in the first frame data When the optimum value of the coefficient corresponding to the first motion vector corresponds to the second motion vector as the first prediction data using the method of least squares based on the relationship with the pixel value The encoding method according to claim 9, wherein the optimum value of the coefficient is calculated as second prediction data.
前記第1の動きベクトルに対応する第1の予測データと、
前記第2の動きベクトルに対応する第2の予測データと
を含む
ことを特徴とする請求項14に記載の符号化方法。 The prediction data calculated by the processing of the prediction data calculation step is
First prediction data corresponding to the first motion vector;
The encoding method according to claim 14, further comprising: second prediction data corresponding to the second motion vector.
前記出力ステップの処理では、
前記第1の動きベクトル推定ステップの処理により推定された前記第1の動きベクトルと、
前記第2の動きベクトル推定ステップの処理により推定された前記第2の動きベクトルと、
前記動きベクトル選択ステップの処理による選択結果を示すデータと、
前記予測データ算出ステップの処理により算出された前記予測データと
が出力される
ことを特徴とする請求項9に記載の符号化方法。 An output step of outputting an encoding result corresponding to the first frame data;
In the process of the output step,
The first motion vector estimated by the processing of the first motion vector estimation step;
The second motion vector estimated by the processing of the second motion vector estimation step;
Data indicating a selection result obtained by the motion vector selection step;
The encoding method according to claim 9, wherein the prediction data calculated by the processing of the prediction data calculation step is output.
第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出ステップと、
前記抽出ステップの処理により抽出された前記画素を用いて、前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出ステップと
を含むことを特徴とするプログラムが記録されたコンピュータにより読み取り可能な記録媒体。 A program for causing a computer to execute a process of receiving and encoding image data including a plurality of frame data,
A first motion vector estimation step for estimating a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data;
A second motion vector estimating step for estimating a second motion vector different from the first motion vector in the processing block;
A motion vector selection step for selecting one of the first motion vector and the second motion vector for each processing region;
An extraction step for extracting a pixel corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step;
The pixel corresponding to any one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step using the pixels extracted by the processing of the extraction step. A computer-readable recording medium on which a program is recorded, comprising: a prediction data calculation step of calculating prediction data for predicting pixel data of a processing region.
第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出ステップと、
前記抽出ステップの処理により抽出された前記画素を用いて、前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出ステップと
を含むことを特徴とする処理をコンピュータに実行させるプログラム。 A program for causing a computer to execute a process of receiving and encoding image data including a plurality of frame data,
A first motion vector estimation step for estimating a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data;
A second motion vector estimating step for estimating a second motion vector different from the first motion vector in the processing block;
A motion vector selection step for selecting one of the first motion vector and the second motion vector for each processing region;
An extraction step for extracting a pixel corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step;
The pixel corresponding to any one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step using the pixels extracted by the processing of the extraction step. A prediction data calculation step of calculating prediction data for predicting pixel data of a processing region. A program for causing a computer to execute processing characterized by comprising:
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定手段により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出手段と
を備えることを特徴とする復号装置。 In a decoding device that receives and decodes encoded image data,
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. Motion vector determination means for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Receiving input of prediction data for predicting pixel data included in the processing region, pixel data in the processing block is converted based on the motion vector determined by the motion vector determination unit and the prediction data. And a calculating means for calculating.
を更に備えることを特徴とする請求項19に記載の復号装置。 The decoding apparatus according to claim 19, further comprising noise adding means for adding noise to the pixel data calculated by the calculating means.
前記第1の動きベクトルに対応する第1の予測データと、
前記第2の動きベクトルに対応する第2の予測データと
を含む
ことを特徴とする請求項19に記載の復号装置。 The prediction data is
First prediction data corresponding to the first motion vector;
The decoding apparatus according to claim 19, further comprising: second prediction data corresponding to the second motion vector.
を更に備えることを特徴とする請求項21に記載の復号装置。 The first prediction data, the second prediction data, and the optimal motion vector information are input, and the first prediction data and the second prediction are subjected to processing by the calculation unit for each processing region. The decoding apparatus according to claim 21, further comprising prediction data selection means for selecting which of the data to use.
ことを特徴とする請求項21に記載の復号装置。 The prediction data is based on a least square method based on the relationship between the sum of values obtained by multiplying the peripheral pixels corresponding to the processing region by predetermined coefficients and the pixel values of the corresponding pixels in the first frame data. The decoding device according to claim 21, wherein the decoding value is an optimal value of the coefficient calculated by using.
前記動きベクトル決定手段により決定された前記動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出し、
抽出された前記画素値に前記予測データを乗算することにより、前記処理ブロック内の画素データを算出する
ことを特徴とする請求項19に記載の復号装置。 The calculating means includes
Based on the motion vector determined by the motion vector determination means, extract pixel values of peripheral pixels corresponding to the target pixel;
The decoding apparatus according to claim 19, wherein pixel data in the processing block is calculated by multiplying the extracted pixel value by the prediction data.
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定ステップの処理により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出ステップと
を含むことを特徴とする復号方法。 In a decoding method of a decoding device for receiving and decoding encoded image data,
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. A motion vector determination step for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Pixels in the processing block are received on the basis of the motion vector determined by the processing of the motion vector determination step and the prediction data upon receiving prediction data for predicting pixel data included in the processing region. And a calculation step for calculating data.
を更に含むことを特徴とする請求項25に記載の復号方法。 26. The decoding method according to claim 25, further comprising a noise adding step of adding noise to the pixel data calculated by the processing of the calculating step.
前記第1の動きベクトルに対応する第1の予測データと、
前記第2の動きベクトルに対応する第2の予測データと
を含む
ことを特徴とする請求項25に記載の復号方法。 The prediction data is
First prediction data corresponding to the first motion vector;
The decoding method according to claim 25, further comprising: second prediction data corresponding to the second motion vector.
を更に含むことを特徴とする請求項27に記載の復号方法。 In response to the input of the first prediction data, the second prediction data, and the optimal motion vector information, the first prediction data and the second are subjected to processing by the calculation step for each processing region. 28. The decoding method according to claim 27, further comprising: a prediction data selection step of selecting which of the prediction data to be used.
ことを特徴とする請求項27に記載の復号方法。 The prediction data is based on a least square method based on the relationship between the sum of values obtained by multiplying the peripheral pixels corresponding to the processing region by predetermined coefficients and the pixel values of the corresponding pixels in the first frame data. The decoding method according to claim 27, wherein the coefficient is an optimum value calculated using
前記動きベクトル決定ステップの処理により決定された前記動きベクトルを基に、注目画素に対応する周辺画素の画素値を抽出し、
抽出された前記画素値に前記予測データを乗算することにより、前記処理ブロック内の画素データを算出する
処理を含む
ことを特徴とする請求項25に記載の復号方法。 The process of the calculation step is as follows:
Based on the motion vector determined by the processing of the motion vector determination step, extract pixel values of peripheral pixels corresponding to the target pixel;
The decoding method according to claim 25, further comprising: calculating pixel data in the processing block by multiplying the extracted pixel value by the prediction data.
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定ステップの処理により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出ステップと
を含むことを特徴とするプログラムが記録されたコンピュータにより読み取り可能な記録媒体。 A program for causing a computer to execute a process of receiving and decoding encoded image data,
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. A motion vector determination step for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Pixels in the processing block are received on the basis of the motion vector determined by the processing of the motion vector determination step and the prediction data upon receiving prediction data for predicting pixel data included in the processing region. A computer-readable recording medium having a program recorded thereon, comprising: a calculation step for calculating data.
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定ステップの処理により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出ステップと
を含むことを特徴とする処理をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute a process of receiving and decoding encoded image data,
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. A motion vector determination step for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Pixels in the processing block are received on the basis of the motion vector determined by the processing of the motion vector determination step and the prediction data upon receiving prediction data for predicting pixel data included in the processing region. A program for causing a computer to execute a process characterized by including a calculation step for calculating data.
前記符号化部は、
前記画像データに含まれる第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定手段と、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定手段と、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択手段と、
前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出手段と、
前記抽出手段により抽出された前記画素を用いて、前記動きベクトル選択手段により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出手段と
を備える
ことを特徴とする画像処理システム。 An encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat the encoding process and the decoding process on the image data composed of a plurality of frame data so that the image data is deteriorated. In the image processing system made in
The encoding unit includes:
A first motion for estimating a first motion vector in a processing block having a plurality of processing regions in first frame data included in the image data and second frame data different from the first frame data Vector estimation means;
A second motion vector estimating means for estimating a second motion vector different from the first motion vector in the processing block;
Motion vector selection means for selecting one of the first motion vector and the second motion vector for each processing region;
Extraction means for extracting pixels corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the motion vector selection means;
A pixel in the processing region corresponding to one of the first motion vector and the second motion vector selected by the motion vector selection unit using the pixel extracted by the extraction unit. An image processing system comprising: prediction data calculation means for calculating prediction data for predicting data.
前記復号部から出力される前記画像データは、前記ノイズ付加手段により前記フレームデータにノイズが付加された後、前記符号化部に供給される
ことを特徴とする請求項33に記載の画像処理システム。 Noise adding means for adding noise to the frame data;
The image processing system according to claim 33, wherein the image data output from the decoding unit is supplied to the encoding unit after noise is added to the frame data by the noise adding unit. .
第1のフレームデータ、および、前記第1のフレームデータと異なる第2のフレームデータにおいて、複数の処理領域を有する処理ブロックにおける第1の動きベクトルを推定する第1の動きベクトル推定ステップと、
前記処理ブロックにおいて、前記第1の動きベクトルとは異なる第2の動きベクトルを推定する第2の動きベクトル推定ステップと、
前記処理領域ごとに、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれかを選択する動きベクトル選択ステップと、
前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に基づいて、前記処理領域に対応する画素を抽出する抽出ステップと、
前記抽出ステップの処理により抽出された前記画素を用いて、前記動きベクトル選択ステップの処理により選択された前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれか一方に対応する前記処理領域の画素データを予測するための予測データを算出する予測データ算出ステップと
を含むことを特徴とする画像処理方法。 An encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat the encoding process and the decoding process on the image data composed of a plurality of frame data so that the image data is deteriorated. In the image processing method of the image processing system made in
A first motion vector estimation step for estimating a first motion vector in a processing block having a plurality of processing regions in the first frame data and second frame data different from the first frame data;
A second motion vector estimating step for estimating a second motion vector different from the first motion vector in the processing block;
A motion vector selection step for selecting one of the first motion vector and the second motion vector for each processing region;
An extraction step for extracting a pixel corresponding to the processing region based on one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step;
The pixel corresponding to any one of the first motion vector and the second motion vector selected by the processing of the motion vector selection step using the pixels extracted by the processing of the extraction step. A prediction data calculation step of calculating prediction data for predicting pixel data of a processing area. An image processing method comprising:
前記復号部は、
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定手段と、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定手段により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出手段と
を備える
ことを特徴とする画像処理システム。 An encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat the encoding process and the decoding process on the image data composed of a plurality of frame data so that the image data is deteriorated. In the image processing system made in
The decoding unit
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. Motion vector determination means for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Receiving input of prediction data for predicting pixel data included in the processing region, pixel data in the processing block is converted based on the motion vector determined by the motion vector determination unit and the prediction data. An image processing system comprising: a calculating means for calculating.
前記復号部から出力される前記画像データは、前記ノイズ付加手段により前記フレームデータにノイズが付加された後、前記符号化部に供給される
ことを特徴とする請求項36に記載の画像処理システム。 Noise adding means for adding noise to the frame data;
The image processing system according to claim 36, wherein the image data output from the decoding unit is supplied to the encoding unit after noise is added to the frame data by the noise adding unit. .
複数の処理領域を有する処理ブロックにおける第1の動きベクトル、前記処理ブロックにおける第2の動きベクトル、および、前記第1の動きベクトルと前記第2の動きベクトルとのうちのいずれを復号に用いるのが最適であるかを前記処理領域ごとに示す最適動きベクトル情報の入力を受け、前記処理ブロックの前記処理領域ごとに最適な動きベクトルを決定する動きベクトル決定ステップと、
前記処理領域に含まれる画素データを予測するための予測データの入力を受け、前記動きベクトル決定ステップの処理により決定された前記動きベクトルと、前記予測データとを基に、前記処理ブロック内の画素データを算出する算出ステップと
を含むことを特徴とする画像処理方法。 An encoding unit and a decoding unit, and the encoding unit and the decoding unit repeat the encoding process and the decoding process on the image data composed of a plurality of frame data so that the image data is deteriorated. In the image processing method of the image processing system made in
Any one of the first motion vector in the processing block having a plurality of processing regions, the second motion vector in the processing block, and the first motion vector and the second motion vector is used for decoding. A motion vector determination step for receiving optimal motion vector information indicating whether each processing region is optimal and determining an optimal motion vector for each processing region of the processing block;
Pixels in the processing block are received on the basis of the motion vector determined by the processing of the motion vector determination step and the prediction data upon receiving prediction data for predicting pixel data included in the processing region. An image processing method comprising: a calculation step for calculating data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005053877A JP4591767B2 (en) | 2005-02-28 | 2005-02-28 | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005053877A JP4591767B2 (en) | 2005-02-28 | 2005-02-28 | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006238372A true JP2006238372A (en) | 2006-09-07 |
JP2006238372A5 JP2006238372A5 (en) | 2007-10-11 |
JP4591767B2 JP4591767B2 (en) | 2010-12-01 |
Family
ID=37045488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005053877A Expired - Fee Related JP4591767B2 (en) | 2005-02-28 | 2005-02-28 | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4591767B2 (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03266580A (en) * | 1990-03-15 | 1991-11-27 | Nec Corp | Detection of dynamic vector |
JPH06176151A (en) * | 1992-12-08 | 1994-06-24 | Sony Corp | Image moving amount detector |
JPH0785287A (en) * | 1993-06-29 | 1995-03-31 | Sony Corp | Predictive coding device and its decoding device |
JP2000050279A (en) * | 1998-07-29 | 2000-02-18 | Kdd Corp | Area division coder for moving picture |
JP2000324495A (en) * | 1999-05-07 | 2000-11-24 | Sony Corp | Device and method for converting field frequency |
JP2002051340A (en) * | 2000-08-01 | 2002-02-15 | Matsushita Electric Ind Co Ltd | Moving picture compression apparatus and method of the same |
JP2002084413A (en) * | 2000-06-28 | 2002-03-22 | Oki Electric Ind Co Ltd | Image processing method, image processing unit, image coder, and image decoder |
JP2004173013A (en) * | 2002-11-20 | 2004-06-17 | Sony Corp | Motion vector detector and detection method, image signal processor using the method and processing method, coeeficient data generator for use in the processor and generation method, and program for implementing these methods |
JP2004289685A (en) * | 2003-03-24 | 2004-10-14 | Sony Corp | Data coding apparatus and data coding method, data output apparatus, and data output method |
-
2005
- 2005-02-28 JP JP2005053877A patent/JP4591767B2/en not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03266580A (en) * | 1990-03-15 | 1991-11-27 | Nec Corp | Detection of dynamic vector |
JPH06176151A (en) * | 1992-12-08 | 1994-06-24 | Sony Corp | Image moving amount detector |
JPH0785287A (en) * | 1993-06-29 | 1995-03-31 | Sony Corp | Predictive coding device and its decoding device |
JP2000050279A (en) * | 1998-07-29 | 2000-02-18 | Kdd Corp | Area division coder for moving picture |
JP2000324495A (en) * | 1999-05-07 | 2000-11-24 | Sony Corp | Device and method for converting field frequency |
JP2002084413A (en) * | 2000-06-28 | 2002-03-22 | Oki Electric Ind Co Ltd | Image processing method, image processing unit, image coder, and image decoder |
JP2002051340A (en) * | 2000-08-01 | 2002-02-15 | Matsushita Electric Ind Co Ltd | Moving picture compression apparatus and method of the same |
JP2004173013A (en) * | 2002-11-20 | 2004-06-17 | Sony Corp | Motion vector detector and detection method, image signal processor using the method and processing method, coeeficient data generator for use in the processor and generation method, and program for implementing these methods |
JP2004289685A (en) * | 2003-03-24 | 2004-10-14 | Sony Corp | Data coding apparatus and data coding method, data output apparatus, and data output method |
Also Published As
Publication number | Publication date |
---|---|
JP4591767B2 (en) | 2010-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6834345B2 (en) | Method for data preparation and watermark insertion | |
US7957471B2 (en) | Encoding apparatus and method, decoding apparatus and method, image processing system and method, and recording medium | |
US7564973B2 (en) | Digital watermark embedding device and digital watermark embedding method | |
CN101389009A (en) | Watermark information embedding, detection method and device | |
CN101232573B (en) | Image processing apparatus and method thereof | |
JP2007324923A (en) | Mpeg image quality correcting device, and mpeg image quality correcting method | |
JP2004048219A (en) | Inserting method of electronic watermark information | |
JP2007501561A (en) | Block artifact detection | |
JP4591767B2 (en) | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program | |
JP4650683B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP2006217403A (en) | Coding apparatus and method, decoding apparatus and method, recording medium, program, image processing system, and image processing method | |
JP4556694B2 (en) | Encoding apparatus and method, recording medium, program, and image processing system | |
JP4716086B2 (en) | Encoding apparatus and method, recording medium, program, and image processing system | |
JP4449430B2 (en) | Image processing apparatus, image processing method, program, and recording medium | |
CN1822676B (en) | Coding apparatus and method, decoding apparatus and method, image processing system and method | |
JP2003244696A (en) | Encoding processor, decoding processor, method therefor and computer program | |
JP4770711B2 (en) | Image processing apparatus, image processing method, and program | |
JP2006217339A (en) | Coding apparatus and method, decoding apparatus and method, information processing system and method, recording medium, and program | |
JP4715222B2 (en) | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program | |
JP4573110B2 (en) | Encoding apparatus and method, recording medium, program, and image processing system | |
JP4697519B2 (en) | Encoding apparatus and method, decoding apparatus and method, image processing system, recording medium, and program | |
JP4650684B2 (en) | Image processing apparatus and method, program, and recording medium | |
JP2005004770A (en) | Movie video detecting method and apparatus using grouping | |
JPH11164134A (en) | Image data processor and method therefor, providing medium and record medium | |
JP2009282556A (en) | Signal processor and image display device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070827 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070827 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100119 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100315 |
|
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: 20100819 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100901 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130924 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130924 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |