IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
UP-0474966
(2006-06-27)
|
등록번호 |
US-7519117
(2009-07-01)
|
우선권정보 |
JP-8-249601(1996-09-20) |
발명자
/ 주소 |
- Nakaya, Yuichiro
- Suzuki, Yoshinori
|
출원인 / 주소 |
|
대리인 / 주소 |
Mattingly, Stanger, Malur & Brundidge, P.C.
|
인용정보 |
피인용 횟수 :
1 인용 특허 :
13 |
초록
▼
A method and apparatus for simplifying an operation for the processing of a warping prediction of dividing an image into patches and deforming each patch by affine transform or bilinear transform. Motion vectors of a plurality of representative points in which a spatial interval has a special featur
A method and apparatus for simplifying an operation for the processing of a warping prediction of dividing an image into patches and deforming each patch by affine transform or bilinear transform. Motion vectors of a plurality of representative points in which a spatial interval has a special feature are obtained from at least one patch formed with a plurality of grid points. Information of the motion vectors are used for synthesis of a predicted image. The division for synthesizing a predicted image in the case of warping prediction is replaced with a shift operation, thereby simplifying the processing by a computer or exclusive hardware.
대표청구항
▼
We claim: 1. A method of synthesizing an inter-frame predicted image in a video decoder, comprising the step of: performing a motion compensation process between a current image and a reference image, wherein said motion compensation process includes the steps of: dividing said current image into N
We claim: 1. A method of synthesizing an inter-frame predicted image in a video decoder, comprising the step of: performing a motion compensation process between a current image and a reference image, wherein said motion compensation process includes the steps of: dividing said current image into N patches, N being a positive integer, arranging an assumed patch Pa corresponding to a patch Pb which is one of the N patches, Pa having three assumed grid points as representative points having coordinates (I, J), (I+p, J), and (I, J+q), obtaining motion vectors of the three representative points, and computing a motion vector of each pixel in the patch Pa by affine transformation using the motion vectors of the three representative points, wherein either of p and-p is equal to 2α, α being a positive integer, wherein either of q and-q is equal to 2β, β being a positive integer, wherein I and J are integers, and wherein the horizontal and vertical components of motion vectors at representative points (I, J), (I+p, J), and (I, J+q) take only values integral multiples of 1/k, wherein k is equal to 2h0 and h0 is an integer other than a negative integer, the horizontal and vertical components of the motion vector of each pixel take only values integral multiples of 1/m, wherein m is a positive integer, and (u(x, y), v(x, y)), wherein x, y, u(x, y), and v(x, y) are integers, obtained by multiplying the horizontal and vertical components of the motion vector of a pixel (x,y) in the patch Pa by m, is shown using (u0, v0), (u1, v1), and (u2, v2), wherein u0, v0, u1, v1, u2, v2 are integers, obtained by multiplying the horizontal and vertical components of the motion vectors at the representative points (I, J), (I+p, J), and (I, J+q) by k, as per u(x, y)=((u0·p·q+(u1-u0) (x-I')·q+(u2-u0) (y-J')·p)m)//(p·q·k), wherein v(x,y)=((v0·p·q+(v1-v0) (x-I')·q+(v2-v0) (y-J')·p)m)//(p·q·k), and wherein symbol "//" denotes a division that rounds to a nearest integer an operation result obtained from a division of real numbers when the result is not an integer and its priority as an operator is equal to that of a multiplication or division. 2. A method according to claim 1, wherein grid points are present at apexes of the patch Pb, wherein the coordinates of these grid points can be shown by (I, J), (I+r, J), and (I, J+s), wherein r, and s are integers, wherein the horizontal and vertical components of the motion vectors at these grid points take values integral multiples of 1/n, wherein n is a positive integer, and wherein (u0, v0), (u1, v1), and (u2, v2) shown by u'x, y)=((u00·r·s+(u01-u00) (x-I)·s+(u02-u00) (y-J)·r) k)/// (r·s·n), v'(x,y)=((v00·r·s+(v01-v00) (x-I)·s+(v02-v00) (y-J)·r)k)///(r·s·n), u0=u'(I', J'), v0=v'(I',J'), u1=u'(I'+p, J'), v1=v'(I'+p, J'), u2=u'(I', J'+q), and v2=v'(I', J'+q), wherein symbol "///" denotes a division that rounds to a nearest integer an operation result obtained from a division of real numbers when the result is not an integer and its priority as an operator is equal to that of a multiplication or division, by using (u00, v00), (u01, v01), and (u02, v02), wherein u00, v00, u01, v01, u02, and v02 are integers obtained by multiplying the horizontal and vertical components of the motion vectors of the grid points (I, J), (I+r, J) and (I, J+s) of the patch Pb by n. 3. A method according to claim 2, wherein symbol "///", when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction toward 0. 4. A method according to claim 2, wherein symbol, "///" when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction away from 0. 5. A method according to claim 2, wherein the absolute value of p/2 is smaller than that of r, wherein the absolute value of p is equal to or larger than that of r, wherein the absolute value of q/2 is smaller than that of s, and wherein the absolute value of q is equal to or larger than that of s. 6. A method according to claim 2, wherein the absolute value of p is equal to or smaller than that of r, wherein the absolute value of 2p is larger than that of r, wherein the absolute value of q is equal to or smaller than that of s, and wherein the absolute value of 2q is larger than that of s. 7. A method according to claim 1, wherein symbol "//", when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction toward 0 if a dividend is negative or in the direction away from 0 if the dividend is positive. 8. A method according to claim 1, wherein symbol "//", when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction away from 0 if a dividend is negative or in the direction toward 0 if the dividend is positive. 9. A method of synthesizing an inter-frame predicted image in a video decoder, comprising the step of: performing a motion compensation process between a current image and a reference image, wherein said motion compensation process includes the steps of: dividing said current image into N patches, N being a positive integer, arranging an assumed patch Pa corresponding to a patch Pb which is one of the N patches, Pa having three assumed grid points as representative points having coordinates (I, J), (I+p, J), and (I, J+q), obtaining motion vectors of the three representative points, and computing a motion vector of each pixel in the patch Pa by affine transformation using the motion vectors of the three representative points, wherein either of p and-p is equal to 2α, α being a positive integer, wherein either of q and-q is equal to 2β, β being a positive integer, wherein I and J are integers, wherein grid points are present at apexes of the patch Pb, wherein the coordinates of these grid points can be shown by (I, J), (I+r, J), and (I, J+s), wherein r, and s are integers, wherein the horizontal and vertical components of the motion vectors at these grid points take values integral multiples of 1/n, wherein n is a positive integer, and wherein (u0, v0), (u1, v1), and (u2, v2), shown by u'(x, y)=((u00·r·s+(u01-u00) (x-I)·s+(u02-u00) (y-J)·r) k)///(r·s·n), v'(x,y)=((v00·r·s+(v01-v00) (x-I)·s+(v02-v00) (y-J)·r)k)///(r·s·n), u0=u'(I', J'), v0=v'(I', J'), u1=u'(I'+p, J'), v1=v'(I'+p, J'), u2=u'(I', J'+q), and v2=v'(I', J'+q)), wherein symbol "///" denotes a division that rounds to a nearest integer an operation result obtained from a division of real numbers when the result is not an integer and its priority as an operation is equal to that of a multiplication or division, by using (u00, v00), (u01, v01), and (u02, v02), wherein u00, v00, v01, v01, u02, and v02 are integers obtained by multiplying the horizontal and vertical components of the motion vector of each grid point of the patch Pb by n, are used as values obtained by multiplying the horizontal and vertical components of the motion vectors of the representative points (I, J), (I+p, J), and (I, J+q) of the patch Pa by k. 10. A method according to claim 9, wherein symbol "///", when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction toward 0. 11. A method according to claim 9, wherein symbol "///", when an operation result obtained from a division of real numbers is a value obtained by adding ½ to an integer, is defined as an operation for rounding the value in the direction away from 0. 12. A method according to claim 9, wherein the absolute value of p/2 is smaller than that of r, wherein the absolute value of p is equal to or larger than that of r, wherein the absolute value of q/2 is smaller than that of s, and wherein the absolute value of q is equal to or larger than that of s. 13. A method according to claim 9, wherein the absolute value of p is equal to or smaller than that of r, wherein the absolute value of 2p is larger than that of r, wherein the absolute value of q is equal to or smaller than that of s, and wherein the absolute value of 2q is larger than that of s.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.