Patent ID: 8457205

Claim:
An apparatus for up-converting a frame rate of a decoded frame of a video stream by producing an interpolated frame using motion information from the video stream, the apparatus comprising: a motion vector resampling unit to resample a motion vector for the interpolated frame by filtering a motion vector of a current block of the decoded frame using the motion information including evaluation blocks which include blocks that are disposed in corresponding position of the current block of the decoded frame of a prior interpolated frame in addition to the current block of the interpolated frame and adjacent blocks of the current block in the interpolated frame; a motion compensating unit to compensate a motion of the decoded frame by the resampled motion vector in order to produce the interpolated frame; and a switch to selectively output one of the decoded frame and the interpolated frame according to a sequential order of the decoded frame and the interpolated frame, wherein the motion vector resampling unit comprises a motion vector calculating unit to filter the motion vector of the current block using the motion vector of the current block and motion vectors of adjacent blocks of the current block in the decoded frame and a motion vector normalizing unit to normalize the motion vectors of the current block and the adjacent blocks by a reference frame offset, wherein the motion vector calculating unit filters the motion vector of the current block by performing a vector median operation using the motion vector of the current block and the motion vectors of the adjacent blocks as inputs, wherein if the motion vector calculating unit can not perform the vector median operation of two blocks, the motion vector of the two blocks having the smaller size is selected, wherein the motion vector calculating unit applies weights to the current block and the adjacent blocks according to a size of the current block and respective sizes of the adjacent blocks wherein the vector median operation uses the applied weights, and wherein the vector median operation includes an equation: v _ M = arg ⁢ ⁢ min v _ ∈ N C ⁢ { ∑ v ⇀ ′ ∈ N C + N E ⁢ w B ⁡ ( v _ ′ ) ⁢ w R ⁡ ( v _ ′ ) ⁢ w T ⁡ ( v _ ′ ) ⁢ w S ⁡ ( v _ ′ ) ⁢ (  v _ x ′ - v _ x  +  v _ y ′ - v _ y  ) } where M is a number of candidate motion blocks that may correspond to the filtered motion vector, N c is a set of candidate motion vectors N E is a set of evaluation motion vectors, v is a candidate motion vector of a candidate motion block, v ′ are evaluation motion vectors corresponding to the evaluation blocks, v M is a result of the vector median operation, which is the filtered motion vector of the current block, subscripts x and y indicate x-direction and y-direction, respectively, and w B , w R , w T and w S are various weights.