U.S. patent application number 16/185401 was filed with the patent office on 2019-03-07 for method and apparatus for frame coding in vertical raster scan order for hevc.
The applicant listed for this patent is Texas Instruments Incorporated. Invention is credited to Madhukar Budagavi, Hyung Joon Kim, Do-Kyoung Kwon.
Application Number | 20190075294 16/185401 |
Document ID | / |
Family ID | 59561976 |
Filed Date | 2019-03-07 |
United States Patent
Application |
20190075294 |
Kind Code |
A1 |
Kwon; Do-Kyoung ; et
al. |
March 7, 2019 |
METHOD AND APPARATUS FOR FRAME CODING IN VERTICAL RASTER SCAN ORDER
FOR HEVC
Abstract
A method and apparatus for frame coding in adaptive raster scan
order. The method includes encoding at least one of image or video
utilizing input frames and at least one of a data related to the
input frame to produce bitstream with raster scan order information
and displacement information for producing compressed video
bitstream, at decoding time, decoding at least one of the encoded
bitstream with raster scan order information and displacement
information for producing compressed video bitstream.
Inventors: |
Kwon; Do-Kyoung; (Allen,
TX) ; Kim; Hyung Joon; (McKinney, TX) ;
Budagavi; Madhukar; (Plano, TX) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Texas Instruments Incorporated |
Dallas |
TX |
US |
|
|
Family ID: |
59561976 |
Appl. No.: |
16/185401 |
Filed: |
November 9, 2018 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
15583460 |
May 1, 2017 |
10165276 |
|
|
16185401 |
|
|
|
|
14561816 |
Dec 5, 2014 |
9641856 |
|
|
15583460 |
|
|
|
|
13250806 |
Sep 30, 2011 |
8934729 |
|
|
14561816 |
|
|
|
|
61474435 |
Apr 12, 2011 |
|
|
|
61388478 |
Sep 30, 2010 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04N 19/129 20141101;
H04N 19/172 20141101; H04N 19/139 20141101 |
International
Class: |
H04N 19/129 20060101
H04N019/129; H04N 19/139 20060101 H04N019/139; H04N 19/172 20060101
H04N019/172 |
Claims
1. A method comprising: encoding a bitstream that includes adaptive
scan order information and displacement information for producing
decoded video frames.
2. The method of claim 1, wherein the displacement information is
embedded in at least one of: a picture header; a supplemental
enhancement information (SEI); or a video usability information
(VUI) message.
3. The method of claim 1, wherein the bitstream further includes
raster scan order information.
4. The method of claim 3, wherein the raster scan order information
is embedded in at least one of the SEI or VUI message
5. An apparatus for frame coding, comprising: an encoder to encode
a bitstream that includes adaptive scan order information and
displacement information for producing decoded video frames.
6. The apparatus of claim 5, wherein the displacement information
is embedded in at least one of: a picture header; a supplemental
enhancement information (SEI); or a video usability information
(VUI) message.
7. The apparatus of claim 5, wherein the bitstream further includes
raster scan order information.
8. The apparatus of claim 7, wherein the raster scan order
information is embedded in at least one of the SEI or VUI
message
9. A non-transitory computer readable medium comprising
instructions that, when executed by a decoder, cause the decoder
to: encoder a bitstream that includes adaptive scan order
information and displacement information for producing decoded
video frames.
10. The non-transitory computer readable medium of claim 9, wherein
the displacement information is embedded in at least one of: a
picture header; a supplemental enhancement information (SEI); or a
video usability information (VUI) message.
11. The non-transitory computer readable medium of claim 9, wherein
the bitstream further includes raster scan order information.
12. The non-transitory computer readable medium of claim 11,
wherein the raster scan order information is embedded in at least
one of the SEI or VUI message.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a Continuation of U.S. patent
application Ser. No. 15/583,460, filed May 1, 2017, which is a
continuation of Ser. No. 14/561,816, filed Dec. 5, 2014, now U.S.
Pat. No. 9,641,856, which is a continuation of U.S. patent
application Ser. No. 13/250,806, filed Sep. 30, 2011, now U.S. Pat.
No. 8,934,729, which claims the benefit of U.S. Provisional Patent
Application Ser. No. 61/388,478 filed Sep. 30, 2010, and which
claims the benefit of U.S. Provisional Patent Application Ser. No.
61/474,435, filed Apr. 12, 2011, all of which are incorporated
herein by reference in their entirety.
BACKGROUND OF THE INVENTION
Field of the Invention
[0002] Embodiments of the present invention generally relate to a
method and apparatus for frame coding in vertical raster scan for
HEVC.
Description of the Related Art
[0003] HEVC is a video coding standard being standardized to
improve coding efficiency by 50% over H264/AVC. To achieve this
goal, lots of new coding tools have been proposed for HEVC.
However, all the proposed coding tools assume the horizontal raster
scan of micro blocks, which has two problems: 1) Horizontal raster
scan is not always effective in prediction especially for intra
coding and 2) with sliding window memory for motion estimation (ME)
and motion compensation (MC), large on-chip memory is required to
compensate for large vertical motion. This is especially a
challenging for UHD (ultra high definition) videos, such as, 4
k.times.2 k and 8 k.times.4 k. While UHD video coding is one of the
application areas of HEVC, the frame coding in horizontal scan
order is not cost effective at all for UHD videos with high
vertical motion.
[0004] Therefore, there is a need for a method and/or apparatus for
frame coding for HEVC.
SUMMARY OF THE INVENTION
[0005] Embodiments of the present invention relate to a method and
apparatus for frame coding in adaptive raster scan order. The
method includes encoding at least one of image or video utilizing
input frames and at least one of a data related to the input frame
to produce bitstream with raster scan order information and
displacement information for producing compressed video bitstream,
at decoding time, decoding at least one of the encoded bitstream
with raster scan order information and displacement information for
producing compressed video bitstream.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] So that the manner in which the above recited features of
the present invention can be understood in detail, a more
particular description of the invention, briefly summarized above,
may be had by reference to embodiments, some of which are
illustrated in the appended drawings. It is to be noted, however,
that the appended drawings illustrate only typical embodiments of
this invention and are therefore not to be considered limiting of
its scope, for the invention may admit to other equally effective
embodiments.
[0007] FIG. 1 is an embodiment of a frame coding in horizontal
raster scan order;
[0008] FIG. 2 is an embodiment of a frame coding in vertical raster
scan order;
[0009] FIG. 3 is an embodiment of a vertical sliding window scheme
for horizontal raster coding order;
[0010] FIG. 4 is an embodiment of a horizontal sliding window
scheme for vertical raster coding order;
[0011] FIG. 5 is an embodiment depicting horizontal bottom-right to
left;
[0012] FIG. 6 is an embodiment of a vertical right-bottom to
top;
[0013] FIG. 7 is an embodiment of a portable device with video
camera and motion sensor;
[0014] FIG. 8 is an embodiment of a video stabilizer in accordance
with the prior art; and
[0015] FIG. 9 is an embodiment of an improved video stabilizer.
DETAILED DESCRIPTION
[0016] The proposed method and apparatus add a vertical raster scan
order to the HEVC standard and adaptively select the best coding
scan order between the horizontal and vertical raster scan orders
based on any criteria, such as, size of horizontal/vertical motion,
coding efficiency, on-chip memory saving and etc.
[0017] The vertical raster scan is effective for the frames which
have lots of vertical discontinuities. FIG. 1 is an embodiment of a
frame coding in horizontal raster scan order. FIG. 2 is an
embodiment of a frame coding in vertical raster scan order. In FIG.
1 and FIG. 2, the frame with vertical discontinuities with
horizontal and vertical raster scan orders are shown, respectively.
When we apply the horizontal raster scan order, as shown in FIG. 1,
more bits are used to encode micro block mode. This is due to
incorrect mode prediction caused by discontinuity. However, the
number of bits is reduced when we apply the vertical raster scan
order, as shown in FIG. 2. Hence, the coding gain will be more
significant for intra frames. The result indicates that the
vertical raster scan can reduce bitrates up to 4% for some
sequences, even without adaptive horizontal/vertical raster scan
order decision. Thus, adaptive decision will result in even higher
bit-rate saving.
[0018] FIG. 3 is an embodiment of a vertical sliding window scheme
for horizontal raster coding order. If a video contains large
vertical motion, the vertical sliding window scheme may not cover
the large vertical motion. In this scenario, inter mode may not be
used because required reference area is not available. This
eventually causes encoding efficiency degradation. However, this
problem could be solved by employing a horizontal sliding window
scheme with vertical raster coding order, as illustrated in FIG. 4.
FIG. 4 is an embodiment of a horizontal sliding window scheme for
vertical raster coding order. Utilizing adaptively choosing raster
scan order improves the coding efficiency of inter frames at the
same on-chip memory requirement. On the other hand, the required
on-chip memory size without coding gain loss is reduced.
[0019] For horizontal and vertical search range srX*srY, on-chip
memory size (byte) for sliding window for 8-bit luma can be
calculated as follows:
MemSizeHorOrder=picWidth*(2*srY+N),
MemSizeVertOrder=picHeight*(2*srX+N).
[0020] MemSizeHorOrder and MemSizeVertOrder are on-chip memory
sizes for vertical sliding window (horizontal raster coding order)
and horizontal sliding window (vertical raster coding order),
respectively. N*N is the largest coding unit, and picWidth and
picHeight are the horizontal and vertical size of the picture.
Based on the equations, Table 1 lists the search ranges for
different available on-chip memory sizes for 4 k.times.2 k
(3840.times.2160) videos. For a given on-chip memory size, srY is
always limited in vertical sliding window, which potentially causes
encoding efficiency degradation for large vertical motion videos as
illustrated in FIG. 3. By introducing vertical coding order with
horizontal sliding window, we can remove the limitation on srY and
avoid the degradation for large vertical motion videos.
TABLE-US-00001 TABLE 1 Available on-chip memory sizes vs. search
ranges 500 KBytes 750 Kbytes 1,000 KBytes srX srY srX srY srX srY
Vertical sliding unlim- +/-33 unlim- +/-65 Unlim- +/-98 window ited
ited ited Horizontal +/-83 unlim- +/-141 Unlim- +/-199 unlim-
sliding window ited ited ited
[0021] The idea of vertical raster scan can be realized with frame
rotation. Hence, similar effect may be seen by rotating input
frames with horizontal raster scan. This information can be simply
added as SEI (Supplemental Enhancement information) or VUI (Video
Usability Information) in bitstreams. Moreover, we can extend this
idea to any arbitrary raster scan order. We can apply one of 8
different raster can orders for each frames; horizontal top-left to
right, as shown in FIG. 1, horizontal top-right to left, horizontal
bottom-left to right, horizontal bottom-right to left, as shown in
FIG. 5, vertical left-top to bottom FIG. 2, vertical left-bottom to
bottom, vertical right-top to bottom and vertical right-bottom to
top FIG. 6. It also can be realized by modifying input frames,
i.e., e.g. rotating and/or flipping using SEI or VUI.
[0022] FIG. 7 is an embodiment of a portable device with video
camera and motion sensor. The motion sensor consists one of the
following sensors or a combination of them: accelerometer,
gyroscope, magnetosensor etc. The motion sensor provided the camera
orientation or displacement information. The displacement can be
specified in terms of a rotation matrix, quarternion, euler angle
etc.
[0023] FIG. 8 and FIG. 9 show a video stabilization where camera
displacement information can be used. Video stabilization
compensates for jitter in video due to changing camera position in
order to provide a steady video. FIG. 8 is an embodiment of a video
stabilizer in accordance with the prior art. In FIG. 8, the video
stabilization is carried out in decoder. The camera displacement
parameters are deduced from decoded frames and are used to
translates/rotate/warp the decoded frame to generate stabilized
video frames. Calculation of camera displacement parameters from
decoded frames is very computationally intensive and prone to
incorrect estimation.
[0024] On the other hand, FIG. 9 is an embodiment of an improved
video stabilizer. The camera displacement information is calculated
in the transmitter by using motion sensors. The displacement
information is encapsulated in SEI/VUI and transmitted inside
compressed bitstreams to receiver. The decoder at the receiver
decodes the compressed bitstream with camera displacement SEI/VUI
and generates decoded frames and displacement information which is
then passed on to the video stabilization module which carries out
video stabilization.
[0025] While the foregoing is directed to embodiments of the
present invention, other and further embodiments of the invention
may be devised without departing from the basic scope thereof, and
the scope thereof is determined by the claims that follow.
* * * * *