JP5662896B2 - Video stillness determination method, video stillness determination device, and program - Google Patents
Video stillness determination method, video stillness determination device, and program Download PDFInfo
- Publication number
- JP5662896B2 JP5662896B2 JP2011170045A JP2011170045A JP5662896B2 JP 5662896 B2 JP5662896 B2 JP 5662896B2 JP 2011170045 A JP2011170045 A JP 2011170045A JP 2011170045 A JP2011170045 A JP 2011170045A JP 5662896 B2 JP5662896 B2 JP 5662896B2
- Authority
- JP
- Japan
- Prior art keywords
- macroblock
- stationary
- still
- time information
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本発明は、映像符号化の画面間符号化の高速化のために用いられる映像静止判定方法、映像静止判定装置、及びプログラムに関する。 The present invention relates to a video stillness determination method, a video stillness determination device, and a program that are used for speeding up inter-picture encoding of video encoding.
膨大な情報を持つ映像データを効率よく圧縮する最新映像符号化としてH.264/AVCが知られている。H.264/AVCでは、画面間の予測符号化に膨大な演算量が必要となるため、映像フレームの静止情報を利用した画面間符号化、つまり、1)まず、画面内の各マクロブロックが“静止”と“非静止”のどちらであるかを判別(静止判定)し、2)静止のマクロブロックに関しては、1フレーム前の同座標に位置するマクロブロックを用いて予測する、という手法が広く利用されている。 H.264 is the latest video coding that efficiently compresses video data with vast amounts of information. H.264 / AVC is known. H. In H.264 / AVC, a large amount of computation is required for predictive coding between screens. Therefore, inter-screen coding using still information of video frames, that is, 1) First, each macroblock in a screen is “still”. Widely used is a method of determining whether it is “non-stationary” (stationary determination), and 2) predicting a macroblock that is stationary at the same coordinate one frame before Has been.
この手法によって、符号化効率の低下を抑制しながら、P/Bピクチャ符号化に伴う演算量を削減でき、有効となる。静止情報を利用した画面間符号化の代表例として特許文献1を挙げる。例えば、特許文献1では、符号化対象マクロブロックと、1フレーム前の同位置のマクロブロックとの画素間差分の絶対値和(SAD:Sum of Absolute Difference)を計算し、十分小さい場合には静止とみなし、参照マクロブロックをコピーすることで画面間符号化処理の演算量の削減を行っている。
This method is effective because it can reduce the amount of computation associated with P / B picture encoding while suppressing a decrease in encoding efficiency.
SADによる静止判定は、演算負荷が許容される環境下では問題ないが、テレビ会議等のようなリアルタイム符号化を演算性能の低いPC(Personal Computer)で実行する場合、特に、映像の解像度・フレームレートが高い場合には、演算負荷は問題となる。従って、静止判定手法に対しても、より低演算量なアルゴリズムが求められている。 The stillness determination by SAD is not a problem in an environment where the calculation load is allowed. However, when real-time encoding such as video conferencing is executed by a PC (Personal Computer) having low calculation performance, in particular, the resolution / frame of video When the rate is high, the computation load becomes a problem. Therefore, an algorithm with a lower calculation amount is also required for the stillness determination method.
上記問題を解決する簡易静止領域判定技術に関して、容易に類推できる手法としては1)SADの計算対象画素を、マクロブロック全体でなく一部に限定する方法(例えば特許文献2参照)や、2)符号化対象ブロック及び参照ブロックの画素の全て、もしくは一部の画素値を合計し、その値同士の差分の絶対値を用いる手法(例えば特許文献3参照)が考えられる。
With respect to the simple still region determination technique for solving the above problem, as a method that can be easily analogized, 1) a method for limiting the calculation target pixel of SAD to a part rather than the entire macroblock (for example, refer to Patent Document 2), or 2) A method of summing all or some of the pixel values of the encoding target block and the reference block and using the absolute value of the difference between the values is conceivable (see
しかしながら、上述した特許文献1、2に記載の従来技術では、マクロブロックの各画素毎の変化が全て検出できないため、静止していないにも関わらず、静止であると判定される可能性があり、直前フレームの同位置のブロックで予測した結果、符号化効率が悪化してしまうという問題がある。
However, in the conventional techniques described in
本発明は、このような事情を考慮してなされたものであり、その目的は、静止判定精度を維持しつつ、静止判定に伴う演算量を削減することができる映像静止判定方法、映像静止判定装置、及びプログラムを提供することにある。 The present invention has been made in view of such circumstances, and an object of the present invention is to provide a still image determination method and a still image determination method that can reduce the amount of computation associated with still determination while maintaining still determination accuracy. An apparatus and a program are provided.
上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定方法であって、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化するステップと、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定するステップと、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を求めるステップと、前記静止時間と所定の閾値とを比較するステップと、前記比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定するステップと、前記判定結果に基づいて、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出するステップと、前記算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行うステップとを含むことを特徴とする映像静止判定方法である。 In order to solve the above-described problem, the present invention determines whether or not a macroblock in a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in video encoding preprocessing. A method of initializing still image start time information given to spatial coordinates of each macro block by time information of an initial frame, and a still image of the same block in the frame immediately before the macro block If the determination result is non-still, the absolute value of the difference between the step of setting the still start time information of the macroblock in the current frame time information and the still start time information corresponding to the coordinates of the macroblock and the current frame time information Determining the stationary time from the step, comparing the stationary time with a predetermined threshold, and based on the comparison result. A step of determining whether or not the macroblock is stationary for a certain period of time, a SAD (Sum of Absolute Difference) in which the calculation target pixel is limited based on the determination result, and the respective pixels of the preceding and following two blocks Calculating a pixel value change amount using either a difference absolute value of a sum of values or a difference absolute value of values obtained by summing pixel values of a part of target pixels of each of the preceding and following two blocks; A still image determination method including a step of determining stillness based on a calculated pixel value change amount and a threshold value of the macroblock.
また、上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定方法であって、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化するステップと、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定するステップと、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を求めるステップと、当該マクロブロックが画面端に位置するならば、大きさの異なる2つの閾値のうち、小さい方の第1の閾値と前記静止時間とを比較し、当該マクロブロックが画面中央に位置するならば、前記大きさの異なる2つの閾値のうち、大きい方の第2の閾値と前記静止時間とを比較するステップと、前記比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定するステップと、前記判定結果に基づいて、前記計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出するステップと、前記算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行うステップとを含むことを特徴とする映像静止判定方法である。 In order to solve the above-described problem, the present invention determines whether or not a macroblock having a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in the preprocessing of video encoding. A method of initializing still image start time information given to the spatial coordinates of each macro block with time information of an initial frame, and the same block of the frame immediately before the macro block If the stillness determination result is non-still, the step of setting the still start time information of the macroblock to the current frame time information and the difference between the still start time information corresponding to the coordinates of the macroblock and the time information of the current frame If the macro block is located at the edge of the screen, the size is different from the step of obtaining the stationary time from the absolute value. Of the two threshold values, the smaller first threshold value is compared with the stationary time, and if the macroblock is located at the center of the screen, the larger second value of the two threshold values having different sizes is selected. Comparing the threshold with the stationary time; determining whether the macroblock is stationary for a predetermined time or more based on the comparison result; and calculating the calculation target pixel based on the determination result. Limited SAD (Sum of Absolute Difference), absolute difference of the sum of the pixel values of the two previous and subsequent blocks, or absolute difference between the values of the sum of the pixel values of some target pixels of the two previous and subsequent blocks Calculating a pixel value change amount using any of the values, and performing a stillness determination based on the calculated pixel value change amount and a threshold value of the macroblock. A still image determination method characterized by the following.
本発明は、上記の発明において、前記静止判定結果を用いて、画面間予測符号化をした場合に、予測残差誤差が所定の第3の閾値よりも大きい場合、当該マクロブロックの静止開始時刻情報を現在フレームの時刻情報に修正するステップを更に含むことを特徴とする。 According to the present invention, in the above invention, when inter prediction prediction coding is performed using the still determination result, and when the prediction residual error is larger than a predetermined third threshold, the still start time of the macroblock The method further includes the step of correcting the information to time information of the current frame.
本発明は、上記の発明において、前記算出された画素値変化量と前記マクロブロックの閾値との比較結果に加えて、近傍マクロブロックの静止時間と、近傍マクロブロックのインター/イントラモード情報と、近傍マクロブロックの動きベクトルとを用いることを特徴とする。 In the present invention, in addition to the comparison result between the calculated pixel value change amount and the threshold value of the macroblock, in the above invention, the stationary time of the neighboring macroblock, the inter / intra mode information of the neighboring macroblock, It uses a motion vector of a neighboring macroblock.
また、上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定装置であって、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化手段と、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定手段と、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出手段と、前記静止時間と所定の閾値とを比較する比較手段と、前記比較手段による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定手段と、前記判定手段による判定結果に基づいて、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出手段と、前記画素値変化量算出手段により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定手段とを備えることを特徴とする映像静止判定装置である。 In order to solve the above-described problem, the present invention determines whether or not a macroblock having a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in the preprocessing of video encoding. A still image start determination device for initializing still image start time information given to spatial coordinates of each macro block by time information of an initial frame, and a frame immediately preceding the macro block. If the stillness determination result of the block is non-still, setting means for setting the still start time information of the macroblock to the current frame time information, the still start time information corresponding to the coordinates of the macroblock and the current frame time information A stationary time calculating means for calculating a stationary time from a difference absolute value between the first and second comparators, and a comparing means for comparing the stationary time with a predetermined threshold value. Based on a comparison result by the comparison unit, a determination unit that determines whether or not the macroblock is stationary for a predetermined time or more, and a SAD (Sum of Sum) that limits a calculation target pixel based on the determination result by the determination unit Absolute Difference), the absolute value of the difference between the pixel values of the preceding and following two blocks, or the absolute value of the difference between the sum of the pixel values of some target pixels of the preceding and following two blocks A pixel value change amount calculating means for calculating a pixel value change amount, and a stillness determining means for performing stillness determination based on the pixel value change amount calculated by the pixel value change amount calculating means and a threshold value of the macroblock. It is an image stillness judging device characterized by comprising.
また、上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定装置であって、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化手段と、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定手段と、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出手段と、当該マクロブロックが画面端に位置するならば、大きさの異なる2つの閾値のうち、小さい方の第1の閾値と前記静止時間とを比較し、当該マクロブロックが画面中央に位置するならば、前記大きさの異なる2つの閾値のうち、大きい方の第2の閾値と前記静止時間とを比較する比較手段と、前記比較手段による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定手段と、前記判定手段による判定結果に基づいて、前記計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出手段と、前記画素値変化量算出手段により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定手段とを備えることを特徴とする映像静止判定装置である。 In order to solve the above-described problem, the present invention determines whether or not a macroblock having a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in the preprocessing of video encoding. A still image start determination device for initializing still image start time information given to spatial coordinates of each macro block by time information of an initial frame, and a frame immediately preceding the macro block. If the stillness determination result of the block is non-still, setting means for setting the still start time information of the macroblock to the current frame time information, the still start time information corresponding to the coordinates of the macroblock and the current frame time information If the macro block is located at the edge of the screen, the static time calculation means for calculating the static time from the absolute difference between Of the two different threshold values, the smaller first threshold value is compared with the stationary time, and if the macroblock is located at the center of the screen, the larger one of the two different threshold values. A comparing means for comparing the second threshold value with the stationary time, a determining means for determining whether or not the macroblock is stationary for a predetermined time or more based on a comparison result by the comparing means, and the determining means Based on the determination result by SAD (Sum of Absolute Difference) that limits the calculation target pixel, the difference absolute value of the sum of the pixel values of the preceding and following two blocks, or a part of each of the preceding and following two blocks Pixel value change amount calculating means for calculating a pixel value change amount using any one of absolute differences between values obtained by summing pixel values of pixels, and a pixel calculated by the pixel value change amount calculating means A video stillness determination apparatus comprising stillness determination means for determining stillness based on a value change amount and a threshold value of the macroblock.
本発明は、上記の発明において、前記静止判定結果を用いて、画面間予測符号化をした場合に、予測残差誤差が所定の第3の閾値よりも大きい場合、当該マクロブロックの静止開始時刻情報を現在フレームの時刻情報に修正する修正手段を更に備えることを特徴とする。 According to the present invention, in the above invention, when inter prediction prediction coding is performed using the still determination result, and when the prediction residual error is larger than a predetermined third threshold, the still start time of the macroblock The information processing apparatus further includes a correcting unit that corrects the information to time information of the current frame.
本発明は、上記の発明において、前記静止判定手段は、前記画素値変化量算出手段により算出された画素値変化量と前記マクロブロックの閾値との比較結果に加えて、近傍マクロブロックの静止時間と、近傍マクロブロックのインター/イントラモード情報と、近傍マクロブロックの動きベクトルとを用いることを特徴とする。 According to the present invention, in the above invention, the stillness determining unit includes a comparison result between the pixel value change amount calculated by the pixel value change amount calculating unit and the macroblock threshold value, and a still time of neighboring macroblocks. And inter / intra mode information of neighboring macroblocks and motion vectors of neighboring macroblocks.
また、上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定装置のコンピュータに、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化機能、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定機能、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出機能、前記静止時間と所定の閾値とを比較する比較機能、前記比較機能による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定機能、前記判定機能による判定結果に基づいて、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出機能、前記画素値変化量算出機能により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定機能を実現させるためのプログラムである。 In order to solve the above-described problem, the present invention determines whether or not a macroblock having a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in the preprocessing of video encoding. An initialization function for initializing still image start time information given to the spatial coordinates of each macro block with time information of the initial frame to the computer of the video still image determination device for determining the same as the frame immediately before the macro block If the block stillness determination result is non-still, the setting function for setting the still start time information of the macroblock to the current frame time information, the still start time information corresponding to the coordinates of the macroblock and the time information of the current frame A stationary time calculation function for calculating a stationary time from a difference absolute value, a comparison function for comparing the stationary time with a predetermined threshold value A determination function that determines whether or not the macroblock is stationary for a predetermined time or more based on the comparison result by the comparison function, and a SAD (Sum of Absolute) that limits the calculation target pixel based on the determination result by the determination function Difference), the absolute difference value of the sum of the pixel values of the two preceding and following blocks, or the absolute difference value of the values obtained by summing the pixel values of some target pixels of the two preceding and succeeding blocks In order to realize a pixel value change amount calculation function for calculating a pixel value change amount, and a stillness determination function for performing stillness determination based on the pixel value change amount calculated by the pixel value change amount calculation function and a threshold value of the macroblock It is a program.
また、上述した課題を解決するために、本発明は、映像符号化の前処理において、映像フレームのあるマクロブロックが直前フレームの同一座標に位置するマクロブロックに対して、静止しているか否かを判定する映像静止判定装置のコンピュータに、各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化機能、当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定機能、当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出機能、当該マクロブロックが画面端に位置するならば、大きさの異なる2つの閾値のうち、小さい方の第1の閾値と前記静止時間とを比較し、当該マクロブロックが画面中央に位置するならば、前記大きさの異なる2つの閾値のうち、大きい方の第2の閾値と前記静止時間とを比較する比較機能、前記比較機能による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定機能、前記判定機能による判定結果に基づいて、前記計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出機能、前記画素値変化量算出機能により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定機能を実現させるためのプログラムである。 In order to solve the above-described problem, the present invention determines whether or not a macroblock having a video frame is stationary with respect to a macroblock located at the same coordinate of the immediately preceding frame in the preprocessing of video encoding. An initialization function for initializing still image start time information given to the spatial coordinates of each macro block with time information of the initial frame to the computer of the video still image determination device for determining the same as the frame immediately before the macro block If the block stillness determination result is non-still, the setting function for setting the still start time information of the macroblock to the current frame time information, the still start time information corresponding to the coordinates of the macroblock and the time information of the current frame Static time calculation function that calculates static time from the difference absolute value, if the macroblock is located at the edge of the screen, Of the two thresholds having different sizes, the smaller first threshold is compared with the stationary time, and if the macroblock is located at the center of the screen, the larger of the two thresholds having different sizes is larger. A comparison function for comparing the second threshold value of the other and the stationary time, a determination function for determining whether the macroblock is stationary for a predetermined time or more based on a comparison result by the comparison function, and the determination function Based on the determination result, the SAD (Sum of Absolute Difference) in which the calculation target pixel is limited, the difference absolute value of the sum of the pixel values of the preceding and following two blocks, or a part of the target pixels of the preceding and following two blocks A pixel value change amount calculation function for calculating a pixel value change amount using any one of absolute differences between values obtained by summing the pixel values, and a pixel value change calculated by the pixel value change amount calculation function. This is a program for realizing a stillness determination function for performing stillness determination based on the conversion amount and the threshold value of the macroblock.
この発明によれば、静止判定精度を維持しつつ、静止判定に伴う演算量を削減することができる。 According to the present invention, it is possible to reduce the amount of calculation associated with stillness determination while maintaining stillness determination accuracy.
以下、本発明の一実施形態を、図面を参照して説明する。なお、以下の説明において、時刻情報としては、第1〜第4実施形態の全てにおいてシステム時刻を用いるものとする。以下、本発明の実施形態のアルゴリズムをH.264/AVCを例にして、図面を参照しながら説明する。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the following description, as the time information, the system time is used in all of the first to fourth embodiments. Hereinafter, the algorithm of the embodiment of the present invention is described as H.264. An example of H.264 / AVC will be described with reference to the drawings.
A.第1実施形態
図1は、本第1実施形態による静止判定方法の動作を説明するためのフローチャートである。まず、各マクロブロックに対応する静止開始時刻情報を全て初期フレームのシステム時刻:Pに初期化する(ステップS1)。次いで、符号化対象フレームを1枚ずつ入力し(ステップS2)、マクロブロック単位で一つずつラスタスキャン順に符号化対象マクロブロックを入力する(ステップS3)。次いで、定常静止判定処理を行い(ステップS4)、静止判定処理を行う(ステップS5)。
A. First Embodiment FIG. 1 is a flowchart for explaining the operation of a stillness determination method according to the first embodiment. First, all the still start time information corresponding to each macroblock is initialized to the system time P of the initial frame (step S1). Next, the encoding target frames are input one by one (step S2), and the encoding target macroblocks are input one by one in the raster scan order in units of macroblocks (step S3). Next, stationary stationary determination processing is performed (step S4), and stationary determination processing is performed (step S5).
次に、符号化対象マクロブロックに対して、H.264/AVCに基づくエンコーダとして一般的な、イントラ予測/インター予測、直交変換/逆直交変換、量子化、エントロピー符号化(CAVLC/CABAC)等の符号化処理を行い、最終的に、各フレームをバイナリデータとして出力する(ステップS6)。 Next, for the encoding target macroblock, H. H.264 / AVC as a general encoder, encoding processing such as intra prediction / inter prediction, orthogonal transform / inverse orthogonal transform, quantization, entropy coding (CAVLC / CABAC) is performed. Output as binary data (step S6).
ステップS6の符号化処理において、画面間予測符号化を行う場合には、静止判定の結果を利用する。例えば、静止と判断されたブロックでは、動きベクトル(0,0)、つまり直前フレームの同座標のマクロブロックによって予測を行う。正しく静止判定が行われれば、動きベクトル(0,0)による予測で、予測残差誤差を十分小さく抑えられる。 In the encoding process of step S6, when performing inter-screen prediction encoding, the result of stillness determination is used. For example, in a block determined to be stationary, prediction is performed using a motion vector (0, 0), that is, a macroblock having the same coordinates in the immediately preceding frame. If the stillness determination is correctly performed, the prediction residual error can be sufficiently reduced by the prediction using the motion vector (0, 0).
次に、当該フレームの全てのマクロブロックの処理が完了したか否かの判定を行い(ステップS7)、もし完了していなければ(ステップS7の偽)、ステップS3に戻り、次のマクロブロックの処理を行う。一方、当該フレームの全てのマクロブロックの処理が完了していれば(ステップS7の真)、全てのフレームの処理が完了したか否かの判定を行う(ステップS8)。そして、完了していなければ(ステップS8の偽)、ステップS2に戻り、次のフレームの処理を行い、完了していれば(ステップS8の真)、全体のアルゴリズムを終了する。 Next, it is determined whether or not the processing of all macroblocks in the frame has been completed (step S7). If not completed (false in step S7), the process returns to step S3 to return to the next macroblock. Process. On the other hand, if the processing of all the macroblocks in the frame has been completed (true in step S7), it is determined whether or not the processing of all frames has been completed (step S8). If not completed (false in step S8), the process returns to step S2 to process the next frame. If completed (true in step S8), the entire algorithm is terminated.
次に、本第1実施形態における静止判定の具体的なアルゴリズム(ステップS4の定常静止判定処理、及びステップS5の静止判定処理)について詳細に説明する。 Next, a specific algorithm for stationary determination (steady stationary determination processing in step S4 and stationary determination processing in step S5) in the first embodiment will be described in detail.
図2は、本第1実施形態による定常静止判定処理を説明するためのフローチャートである。定常静止判定処理では、まず、静止判定対象の(m,n)番目のマクロブロック(m、nは、空間的にy方向にm番目、x方向にn番目)の直前フレームの同座標マクロブロックが静止していたか否かを判定する(ステップS11)。そして、直前フレームの同座標マクロブロックが非静止と判定された場合には(ステップS11のNO)、静止判定対象マクロブロックの座標番号に対応する静止開始時刻情報CNT(m,n)を、次式(1)のように更新する(ステップS12)。 FIG. 2 is a flowchart for explaining steady stationary determination processing according to the first embodiment. In the stationary stillness determination processing, first, the same coordinate macroblock of the immediately preceding frame of the (m, n) th macroblock (m and n are spatially the mth in the y direction and the nth in the x direction) to be determined. It is determined whether or not is stationary (step S11). If it is determined that the same coordinate macroblock of the immediately preceding frame is non-still (NO in step S11), the still start time information CNT (m, n) corresponding to the coordinate number of the still determination target macroblock is It updates like Formula (1) (step S12).
但し、Pは、当該フレームのシステム時刻とする。一方、静止と判定された場合には(ステップS11のYES)、静止開始時刻情報に変更は施さず、(m,n)番目のマクロブロックの定常静止か、非定常静止かの場合分けを、静止時間(|CNT(m,n)−P|)と閾値THCNTとを用いて、次式(2)のように行う(ステップS13)。 However, P is the system time of the frame. On the other hand, when it is determined to be stationary (YES in step S11), the stationary start time information is not changed, and the case classification of whether the (m, n) -th macroblock is stationary stationary or non-stationary stationary, Using the rest time (| CNT (m, n) −P |) and the threshold value TH CNT , the following equation (2) is performed (step S13).
図3は、本第1実施形態による定常静止判定結果を用いた静止判定処理を説明するためのフローチャートである。静止判定処理では、まず、定常静止判定が真であるか否かを判定する(ステップS21)。定常静止判定処理(図1のステップS4)で、非定常静止と判定された場合には、ステップS21において偽と判定される。この場合、静止判定対象マクロブロック(数式(3)を参照)と1フレーム前の同一座標マクロブロック(数式(4)を参照)との画素値変化量をSADの計算式(5)を用いて評価する(ステップS22)。 FIG. 3 is a flowchart for explaining stillness determination processing using a stationary stillness determination result according to the first embodiment. In the stationary determination process, first, it is determined whether or not the stationary stationary determination is true (step S21). In the stationary stationary determination process (step S4 in FIG. 1), when it is determined that the stationary stationary is not performed, it is determined to be false in step S21. In this case, the pixel value change amount between the still determination target macroblock (see Equation (3)) and the same coordinate macroblock one frame before (see Equation (4)) is calculated using the SAD calculation equation (5). Evaluate (step S22).
本第1実施形態では、SADを用いるが、ここで用いる画素値変化量の評価方法は、一画素毎の変化量を評価できるものであれば十分であり、SADではなく、画素間差分の二乗和としてもよい。 In the first embodiment, SAD is used. However, the pixel value change amount evaluation method used here may be sufficient if it can evaluate the change amount for each pixel. It may be a sum.
そして、外部から与えられた閾値THSADを用いて、マクロブロック(数式(3)を参照)の状態を、次式(7)の静止判定条件で判定し、静止ならば真を出力、非静止ならば偽を出力する(ステップS23)。 Then, using the threshold TH SAD given from the outside, the state of the macroblock (see Equation (3)) is determined by the stationary determination condition of the following Equation (7). If so, false is output (step S23).
この静止判定結果を図1に示すステップS6の符号化処理の中で画面間予測符号化に適用する。 This stillness determination result is applied to inter-picture prediction encoding in the encoding process of step S6 shown in FIG.
一方、定常静止判定処理(図1のステップS4)で、定常静止と判定された場合には、ステップS21において真と判定され、静止判定対象マクロブロック(数式(3))と1フレーム前の同一座標マクロブロック(数式(4))との画素値変化量を、次式(8)で定義されるΔDCを用いて計算する(ステップS24)。 On the other hand, if the stationary stationary determination process (step S4 in FIG. 1) determines that it is stationary stationary, it is determined to be true in step S21, and is identical to the stationary determination target macroblock (Equation (3)) one frame before. The pixel value change amount with respect to the coordinate macroblock (Formula (4)) is calculated using ΔDC defined by the following Formula (8) (Step S24).
ΔDCは、マクロブロックの合計値の差分であり、一画素毎の変化量ではなく、ブロック全体のおおよその変化量を、SADよりも低演算量で計算することができる。実際、SADでは、16×16画素サイズのマクロブロックに対して、 ΔDC is a difference between the total values of the macroblocks, and an approximate change amount of the entire block, not a change amount for each pixel, can be calculated with a calculation amount lower than that of SAD. In fact, in SAD, for a macroblock of 16 × 16 pixel size,
であるが、ΔDCでは、直前の同一座標マクロブロック(数式(4))の合計値(数式(10を参照)を保存しておけば、数式(11)となる。 However, in ΔDC, if the total value (refer to Expression (10)) of the immediately preceding identical coordinate macroblock (Expression (4)) is stored, Expression (11) is obtained.
以上求めたΔDCを用いて、次式(12)が真である場合に、静止判定結果を真(静止)として出力し、偽であれば静止判定結果を偽(非静止)と出力する(ステップS25)。ここで、THΔDCは、ΔDCに対する閾値である。 When the following equation (12) is true, ΔST is used to output the stillness determination result as true (stationary), and if it is false, the stillness determination result is output as false (non-stationary). S25). Here, TH ΔDC is a threshold value for ΔDC.
ここで注意する点としては、画素値変化量ΔDCが十分小さいとき、静止判定対象マクロブロックは、1フレーム前の同一座標マクロブロックを基準として、静止している可能性が高いが、SADで画素値変化量を計算する場合と異なり、必ずしも確実に静止しているとは限らない。以下に、その具体例を示す。 It should be noted here that when the pixel value change amount ΔDC is sufficiently small, the macro block for stationary determination is highly likely to be stationary with reference to the same coordinate macro block one frame before, but the pixel in SAD Unlike the case where the value change amount is calculated, the value change amount is not necessarily stationary. The specific example is shown below.
例えば、図4(a)は、静止判定対象ブロック(数式(4))、図4(b)は、静止判定対象ブロックの1フレーム前のマクロブロックの輝度値を表したものである。白が輝度値255、グレーが輝度値0と仮定する。この場合、ΔDCは、0となり、画素値変化がないと考えられるが、実際には、異なるテクスチャとなっている。 For example, FIG. 4A shows the stillness determination target block (Formula (4)), and FIG. 4B shows the luminance value of the macroblock one frame before the stillness determination target block. Assume that white has a luminance value of 255 and gray has a luminance value of 0. In this case, ΔDC is 0, and it is considered that there is no change in the pixel value, but actually the texture is different.
この状況でΔDC=0の結果によって静止判定を行った場合、マクロブロックが静止していると判断され、画面間予測符号化にて当該マクロブロックを直前のマクロブロックで予測することになる。しかし、予測残差誤差エネルギーは大きくなり、符号化効率を著しく低下させてしまう。 When stillness determination is performed based on the result of ΔDC = 0 in this situation, it is determined that the macroblock is stationary, and the macroblock is predicted by the immediately preceding macroblock by inter-frame prediction encoding. However, the prediction residual error energy becomes large, and the coding efficiency is significantly reduced.
従来技術では、ΔDC等のSADよりも低演算な計算を直接用いていたが、本発明によれば、ΔDCによる簡易的な輝度値変化量の評価は、SADによる厳密な画素値変化量の評価によって、十分な時間、定常静止していると考えられるマクロブロックに限って適用するため、上記の様な例外ケースを除外することが可能となる。 In the prior art, calculation that is lower in calculation than SAD such as ΔDC is directly used. However, according to the present invention, the simple evaluation of the change in luminance value by ΔDC is performed by the strict evaluation of the change in pixel value by SAD. Therefore, the above exception case can be excluded because it is applied only to a macroblock that is considered to be stationary at a sufficient time.
また、本第1実施形態でのΔDCの計算方法は、図5(a)のように、マクロブロック全体の画素を加算する範囲としているが、図5(b)や、図5(c)のように、マクロブロック内で、ΔDCで計算する画素範囲を制限することによって、画素値変化量の評価に伴う演算量を削減することが可能となる。また、ΔDCに限らず、SADに関しても、差分絶対値和の対象画素範囲を、図5(b)や、(c)に制限しても、通常のSADよりは演算量の少ない評価が行える。 In addition, the calculation method of ΔDC in the first embodiment is a range in which the pixels of the entire macroblock are added as shown in FIG. 5A, but in FIG. 5B and FIG. As described above, by limiting the pixel range calculated by ΔDC in the macroblock, it is possible to reduce the amount of calculation associated with the evaluation of the pixel value change amount. Further, not only for ΔDC but also for SAD, even if the target pixel range of the sum of absolute differences is limited to FIG. 5B and FIG.
図6は、本第1実施形態による静止判定処理装置の構成を示すブロック図である。図6に示すように、静止判定処理装置は、静止判定部1、及び符号化処理部2からなる。静止判定部1は、入力として各フレームのマクロブロックを受け取り、静止判定結果を符号化処理部2に供給する。符号化処理部2は、静止判定結果に従って、符号化対象のマクロブロックを符号化し、バイナリデータとして出力する。
FIG. 6 is a block diagram showing the configuration of the stillness determination processing apparatus according to the first embodiment. As shown in FIG. 6, the stillness determination processing apparatus includes a
図7は、本第1実施形態による静止判定部1の構成を示すブロック図である。まず、静止判定部1は、静止時刻処理部11、定常静止判定部12、画素値変化評価法切替部13、通常画素値変化評価部14、通常静止判定部15、簡易画素値変化評価部16、及び簡易静止判定部17を備えている。静止時刻処理部11は、マクロブロックの空間的な座標位置情報とシステム時刻とを受け取る。
FIG. 7 is a block diagram illustrating a configuration of the
図8は、本第1実施形態による静止時刻処理部11の構成を示すブロック図である。図8に示すように、静止時刻処理部11は、静止時刻制御部111、静止開始時刻情報記憶部112、及び静止時刻演算部113を備えている。静止時刻制御部111は、空間座標、システム時刻、及び直前フレームでの静止判定結果を受け取り、静止時刻演算部113に送出する。静止時刻演算部113は、直前の静止判定結果によって、非静止ならば静止開始時刻情報記憶部112に格納されている静止開始時刻情報を現在フレームのシステム時刻に更新し、その値を書き込むとともに、静止時刻制御部111に、現在フレームのシステム時刻と静止開始時刻情報との差分絶対値を静止時刻として送出する。最終的に、静止時刻制御部111が、図7に示す定常静止判定部12に静止時間を送出する。
FIG. 8 is a block diagram showing a configuration of the stationary
定常静止判定部12では、マクロブロックが定常静止であるか否かの判定を静止時間に従って行い、結果(真、または偽)を画素値変化評価法切替部13に送出する。画素値変化評価法切替部13は、受け取った定常静止判定結果に従い、静止判定方法の選択を行う。仮に、定常静止判定結果が偽であったならば、マクロブロックは、非定常静止とみなされ、通常画素値変化評価部14においてSADの計算を行い、計算されたSAD値を通常静止判定部15に送出する。通常静止判定部15は、受け取ったSAD値と、所定の閾値とに従って、マクロブロックが静止しているか否かを判定し、その静止判定結果を図6に示す符号化処理部2に送出する。符号化処理部2は、静止判定結果に従って、画面間符号化の簡略化を行うことになる。
The stationary
また、定常静止判定結果が真であったならば、定常静止とみなされ、画素値変化評価法切替部13は、簡易画素値変化評価部16を選択する。簡易画素値変化評価部16は、マクロブロックと直前のマクロブロックとの画素値変化のΔDCを計算し、簡易静止判定部17にΔDCを送出する。簡易静止判定部17は、受け取ったΔDCに基づいて、静止判定を行い、真ならば真を、偽ならば偽の結果を図6に示す符号化処理部2に送出する。
If the stationary stationary determination result is true, it is regarded as stationary stationary, and the pixel value change evaluation method switching unit 13 selects the simple pixel value
B.第2実施形態
本第2実施形態では、第1実施形態のアルゴリズムにおける定常静止判定(図2のフローチャート)において、マクロブロックの位置情報を考慮した方法を提供する。テレビ会議映像などの動きの少ない映像において、映像画面端は、中央に比べて、動きのない背景領域である可能性が高い。本第2実施形態では、そのような映像を考慮し、定常静止の判定を行う。なお、第2実施形態のアルゴリズムを実現する静止判定処理装置は、第1実施形態の図6、図7、図8と同様の構成であるので説明を省略する。
B. Second Embodiment The second embodiment provides a method that takes macroblock position information into consideration in stationary stationary determination (the flowchart of FIG. 2) in the algorithm of the first embodiment. In a video with little motion such as a video conference video, the video screen edge is more likely to be a background region without motion than the center. In the second embodiment, the stationary stationary is determined in consideration of such an image. The stationary determination processing apparatus that implements the algorithm of the second embodiment has the same configuration as that of FIGS. 6, 7, and 8 of the first embodiment, and a description thereof will be omitted.
図9は、本第2実施形態による定常静止判定処理の動作を説明するためのフローチャートである。定常静止判定処理において、まず、静止判定対象の(m,n)番目のマクロブロック(m、n)は、空間的にy方向にm番目、x方向にn番目)の直前フレームの同座標マクロブロックが静止していたか否かを判定する(ステップS31)。そして、直前フレームの同座標マクロブロックが非静止と判定された場合には(ステップS31のNO)、静止判定対象マクロブロックの座標番号に対応する静止開始時刻情報CNT(m,n)を、数式(1)のように更新する(ステップS32)。 FIG. 9 is a flowchart for explaining the operation of the stationary stationary determination process according to the second embodiment. In the stationary still determination process, first, the (m, n) -th macroblock (m, n) to be determined is the same coordinate macro of the immediately preceding frame of the mth in the y direction and the nth in the x direction. It is determined whether or not the block is stationary (step S31). Then, when it is determined that the same coordinate macroblock of the immediately preceding frame is non-still (NO in step S31), the still start time information CNT (m, n) corresponding to the coordinate number of the still determination target macroblock is expressed as Update as in (1) (step S32).
次に、直前フレームの同座標マクロブロックが静止と判定された場合には(ステップS31のYES)、またはステップS32の処理終了後、マクロブロックが画面中央に位置するか否かを判定する(ステップS33)。そして、画面中央に位置しているならば(ステップS33のYES)、次式(13)のように、定常静止の判定を行い(ステップS34)、画面端に位置しているならば(ステップS33のNO)、数式(14)のように、定常静止の判定を行う(ステップS35)。 Next, when it is determined that the same-coordinate macroblock of the immediately preceding frame is stationary (YES in step S31), or after the process of step S32 is completed, it is determined whether the macroblock is located at the center of the screen (step). S33). If it is located at the center of the screen (YES in step S33), the stationary stationary is determined as in the following equation (13) (step S34), and if it is located at the edge of the screen (step S33). NO), and stationary stationary is determined as in equation (14) (step S35).
但し、Pは現在フレームのシステム時刻で、第1閾値>第2閾値である。テレビ会議映像などの背景領域が多い映像に関しては、この領域に応じた閾値の使い分けによって、画像端領域で、より早いタイミングで静止時間が閾値よりも高くなる。つまり、簡易な画素値変化評価法を選択できるので、演算量が第1実施形態よりも、より削減でき、有効となる。 However, P is the system time of the current frame, and the first threshold> the second threshold. For a video with many background areas, such as a video conference video, the still time becomes higher than the threshold at an earlier timing in the image edge area by properly using the threshold according to this area. That is, since a simple pixel value change evaluation method can be selected, the amount of calculation can be further reduced and effective compared to the first embodiment.
C.第3実施形態
本第3実施形態では、符号化後の静止開始時刻情報の制御を考慮した方法を提供する。通常、静止判定の結果に従って、静止と判定されれば、直前フレームの同位置のマクロブロックで当該マクロブロックを予測するのが一般的である。しかし、もし静止判定の結果に誤りが生じた場合(静止と判定されたが、本当は画素値が変化しており、静止していない場合)、直前フレームのマクロブロックで予測した結果、予測残差信号の絶対値和は、非常に大きな値をとることになり、符号化効率の低下を引き起こす原因となる。
C. Third Embodiment The third embodiment provides a method that takes into account control of still start time information after encoding. Normally, if it is determined that the frame is still according to the result of the still determination, the macro block is generally predicted by the macro block at the same position in the immediately preceding frame. However, if an error occurs in the result of stillness determination (when it is determined that it is still, but the pixel value has actually changed and it is not still), the prediction residual is the result of prediction with the macroblock of the previous frame. The absolute value sum of the signals takes a very large value, which causes a decrease in coding efficiency.
更に、静止時間が十分長い場合、画素値変化量を計算する簡易的な手段で動きが検出できず、数フレーム誤判定が続いてしまう場合も考えられる。この問題点を鑑みると、直ちに静止開始時刻情報の値を現在フレームに更新し、SADによる正確な静止判定に戻すのが望ましい。 Furthermore, when the stationary time is sufficiently long, it is possible that the simple means for calculating the pixel value change amount cannot detect the motion and the erroneous determination of several frames continues. In view of this problem, it is desirable to immediately update the value of the still start time information to the current frame and return to the correct still determination by SAD.
図10は、本第3実施形態による、符号化後の静止開始時刻情報の制御を導入した、静止判定方法の動作を説明するためのフローチャートである。第1実施形態、第2実施形態と異なる部分は、ステップS47の静止開始時刻情報制御の処理が追加されているところである。ステップS41〜S46は、図1のステップS1〜ステップS6に対応する。ステップ47では、静止判定で静止と判断された場合のマクロブロックに関して、符号化後の静止開始時刻情報の制御を行う。 FIG. 10 is a flowchart for explaining the operation of the stillness determination method in which control of stillness start time information after encoding is introduced according to the third embodiment. The difference from the first embodiment and the second embodiment is that a process of controlling the static start time information in step S47 is added. Steps S41 to S46 correspond to Steps S1 to S6 in FIG. In step 47, control of the still-start time information after encoding is performed for the macroblock that is determined to be still in the stillness determination.
図11は、本第3実施形態による、符号化後静止開始時刻情報制御処理の動作を説明するためのフローチャートである。符号化後静止開始時刻情報制御処理では、まず、画面間符号化後の予測残差誤差(ΔEとする)を参照し、閾値THΔEと大小関係を比較する(ステップS51)。そして、予測残差誤差(ΔE)が閾値THΔE以下ならば(ステップS51のYES)、何もせずに、図10に示すメインルーチンに戻る。一方、予測残差誤差(ΔE)が閾値THΔEより大ならば(ステップS51のNO)、数式(15)のように、静止開始時刻情報の値を現在フレームのシステム時刻に更新する(ステップS52)。 FIG. 11 is a flowchart for explaining the operation of the post-coding still start time information control process according to the third embodiment. In the post-coding still start time information control process, first, the prediction residual error (ΔE) after inter-frame coding is referred to, and the threshold TH ΔE is compared with the magnitude relationship (step S51). If the prediction residual error (ΔE) is equal to or smaller than the threshold TH ΔE (YES in step S51), the process returns to the main routine shown in FIG. 10 without doing anything. On the other hand, if the prediction residual error (ΔE) is larger than the threshold TH ΔE (NO in step S51), the value of the still start time information is updated to the system time of the current frame as shown in equation (15) (step S52). ).
但し、Pは現在フレームのシステム時刻である。 Where P is the system time of the current frame.
図12は、本第3実施形態による、符号化後の静止開始時刻情報制御を導入した静止判定処理装置の構成を示すブロック図である。図12に示すように、本第3実施形態による静止判定処理装置は、静止判定部1a、及び符号化処理部2aからなる。静止判定部1aは、入力として各フレームのマクロブロックを受け取り、画面間予測残差誤差を参照し、静止判定結果を符号化処理部2aに供給する。符号化処理部2aは、画面間予測残差誤差を静止判定部1aに供給し、静止判定結果に従って、符号化対象のマクロブロックを符号化し、バイナリデータとして出力する。
FIG. 12 is a block diagram illustrating a configuration of a stillness determination processing apparatus that introduces the still start time information control after encoding according to the third embodiment. As shown in FIG. 12, the stillness determination processing apparatus according to the third embodiment includes a
図13は、本第3実施形態による静止判定部1aの構成を示すブロック図である。なお、図7に対応する部分には同一の符号を付けて説明を省略する。図13において、静止時刻処理部11aは、マクロブロックの空間的な座標位置情報とシステム時刻とを受け取るとともに、符号化処理部2aから符号化結果としての画面間予測残差誤差の情報を入力情報として受け取り、画面間予測残差誤差を参照し、静止開始時刻情報の値を現在フレームのシステム時刻に更新する。
FIG. 13 is a block diagram illustrating a configuration of the
図14は、本第3実施形態による静止時刻処理部11aの構成を示すブロック図である。なお、図8に対応する部分には同一の符号を付けて説明を省略する。静止時刻処理部11aは、静止時刻制御部111a、静止開始時刻情報記憶部112、及び静止時刻演算部113を備えている。静止時刻制御部111aは、空間座標、システム時刻、及び直前フレームでの静止判定結果に加えて、符号化処理部2aから符号化結果としての画面間予測残差誤差を受け取り、静止時刻演算部113に送出する。
FIG. 14 is a block diagram showing a configuration of the stationary
D.第4実施形態
本第4実施形態では、上述した第1実施形態、または第2実施形態の静止判定条件に加えて、近傍マクロブロックの静止時間・符号化情報(インター/イントラ情報、動きベクトル情報)を用いる方法を提供する。
D. Fourth Embodiment In the fourth embodiment, in addition to the stationary determination conditions of the first embodiment or the second embodiment described above, stationary time / coding information (inter / intra information, motion vector information) of neighboring macroblocks. ) Is provided.
本発明によれば、画素値変化量ΔDCによる簡易的な輝度値変化量の評価は、SADによる厳密な画素値変化量の評価によって十分な時間定常静止していると考えられるマクロブロックに限って適用するため、第1実施形態で述べたような誤判定は起こりにくいと考えられる。しかし、突発的な動きの可能性は十分考えられ、実際動領域と静止領域との境界部分では、オブジェクトの急な侵入によって、静止でなくなる可能性もある。 According to the present invention, the simple evaluation of the luminance value change amount based on the pixel value change amount ΔDC is limited to a macroblock that is considered to be stationary at a sufficient time by strict evaluation of the pixel value change amount based on the SAD. In order to apply, it is considered that the erroneous determination as described in the first embodiment hardly occurs. However, the possibility of sudden movement is sufficiently conceivable, and at the boundary between the actual moving area and the stationary area, there is a possibility that the object is not stationary due to a sudden intrusion of the object.
この際、画素値変化量の簡易計算が動きを検出できず、静止判定を誤ってしまうことが考えられる。より頑健な静止判定方法を構成するため、本第4実施形態では、簡易的に計算したブロック間の画素値変化量ΔDCに加え、静止判定対象マクロブロックの近傍マクロブロックの静止時間、イントラ/インターモード情報、動きベクトルの情報を利用する。 At this time, it is conceivable that the simple calculation of the pixel value change amount cannot detect the motion and erroneously determines the stillness. In order to configure a more robust stillness determination method, in the fourth embodiment, in addition to the simply calculated pixel value change ΔDC between blocks, in addition to the static time of a macroblock near the stillness determination target macroblock, intra / intermediate Use mode information and motion vector information.
図15は、本第4実施形態による静止判定処理の動作を説明するためのフローチャートである。静止判定処理では、まず、定常静止判定が真であるか否かを判定する(ステップS61)。そして、非定常静止と判定された場合には(ステップS61の偽)、静止判定対象マクロブロック(数式(3)を参照)と1フレーム前の同一座標マクロブロック(数式(4)を参照)との画素値変化量をSADの計算式(5)を用いて評価する(ステップS62)。そして、外部から与えられた閾値THSADを用いて、マクロブロック(数式(3)を参照)の状態を、数式(7)の静止判定条件で判定し、静止ならば真を出力、非静止ならば偽を出力する(ステップS63)。 FIG. 15 is a flowchart for explaining the operation of stillness determination processing according to the fourth embodiment. In the stationary determination process, first, it is determined whether or not the stationary stationary determination is true (step S61). If it is determined to be non-stationary still (false in step S61), the stationary determination target macroblock (see Equation (3)) and the same coordinate macroblock one frame before (see Equation (4)) Is evaluated using the SAD calculation formula (5) (step S62). Then, using the threshold TH SAD given from the outside, the state of the macroblock (see Equation (3)) is determined by the stillness determination condition of Equation (7). If false, it outputs false (step S63).
一方、定常静止と判定された場合には(ステップS61の真)、静止判定対象マクロブロック(数式(4))と1フレーム前の同一座標マクロブロック(数式(4))との画素値変化量を、数式(8)で定義されるΔDCを用いて計算する(ステップS64)。次に、ΔDC、ブロック数Nc、ブロック数Nzを用いて、後述する3つの条件の真偽に応じて、静止判定結果を真(静止)として出力し、偽であれば静止判定結果を偽(非静止)と出力する(ステップS65)。 On the other hand, when it is determined that it is stationary still (true in step S61), the pixel value change amount between the still determination target macroblock (Equation (4)) and the same coordinate macroblock (Equation (4)) one frame before Is calculated using ΔDC defined by Equation (8) (step S64). Next, using ΔDC, the number of blocks N c , and the number of blocks N z , the stationary determination result is output as true (stationary) according to the truth of three conditions described later, and if it is false, the stationary determination result is output. False (non-stationary) is output (step S65).
ステップS65の処理に用いられる、近傍マクロブロックの定常静止しているブロック数Nc、現フレーム及び直前フレームの近傍マクロブロックで16×16サイズの動きベクトル(0,0)で符号化されたブロック数Nzは、以下のようにして算出される。 Number of blocks N c that are stationary stationary neighboring macroblocks and blocks coded with 16 × 16 size motion vectors (0, 0) in the neighboring macroblocks of the current frame and the immediately preceding frame, which are used in the processing of step S65 The number N z is calculated as follows.
まず、上記Ncの算出について図16(a)、(b)を参照して説明する。Xは、静止判定対象ブロックを示す。Ncの算出には、静止判定対象マクロブロックの隣接8近傍マクロブロックの座標に対応する静止開始時刻情報(図16(b))からそれぞれの静止時間を算出し、次式(16)となるブロック個数をNcとして算出する。Ncが大きいとき、静止判定対象マクロブロックの近傍が十分静止していると判断できるので、静止判定対象マクロブロックに関しても静止している可能性は高くなる。 First, the calculation of Nc will be described with reference to FIGS. 16 (a) and 16 (b). X represents a still determination target block. For the calculation of Nc , each still time is calculated from the still start time information (FIG. 16 (b)) corresponding to the coordinates of the eight neighboring macroblocks adjacent to the still determination target macroblock, and the following equation (16) is obtained. The number of blocks is calculated as Nc . When Nc is large, it can be determined that the vicinity of the stillness determination target macroblock is sufficiently stationary, so that the possibility that the stillness determination target macroblock is still is also high.
次に、Nzの算出について図17(a)〜(c)を参照して説明する。
図17(a)〜(c)は、Nzを算出する際、各ピクチャパターンに応じて参照するマクロブロックを示す概念図である。図17(a)〜(c)のいずれにおいても、Xは静止判定対象ブロックを示す。まず、静止判定対象ブロックを含むフレームがP/Bピクチャで、直前のフレームもP/Bピクチャの場合、図17(a)に示すように、現フレーム・直前フレームの9つの近傍マクロブロックA1〜A4、B1〜B5を参照し、その中で、インターモードで符号化され、画面間予測画素単位が16×16で、かつ、動きベクトルが(0,0)であるものの数をNzとする。
Will now be described with reference to FIGS. 17 (a) ~ (c) Calculation of N z.
Figure 17 (a) ~ (c) is when calculating the N z, it is a conceptual diagram showing a macro block that references in response to each picture pattern. In any of FIGS. 17A to 17C, X indicates a still determination target block. First, when the frame including the still determination target block is a P / B picture and the immediately preceding frame is also a P / B picture, as shown in FIG. 17A, nine neighboring macroblocks A1 to A1 of the current frame and the immediately preceding frame are displayed. A4 and B1 to B5 are referred to, and among them, the number of pixels that are encoded in inter mode, the inter-picture prediction pixel unit is 16 × 16, and the motion vector is (0, 0) is N z . .
次に、静止判定対象ブロックを含むフレームがIピクチャで、直前のフレームがP/Bピクチャの場合、図17(b)に示すように、直前フレームの9つの近傍マクロブロックB1〜B9を参照し、その中で、画面間予測画素単位が16×16で、かつ、動きベクトルが(0,0)であるものの数をNzとする。
Next, when the frame including the still determination target block is an I picture and the immediately preceding frame is a P / B picture, the nine neighboring macroblocks B1 to B9 of the immediately preceding frame are referred to as shown in FIG. , in which, in inter-picture
最後に、静止判定対象ブロックを含むフレームがP/Bピクチャで、直前のフレームがIピクチャの場合、図17(c)に示すように、参照できる動きベクトルを持つマクロブロックは、4近傍(A1〜A4)のみであるため、マクロブロックA1〜A4の中で、画面間予測のブロックサイズが16×16で、かつ動きベクトルが(0,0)であるものの数をNzとする。 Lastly, when the frame including the still determination target block is a P / B picture and the immediately preceding frame is an I picture, as shown in FIG. to A4) since only, within a macro block Al to A4, with the block size is 16 × 16 in the inter-frame prediction, and the number of those is a motion vector (0, 0) and N z.
16×16画素単位の(0,0)動きベクトルの情報は、実際の画面間予測によって直前のマクロブロックが最適と判断されたことを意味するので、Nzが大きいとき、Ncと同様に静止判定対象ブロックが静止している可能性は高くなる。 The information of the (0, 0) motion vector in units of 16 × 16 pixels means that the immediately preceding macroblock is determined to be optimal by the actual inter-screen prediction. Therefore, when Nz is large, similarly to Nc The possibility that the stationary determination target block is stationary increases.
以上、求めたΔDCとNc、及びNzを用いて、ステップS65にて、次式(17)で表わされる3つの条件が全て真である場合に、静止判定結果を真として出力する。 As described above, using the obtained ΔDC, N c , and N z , the stationary determination result is output as true when all three conditions expressed by the following equation (17) are true in step S65.
ここで、THΔDC、及びTHNcは、ΔDC、及びNcに対する閾値で、THNzは、Nzの閾値である。但し、近傍マクロブロックの動きベクトルに関する情報Nzは、当該フレームと直前フレームとで参照できるブロック数が異なるので、次式(18)のように、ピクチャタイプの3つの組み合わせによって、それぞれ閾値を用意しておく。また、1つ以上の条件が偽である場合には、静止判定結果を偽として出力する。 Here, TH ΔDC and TH Nc are threshold values for ΔDC and N c , and TH Nz is a threshold value for N z . However, the information N z about the motion vector of the neighboring macroblock, the number of blocks that can be referenced in the corresponding frame and the previous frame are different, as in the following equation (18), the combination of three picture type, respectively prepared threshold Keep it. If one or more conditions are false, the stillness determination result is output as false.
以上のように、本第4実施形態によるアルゴリズムによれば、静止領域と動領域との境界部分で発生する、静止領域への突発的なオブジェクトの侵入の際の、静止判定に対する誤判定のリスクを、近傍マクロブロックの静止時間や、近傍マクロブロックのインター・イントラモード情報、動きベクトル情報に対する条件を用いて低下させ、低演算で頑健な静止判定を行うことが可能となる。 As described above, according to the algorithm according to the fourth embodiment, the risk of misjudgment with respect to the stationary determination when the object suddenly enters the stationary area, which occurs at the boundary between the stationary area and the moving area. Can be reduced by using the conditions for the stationary time of the neighboring macroblocks, the inter-intra mode information of the neighboring macroblocks, and the motion vector information, and a robust stationary judgment can be performed with a low calculation.
また、本第4実施形態でのΔDCの計算方法は、図5(a)のように、マクロブロック全体の画素を加算する範囲としているが、図5(b)や、図5(c)のように、マクロブロック内で、ΔDCで計算する画素範囲を制限することによって、画素値変化量の評価に伴う演算量を削減することが可能となる。また、ΔDCに限らず、SADに関しても、差分絶対値和の対象画素範囲を、図5(b)や、図5(c)に制限しても、通常のSADよりは演算量の少ない評価が行える。 Further, the calculation method of ΔDC in the fourth embodiment is a range in which the pixels of the entire macroblock are added as shown in FIG. 5A, but in FIG. 5B and FIG. As described above, by limiting the pixel range calculated by ΔDC in the macroblock, it is possible to reduce the amount of calculation associated with the evaluation of the pixel value change amount. Further, not only for ΔDC but also for SAD, even if the target pixel range of the sum of absolute differences is limited to FIG. 5B or FIG. Yes.
また、本第4実施形態の構成ではないが、静止時間が特に長く、映像画面の中で背景と考えられるマクロブロックによっては、ΔDCの計算を省略してもよい。図18は、ある空間座標のマクロブロックを時系列に並べ、当該マクロブロックに対する画素値変化量の評価を省略した際の様子を示す概念図である。濃いグレーのマクロブロック(第N−2、N−1、N)は、SADの評価方法で静止と判断されたことを示しており、第NフレームのマクロブロックがSADによる画素値変化量評価によって静止と判断され、静止時間が十分大きくなり、第N+1フレームから定常静止の状態に移行した状況を示している。 In addition, although not the configuration of the fourth embodiment, the calculation of ΔDC may be omitted depending on the macroblock that has a particularly long stationary time and is considered as the background in the video screen. FIG. 18 is a conceptual diagram showing a state in which macroblocks having a certain spatial coordinate are arranged in time series and the evaluation of the pixel value change amount for the macroblock is omitted. The dark gray macroblocks (N-2, N-1, and N) indicate that the SAD evaluation method determines that the macroblock is stationary, and the macroblock of the Nth frame is evaluated by the SAD pixel value change amount evaluation. This shows a situation where it is determined that the camera is stationary, the stationary time has become sufficiently large, and the state has shifted from the (N + 1) th frame to the stationary stationary state.
さらに、定常静止と判断された第N+1フレーム以降では、薄い灰色はΔDCの評価方法で静止と判断されたことを示しており、白色はΔDCの評価を省略し、かつ静止と判断されたことを示している。ΔDCの評価を省略した第N+2、第N+4、第N+6フレームでは、図15のステップS65の条件で、ΔDCの条件を取り除いた、次式(19)で表わされる静止判定条件によって判定を行う。 Further, after the (N + 1) th frame determined to be stationary still, light gray indicates that it was determined to be stationary by the ΔDC evaluation method, and white indicates that ΔDC was not evaluated and that it was determined to be stationary. Show. In the (N + 2) th, (N + 4) th, and (N + 6) th frames in which the evaluation of ΔDC is omitted, the determination is performed based on the stationary determination condition represented by the following equation (19), which excludes the ΔDC condition under the condition of step S65 in FIG.
また、第N+3フレームのマクロブロックは、ΔDCによって画素値変化量を評価されることになるが、第N+2フレームのマクロブロックは、ΔDCの評価が省略されている。このため、仮に基準を第N+2フレームのマクロブロックにすると、両マクロブロックの合計値を計算しなければならない。よって、この場合には、第N+1フレームのマクロブロックで計算した部分合計値を、第N+2フレームのマクロブロックが保持し、第N+3フレームのマクロブロックの部分合計値のみを計算し、第N+2フレームのマクロブロックが保持している第N+1フレームのマクロブロックの合計値との差分の絶対値で評価する。以上のように、近傍マクロブロックの情報を用いることによって、画素値変化量評価の簡易化(低演算量化)は空間のみならず、時間方向にも計算対象範囲を制限することができる。 The macro block of the (N + 3) th frame is evaluated for the pixel value change amount by ΔDC, but the macro block of the (N + 2) th frame is not evaluated for ΔDC. For this reason, if the reference is the macroblock of the (N + 2) th frame, the total value of both macroblocks must be calculated. Therefore, in this case, the partial total value calculated for the macroblock of the (N + 1) th frame is held by the macroblock of the (N + 2) th frame, and only the partial total value of the macroblock of the (N + 3) th frame is calculated, Evaluation is based on the absolute value of the difference from the total value of the macro blocks of the (N + 1) th frame held by the macro block. As described above, by using the information of neighboring macroblocks, the simplification of the pixel value change amount evaluation (lower calculation amount) can be limited not only in the space but also in the time direction.
図19は、本第4実施形態による、静止判定方法を実現する静止判定処理装置の構成を示すブロック図である。図19に示すように、本第4実施形態による静止判定処理装置は、静止判定部1b、及び符号化処理部2bからなる。静止判定部1bは、入力として各フレームのマクロブロックイントラ/インターモード情報、動きベクトル情報を受け取り、静止判定結果を符号化処理部2bに供給する。符号化処理部2bは、イントラ/インターモード情報、動きベクトルの情報を静止判定部1bに供給し、静止判定結果に従って、符号化対象のマクロブロックを符号化し、バイナリデータとして出力する。
FIG. 19 is a block diagram illustrating a configuration of a stillness determination processing device that realizes a stillness determination method according to the fourth embodiment. As shown in FIG. 19, the stillness determination processing apparatus according to the fourth embodiment includes a
図20は、本第4実施形態による静止判定部1bの構成を示すブロック図である。なお、図7、図13に対応する部分には同一の符号を付けて説明を省略する。図20において、静止時刻処理部11bは、マクロブロックの空間的な座標位置情報とシステム時刻とを入力情報とし受け取るとともに、通常静止判定部15からの静止判定結果、簡易静止判定部17bからの静止判定結果、近傍マクロブロックの空間的な座標位置情報を受け取る。また、簡易静止判定部17bは、符号化情報としてイントラ/インターモード情報、動きベクトルの情報、静止時刻処理部11bからの近傍マクロブロックの静止時間を受け取る。
FIG. 20 is a block diagram illustrating a configuration of the
図21は、本第4実施形態による静止時刻処理部11bの構成を示すブロック図である。なお、図8、図14に対応する部分には同一の符号を付けて説明を省略する。図21において、静止時刻処理部11bでは、静止時刻制御部111bが空間座標、システム時刻、及び直前フレームでの静止判定結果を受け取り、静止時刻演算部113に送出する。静止時刻演算部113は、直前の静止判定結果に応じて、非静止ならば、静止開始時刻情報記憶部112に静止開始時刻情報を現在フレームのシステム時刻に更新し、その値を書き込むとともに、静止時刻制御部111bに、現在フレームのシステム時刻と静止開始時刻情報との差分絶対値を静止時間として送出する。最終的に、静止時刻制御部111bが、図20に示す定常静止判定部12に静止時間を送出する。
FIG. 21 is a block diagram showing a configuration of the stationary
定常静止判定部12では、マクロブロックが定常静止か否かの判定を静止時間に従って行い、結果(真、または偽)を画素値変化評価法切替部13に送出する。画素値変化評価法切替部13は、受け取った定常静止判定結果に従い、静止判定方法の選択を行う。仮に、定常静止判定結果が偽であったならば、マクロブロックは、非定常静止とみなされ、通常画素値変化評価部14においてSADの計算を行い、計算されたSAD値を通常静止判定部15に送出する。通常静止判定部15は、受け取ったSAD値と、所定の閾値とに従って、マクロブロックが静止しているか否かを判定し、その結果を図19に示す符号化処理部2bに送出する。符号化処理部2bは、静止判定結果に従って、画面間符号化の簡略化を行うことになる。
The stationary
また、定常静止判定結果が真であったならば、定常静止とみなされ、画素値変化評価法切替部13は、簡易画素値変化評価部16を選択し、マクロブロックと直前のマクロブロックとの画素値変化のΔDCを計算し、簡易静止判定部17bにΔDCを送出する。簡易静止判定部17bは、受け取ったΔDCと符号化処理部2bから受け取った時間・空間近傍マクロブロックの動きベクトル情報、及び静止時刻処理部11bから受け取った近傍マクロブロックの静止時間に基づいて、静止判定を行い、真ならば真を、偽ならば偽の結果を符号化処理部2bに送出する。
Further, if the stationary stationary determination result is true, it is regarded as stationary stationary, and the pixel value change evaluation method switching unit 13 selects the simple pixel value
また、上記の例は、定常静止の度合を1つの閾値によって2レベルに分類したことに相当するが、複数の閾値を設けることによって、定常静止レベルを複数レベルに分類するようにしてもよい。これにより、定常静止レベルに従って、静止判定の簡易化を段階的に行うことが可能となる。例えば、静止開始時刻情報CNT(m,n)と当該フレームのシステム時刻P、閾値THCNT(1)、THCNT(2)(0<THCNT(1)<THCNT(2))を用いて、次式(20)と定義する。 In addition, the above example corresponds to classifying the stationary stationary level into two levels by one threshold, but the stationary stationary level may be classified into a plurality of levels by providing a plurality of thresholds. As a result, it becomes possible to simplify the stillness determination step by step according to the stationary stillness level. For example, using still start time information CNT (m, n), system time P of the frame, threshold TH CNT (1), TH CNT (2) (0 <TH CNT (1) <TH CNT (2)) Is defined as the following equation (20).
図22は、本第4実施形態による静止判定処理の動作を説明するためのフローチャートである。図22では、定常静止レベル数を2→3に変更したことに従って、分岐処理を1つ追加している。静止判定処理では、まず、どの定常静止レベルに属するか否かを判定する(ステップS71)。そして、第1定常静止レベルと判定された場合には(ステップS71の第1定常静止レベル)、SADを計算し(ステップS72)、外部から与えられた閾値THSADを用いて、マクロブロック(数式(3)を参照)の状態を、静止判定条件で判定し、静止ならば真を出力、非静止ならば偽を出力する(ステップS73)。 FIG. 22 is a flowchart for explaining the operation of stillness determination processing according to the fourth embodiment. In FIG. 22, one branch process is added in accordance with the change in the number of stationary stationary levels from 2 to 3. In the stationary determination process, first, it is determined to which stationary stationary level it belongs (step S71). If it is determined to be the first steady rest level (first steady rest level in step S71), SAD is calculated (step S72), and a macroblock (formula) is used by using the threshold TH SAD given from the outside. The state of (see (3)) is determined by the stillness determination condition, and true is output if it is stationary, and false is output if it is not stationary (step S73).
一方、第2定常静止レベルと判定された場合には(ステップS71の第2定常静止レベル)、静止判定対象マクロブロック(数式(4))と1フレーム前の同一座標マクロブロック(数式(4))との画素値変化量を、数式(8)で定義されるΔDC1を用いて計算する(ステップS74)。次に、図5(b)に示すように、合計する対象画素範囲を制限して、ΔDC1、ブロック数Nc、ブロック数Nzを用いて、図示する3つの条件の真偽に応じて、静止判定結果を真(静止)として出力し、偽であれば静止判定結果を偽(非静止)と出力する(ステップS75)。 On the other hand, when it is determined to be the second stationary stationary level (second stationary stationary level in step S71), the stationary determination target macroblock (Equation (4)) and the same coordinate macroblock (Equation (4)) one frame before ) Is calculated using ΔDC1 defined by Equation (8) (step S74). Next, as shown in FIG. 5B, by limiting the target pixel range to be summed and using ΔDC1, the number of blocks N c , and the number of blocks N z , according to the truth of the three conditions shown in the figure, The stillness determination result is output as true (still), and if it is false, the stillness determination result is output as false (non-stationary) (step S75).
また、第3定常静止レベルと判定された場合には(ステップS71の第3定常静止レベル)、ΔDC2を、次式(21)と定義することによって、ΔDC2、ブロック数Nc、ブロック数Nzを用いて、図示する3つの条件の真偽に応じて、静止判定結果を真(静止)として出力し、偽であれば静止判定結果を偽(非静止)と出力する(ステップS77)。このように、第1定常静止レベルのΔDC1よりも低演算で、より簡易に画素値変化量を評価する。 When it is determined that the third stationary stationary level is satisfied (third stationary stationary level in step S71), ΔDC2 is defined as the following equation (21), whereby ΔDC2, block number N c , block number N z Is used to output the stillness determination result as true (stationary) according to the true / false of the three conditions shown in the figure, and if it is false, the stillness determination result is output as false (non-stationary) (step S77). In this way, the pixel value change amount is more easily evaluated by a calculation lower than ΔDC1 of the first steady stationary level.
図23は、本第4実施形態による静止判定部1cの構成を示すブロック図である。なお、図20に対応する部分には同一の符号を付けて説明を省略する。図23において、本第4実施形態による静止判定装置1cは、図20に示す静止判定装置1bの構成に対して、3段階の切り替えを行うための画素値変化評価法切替部13cとし、ΔDC1で評価を行う第1簡易静止判定部16c及び第1簡易静止判定部17c、ΔDC2で評価を行う第2簡易静止判定部16d及び第1簡易静止判定部17dを追加した構成となる。このように、定常静止レベルの段数を更に増加させた場合、画素値変化評価法切替部13cにモジュールを追加することで、装置を拡張することも可能である。
FIG. 23 is a block diagram illustrating a configuration of the stillness determination unit 1c according to the fourth embodiment. Note that portions corresponding to those in FIG. 20 are denoted by the same reference numerals and description thereof is omitted. In FIG. 23, the stillness determination device 1c according to the fourth embodiment is a pixel value change evaluation method switching unit 13c for performing switching in three stages with respect to the configuration of the
上述した第1〜第4実施形態によれば、映像原信号の各マクロブロックの座標に対応する静止開始時刻情報に対して、静止判定結果を反映させ静止時間を算出することで、当該マクロブロックが、どの程度の時間定常的に静止しているのかを把握することができる。マクロブロックが定常的に静止している時間が長ければ長いほど、直後のフレームの同一座標マクロブロックで画素値変化が生じる可能性は低くなると考えられる。従って、一定時間以上静止していると判断されるマクロブロックに関しては、マクロブロック間の画素値変化量の評価を、より演算量の低い計算式を用いて実行することで、演算コストを抑えながら静止判定精度の低下を抑制することができる。 According to the first to fourth embodiments described above, by calculating the still time by reflecting the still determination result to the still start time information corresponding to the coordinates of each macro block of the original video signal, the macro block However, it is possible to grasp how long the station is stationary. It is considered that the longer the macro block is stationary, the lower the possibility that the pixel value changes in the same coordinate macro block in the immediately subsequent frame. Therefore, for macroblocks that are determined to be stationary for a certain time or longer, evaluation of the amount of change in pixel values between macroblocks is performed using a calculation formula with a lower amount of computation, while reducing computation costs. It is possible to suppress a decrease in the accuracy of stationary determination.
なお、本発明の適用範囲はH.264/AVCのみならずMPEG2、MPEG4などの標準映像符号化にも適用することが可能である。 The application range of the present invention is H.264. The present invention can be applied not only to H.264 / AVC but also to standard video encoding such as MPEG2 and MPEG4.
また、上述した映像静止判定装置による各ステップを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、各処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。 Further, by recording a program for realizing each step by the video stillness determination apparatus described above on a computer-readable recording medium, causing the computer system to read and execute the program recorded on the recording medium, Processing may be performed. Here, the “computer system” may include an OS and hardware such as peripheral devices. Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used. The “computer-readable recording medium” means a flexible disk, a magneto-optical disk, a ROM, a writable nonvolatile memory such as a flash memory, a portable medium such as a CD-ROM, a hard disk built in a computer system, etc. This is a storage device.
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。 Further, the “computer-readable recording medium” means a volatile memory (for example, DRAM (Dynamic DRAM) in a computer system that becomes a server or a client when a program is transmitted through a network such as the Internet or a communication line such as a telephone line. Random Access Memory)), etc., which hold programs for a certain period of time. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.
1、1a 静止判定部
2、2a 符号化処理部
11、11a、11b 静止時刻処理部
12 定常静止判定部
13、13c 画素値変化評価法切替部
14 通常画素値変化評価部
15 通常静止判定部
16、16c、16d 簡易画素値変化評価部
17、17b、17c、17d 簡易静止判定部
111、111a、111b 静止時刻制御部
112 静止開始時刻情報記憶部
113 静止時刻演算部
DESCRIPTION OF
Claims (10)
各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化するステップと、
当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定するステップと、
当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を求めるステップと、
前記静止時間と所定の閾値とを比較するステップと、
前記比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定するステップと、
前記判定結果に基づいて、当該マクロブロックが一定時間以上静止している場合には、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出するステップと、
前記算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行うステップと
を含むことを特徴とする映像静止判定方法。 In a video encoding preprocessing, a video stillness determination method for determining whether or not a macroblock having a video frame is still with respect to a macroblock located at the same coordinate of a previous frame,
Initializing still start time information given to the spatial coordinates of each macroblock with time information of an initial frame;
If the stillness determination result of the same block of the previous frame of the macroblock is non-still, setting the still start time information of the macroblock to the current frame time information;
Obtaining a still time from the absolute difference between the still frame start time information corresponding to the coordinates of the macroblock and the current frame time information;
Comparing the rest time with a predetermined threshold;
Determining whether or not the macroblock is stationary for a predetermined time or more based on the comparison result;
Based on the determination result, when the macroblock is stationary for a predetermined time or longer, the SAD (Sum of Absolute Difference) in which the calculation target pixel is limited, and the absolute difference of the sum of the respective pixel values of the two preceding and following blocks. Calculating a pixel value change amount using either a value or an absolute difference value between values obtained by summing pixel values of a part of target pixels of each of the preceding and following two blocks;
A still image determination method comprising: determining stillness based on the calculated pixel value change amount and a threshold value of the macroblock.
各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化するステップと、
当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定するステップと、
当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を求めるステップと、
当該マクロブロックが画面端に位置するならば、大きさの異なる2つの閾値のうち、小さい方の第1の閾値と前記静止時間とを比較し、当該マクロブロックが画面中央に位置するならば、前記大きさの異なる2つの閾値のうち、大きい方の第2の閾値と前記静止時間とを比較するステップと、
前記比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定するステップと、
前記判定結果に基づいて、当該マクロブロックが一定時間以上静止している場合には、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出するステップと、
前記算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行うステップと
を含むことを特徴とする映像静止判定方法。 In a video encoding preprocessing, a video stillness determination method for determining whether or not a macroblock having a video frame is still with respect to a macroblock located at the same coordinate of a previous frame,
Initializing still start time information given to the spatial coordinates of each macroblock with time information of an initial frame;
If the stillness determination result of the same block of the previous frame of the macroblock is non-still, setting the still start time information of the macroblock to the current frame time information;
Obtaining a still time from the absolute difference between the still frame start time information corresponding to the coordinates of the macroblock and the current frame time information;
If the macroblock is located at the screen edge, the smaller first threshold value of the two threshold values having different sizes is compared with the stationary time. If the macroblock is located at the center of the screen, Comparing the larger second threshold value of the two different threshold values with the rest time;
Determining whether or not the macroblock is stationary for a predetermined time or more based on the comparison result;
Based on the determination result, when the macroblock is stationary for a predetermined time or longer, the SAD (Sum of Absolute Difference) in which the calculation target pixel is limited, and the absolute difference of the sum of the respective pixel values of the two preceding and following blocks. Calculating a pixel value change amount using either a value or an absolute difference value between values obtained by summing pixel values of a part of target pixels of each of the preceding and following two blocks;
A still image determination method comprising: determining stillness based on the calculated pixel value change amount and a threshold value of the macroblock.
各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化手段と、
当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定手段と、
当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出手段と、
前記静止時間と所定の閾値とを比較する比較手段と、
前記比較手段による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて、当該マクロブロックが一定時間以上静止している場合には、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出手段と、
前記画素値変化量算出手段により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定手段と
を備えることを特徴とする映像静止判定装置。 In a video encoding pre-processing, a video stillness determination device that determines whether a macroblock in a video frame is still with respect to a macroblock located at the same coordinate of a previous frame,
Initialization means for initializing the static start time information given to the spatial coordinates of each macroblock one by one with the time information of the initial frame;
If the still determination result of the same block of the previous frame of the macroblock is non-still, setting means for setting the still start time information of the macroblock to the current frame time information;
A still time calculation means for calculating a still time from a difference absolute value between the still frame start time information corresponding to the coordinates of the macroblock and the time information of the current frame;
A comparison means for comparing the stationary time with a predetermined threshold;
Determination means for determining whether or not the macroblock is stationary for a predetermined time or more based on a comparison result by the comparison means;
Based on the determination result by the determination means, when the macroblock is stationary for a predetermined time or more , SAD (Sum of Absolute Difference) in which the calculation target pixel is limited, and the sum of the pixel values of the two blocks before and after A pixel value change amount calculating means for calculating a pixel value change amount using either the absolute value of the difference or the difference absolute value of the values obtained by summing the pixel values of some of the target pixels of the two preceding and following blocks. ,
A video stillness determination device comprising: a stillness determination unit that performs stillness determination based on a pixel value change amount calculated by the pixel value change amount calculation unit and a threshold value of the macroblock.
各マクロブロックの空間座標に1つずつ与えられた静止開始時刻情報を初期フレームの時刻情報によって初期化する初期化手段と、
当該マクロブロックの直前フレームの同ブロックの静止判定結果が非静止ならば、当該マクロブロックの静止開始時刻情報を現在フレーム時刻情報に設定する設定手段と、
当該マクロブロックの座標に対応する静止開始時刻情報と現在フレームの時刻情報との差分絶対値から静止時間を算出する静止時間算出手段と、
当該マクロブロックが画面端に位置するならば、大きさの異なる2つの閾値のうち、小さい方の第1の閾値と前記静止時間とを比較し、当該マクロブロックが画面中央に位置するならば、前記大きさの異なる2つの閾値のうち、大きい方の第2の閾値と前記静止時間とを比較する比較手段と、
前記比較手段による比較結果に基づいて、当該マクロブロックが一定時間以上静止しているか否かを判定する判定手段と、
前記判定手段による判定結果に基づいて、当該マクロブロックが一定時間以上静止している場合には、計算対象画素を限定したSAD(Sum of Absolute Difference)、前後の2ブロックのそれぞれの画素値の合計の差分絶対値、もしくは前後の2ブロックのそれぞれの一部の対象画素の画素値を合計した値同士の差分絶対値のいずれかを用いて画素値変化量を算出する画素値変化量算出手段と、
前記画素値変化量算出手段により算出された画素値変化量と当該マクロブロックの閾値とに基づいて静止判定を行う静止判定手段と
を備えることを特徴とする映像静止判定装置。 In a video encoding pre-processing, a video stillness determination device that determines whether a macroblock in a video frame is still with respect to a macroblock located at the same coordinate of a previous frame,
Initialization means for initializing the static start time information given to the spatial coordinates of each macroblock one by one with the time information of the initial frame;
If the still determination result of the same block of the previous frame of the macroblock is non-still, setting means for setting the still start time information of the macroblock to the current frame time information;
A still time calculation means for calculating a still time from a difference absolute value between the still frame start time information corresponding to the coordinates of the macroblock and the time information of the current frame;
If the macroblock is located at the screen edge, the smaller first threshold value of the two threshold values having different sizes is compared with the stationary time. If the macroblock is located at the center of the screen, A comparing means for comparing the second threshold value of the larger one of the two threshold values having different sizes with the stationary time;
Determination means for determining whether or not the macroblock is stationary for a predetermined time or more based on a comparison result by the comparison means;
Based on the determination result by the determination unit, when the macroblock is stationary fixed time or more, SAD for limiting the calculated target pixel (Sum of Absolute Difference), the respective pixel values before and after the two blocks Pixel value change amount calculation means for calculating the pixel value change amount using either the total difference absolute value or the difference absolute value of the values obtained by summing the pixel values of some of the target pixels of the preceding and following two blocks When,
A video stillness determination device comprising: a stillness determination unit that performs stillness determination based on a pixel value change amount calculated by the pixel value change amount calculation unit and a threshold value of the macroblock.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011170045A JP5662896B2 (en) | 2011-08-03 | 2011-08-03 | Video stillness determination method, video stillness determination device, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011170045A JP5662896B2 (en) | 2011-08-03 | 2011-08-03 | Video stillness determination method, video stillness determination device, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013034152A JP2013034152A (en) | 2013-02-14 |
JP5662896B2 true JP5662896B2 (en) | 2015-02-04 |
Family
ID=47789640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011170045A Expired - Fee Related JP5662896B2 (en) | 2011-08-03 | 2011-08-03 | Video stillness determination method, video stillness determination device, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5662896B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201405649D0 (en) | 2014-03-28 | 2014-05-14 | Sony Corp | Data encoding and decoding |
US10701364B2 (en) * | 2017-10-26 | 2020-06-30 | Google Llc | Golden-frame group structure design using stillness detection |
CN112073721B (en) * | 2020-10-10 | 2024-02-27 | 绍兴文理学院 | Efficient non-I frame image coding and decoding method |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6171786A (en) * | 1984-09-17 | 1986-04-12 | Nec Corp | Movement separator of animation signal |
JP3733161B2 (en) * | 1995-08-01 | 2006-01-11 | キヤノン株式会社 | Image processing apparatus and method |
JP3233895B2 (en) * | 1998-02-10 | 2001-12-04 | アルプス電気株式会社 | Display device and driving method thereof |
JP2003070002A (en) * | 2001-08-28 | 2003-03-07 | Matsushita Electric Ind Co Ltd | Image encoder |
JP2003339029A (en) * | 2002-05-20 | 2003-11-28 | Sony Corp | Motion vector correction circuit and method therefor |
JP4363152B2 (en) * | 2003-10-14 | 2009-11-11 | カシオ計算機株式会社 | Captured image projection device, image processing method and program for captured image projection device |
JP4631806B2 (en) * | 2006-06-05 | 2011-02-16 | 日本電気株式会社 | Object detection apparatus, object detection method, and object detection program |
JP5434038B2 (en) * | 2008-10-08 | 2014-03-05 | 株式会社ニコン | Imaging device |
-
2011
- 2011-08-03 JP JP2011170045A patent/JP5662896B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013034152A (en) | 2013-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4529919B2 (en) | Adaptive quantization apparatus and adaptive quantization program | |
JP5321426B2 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
US8000393B2 (en) | Video encoding apparatus and video encoding method | |
US20060239349A1 (en) | Image coding unit and image coding method | |
JP2009509413A (en) | Adaptive motion estimation for temporal prediction filters for irregular motion vector samples | |
US20080002772A1 (en) | Motion vector estimation method | |
JPH11289544A (en) | Motion detector and its method | |
JP3880985B2 (en) | Motion vector detection apparatus and motion vector detection method | |
JP5613319B2 (en) | Video encoding apparatus, video encoding method, and video encoding program | |
JP5237814B2 (en) | Multi-stage link method for adaptive motion vector sampling in video compression | |
JP5662896B2 (en) | Video stillness determination method, video stillness determination device, and program | |
JP6612721B2 (en) | Predictive image generation method, predictive image generation apparatus, and computer program | |
JP5756368B2 (en) | Video stillness determination method, video stillness determination device, and program | |
JP2013157662A (en) | Moving image encoding method, moving image encoding device, and moving image encoding program | |
JP2010041191A (en) | Image encoding method and image encoding device | |
JP2008541649A (en) | Image coding apparatus using refresh map | |
JP2007110409A (en) | Image processing device and program for making computer perform image processing method | |
CN104918052B (en) | Method and video encoder for error tracking and mitigation for video compression | |
TWI493942B (en) | Moving picture coding method, moving picture coding apparatus, and moving picture coding program | |
JP4537136B2 (en) | Motion estimation method, motion estimation device, and program | |
JP2011199868A (en) | Adaptive search area in motion estimation process | |
JP2012178768A (en) | Encoder | |
JP2006254347A (en) | Image encoding device | |
US9948932B2 (en) | Image processing apparatus and control method of image processing apparatus | |
JP6841709B2 (en) | Image coding device, image decoding device, image coding program and image decoding program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20130606 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130801 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130815 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140508 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140603 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140729 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140904 |
|
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: 20141202 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5662896 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |