US6590934B1ExpiredUtility
Error concealment method
Est. expiryAug 20, 2018(expired)· nominal 20-yr term from priority
Inventors:Eung Tae Kim
H04N 5/21H04N 5/145H04N 19/895H04N 19/513
70
PatentIndex Score
38
Cited by
4
References
17
Claims
Abstract
A method for concealing an error in a motion picture compression/restoration device is disclosed. In the present invention, a damaged macro block is restored by predicting an optimal motion vector V*x and V*y from all possible motion vectors Vx and Vy within a fixed search range of a previous frame by application of a weighted value function. Accordingly, the damaged macro block is replaced with a macro block from a previous frame obtained by the predicted motion vector. The present invention not only improves the visual effects of a restored image, but also reduces the amount of necessary calculation, allowing realtime compensation.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method of concealing errors in a damaged macro block, comprising:
determining a search range of a previous frame based upon a type and mode of a frame and setting an initial value of a motion vector in the search range as an initial search position according to a motion type and coding mode of a frame, wherein an average of motion vectors is set as an initial search position if one of a top or bottom macro block of the damaged macro block has motion vectors in a mode of a P frame;
predicting an optimal motion vector V* x and V* y from motion vectors V x and V y within a search range of a previous frame by applying a weighted value function; and
replacing the damaged macro block with a macro block of a previous frame obtained by utilizing the predicted optimal motion vector the V* x and V* y .
2. A method of claim 1 , wherein the optimal motion vector V* x and V* y is a motion vector which yields a least mean square error of pixel luminances of macro blocks surrounding the damaged macro block and pixel luminances of macro blocks surrounding a macro block in a previous frame.
3. A method of claim 1 , wherein the optimal motion vector V* x and V* y is predicted using the following equation: ( V x * , V y * ) = argmin ( Vx , Vy ) ∈ S ∑ t = 1 3 D ij t ( V x , V y )
where, D ij 1 ( V x , V y ) = ∑ k = 0 N - 1 ∑ m = 1 W W 1 ( m ) [ x1 ( i - m , j + k ) - x ′ 1 ( i - m + V x , j + k + V y ) ] 2 D ij 2 ( V x , V y ) = ∑ k = 0 N - 1 ∑ m = 1 W W 2 ( m ) [ x2 ( i + k , j - m ) - x ′ 2 ( i + k + V x , j - m + V y ) ] 2 D ij 3 ( V x , V y ) = ∑ k = 0 N - 1 ∑ m = 1 W W 3 ( m ) [ x3 ( i + m , j + k ) - x ′ 3 ( i + m + V x , j + k + V y ) ] 2 ∑ m - 1 W W p ( m ) = 1 , p = 1 , 2 , 3
where {x 1 , x 2 , x 3 } denote pixel luminances of macro blocks adjacent to the top, sides and bottom of the damaged macro block; {x' 1 , x' 2 , x' 3 } denote pixel luminances in a previous frame corresponding to {x 1 , x 2 , x 3 }; {i,j } denote a row and a column addresses of the damaged block in an image; N denotes a size of a macro block; W(m) denotes a weighted function; and W denotes a number of pixel lines used in a comparison.
4. A method of claim 3 , when M= 2 , wherein the weighted functions in the top block are represented by
W 1 (1) =E{x 1( i,j −2) x 1( i,j −1)}/ E{x 1( i,j −2) 2 }
W 1 (2)= E{x 1( i,j −3) x 1( i,j −1)}/ E{x 1( i,j −3) 2 }, and
the other weighed functions in the left and bottom blocks are represented by
W 2 (1)= E{x 2( i −2 ,j ) x 2( i −1 ,j )}/ E{x 2( i −2 ,j ) 2 }
W 2 (2)= E{x 2( i −3 ,j ) x 2( i −1 ,j )}/ E{x 2( i −3 ,j ) 2 }
W 3 (1)= E{x 3( i,j+N +1) x 3( i,j+N )}/ E{x 3( i,j+N +1) 2 }
W 3 (2)= E{x 3 i,j+N +2) x 3( i,j+N}/E{x 3( i,j+N +2) 2 }
where E denotes the mathematical expectation whose value may be estimated by using the sample mean.
5. A method of claim 1 , wherein the weighted value function is applied with a larger weighted factor towards a boundary of the damaged macro block.
6. A method of claim 1 , further comprising storing a motion vector of the top macro block of the damaged macro block.
7. A method of claim 1 , wherein setting an initial value of a motion vector includes using either one of or both a top and bottom macro blocks of the damaged macro block.
8. A method of claim 1 , wherein if both top and bottom macro blocks of the damaged macro block have motion vectors in a mode of a P frame, an average of two motion vectors is set as an initial search position.
9. A method of claim 1 , wherein if one of either a top or bottom macro block of the damaged macro block has motion vectors in a mode of a P frame, information of either the top or bottom macro block having the motion vector is set as an initial search position.
10. A method of claim 1 , wherein if neither top or bottom macro block of the damaged macro block has motion vectors in a mode of a P frame mode, an optimal motion vector is searched starting from a macro block in a previous frame at a position identical to the damaged macro block.
11. A method of claim 1 , wherein if a top macro block of the damaged macro block has a bidirectional motion vector in a B frame mode, storing a forward motion vector.
12. A method of claim 1 , wherein if a top and bottom macro block of the damaged macro block have either a forward motion vector or a backward motion vector in a B frame mode, an average of existing motion vectors is set as an initial search position.
13. A method of claim 1 , wherein if a bottom macro block of the damaged macro block has a bidirectional motion vector and a top macro block of the damaged macro block has either a forward or backward motion vector in a B frame mode, an average of either one of forward or backward motion vectors is set as an initial search position depending upon whether the top macro block has a forward or backward motion vector.
14. A method of claim 1 , wherein if both top and bottom macro blocks of the damaged macro block have a bidirectional motion vector in a B frame mode, an average of forward motion vectors is set as an initial search position.
15. A method of claim 1 , wherein if a top macro block of the damaged macro block has a bidirectional motion vector in a B frame mode, an initial search position is set in the same manner as a B frame mode having a forward motion vector.
16. A method of claim 1 , wherein if neither top or bottom macro blocks of the damaged macro block have motion vectors in a B frame mode, an optimal motion vector is searched starting from a macro block in a previous frame at a position identical to the damaged macro block.
17. A method of concealing errors in a damaged macro block, comprising:
setting an initial value of a motion vector as an initial search position according to a type and mode of a frame, using either one of or both a top and bottom macro block of the damaged macro block, wherein
an average of motion vectors is set as an initial search position if one of a top or bottom macro block of the damaged macro block has motion vectors in a mode of a P frame, and wherein
if both top and bottom macro blocks of the damaged macro block have motion vectors in a mode of a P frame, an average of two motion vectors is set as an initial search position, and wherein
if neither top or bottom macro block of the damaged macro block has motion vectors in a mode of a P frame mode, an optimal motion vector is searched starting from a macro block in a previous frame at a position identical to the damaged macro block;
predicting an optimal motion vector V* x and V* y from motion vectors V x and V y within a search range of a previous frame by applying a weighted value function; and
replacing the damaged macro block with a macro block of a previous frame obtained by utilizing the predicted optimal motion vector the V* x and V* y .Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.