Patent · US2020404342A1 · A1 · US
Video processing method, video processing apparatus, encoder, decoder, medium and computer program
- (11) Publication number
- US2020404342A1
- (21) Application number
- 16/994,554
- (22) Filing date
- 2020-08-15
- (30) Priority date
- 2018-08-10
- (43) Publication date
- 2020-12-24
- (51) IPC
- H04N 19/172; H04N 19/52; H04N 19/96
- (52) CPC
- H04N Pictorial communication, e.g. television: 19/96, 19/103, 19/105, 19/109, 19/119, 19/172, 19/174, 19/176, 19/436, 19/513, 19/52, 19/577, 19/70
- (73) Assignee
- Huawei Technologies Co Ltd
- (72) Inventors
- Anand Meher KOTRA; Semih ESENLIK; Jianle Chen; Biao Wang; Han Gao; Zhijie ZHAO
- (54) Title
- Video processing method, video processing apparatus, encoder, decoder, medium and computer program
- (57) Abstract
A video processing method, comprising: initializing a HMVP list for a current CTU row when the current CTU is the beginning CTU of a current CTU row; and processing the current CTU row based on the HMVP list. By performing the method, the encoding efficiency and decoding efficiency are improved.
- Full text
- View on Google Patents
Claims (1)
- A video processing method for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, the method comprising: obtaining the first CTU row, the first CTU row comprising multiple CTUs in a sequence; and processing the first CTU row, wherein the processing comprises: detecting a beginning CTU in the sequence of the multiple CTUs; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the current CTU row based on the initialized HMVP list. 2. The video processing method according to claim 1, wherein initializing the HVMP list for the first CTU row comprises setting a quantity of candidate motion vectors in the HMVP list to zero. 3. The method according to claim 1 further comprising: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 4. The method according to claim 1, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU in the sequence; updating the HMVP list based on the processed beginning CTU to obtain an updated HMPV list; and processing a second CTU of the current CTU row based on the updated HMVP list, wherein the second CTU is subsequent to the beginning CTU in the sequence. 5. The video processing method according to claim 1, further comprising: updating the HMVP list according to a processed CTU of the first CTU row. 6. The video processing method according to claim 1, wherein initializing the HMVP list for the first CTU row comprises: emptying the HMVP list for the first CTU row. 7. The video processing method according to claim 1, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode. 8. The video processing method according to claim 7, wherein the first CTU row is processed after a particular CTU of a previous CTU row is processed. 9. The video processing method according to claim 8, wherein the previous CTU row is a CTU row immediately adjacent to the first CTU row and on top of the first CTU row in the first area. 10. The method according to claim 8, wherein the particular CTU of the previous CTU row is a second CTU in the previous CTU row; or the particular CTU of the previous CTU row is a first CTU in the previous CTU row, wherein the first CTU in the previous CTU row is a beginning CTU in the previous CTU row and the second CTU is subsequent to the first CTU in the previous CTU row. 11. A decoder for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, the decoder comprising: one or more processors; and a non-transitory computer-readable storage medium coupled to the processors and storing a program for execution by the processors, wherein the program, when executed by the processors, causes the one or more processors to perform: detecting a beginning CTU in the sequence of the multiple CTUs in the first CTU row; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the first CTU row based on the initialized HMVP list. 12. The decoder according to claim 11, wherein the quantity of the candidate motion vectors in the initialized HMVP list is zero. 13. The decoder according to claim 11, wherein the program, when executed by the processors, further cause the one or more processors to perform: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 14. The decoder according to claim 11, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU of the first CTU row; updating the initialized HMVP list based on the processed beginning CTU to obtain a updated HMPV list; and processing a second CTU of the first CTU row based on the updated HMVP list, wherein the second CTU is adjacent to the beginning CTU. 15. The decoder according to claim 11, wherein the program, when executed by the processors, further causes the one or more processors to perform: updating the initialized HMVP list according to a processed CTU of the first CTU row. 16. The decoder according to claim 11, wherein initializing the HMVP list for the first CTU row comprises: emptying the HMVP list for the first CTU row. 17. The decoder according to claim 11, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode. 18. The decoder according to claim 17, wherein the first CTU row is processed after a particular CTU of a previous CTU row is processed. 19. The decoder according to claim 18, wherein the previous CTU row is the CTU row immediately adjacent to the current CTU row and on top of the current CTU row. 20. The decoder according to claim 18, wherein the particular CTU of the previous CTU row is the second CTU of the previous CTU row; or the particular CTU of the previous CTU row is the first CTU of the previous CTU row, wherein the first CTU in the previous CTU row is a beginning CTU in the previous CTU row and the second CTU is subsequent to the first CTU in the previous CTU row. 21. A computer-readable storage medium storing computer instructions for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, wherein when the instructions are executed by one or more processors of an apparatus, the one or more processors of the apparatus are caused to perform: obtaining the first CTU row, the first CTU row comprising multiple CTUs in a sequence; and processing the first CTU row, wherein the processing comprises: detecting a beginning CTU in the sequence of the multiple CTUs; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the current CTU row based on the initialized HMVP list. 22. The computer-readable storage medium according to claim 21, wherein the quantity of the candidate motion vectors in the initialized HMVP list is zero. 23. The computer-readable storage medium according to claim 21, wherein the one or more processors of the apparatus are further caused to perform: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 24. The computer-readable storage medium according to claim 21, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU of the first CTU row; updating the initialized HMVP list based on the processed beginning CTU to obtain a updated HMPV list; and processing a second CTU of the current CTU row based on the updated HMVP list, wherein the second CTU is adjacent to the beginning CTU. 25. The computer-readable storage medium according to claim 21, wherein the one or more processors of the apparatus are further caused to perform: updating the initialized HMVP list according to a processed CTU of the first CTU row. 26. The computer-readable storage medium according to claim 21, wherein initializing the HMVP list for the current CTU row comprises: emptying the HMVP list for the current CTU row. 27. The computer-readable storage medium according to claim 21, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode.
Description
Embodiments of the present disclosure generally relate to the field of video coding and more particularly to a video processing method, a video processing apparatus, an encoder, a decoder, a medium and a computer program.
Video coding (video encoding and decoding) is used in a wide range of digital video applications, for example broadcast digital TV, video transmission over internet and mobile networks, real-time conversational applications such as video chat, video conferencing, Digital Versatile Disc (DVD) and Blu-ray discs, video content acquisition and editing systems, and camcorders of security applications.
Since the development of the block-based hybrid video coding approach in the H.261 standard in 1990, new video coding techniques and tools were developed and formed the basis for new video coding standards. Further video coding standards comprise Moving Picture Experts Group-1 (MPEG-1) video, MPEG-2 video, Telecommunication Standardization Sector of the International Telecommunications Union (ITU-T) H.262/MPEG-2, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, Advanced Video Coding (AVC), ITU-T H.265/High Efficiency Video Coding (HEVC), ITU-T H.266/Versatile video coding (VVC) and extensions, e.g. scalability and/or three-dimensional (3D) extensions, of these standards. As the video creation and use have become more and more ubiquitous, video traffic is the biggest load on communication networks and data storage, accordingly, one of the goals of most of the video coding standards was to achieve a bitrate reduction compared to its predecessor without sacrificing picture quality.
Record as JSON
{
"publication_number": "US2020404342A1",
"country": "US",
"kind": "A1",
"title": "Video processing method, video processing apparatus, encoder, decoder, medium and computer program",
"abstract": "A video processing method, comprising: initializing a HMVP list for a current CTU row when the current CTU is the beginning CTU of a current CTU row; and processing the current CTU row based on the HMVP list. By performing the method, the encoding efficiency and decoding efficiency are improved.",
"claims": [
"1. A video processing method for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, the method comprising: obtaining the first CTU row, the first CTU row comprising multiple CTUs in a sequence; and processing the first CTU row, wherein the processing comprises: detecting a beginning CTU in the sequence of the multiple CTUs; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the current CTU row based on the initialized HMVP list. 2. The video processing method according to claim 1, wherein initializing the HVMP list for the first CTU row comprises setting a quantity of candidate motion vectors in the HMVP list to zero. 3. The method according to claim 1 further comprising: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 4. The method according to claim 1, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU in the sequence; updating the HMVP list based on the processed beginning CTU to obtain an updated HMPV list; and processing a second CTU of the current CTU row based on the updated HMVP list, wherein the second CTU is subsequent to the beginning CTU in the sequence. 5. The video processing method according to claim 1, further comprising: updating the HMVP list according to a processed CTU of the first CTU row. 6. The video processing method according to claim 1, wherein initializing the HMVP list for the first CTU row comprises: emptying the HMVP list for the first CTU row. 7. The video processing method according to claim 1, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode. 8. The video processing method according to claim 7, wherein the first CTU row is processed after a particular CTU of a previous CTU row is processed. 9. The video processing method according to claim 8, wherein the previous CTU row is a CTU row immediately adjacent to the first CTU row and on top of the first CTU row in the first area. 10. The method according to claim 8, wherein the particular CTU of the previous CTU row is a second CTU in the previous CTU row; or the particular CTU of the previous CTU row is a first CTU in the previous CTU row, wherein the first CTU in the previous CTU row is a beginning CTU in the previous CTU row and the second CTU is subsequent to the first CTU in the previous CTU row. 11. A decoder for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, the decoder comprising: one or more processors; and a non-transitory computer-readable storage medium coupled to the processors and storing a program for execution by the processors, wherein the program, when executed by the processors, causes the one or more processors to perform: detecting a beginning CTU in the sequence of the multiple CTUs in the first CTU row; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the first CTU row based on the initialized HMVP list. 12. The decoder according to claim 11, wherein the quantity of the candidate motion vectors in the initialized HMVP list is zero. 13. The decoder according to claim 11, wherein the program, when executed by the processors, further cause the one or more processors to perform: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 14. The decoder according to claim 11, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU of the first CTU row; updating the initialized HMVP list based on the processed beginning CTU to obtain a updated HMPV list; and processing a second CTU of the first CTU row based on the updated HMVP list, wherein the second CTU is adjacent to the beginning CTU. 15. The decoder according to claim 11, wherein the program, when executed by the processors, further causes the one or more processors to perform: updating the initialized HMVP list according to a processed CTU of the first CTU row. 16. The decoder according to claim 11, wherein initializing the HMVP list for the first CTU row comprises: emptying the HMVP list for the first CTU row. 17. The decoder according to claim 11, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode. 18. The decoder according to claim 17, wherein the first CTU row is processed after a particular CTU of a previous CTU row is processed. 19. The decoder according to claim 18, wherein the previous CTU row is the CTU row immediately adjacent to the current CTU row and on top of the current CTU row. 20. The decoder according to claim 18, wherein the particular CTU of the previous CTU row is the second CTU of the previous CTU row; or the particular CTU of the previous CTU row is the first CTU of the previous CTU row, wherein the first CTU in the previous CTU row is a beginning CTU in the previous CTU row and the second CTU is subsequent to the first CTU in the previous CTU row. 21. A computer-readable storage medium storing computer instructions for processing a video, wherein the video comprises frames including a first frame, the first frame comprising one or more areas including a first area, the first area includes one or more current coding tree unit (CTU) rows including a first CTU row, wherein when the instructions are executed by one or more processors of an apparatus, the one or more processors of the apparatus are caused to perform: obtaining the first CTU row, the first CTU row comprising multiple CTUs in a sequence; and processing the first CTU row, wherein the processing comprises: detecting a beginning CTU in the sequence of the multiple CTUs; in response to detecting the beginning CTU, initializing a history-based motion vector prediction (HMVP) list for the first CTU row; and processing the current CTU row based on the initialized HMVP list. 22. The computer-readable storage medium according to claim 21, wherein the quantity of the candidate motion vectors in the initialized HMVP list is zero. 23. The computer-readable storage medium according to claim 21, wherein the one or more processors of the apparatus are further caused to perform: initializing a HMVP list for each of the plurality of CTU rows except a current CTU row, wherein HMVP lists for the plurality of CTU rows are identical or different. 24. The computer-readable storage medium according to claim 21, wherein processing the first CTU row based on the HMVP list comprises: processing the beginning CTU of the first CTU row; updating the initialized HMVP list based on the processed beginning CTU to obtain a updated HMPV list; and processing a second CTU of the current CTU row based on the updated HMVP list, wherein the second CTU is adjacent to the beginning CTU. 25. The computer-readable storage medium according to claim 21, wherein the one or more processors of the apparatus are further caused to perform: updating the initialized HMVP list according to a processed CTU of the first CTU row. 26. The computer-readable storage medium according to claim 21, wherein initializing the HMVP list for the current CTU row comprises: emptying the HMVP list for the current CTU row. 27. The computer-readable storage medium according to claim 21, wherein the one or more CTU rows are processed in wavefront parallel processing (WPP) mode."
],
"description_excerpt": "Embodiments of the present disclosure generally relate to the field of video coding and more particularly to a video processing method, a video processing apparatus, an encoder, a decoder, a medium and a computer program.\n\nVideo coding (video encoding and decoding) is used in a wide range of digital video applications, for example broadcast digital TV, video transmission over internet and mobile networks, real-time conversational applications such as video chat, video conferencing, Digital Versatile Disc (DVD) and Blu-ray discs, video content acquisition and editing systems, and camcorders of security applications.\n\nSince the development of the block-based hybrid video coding approach in the H.261 standard in 1990, new video coding techniques and tools were developed and formed the basis for new video coding standards. Further video coding standards comprise Moving Picture Experts Group-1 (MPEG-1) video, MPEG-2 video, Telecommunication Standardization Sector of the International Telecommunications Union (ITU-T) H.262/MPEG-2, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, Advanced Video Coding (AVC), ITU-T H.265/High Efficiency Video Coding (HEVC), ITU-T H.266/Versatile video coding (VVC) and extensions, e.g. scalability and/or three-dimensional (3D) extensions, of these standards. As the video creation and use have become more and more ubiquitous, video traffic is the biggest load on communication networks and data storage, accordingly, one of the goals of most of the video coding standards was to achieve a bitrate reduction compared to its predecessor without sacrificing picture quality.",
"cpc": [
"H04N 19/96",
"H04N 19/103",
"H04N 19/105",
"H04N 19/109",
"H04N 19/119",
"H04N 19/172",
"H04N 19/174",
"H04N 19/176",
"H04N 19/436",
"H04N 19/513",
"H04N 19/52",
"H04N 19/577",
"H04N 19/70"
],
"ipc": [
"H04N 19/172",
"H04N 19/52",
"H04N 19/96"
],
"assignees": [
"Huawei Technologies Co Ltd"
],
"inventors": [
"Anand Meher KOTRA",
"Semih ESENLIK",
"Jianle Chen",
"Biao Wang",
"Han Gao",
"Zhijie ZHAO"
],
"filing_date": "2020-08-15",
"publication_date": "2020-12-24",
"priority_date": "2018-08-10",
"application_number": "US-202016994554-A",
"family_id": "69415390",
"cited_by_count": 16
}
Record 1,841 of 8,000 in Patents full text (MLC-0201). Request the full dataset.