JP2015142233A - Moving picture encoder - Google Patents
Moving picture encoder Download PDFInfo
- Publication number
- JP2015142233A JP2015142233A JP2014013743A JP2014013743A JP2015142233A JP 2015142233 A JP2015142233 A JP 2015142233A JP 2014013743 A JP2014013743 A JP 2014013743A JP 2014013743 A JP2014013743 A JP 2014013743A JP 2015142233 A JP2015142233 A JP 2015142233A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- region
- increase
- coding unit
- motion vectors
- 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
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本件は、動画像符号化装置に関する。 The present case relates to a moving image encoding apparatus.
動画像の圧縮符号化方式として、H.264/Moving Picture Experts Group -4 Advanced Video Coding(H.264/MPEG−4 AVC)やH.265/High Efficiency Video Coding(H.265/HEVC)が規格化されている。例えばH.265/HEVCは、次世代のテレビとして予定されているUltra High Definition Television(UHDTV:超高精細テレビ)に利用される。UHDTVでは4K(4,096×2,160画素または3,840×2,160画素)や8K(7,680×4,320画素)といった超高精細画像が取り扱われる。 H.264 / Moving Picture Experts Group-4 Advanced Video Coding (H.264 / MPEG-4 AVC) and H.265 / High Efficiency Video Coding (H.265 / HEVC) are standards for video compression coding. It has become. For example, H.C. H.265 / HEVC is used for Ultra High Definition Television (UHDTV), which is planned as the next-generation television. UHDTV handles 4K (4,096 × 2,160 pixels or 3,840 × 2,160 pixels) and 8K (7,680 × 4,320 pixels) ultra high definition images.
動画像の符号化では、Motion Estimation(ME:動きベクトル検出)と呼ばれる演算で多くの電力が消費される。このため、上述した超高精細画像を取り扱う際には演算量を削減し消費電力を抑えてMotion Vector(MV:動きベクトル)を高精度に検出することが望まれる。 In encoding a moving image, much power is consumed in a calculation called motion estimation (ME). For this reason, when handling the above-described ultra-high-definition image, it is desired to detect a motion vector (MV) with high accuracy by reducing the amount of calculation and suppressing power consumption.
演算量を削減する動きベクトル検出として階層型動きベクトル検出がある。階層型動きベクトル検出では、まず、入力画像を縮小した縮小画像を利用して縮小画像による初段の動きベクトルが検出される。次に、初段の動きベクトルのベクトル先を基点に入力画像の動きベクトルの探索範囲が決定され、決定された探索範囲の中から次段の動きベクトルが検出される。そして、初段の動きベクトルと次段の動きベクトルから入力画像の最終的な動きベクトルが検出される。 Hierarchical motion vector detection is one type of motion vector detection that reduces the amount of computation. In hierarchical motion vector detection, firstly, a first-stage motion vector based on a reduced image is detected using a reduced image obtained by reducing an input image. Next, the search range of the motion vector of the input image is determined based on the vector destination of the motion vector of the first stage, and the motion vector of the next stage is detected from the determined search range. Then, the final motion vector of the input image is detected from the motion vector at the first stage and the motion vector at the next stage.
一方、入力画像の動きベクトルの検出精度を向上させるべく、既に符号化処理が済んだ符号化単位領域で検出された入力画像の動きベクトルを利用して符号化処理が済んでいない符号化単位領域の動きベクトルを検出する技術がある。しかしながら、当該技術では、検出精度向上のために既に検出された動きベクトルの数を増やせば演算量も増加する。 On the other hand, in order to improve the detection accuracy of the motion vector of the input image, the encoding unit region that has not been encoded using the motion vector of the input image detected in the encoding unit region that has already been encoded There is a technique for detecting a motion vector. However, in this technique, if the number of already detected motion vectors is increased in order to improve detection accuracy, the amount of calculation increases.
演算量を抑えつつ、動きベクトルの検出精度向上を図った種々の技術も提案されている。例えば、縮小画像による初段の動きベクトルにおけるベクトル先の周囲のSum of Absolute Difference(SAD:差分絶対値和)値を算出し、最小のSAD値となった周辺を入力画像の動きベクトルの探索範囲と決定する技術がある(例えば、特許文献1参照)。当該技術によれば、演算量が少ない縮小画像の動きベクトル検出により探索範囲が絞られ、動きベクトル検出全体の演算量も抑えられる。また、符号化開始から経過した時間を計時するとともに符号化したブロックの個数を計数し、経過時間と計数結果に応じて動きベクトルの探索回数を増減させる技術もある(例えば、特許文献2参照)。さらに、シーンチェンジに該当する画像を探索先とする動きベクトルは、動きベクトルの検出対象から除外する技術も知られている(例えば、特許文献3参照)。 Various techniques for improving the accuracy of motion vector detection while suppressing the amount of calculation have been proposed. For example, a Sum of Absolute Difference (SAD) around the vector destination in the first-stage motion vector of the reduced image is calculated, and the periphery where the SAD value is the minimum is used as the motion vector search range of the input image. There is a technique for determining (see, for example, Patent Document 1). According to this technique, the search range is narrowed down by motion vector detection of a reduced image with a small amount of computation, and the computation amount of the entire motion vector detection can be suppressed. There is also a technique for measuring the time elapsed from the start of encoding, counting the number of encoded blocks, and increasing or decreasing the number of motion vector searches according to the elapsed time and the counting result (see, for example, Patent Document 2). . Furthermore, a technique is also known in which a motion vector whose search destination is an image corresponding to a scene change is excluded from motion vector detection targets (see, for example, Patent Document 3).
しかしながら、上述した技術において、例えば外乱などにより計画されていた演算時間が揺らぎ、符号化処理に遅延が発生した場合、演算量を削減することができないため、符号化処理の遅延は累積される。また、H.264/MPEG−4 AVCやH.265/HEVCでは、動きベクトルを検出する領域のサイズが可変であるため、探索回数に対する符号化処理時間は必ずしも一定とならず、探索回数を増減させるだけでは演算時間を十分に制御することができない。 However, in the above-described technique, for example, when the computation time planned due to disturbance or the like fluctuates and a delay occurs in the encoding process, the amount of calculation cannot be reduced, and thus the delay of the encoding process is accumulated. H. H.264 / MPEG-4 AVC and H.264. In H.265 / HEVC, since the size of a region for detecting a motion vector is variable, the encoding processing time with respect to the number of searches is not necessarily constant, and the calculation time cannot be controlled sufficiently only by increasing or decreasing the number of searches. .
そこで、1つの側面では、本件は、動きベクトルの検出時間と検出精度が適正化された動画像符号化装置を提供することを目的とする。 Therefore, in one aspect, an object of the present invention is to provide a moving image encoding apparatus in which the detection time and detection accuracy of a motion vector are optimized.
本明細書に開示の動画像符号化装置は、符号化処理が済んだ第1符号化単位領域で検出した第1動きベクトルを利用して前記符号化処理が済んでいない第2符号化単位領域の第2動きベクトルを検出する動画像符号化装置であって、前記第1符号化単位領域及び前記第2符号化単位領域を含む一画像内の前記符号化処理の進捗に応じて、前記第2符号化単位領域が利用する前記第1動きベクトルの総数を増減させる増減制御手段を有する動画像符号化装置である。 The moving image encoding apparatus disclosed in the present specification uses the first motion vector detected in the first encoding unit region that has been encoded, and the second encoding unit region that has not been encoded The second motion vector detection apparatus detects a second motion vector of the first encoding unit region and the second encoding unit region according to a progress of the encoding process in one image. It is a moving picture encoding apparatus having an increase / decrease control means for increasing / decreasing the total number of the first motion vectors used by two encoding unit areas.
本明細書に開示の動画像符号化装置によれば、動きベクトルの検出時間と検出精度が適正化される。 According to the moving image encoding device disclosed in this specification, the detection time and detection accuracy of a motion vector are optimized.
以下、本件を実施するための形態について図面を参照して説明する。 Hereinafter, an embodiment for carrying out this case will be described with reference to the drawings.
図1は、動画像符号化装置100のブロック図の一例である。図2は、符号化ツリー単位領域11と符号化単位領域12の関係の一例を説明するための図である。
動画像符号化装置100は、図1に示すように、減算部101、量子化部102、逆量子化部103、加算部104、画像内予測部105、ループフィルタ部106、画面間予測部107、縮小動きベクトル検出部108、等倍動きベクトル検出部109、スイッチ部110、エントロピー符号化部111、動きベクトル管理部112及び制御部120を含んでいる。動画像符号化装置100は、例えばLarge Scale Integration(LSI:大規模集積回路)によって実現される。また、減算部101,・・・,制御部120はそれぞれハードウェア回路によって実現される。
FIG. 1 is an example of a block diagram of the moving picture encoding
As shown in FIG. 1, the moving
動画像符号化装置100には、図1及び図2に示すように、動画像5が入力される。動画像5は、アナログの画像信号である。図2に示すように、動画像5は、時間的に連続する複数のピクチャ(静止画像)10を含んでいる。ピクチャ10はフレームと呼ばれることもある。動画像符号化装置100に動画像5が入力されると、動画像5に含まれる複数のピクチャ10は順にアナログの画像信号からデジタルの画像信号に変換される。デジタルの画像信号に変換されたピクチャ10は、ピクチャの種類(例えばIタイプ、Pタイプ、Bタイプ)に応じて、時間軸上の順序から符号化する順序に並び替えられる。並び替えられたピクチャ10の符号化処理は、図2に示すように、正方の複数の符号化ツリー単位領域11(最大64画素×64画素)毎に行われる。符号化ツリー単位領域11は4種類の符号化単位領域12(8画素×8画素〜64画素×64画素)に分割される。分割された符号化ツリー単位領域11は減算部101、縮小動きベクトル検出部108及び等倍動きベクトル検出部に入力される。尚、符号化ツリー単位領域11は、例えばCoding Tree Unit(CTU:符号化ツリーユニット)又はMacro Block(MB:マクロブロック)と呼ばれる。符号化単位領域12は、例えばCoding Unit(CU:符号化ユニット)やサブブロックと呼ばれる。
As shown in FIGS. 1 and 2, a moving
減算部101は、入力された現在(カレント)の符号化ツリー単位領域11から、スイッチ部110から出力された後述するフレーム間予測領域又はフレーム内予測領域を減算する。フレーム間予測領域及びフレーム内予測領域は、いずれも過去の符号化ツリー単位領域11に対応する。減算部101により、現在の符号化ツリー単位領域11とフレーム間予測領域又はフレーム内予測領域との誤差領域が生成される。減算部101は生成した誤差領域を量子化部102に出力する。
The
量子化部102は、入力された誤差領域に対し符号化単位領域12毎にDiscrete Cosine Transform(DCT:離散コサイン変換)を実行する。これにより、各符号化単位領域12は実空間領域から周波数領域に変換される。以下、周波数領域に変換された符号化単位領域12をDCT係数と呼ぶ。量子化部102は、各DCT係数をそれぞれ量子化パラメータ(QP)に応じて量子化する。量子化パラメータは、視覚特性や目標ビットレートに基づくパラメータである。量子化部102は、量子化した各DCT係数を逆量子化部103及びエントロピー符号化部111に出力する。
The
逆量子化部103は、入力された各DCT係数を逆量子化する。これにより、量子化前のDCT係数、すなわち周波数領域が再生される。逆量子化部103は、各周波数領域に対しInverse Discrete Cosine Transform(IDCT:逆離散コサイン変換)を実行する。これにより、各周波数領域は実空間領域にそれぞれ変換される。すなわち、符号化ツリー単位領域11の一部を構成する誤差領域がそれぞれ再生される。逆量子化部103は、再生した誤差領域を符号化ツリー単位領域11の大きさを有する誤差領域に戻し加算部104に出力する。
The
加算部104は、入力された誤差領域と、フレーム間予測領域又はフレーム内予測領域とを加算する。これにより、DCTにより失われた高周波成分を含まない符号化単位領域(以下、再生領域という。)が再生される。加算部104は、再生領域を画面内予測部105とループフィルタ部106に出力する。
The adding
画面内予測部105は、入力された再生領域に対しイントラ予測を符号化単位領域12毎に行って、再生領域の予測結果としてフレーム内予測領域をスイッチ部110に出力する。
ループフィルタ部106は、入力された再生領域のノイズを低減する。ループフィルタ部106としては、例えばデブロッキングフィルタがある。ループフィルタ部106にSample Adaptive Offset(SAO:画素適応オフセット)を含めてもよい。ループフィルタ部106は、ノイズを低減した再生領域を画面間予測部107、縮小動きベクトル検出部108及び等倍動きベクトル検出部109に出力する。ノイズを低減した再生領域は、縮小動きベクトル検出部108及び等倍動きベクトル検出部109において参照領域として利用される。尚、ループフィルタ部106は、ノイズを低減した再生領域を動画像符号化装置100の外部に配置されたフレームメモリ(例えばSynchronous Dynamic Random Access Memory(SDRAM))に出力してもよい。
画面間予測部107は、入力された再生領域と等倍動きベクトル検出部109によって検出された等倍画像の動きベクトルとに基づいて、動き補償予測(画面間予測)を行い、予測結果としてのフレーム間予測領域をスイッチ部110に出力する。
The
The
The
縮小動きベクトル検出部108は、現在(カレント)の符号化ツリー単位領域11を縮小した縮小領域と入力された再生領域を縮小した再生縮小領域のとの差分により、縮小領域による初段の動きベクトルを検出する。検出の際には例えばブロックマッチング法が利用される。縮小動きベクトル検出部108は、初段の動きベクトルとその動きベクトルを検出した際のSAD値を動きベクトル管理部112に出力する。
The reduced motion
等倍動きベクトル検出部109は、後述する制御部120から出力された探索範囲の中から動きベクトルを選択する。一方、探索範囲が存在しない場合には、現在の符号化ツリー単位領域11と入力された再生領域との差分により、次段の動きベクトルを検出し、検出した次段の動きベクトルと動きベクトル管理部112によって管理された初段の動きベクトルを合成して、等倍画像の動きベクトルを検出する。等倍動きベクトル検出部109は、等倍画像の動きベクトルを画面間予測部107に出力する。また、等倍動きベクトル検出部109は、等倍画像の動きベクトルとその動きベクトルを検出した際のSAD値を動きベクトル管理部112に出力する。
The same-size motion
スイッチ部110は、画面内予測部105から出力されたフレーム内予測領域と画面間予測部107から出力されたフレーム間予測領域のいずれかを減算部101及び加算部104に出力する。
エントロピー符号化部111は、量子化部102から出力されたDCT係数と等倍動きベクトル検出部109から出力された等倍画像の動きベクトルをエントロピー符号化する。エントロピー符号化には、例えばハフマン符号化や算術符号化などが利用される。エントロピー符号化部111は、符号化したDCT係数と等倍画像の動きベクトルを多重化し、ビットストリームとして符号出力する。
The
The
動きベクトル管理部112は、縮小動きベクトル検出部108から出力された初段の動きベクトル及びそのSAD値、並びに、等倍動きベクトル検出部109から出力された等倍画像の動きベクトル及びそのSAD値を管理する。動きベクトル管理部112には、例えばStatic Random Access Memory(SRAM)が利用される。
The motion
制御部120は、現在の符号化ツリー単位領域11が探索する探索範囲を決定する。制御部120は、計時回路121と増減制御回路122を含んでいる。
計時回路121は、ピクチャ10の符号化処理開始から経過した時間を計時し、経過時間に対する符号化処理の進捗率を計算する。計時回路121は、計算した進捗率を増減制御回路122に出力する。
増減制御回路122は、動きベクトル管理部112によって管理された初段の動きベクトル及びそのSAD値、並びに、等倍動きベクトル検出部109から出力された等倍画像の動きベクトル及びそのSAD値を取得する。そして、増減制御回路122は、符号化処理が済んだ符号化ツリー単位領域11と符号化処理が済んでいない符号化ツリー単位領域11を含む一ピクチャ10内の符号化処理の進捗率に応じて、符号化処理が済んでいない符号化ツリー単位領域11が利用する、符号化処理が済んだ符号化ツリー単位領域11で検出された等倍画像の動きベクトルの総数を増減させる。例えば、増減制御回路122は、符号化処理の経過時間に対する符号化処理の進捗率が予め設定された設定情報としての進捗率閾値を下回っている場合、検出に利用する動きベクトルの総数を減らす。一方、増減制御回路122は、符号化処理の経過時間に対する符号化処理の進捗率が進捗率閾値を上回っている場合、検出に利用する動きベクトルの総数を増やす。
The
The
The increase /
次に、図3及び図4を参照して、動画像符号化装置100の動作について説明する。
Next, the operation of the moving
図3は、増減制御回路122の動作の一例を示すフローチャートである。図4は、動きベクトルの総数の増減を説明するための図である。
図3に示すように、増減制御回路122は、まず、ピクチャ10に対し新たに符号化処理を開始する度に計時回路121を再設定する(ステップS101)。これにより、ピクチャ10に対して新たに行われる符号化処理に費やされる時間が計時される。次いで、増減制御回路122は、動きベクトル分類処理を実行する(ステップS102)。動きベクトル分類処理は、所定の条件に従って、動きベクトルを分類する処理である。尚、動きベクトル分類処理の詳細は後述する。
FIG. 3 is a flowchart showing an example of the operation of the increase /
As shown in FIG. 3, the increase /
次いで、増減制御回路122は、ピクチャ内進捗率を算出する(ステップS103)。ピクチャ内進捗率は以下の数式(1)により算出される。
[ピクチャ内進捗率]
=[符号化処理が済んだ符号化単位領域の数]
÷[ピクチャ内の符号化単位領域の総数]×100・・・(1)
Next, the increase /
[Progress rate in picture]
= [Number of coding unit areas that have been coded]
÷ [total number of coding unit areas in a picture] × 100 (1)
次いで、増減制御回路122は、符号化処理が済んでいない符号化ツリー単位領域11(CTU)が利用する動きベクトルの総数を決定する(ステップS104)。動きベクトルの総数は、以下の数式(2)により決定される。
[動きベクトルの総数]
=[動きベクトルの総数]
+重み係数A×([ピクチャ内進捗率]−[進捗率閾値])・・・(2)
Next, the increase /
[Total number of motion vectors]
= [Total number of motion vectors]
+ Weighting coefficient A × ([progress rate in picture] − [progress rate threshold]) (2)
ここで、重み係数Aは重み付けのために用いる正の定数である。例えば、設定情報として設定されたある時間の進捗率閾値が「40%」、動きベクトルの総数の初期値が「30」、重み係数Aが「25」である場合に、ピクチャ内進捗率が「20%」であると、進捗率閾値をピクチャ内進捗率が下回る。すなわち、符号化処理に遅延が発生している。上述した数式(1)及び(2)によれば、図4に示すように、動きベクトルの総数は「25」と決定される。すなわち、符号化処理が済んでいない符号化ツリー単位領域11は、動きベクトルの総数が「30」から「25」に減る。逆に、符号化処理が進みすぎている場合には、進捗率閾値をピクチャ内進捗率が上回り、符号化処理が済んでいない符号化ツリー単位領域11は、動きベクトルの総数が「30」から「33」等に増える。すなわち、符号化処理の進捗率に応じて、動きベクトルの総数を減らして演算量を減らし符号化処理の速度を上げたり、動きベクトルの総数を増やして演算量を増やし符号化処理の速度を下げたりすることで、符号化処理の速度が一定に保たれる。したがって、実時間の(リアルタイムな)符号化が実現され、リアルタイムエンコードが要求される撮像機器(例えばビデオカメラ)では有効になる。 Here, the weight coefficient A is a positive constant used for weighting. For example, when the progress rate threshold for a certain time set as setting information is “40%”, the initial value of the total number of motion vectors is “30”, and the weighting factor A is “25”, the in-picture progress rate is “ If it is “20%”, the in-picture progress rate falls below the progress rate threshold. That is, there is a delay in the encoding process. According to the above formulas (1) and (2), as shown in FIG. 4, the total number of motion vectors is determined to be “25”. That is, in the coding tree unit region 11 that has not been subjected to the coding process, the total number of motion vectors decreases from “30” to “25”. On the other hand, if the encoding process has progressed too much, the in-picture progress rate exceeds the progress rate threshold, and the encoding tree unit region 11 that has not been encoded has a total number of motion vectors of “30”. It increases to “33”. In other words, depending on the progress rate of the encoding process, the total number of motion vectors is reduced to reduce the amount of calculation to increase the speed of the encoding process, or the total number of motion vectors is increased to increase the amount of calculation and decrease the speed of the encoding process. By doing so, the speed of the encoding process is kept constant. Therefore, real-time (real-time) encoding is realized, and is effective in an imaging device (for example, a video camera) that requires real-time encoding.
次いで、増減制御回路122は、動きベクトル数決定処理を実行する(ステップS105)。動きベクトル数決定処理は、符号化ツリー単位領域11に含まれる各符号化単位領域12に配分する動きベクトル数を決定する処理である。尚、動きベクトル数決定処理の詳細は後述する。次いで、増減制御回路122は、動きベクトル選択処理を実行する(ステップS106)。動きベクトル選択処理は、分類された動きベクトルの中から、探索範囲として利用する動きベクトルを選択する処理である。選択された動きベクトルが探索範囲として等倍動きベクトル検出部109に出力される。
Next, the increase /
増減制御回路122は、次いで、符号化ツリー単位領域11に含まれる全ての符号化単位領域12(CU)に対して動きベクトルの選択が完了したか否かを判断する(ステップS107)。増減制御回路122は、全ての符号化単位領域12に対して動きベクトルの選択が完了していないと判断した場合には(ステップS107:NO)、ステップS106の処理を繰り返す。符号化ツリー単位領域11に含まれる全ての符号化単位領域12に対する動きベクトルの選択が完了する。
Next, the increase /
一方、増減制御回路122は、全ての符号化単位領域12に対して動きベクトルの選択が完了したと判断した場合には(ステップS107:YES)、次いで、ピクチャ10に含まれる全ての符号化ツリー単位領域11に対して、ステップS102〜S107の処理が完了したか否かを判断する(ステップS108)。増減制御回路122は、全ての符号化ツリー単位領域11に対してこれらの処理が完了していないと判断した場合には(ステップS108:NO)、ステップS102〜ステップS107の処理を繰り返す。これにより、ピクチャ10に含まれる全ての符号化ツリー単位領域11に対し動きベクトルの総数が決定され、各符号化ツリー単位領域11に含まれる全ての符号化単位領域12に対する動きベクトルの選択が完了する。
On the other hand, if the increase /
一方、増減制御回路122は、全ての符号化ツリー単位領域11に対して上述したステップS102〜ステップS107の処理が完了したと判断した場合には(ステップS108:YES)、次いで、動画像5に含まれる全てのピクチャ10に対してステップS101〜ステップS108の処理が完了したか否かを判断する(ステップS109)。増減制御回路122は、全てのピクチャ10に対してこれらの処理が完了していないと判断した場合には(ステップS109:NO)、ステップS101〜ステップS108の処理を繰り返す。一方、増減制御回路122は、全てのピクチャ10に対してステップS101〜ステップS108の処理が完了したと判断した場合には(ステップS109:YES)、処理を終了する。これにより、動画像5に対し動きベクトルの総数を増減させる処理が完了する。
On the other hand, if the increase /
次に、図5及び図6を参照して、上述したステップS102の動きベクトル分類処理について説明する。 Next, the motion vector classification process in step S102 described above will be described with reference to FIGS.
図5は、動きベクトル分類処理の詳細を例示するフローチャートである。図6は、動きベクトル分類処理の一例を説明する図である。動きベクトル分類処理は、増減制御回路122が取得した等倍画像の動きベクトル毎に実行される。
FIG. 5 is a flowchart illustrating details of the motion vector classification process. FIG. 6 is a diagram illustrating an example of motion vector classification processing. The motion vector classification process is executed for each motion vector of the same-size image acquired by the increase /
まず、図5に示すように、増減制御回路122は、動きベクトルの分類結果を格納する分類結果格納用リストを初期化する(ステップS201)。次いで、増減制御回路122は、動きベクトル管理部112から取得した等倍画像の動きベクトルがシーンチェンジに該当するピクチャ10を参照しているか否かを判断する(ステップS202)。
First, as shown in FIG. 5, the increase /
例えば、図6(a)に示すように、符号化処理中のピクチャ10に含まれる符号化ツリー単位領域11が、取得した等倍画像の動きベクトルに基づいて識別番号「0」や識別番号「1」が付与された符号化処理済のピクチャ10におけるベクトル先の領域を参照する。符号化ツリー単位領域11とベクトル先の領域とのSAD値(等倍画像の動きベクトルのSAD値)が所定の判定閾値以上であることにより符号化ツリー単位領域11とベクトル先の領域とが類似していないと判定した場合、等倍画像の動きベクトルがシーンチェンジに相当するピクチャ10を参照していると判断し(ステップS202:YES)、該SAD値と関連付けられた動きベクトルを符号化ツリー単位領域11の利用対象から除外する(ステップS203)。これにより、図6(b)に示すように、シーンチェンジに相当するピクチャ10を参照している候補番号「4」の動きベクトルが利用対象から除外される。 For example, as shown in FIG. 6A, the coding tree unit area 11 included in the picture 10 being coded is identified by an identification number “0” or an identification number “ Reference is made to the vector destination area in the encoded picture 10 to which “1” is assigned. The coding tree unit region 11 and the vector destination region are similar because the SAD value of the coding tree unit region 11 and the vector destination region (the SAD value of the motion vector of the equal-magnification image) is equal to or greater than a predetermined determination threshold. If it is determined that the motion vector of the equal-size image does not refer to the picture 10 corresponding to the scene change (step S202: YES), the motion vector associated with the SAD value is encoded tree It excludes from the utilization object of the unit area | region 11 (step S203). As a result, as shown in FIG. 6B, the motion vector of candidate number “4” referring to the picture 10 corresponding to the scene change is excluded from the use target.
一方、増減制御回路122は、等倍画像の動きベクトルがシーンチェンジに相当するピクチャ10を参照していないと判断した場合(ステップS202:NO)、次いで、同じ識別番号を持つグループがあるか否かを判断する(ステップS204)。例えば、図6(b)に示すように、分類結果格納用リストにまだ分類結果が格納されていない場合、増減制御回路122は、同じ識別番号を持つグループがないと判断し(ステップS204:NO)、分類処理の対象となっている等倍画像の動きベクトルを新しいグループに分類する(ステップS205)。例えば、分類処理の対象となっている等倍画像の動きベクトルとして、図6(b)に示すように、候補番号「0」の動きベクトルが対象となっている場合、分類結果格納用リストにまだ分類結果が格納されていなければ、その動きベクトルはグループ番号「0」に分類される。
On the other hand, if the increase /
一方、増減制御回路122は、同じ識別番号を持つグループがあると判断した場合(ステップS204:YES)、次いで、ベクトル方向が近いグループがあるか否かを判断する(ステップS206)。当該判断は、例えばグループ内に存在する動きベクトルとのコサイン距離や動きベクトルとの差分ベクトルの正接等から求められる。増減制御回路122は、ベクトル方向が近いグループがないと判断した場合(ステップS206:NO)、分類処理の対象となっている等倍画像の動きベクトルを新しいグループに分類する(ステップS205)。一方、増減制御回路122は、ベクトル方向が近いグループがあると判断した場合(ステップS206:YES)、分類処理の対象となっている等倍画像の動きベクトルをそのグループに分類する(ステップS207)。
On the other hand, when the increase /
増減制御回路122は、ステップS203、S205又はS207の処理が完了すると、全ての動きベクトルの分類処理が完了したか否かを判断し(ステップS208)、全ての動きベクトルの分類処理が完了していないと判断した場合には(ステップS208:NO)、ステップS202〜S207の処理を繰り返す。そして、増減制御回路122は、全ての動きベクトルの分類処理が完了したと判断した場合には(ステップS208:YES)、動きベクトル分類処理を終了する。この結果、図6(b)に示すように、同じ符号化処理済のピクチャ10を参照する複数の動きベクトルがベクトルの方向に応じてさまざまなグループに分類される。
When the process in step S203, S205, or S207 is completed, the increase /
次に、図7乃至図9を参照して、上述したステップS105の動きベクトル数決定処理について説明する。 Next, the motion vector number determination process in step S105 described above will be described with reference to FIGS.
図7は、動きベクトル数決定処理の詳細を例示するフローチャートである。図8は、動きベクトル数の決定を説明する図である。図9は、符号化ツリー単位領域11に配分された動きベクトル数の一例である。 FIG. 7 is a flowchart illustrating details of the motion vector number determination process. FIG. 8 is a diagram for explaining determination of the number of motion vectors. FIG. 9 is an example of the number of motion vectors allocated to the coding tree unit area 11.
まず、図7に示すように、増減制御回路122は、後述する各変数を初期化し(ステップS301)、次いで、処理対象の符号化単位領域12を指定して、指定した符号化単位領域12のSAD値が最小SAD値より大きいか否かを判断する(ステップS302)。当該SAD値は、縮小画像の動きベクトルのSAD値である。増減制御回路122は、決定処理の対象となる符号化単位領域12のSAD値が最小SAD閾値より大きいと判断した場合(ステップS302:YES)、変数としての合計SAD値に符号化単位領域12のSAD値を加算する(ステップS303)。すなわち、指定した符号化単位領域12のSAD値が最小SAD閾値以下である場合には、縮小画像の動きベクトルの精度は十分に高精度であると判断し、当該動きベクトルを利用して等倍画像の動きベクトルを探索すると判断する。
First, as shown in FIG. 7, the increase /
増減制御回路122は、ステップS302又はS303の処理が完了すると、次いで、全ての符号化単位領域12(CU)に対しステップS302又はS303の処理が完了したか否かを判断する(ステップS304)。増減制御回路122は、全ての符号化単位領域12に対しステップS302又はS303の処理が完了していないと判断した場合(ステップS304:NO)、ステップS302〜S303の処理を繰り返す。これにより、最小SAD閾値以下を除く符号化ツリー単位領域11に含まれるすべての検出対象領域12のSAD値を合計した合計SAD値が求められる。
When the process of step S302 or S303 is completed, the increase /
増減制御回路122は、全ての符号化単位領域12に対しステップS302又はS303の処理が完了したと判断した場合(ステップS304:YES)、最大動きベクトル数決定処理を実行する(ステップS305)。最大動きベクトル数決定処理は、符号化ツリー単位領域11に含まれる各符号化単位領域12に対し、最大でどの程度の数量の動きベクトル数を配分するかを決定する処理である。尚、最大動きベクトル数決定処理の詳細は後述する。
When the increase /
増減制御回路122は、ステップS305の処理が完了すると、次いで、決定した最大動きベクトル数を変数iに指定するとともに(ステップS306)、処理対象の符号化単位領域12を指定し、処理対象として指定された符号化単位領域12のSAD値が最小SAD閾値より大きいか否かを判断する(ステップS307)。ここで、増減制御回路122は、指定した符号化単位領域12のSAD値が最小SAD閾値以下である場合には(ステップS307:NO)、後述するステップS308〜S310の処理をスキップする。すなわち、指定した符号化単位領域12が最大動きベクトル数の配分先から除外される。これは上述したように、指定した符号化単位領域12のSAD値が最小SAD閾値以下である場合には、縮小画像の動きベクトルの精度は十分に高精度であると判断し、当該動きベクトルを利用して等倍画像の動きベクトルを探索するとためである。
When the process of step S305 is completed, the increase /
一方、増減制御回路122は、処理対象として指定した符号化単位領域12のSAD値が最小SAD閾値より大きい場合には(ステップS307:YES)、次いで、不等式Aを充足するか否かを判断する(ステップS308)。ここで、不等式Aは、合計SAD値を最大動きベクトル数で割り、得られた第1の値に変数iから1を引いた第2の値を掛け合わせた第3の値と指定した符号化単位領域12のSAD値との大小関係を表す式である。例えば、最大動きベクトル数が「4」である場合に、合計SAD値を最大動きベクトル数「4」で割ると、図8に示すように、SAD値が4つの区間に均等に区分される。そして、1つ1つの区間の大きさが上述した第1の値となる。第1の値に最大動きベクトル数「4」から「1」を引いた第2の値「3」を掛け合わせると、図8において合計SAD値と示された破線の左に隣接する破線位置が求められる。したがって、不等式Aは、指定した符号化単位領域12のSAD値と当該破線位置で示されるSAD値との大小関係を表すことになる。
On the other hand, the increase /
ここで図7に戻り、増減制御回路122は、不等式Aを充足すると判断した場合(ステップS308:YES)、処理対象として指定した符号化単位領域12の動きベクトル数に1を加える(ステップS309)。すなわち、図8に示すように、処理対象として指定した符号化単位領域12のSAD値と上述した破線位置(合計SAD値と示された破線の左に隣接する破線位置)で示されるSAD値との大小関係において、指定した符号化単位領域12のSAD値の方が破線位置で示されるSAD値より大きい場合、指定した符号化単位領域12に1が加算される。一方、増減制御回路122は、不等式Aを充足しないと判断した場合(ステップS308:NO)、ステップS309の処理をスキップする。
Returning to FIG. 7, when the increase /
増減制御回路122は、ステップS308又はS309の処理が完了すると、次いで、符号化ツリー単位領域11内のベクトル数の総和が決定総数であるか否かを判断する(ステップS310)。すなわち、増減制御回路122は、各符号化単位領域12に加算された動きベクトル数の総和が、ステップS104の処理で決定された動きベクトルの総数であるか否かを判断する。例えば、決定された動きベクトルの総数が「25」である場合に、1つの符号化単位領域12に加算された動きベクトル数の総和を算出しても総数「25」でない場合(例えばまだ「1」だけの場合)には、符号化単位領域12に加算された動きベクトル数の総和が、ステップS104の処理で決定された動きベクトルの総数でないと判断される。
When the process of step S308 or S309 is completed, the increase /
増減制御回路122は、符号化ツリー単位領域11内のベクトル数の総和が決定総数でないと判断した場合(ステップS310:NO)、すべての符号化単位領域12に対しステップS307〜S310の処理を完了したか否かを判断する(ステップS311)。増減制御回路122は、すべての符号化単位領域12に対しステップS307〜S310の処理を完了していないと判断した場合(ステップS311:NO)、これらの処理を繰り返す。これにより、合計SAD値とこれに隣接するSAD値(図8参照)の間に属するSAD値を有する各符号化単位領域12に対し動きベクトル数「1」がそれぞれ加算される。
When the increase /
一方、増減制御回路122は、すべての符号化単位領域12に対し「1」を加算したと判断した場合(ステップS311:YES)、又は、符号化ツリー単位領域11内のベクトル数の総和が決定総数であると判断した場合(ステップS310:YES)、変数iが「1」であるか否かを判断する(ステップS312)。すなわち、指定した符号化単位領域12に「1」を加算した結果、符号化ツリー単位領域11内のベクトル数の総和が決定総数を超えることができないため、動きベクトル数「1」の加算を取り止めることで、総和が決定総数を超過することを防止している。このため、符号化ツリー単位領域11内のベクトル数の総数が決定された総数を上回ることはない。
On the other hand, when the increase /
増減制御回路122は、変数iが「1」でないと判断した場合(ステップS312:NO)、変数iから「1」引いた値を新たな変数iとし(ステップS313)、ステップS307〜S311の処理を繰り返す。この結果、合計SAD値とこれに隣接するSAD値(図8参照)の間に属するSAD値を有する各符号化単位領域12に対しさらに動きベクトル数「1」がそれぞれ加算されるだけでなく、この隣接するSAD値とこれにさらに隣接するSAD値(図8参照)の間に属するSAD値を有する各符号化単位領域12に対しても動きベクトル数「1」がそれぞれ加算される。すなわち、最初に動きベクトル数「4」が割り当てられるべきSAD値を有する各符号化単位領域12に対し、動きベクトル数「1」が加算される。次に、動きベクトル数「4」、「3」が割り当てられるべきSAD値を有する各符号化単位領域12に対し、動きベクトル数「1」が加算される。次に、動きベクトル数「4」、「3」、「2」が割り当てられるべきSAD値を有する各符号化単位領域12に対し、動きベクトル数「1」が加算される。最後に、動きベクトル数「4」、「3」、「2」、「1」が割り当てられるべきSAD値を有する各符号化単位領域12に対し、動きベクトル数「1」が加算される。したがって、動きベクトル数「4」が割り当てられるべきSAD値を有する各符号化単位領域12に対しては動きベクトル数「4」が割り当てられ、以下同様に動きベクトル数「3」、「2」、「1」が割り当てられる。増減制御回路122は、変数iが「1」であると判断した場合(ステップS312:YES)、動きベクトル数決定処理を終了する。この結果、図9に示すように、符号化ツリー単位領域11に総数「25」が決定されている場合、各符号化単位領域12には動きベクトル利用可能数として「0」〜「4」が配分される。特に、低類似度には相対的に多くのベクトル数が配分され、高類似度には相対的に少ないベクトル数が配分される。すなわち、類似度が低いほど多くのベクトル数を配分し、動きベクトルの検出精度の向上を図っている。
When the increase /
次に、図10を参照して、上述したステップS305の最大動きベクトル数決定処理について説明する。 Next, the maximum motion vector number determination process in step S305 described above will be described with reference to FIG.
図10は、最大動きベクトル数決定処理の詳細を例示するフローチャートである。
最大動きベクトル数決定処理では、まず、増減制御回路122は、動きベクトル候補の総数から利用対象外の候補数を除外した候補数を最大動きベクトル数と指定する(ステップS401)。例えば、図6(b)に示すように、5つの動きベクトル候補がある場合、利用対象外となった候補番号「4」の動きベクトル候補を除外して最大動きベクトル数「4」を指定する。
FIG. 10 is a flowchart illustrating details of the maximum motion vector number determination process.
In the maximum motion vector number determination process, the increase /
次いで、増減制御回路122は、不等式Bを充足するか否かを判断する(ステップS402)。不等式Bは、動きベクトルの出現数の期待値に1つの符号化ツリー単位領域11に含まれる検出単位領域数を掛け合わせた第4の値と、符号化ツリー単位領域11が利用する動きベクトルの総数との大小関係を表す式である。例えば、最大動きベクトル総数が「4」である場合、各符号化単位領域12に「4」〜「1」が均等に出現する場合、(4+3+2+1)÷4=2.5となる。すなわち、各符号化単位領域12には期待値として動きベクトル数「2.5」が出現する。ここで、例えば図9に示すように、符号化ツリー単位領域11に10個の符号化単位領域12(8個の小領域と2つの大領域)が含まれている場合、2.5×10=25となる。したがって、符号化ツリー単位領域11が利用する動きベクトルの総数が「25」である場合、最大動きベクトル総数が「4」であれば動きベクトルの総数「25」以下となって不等式Bを充足し(ステップS402:YES)、増減制御回路122は、最大動きベクトル総数「4」を出力する。
Next, the increase /
一方、例えば最大動きベクトル総数が「5」である場合、上述した期待値は同様の計算により3となる。したがって、符号化ツリー単位領域11に10個の符号化単位領域12(8個の小領域と2つの大領域)が含まれている場合、3×10=30となり、符号化ツリー単位領域11が利用する動きベクトルの総数が「25」あれば、不等式Bを充足しない(ステップS402:NO)、この場合、増減制御回路122は、最大動きベクトル総数から「1」を差し引き、新たな最大動きベクトル総数を算出する(ステップS403)。増減制御回路122は、算出した新たな最大動きベクトル数が「0」より大きければ(ステップS404:YES)、ステップS402〜S403の処理を繰り返す。この結果、最大動きベクトル数は、符号化ツリー単位領域11が利用する動きベクトルの総数に応じた数値に収束する。すなわち、最大動きベクトル総数「4」に収束する。
On the other hand, for example, when the maximum total number of motion vectors is “5”, the above-described expected value is 3 by the same calculation. Therefore, if the coding tree unit region 11 includes 10 coding unit regions 12 (eight small regions and two large regions), 3 × 10 = 30, and the coding tree unit region 11 is If the total number of motion vectors to be used is “25”, the inequality B is not satisfied (step S402: NO). In this case, the increase /
次に、図11を参照して、上述したステップS106の動きベクトル選択処理について説明する。 Next, the motion vector selection process in step S106 described above will be described with reference to FIG.
図11は、動きベクトル選択処理の詳細を例示するフローチャートである。
動きベクトル選択処理では、まず、増減制御回路122は、後述する各変数を初期化し(ステップS501)、次いで、各動きベクトルの評価値を算出する(ステップS502)。具体的には、動きベクトルの方向、参照するピクチャ10の種類、SAD値などの評価値付与基準に基づいて評価値が算出される。
FIG. 11 is a flowchart illustrating the details of the motion vector selection process.
In the motion vector selection process, first, the increase /
動きベクトルの方向であれば、現在の符号化ツリー単位領域11の上又は左に隣接する符号化ツリー単位領域11で決定された動きベクトルに対するSAD値を評価値として利用してもよい。また、類似した方向を指す動きベクトルが多ければ、その動きベクトルに対しその他の動きベクトルより大きな評価値が付与されるようにしてもよい。参照するピクチャ10であれば、算出対象の動きベクトルが、隣接する符号化ツリー単位領域11の動きベクトルと同じピクチャ10を参照していれば、相対的に大きな評価値が付与されるようにしてもよい。全ての動きベクトル候補の中で同じピクチャ10を参照する動きベクトル候補に相対的に大きな評価値が付与されるようにしてもよい。SAD値であれば、SAD値が大きいほど類似度が低いため相対的に小さな評価値が付与されるようにしてもよい。 If it is the direction of the motion vector, the SAD value for the motion vector determined in the coding tree unit region 11 adjacent to the top or left of the current coding tree unit region 11 may be used as the evaluation value. In addition, if there are many motion vectors pointing in similar directions, an evaluation value larger than other motion vectors may be given to the motion vector. For the picture 10 to be referenced, if the motion vector to be calculated refers to the same picture 10 as the motion vector of the adjacent coding tree unit region 11, a relatively large evaluation value is given. Also good. A relatively large evaluation value may be given to motion vector candidates that refer to the same picture 10 among all motion vector candidates. In the case of the SAD value, since the similarity is lower as the SAD value is larger, a relatively smaller evaluation value may be given.
以上説明した評価値付与基準に基づいて、増減制御回路122は、以下の数式(3)を利用して動きベクトルの評価値を算出する。
[動きベクトルの評価値]=
重み係数B×[動きベクトルの方向に関する評価値]
+重み係数C×[参照するピクチャ10に関する評価値]
+重み係数D×[SAD値に関する評価値]・・・(3)
Based on the evaluation value provision criterion described above, the increase /
[Evaluation value of motion vector] =
Weight coefficient B × [evaluation value regarding the direction of the motion vector]
+ Weighting coefficient C × [evaluation value relating to reference picture 10]
+ Weighting coefficient D × [evaluation value for SAD value] (3)
ここで、重み係数B,C,Dは重み付けに利用する正の定数である。例えば、(B,C,D)=(1,0,0)であれば、動きベクトルの方向の類似度のみによる優先順位、(B,C,D)=(1,1,2)であれば、SAD値が小さい動きベクトルを重視した優先順位となる。 Here, the weighting factors B, C, and D are positive constants used for weighting. For example, if (B, C, D) = (1, 0, 0), the priority is based only on the similarity in the direction of the motion vector, and (B, C, D) = (1, 1, 2). For example, priority is given to a motion vector with a small SAD value.
増減制御回路122は、ステップS502の処理が完了すると、次いで、最大の評価値となった動きベクトルを選択し(ステップS503)、選択した動きベクトルを動きベクトル格納用リストから削除する(ステップS504)。そして、増減制御回路122は、選択した動きベクトル数が最大の動きベクトル数に到達したか否か判断する(ステップS505)。すなわち、最大の動きベクトル数が「4」である場合、最大の評価値となった動きベクトルだけが選択されていた場合には、増減制御回路122は、選択した動きベクトル数が最大の動きベクトル数に到達していないと判断し(ステップS505:NO)、ステップS503〜S504の処理を繰り返す。この結果、最大の評価値となった動きベクトルのほかに、順に大きな評価値が付与された3つの動きベクトルが選択される。増減制御回路122は、選択した動きベクトル数が最大の動きベクトル数に到達したと判断した場合(ステップS505:YES)、動きベクトル選択処理を終了する。
When the process of step S502 is completed, the increase /
次に、図12を参照して、実施例の効果を比較例の効果と対比して説明する。 Next, referring to FIG. 12, the effect of the embodiment will be described in comparison with the effect of the comparative example.
図12は、実施例と比較例の効果を対比して説明する図である。
まず、図12(a)に示すように、符号化ツリー単位領域11の各符号化単位領域12に動きベクトルの総数「30」が所定の配分比率で配分されている。この状態で時刻t1になるまで進捗率閾値に沿って符号化処理が進んでいる。ここで、実施例では、時刻t1にメモリアクセス時間の揺らぎやサブブロック分割法による動きベクトル検出処理時間の揺らぎなどの外乱によって符号化処理に遅れが生じた場合、増減制御回路122は動きベクトルの総数を「30」から「25」に変更する。これにより、演算量が変更前と比べて減少し、符号化処理の速度が向上する。
FIG. 12 is a diagram illustrating the effects of the example and the comparative example in comparison.
First, as shown in FIG. 12A, the total number “30” of motion vectors is distributed to each
また、増減制御回路122は、SAD値が相対的に大きな符号化単位領域12に対し、大きなベクトル数を配分する。この結果、例えば変更前には動きベクトル数「4」が配分されていた符号化単位領域12に対し、変更後にも継続して動きベクトル数「4」が配分される。逆に、増減制御回路122は、SAD値が相対的に小さな符号化単位領域12に対し、小さなベクトル数を配分する。例えば変更前には動きベクトル数「3」〜「1」が配分されていた符号化単位領域12に対し、変更後には動きベクトル数「2」〜「0」が配分される。すなわち、類似度が低い符号化単位領域12では、多くの動きベクトルが利用され検出精度が向上する。一方、類似度が高い符号化単位領域12では、動きベクトルの精度が高いため、多くの動きベクトルを利用しないで済む。動きベクトル数「1」であれば、評価値が最大となった動きベクトルが探索範囲として出力され、動きベクトル数「0」であれば、縮小画像の動きベクトルが利用されて等倍画像の動きベクトルが検出される。このような処理によって、図12(a)に示すように、処理速度が一定に保たれる。
The increase /
逆に、比較例では、図12(b)に示すように、図12(a)と同様に符号化処理が進んでいる。ここで、時刻t1に、上述した外乱によって符号化処理に遅れが生じた場合でも、動きベクトルの総数は「30」から変更されない。これにより、演算量が変更前と比べて変わらず、符号化処理の遅延が累積する。 On the other hand, in the comparative example, as shown in FIG. 12B, the encoding process proceeds as in FIG. Here, even when the encoding process is delayed due to the above-described disturbance at time t1, the total number of motion vectors is not changed from “30”. As a result, the amount of calculation does not change compared to before the change, and the delay of the encoding process is accumulated.
次に、図13を参照して、別の視点から実施例の効果を比較例の効果と対比して説明する。 Next, referring to FIG. 13, the effect of the embodiment will be described from another viewpoint in comparison with the effect of the comparative example.
図13は、実施例と比較例の効果を対比して説明する別の図である。
図13に示すように、実施例では、動きベクトル数「0」が配分された符号化単位領域12では、相対的に精度が高い縮小画像の動きベクトルが利用されて等倍画像の動きベクトルが検出される。一方、動きベクトル数「0」以外が配分された符号化単位領域12では、配分された動きベクトルの数量に応じた動きベクトルが探索範囲として利用される。等倍動きベクトル検出部109では、探索範囲として決定された動きベクトルの中から動きベクトルが検出される。このように、SAD値に応じて、縮小画像の動きベクトルと符号化済みの符号化ツリー単位領域11で検出した動きベクトルが利用されるため、検出時間と検出精度の適正化が測れる。
FIG. 13 is another diagram illustrating the effects of the example and the comparative example in comparison.
As shown in FIG. 13, in the embodiment, in the
一方、比較例1では、すべての符号化単位領域12に対し動きベクトル数「0」が配分されている。このため、高精度だけでなく低精度の縮小画像の動きベクトルも利用されて、等倍画像の動きベクトルが検出されるため、等倍画像の動きベクトルの検出精度が低くなる。また、比較例2では、すべての符号化単位領域12に対し動きベクトル数「5」が配分されている。このため、符号化済みの符号化ツリー単位領域11で検出した動きベクトルが探索範囲として利用されて、等倍画像の動きベクトルが検出されるため、等倍画像の動きベクトルの検出精度は高くなるもの、実施例に比べて多くの検出時間が費やされる。
On the other hand, in Comparative Example 1, the number of motion vectors “0” is distributed to all the
以上説明したように、本実施形態によれば、符号化処理が済んだ符号化ツリー単位領域11で検出した動きベクトルを利用して符号化処理が済んでいない符号化ツリー単位領域11の動きベクトルを検出する際、符号化処理の進捗率により符号化処理が済んでいない符号化ツリー単位領域11が利用する動きベクトルの総数を増減させることで、検出時間と検出精度の適正化が図れる。 As described above, according to the present embodiment, the motion vector of the encoding tree unit region 11 that has not been encoded using the motion vector detected in the encoding tree unit region 11 that has been encoded. In this case, the detection time and the detection accuracy can be optimized by increasing / decreasing the total number of motion vectors used by the coding tree unit region 11 that has not been coded according to the progress rate of the coding process.
以上、本発明の好ましい実施形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば、量子化部102で実行されるDCTと量子化はそれぞれ別の回路で実現してもよい。同様に、逆量子化部103で実行されるIDCTと逆量子化についても別の回路で実現してもよい。また、上述した実施形態では、SAD値を利用して類似度を説明したが、Sum of Absolute Transformed Difference(SATD:変換差分絶対値和)値を利用してもよい。
The preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to the specific embodiments according to the present invention, and various modifications are possible within the scope of the gist of the present invention described in the claims.・ Change is possible. For example, DCT and quantization executed by the
11 符号化ツリー単位領域(第1符号化単位領域、第2符号化単位領域)
12 符号化単位領域(分割領域)
100 動画像符号化装置
120 制御部
121 計時回路
122 増減制御回路(増減制御手段)
11 Coding tree unit region (first coding unit region, second coding unit region)
12 Coding unit area (divided area)
DESCRIPTION OF
Claims (7)
前記第1符号化単位領域及び前記第2符号化単位領域を含む一画像内の前記符号化処理の進捗に応じて、前記第2符号化単位領域が利用する前記第1動きベクトルの総数を増減させる増減制御手段
を有する動画像符号化装置。 A moving picture coding apparatus that detects a second motion vector of a second coding unit area that has not been coded using a first motion vector detected in a first coding unit area that has been coded Because
The total number of the first motion vectors used by the second coding unit region is increased or decreased according to the progress of the coding process in one image including the first coding unit region and the second coding unit region. A moving picture coding apparatus having an increase / decrease control means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014013743A JP6187286B2 (en) | 2014-01-28 | 2014-01-28 | Video encoding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014013743A JP6187286B2 (en) | 2014-01-28 | 2014-01-28 | Video encoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015142233A true JP2015142233A (en) | 2015-08-03 |
JP6187286B2 JP6187286B2 (en) | 2017-08-30 |
Family
ID=53772336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014013743A Active JP6187286B2 (en) | 2014-01-28 | 2014-01-28 | Video encoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6187286B2 (en) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005057750A (en) * | 2003-07-24 | 2005-03-03 | Matsushita Electric Ind Co Ltd | Coding mode determination instrument, image coding instrument, coding mode determination method, and coding mode determination program |
JP2006080736A (en) * | 2004-09-08 | 2006-03-23 | Fujitsu Ltd | Motion vector search controller |
JP2006345186A (en) * | 2005-06-08 | 2006-12-21 | Canon Inc | Moving vector detection processing time calculating device and method, moving vector detecting device, and image encoding device |
JP2009060536A (en) * | 2007-09-03 | 2009-03-19 | Canon Inc | Image encoding apparatus, and image encoding method |
JP2009284058A (en) * | 2008-05-20 | 2009-12-03 | Mitsubishi Electric Corp | Moving image encoding device |
JP2010074496A (en) * | 2008-09-18 | 2010-04-02 | Fujitsu Ltd | Motion vector detection processing apparatus |
JP2012004710A (en) * | 2010-06-15 | 2012-01-05 | Fujitsu Ltd | Motion vector detection circuit, moving image encoding apparatus, and motion vector detection method |
WO2012042719A1 (en) * | 2010-09-30 | 2012-04-05 | 三菱電機株式会社 | Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, and dynamic image decoding method |
JP2013098733A (en) * | 2011-10-31 | 2013-05-20 | Jvc Kenwood Corp | Moving image decoder, moving image decoding method and moving image decoding program |
WO2014155738A1 (en) * | 2013-03-29 | 2014-10-02 | 富士通株式会社 | Encoding device, computer system, encoding method, encoding program, and recording medium |
-
2014
- 2014-01-28 JP JP2014013743A patent/JP6187286B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005057750A (en) * | 2003-07-24 | 2005-03-03 | Matsushita Electric Ind Co Ltd | Coding mode determination instrument, image coding instrument, coding mode determination method, and coding mode determination program |
JP2006080736A (en) * | 2004-09-08 | 2006-03-23 | Fujitsu Ltd | Motion vector search controller |
JP2006345186A (en) * | 2005-06-08 | 2006-12-21 | Canon Inc | Moving vector detection processing time calculating device and method, moving vector detecting device, and image encoding device |
JP2009060536A (en) * | 2007-09-03 | 2009-03-19 | Canon Inc | Image encoding apparatus, and image encoding method |
JP2009284058A (en) * | 2008-05-20 | 2009-12-03 | Mitsubishi Electric Corp | Moving image encoding device |
JP2010074496A (en) * | 2008-09-18 | 2010-04-02 | Fujitsu Ltd | Motion vector detection processing apparatus |
JP2012004710A (en) * | 2010-06-15 | 2012-01-05 | Fujitsu Ltd | Motion vector detection circuit, moving image encoding apparatus, and motion vector detection method |
WO2012042719A1 (en) * | 2010-09-30 | 2012-04-05 | 三菱電機株式会社 | Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, and dynamic image decoding method |
JP2013098733A (en) * | 2011-10-31 | 2013-05-20 | Jvc Kenwood Corp | Moving image decoder, moving image decoding method and moving image decoding program |
WO2014155738A1 (en) * | 2013-03-29 | 2014-10-02 | 富士通株式会社 | Encoding device, computer system, encoding method, encoding program, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
JP6187286B2 (en) | 2017-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8665960B2 (en) | Real-time video coding/decoding | |
US10291925B2 (en) | Techniques for hardware video encoding | |
WO2020180685A1 (en) | Constraints on decoder-side motion vector refinement | |
CN107396117B (en) | Video encoding and decoding methods and non-transitory computer-readable storage medium | |
US20110206132A1 (en) | Data Compression for Video | |
EP2520094A2 (en) | Data compression for video | |
JP6149707B2 (en) | Moving picture coding apparatus, moving picture coding method, moving picture coding program, and moving picture photographing apparatus | |
TWI401967B (en) | Method for scalable video coding, scalable video coding apparatus, program for scalable video coding, and computer readable storage medium storing program for scalable video coding | |
CN106658013A (en) | Image encoding device and method, image decoding device and method and recording medium | |
US20120219057A1 (en) | Video encoding apparatus and video encoding method | |
JP4217174B2 (en) | Moving picture coding apparatus and moving picture coding method | |
JP6339977B2 (en) | Video encoding apparatus and video encoding program | |
JP2017228827A (en) | Intra-prediction device, image coding device, image decoding device, and program | |
JP2009094644A (en) | Moving image encoding apparatus and method for controlling the same | |
JP6187286B2 (en) | Video encoding device | |
JP5832263B2 (en) | Image coding apparatus and image coding method | |
JP2015226199A (en) | Dynamic image coding device, dynamic image coding method and dynamic image coding program | |
WO2020129681A1 (en) | Encryption device and program | |
KR101247024B1 (en) | Method of motion estimation and compensation using in-loop preprocessing filtering | |
JP5171675B2 (en) | Image processing apparatus and imaging apparatus equipped with the same | |
JP2009130864A (en) | Image processing device, and imaging apparatus equipped with the same | |
JP6728870B2 (en) | Image compression apparatus, image compression method, and image compression program | |
Lee et al. | Depth-based adaptive search range algorithm for motion estimation in HEVC | |
JP2008153802A (en) | Moving picture encoding device and moving picture encoding program | |
JP2008072608A (en) | Apparatus and method for encoding image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161004 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170623 |
|
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: 20170704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170717 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6187286 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |