IP Library › Granted Patent US 12,256,093
Granted Patent B2
US 12,256,093 · App. 17/910,287 · Granted Mar 18, 2025

Method, apparatus and system for encoding and decoding a block of video samples

Inventor: Jonathan Gan (Ryde, AU)
Assignee: Canon Kabushiki Kaisha
H04N19/467H04N19/176H04N19/18H04N19/184
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,256,093
App. No.
17/910,287
Granted
Mar 18, 2025
Kind
B2
Abstract

A system and method of decoding a sub-block of residual coefficients of a transform block from a video bitstream. The method comprises determining whether sign bit hiding is used for the sub-block, the determination based on a value of a transform skip flag determined for the sub-block and a value of a sign bit hiding flag associated with the sub-block; if sign bit hiding is not used, decoding a number of sign bits equal to a number of significant coefficients in the subblock; and decoding the sub-block by reconstructing the residual coefficients of the sub-block using the decoded sign bits.

Claims (64)

1. A method of decoding a transform block from a bitstream, the method comprising:

decoding a first flag used to determine whether to use dependent quantization in the transform block;

determining whether to use sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not decoded from the bitstream,

wherein, if the first flag is TRUE, the sign bit hiding shall not be used in the transform block;

decoding the transform block by using the dependent quantization if it is determined based on the first flag to use the dependent quantization in the transform block; and

decoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disable flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

2. The method according to claim 1 ,

wherein the first residual coding is for a reverse scan order which starts from a bottom-right position in a sub-block and ends at a top-left position in the sub-block, and

wherein the second residual coding is for a forward scan order which starts from a top-left position in a sub-block and ends at a bottom-right position in the sub-block.

3. The method according to claim 1 ,

wherein, if the sign bit hiding is not used, the same number of signs as a number of significant coefficients in the subblock is decoded.

4. The method according to claim 1 ,

wherein, if the sign bit hiding is to be used, at least the enabled flag is TRUE.

5. A method of encoding a transform block into a bitstream, the method comprising:

encoding a first flag used to determined whether to use dependent quantization in the transform block;

determining whether to use sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not encoded,

wherein, if the first flag is TRUE, the sign bit hiding shall not be used in the transform block;

encoding the transform block by using the dependent quantization if it is determined based on the first flag to use the dependent quantization in the transform block; and

encoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) if a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disabled flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

6. The method according to claim 5 ,

wherein the first residual coding is for a reverse scan order which starts from a bottom-right position in a sub-block and ends at a top-left position in the sub-block, and

wherein the second residual coding is for a forward scan order which starts from a top-left position in a sub-block and ends at a bottom-right position in the sub-block.

7. The method according to claim 5 ,

wherein, if the sign bit hiding is not used, encoding, for a subblock, a number of signs equal to a number of significant coefficients in the subblock.

8. The method according to claim 5 ,

wherein, if the sign bit hiding is to be used, at least the enabled flag is TRUE.

9. A decoding apparatus decoding a transform block from a bitstream, comprising:

a processor performing:

decoding a first flag used to determine whether to use dependent quantization in the transform block;

determining whether to use sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not decoded from the bitstream,

wherein, if the first flag is TRUE, the sign bit hiding shall not be used in the transform block;

decoding the transform block by using the dependent quantization if it is determined based on the first flag to use the dependent quantization in the transform block; and

decoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) if a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disabled flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

10. An encoding apparatus encoding a transform block into a bitstream, comprising:

a processor performing:

encoding a first flag used to determined whether to use dependent quantization in the transform block;

determining whether to use_sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not encoded,

wherein, if the first flag is TRUE, the sign bit hiding shall not be used in the transform block;

encoding the transform block by using the dependent quantization if it is determined based on the first flag to use the dependent quantization in the transform block; and

encoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disabled flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

11. A non-transitory computer readable storage medium storing instructions that causes a computer to execute a method of decoding a transform block from a bitstream, the method comprising:

decoding a first flag used to determine whether to use dependent quantization in the transform block;

determining whether to use sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not decoded from the bitstream,

decoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) if a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disable flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

12. A non-transitory computer readable storage medium storing instructions that causes a computer to execute a method of encoding a transform block into a bitstream, the method comprising:

encoding a first flag used to determine whether to use dependent quantization in the transform block;

determining whether to use sign bit hiding in the transform block, wherein, in the sign bit hiding, data indicating a sign of a significant coefficient in a given position of the transform block is not encoded,

wherein if the first flag is TRUE, the sign bit hiding shall not be used in the transform block;

encoding the transform block by using the dependent quantization if it is determined based on the first flag to use the dependent quantization in the transform block; and

encoding the transform block by using the sign bit hiding if it is determined to use the sign bit hiding in the transform block,

wherein, in a state where (a) a disabled flag for transform skip residual coding is checked after the first flag is checked and (b) the disabled flag is TRUE, the dependent quantization shall not be used in the transform block, and

wherein the disabled flag indicates whether a first residual coding is applied instead of a second residual coding even if a transform process is skipped, the first residual coding being for a block in which a transform process is not skipped, and the second residual coding being for a block in which a transform process is skipped.

13. The method according to claim 1 , wherein the first flag is not a flag for sequence parameter set.

14. The method according to claim 5 , wherein the first flag is not a flag for sequence parameter set.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2024
From: GAN, JONATHAN
To: CANON KABUSHIKI KAISHA
Reel/Frame 069305/0142 →
Priority Claims (1)
AU 2020201753 · Mar 10, 2020 · national
Continuity (1)
Related Publication 20230140041A1 · May 4, 2023
References Cited (26)
US 20130188725A1 · Wang · 2013 [cited by applicant]
US 20130272424A1 · Sole Rojals · 2013 [cited by examiner]
US 20130294524A1 · Van Der Auwera · 2013 [cited by applicant]
US 20150181237A1 · Tsukuba et al. · 2015 [cited by applicant]
US 20170310999A1 · Hebel · 2017 [cited by applicant]
US 20210266598A1 · Hashimoto · 2021 [cited by examiner]
US 20220224942A1 · Hashimoto · 2022 [cited by applicant]
US 20230007267A1 · Yoo · 2023 [cited by applicant]
CN 104380740A · 2015 [cited by applicant]
CN 105850125A · 2016 [cited by applicant]
CN 105959697A · 2016 [cited by applicant]
CN 108900839A · 2018 [cited by applicant]
EP 3869808A1 · 2021 [cited by applicant]
EP 4114006A1 · 2023 [cited by applicant]
JP 2021136460A · 2021 [cited by applicant]
JP 2023516617A · 2023 [cited by applicant]
WO 2014160714A1 · 2014 [cited by applicant]
WO 2021172912A1 · 2021 [cited by applicant]
Wen Gao, et al., AHG13: Suggested Bug Fix for Lossless Coding in HM6.1 and HEVC text specification (Ticket 410), Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 9th M… [cited by applicant]
Jungah Choi, et al., CE3-2.7: Luma and chroma BDPCM and IBC with TSRC for lossless coding, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 17th Meeting: Brussels, BE, Jan. 7-17, 2020, … [cited by applicant]
Jonatan Samuelsson, et al., On TSRC, DQ and SDH signalling, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 18th Meeting: by teleconference, Apr. 15-24, 2020, Doc. JVET-R0486-v6, XP302… [cited by applicant]
Benjamin Bross, et al., Versatile Video Coding (Draft 7), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 16th Meeting: Geneva, CH, Oct. 1-11, 2019, Doc. No. JVET-P2001-vE, XP30224330. [cited by applicant]
Alican Nalci, et al., AHG9: High-level constraints on dependent quantization and sigh data hiding, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 18th Meeting: by teleconference, Apr.… [cited by applicant]
Flynn, D et al., High Efficiency Video Coding (HEVC) Range Extensions text specification: Draft 3, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 13th Meeting, Inche… [cited by applicant]
#859 closed defect (fixed), JVET-Q0089—TS residual coding disabled with dependent quantization, https://jvet.hhi.fraunhofer.de/trac/vvc/ticket/859. [cited by applicant]
Jiang Bo et al., Research on the Information Hiding Technologies for Video Encoded with HEVC, Master's Thesis; Hunan Institute of Science and Technology, May 2015, English abstract is on sixth page. [cited by applicant]