IP Library Granted Patent US 12695880
Granted Patent B2
US 12695880 · App. 18/679,527 · Granted Jul 28, 2026

Decoder-side inter prediction based on no reference visual quality

Inventors: Tae Meon Bae (McLean, VA); Esmael Hejazi Dinan (McLean, VA); Kalyan Goswami (Reston, VA)
Assignee: Ofinno, LLC
H04N19/154H04N19/124H04N19/137H04N19/147H04N19/176H04N19/18H04N19/52H04N19/70
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 12695880
App. No.
18/679,527
Granted
Jul 28, 2026
Kind
B2
Abstract

A decoder decodes, from a bitstream for a current block, an indication of whether decoder-side inter prediction is enabled, and a reconstructed residual block. Based on the decoder-side inter prediction being enabled by the indication and for each respective motion information of a plurality of motion information, the decoder generates a reconstructed block based on: a prediction block generated using the respective motion information, and the reconstructed residual block. For each reconstructed block, the decoder determines a visual quality of the reconstructed block without using the current block as a reference. Based on the visual qualities of the reconstructed blocks, motion information for predicting the current block is determining from the plurality of motion information. The decoder reconstructs the current block based on the determined motion information.

Claims (62)

1 . A method comprising:

decoding, by a decoder and from a bitstream for a current block:

an indication of whether decoder-side inter prediction is enabled; and

a reconstructed residual block;

for each respective motion information of a plurality of motion information and based on the decoder-side inter prediction being enabled by the indication:

generating, by the decoder, a reconstructed block based on:

a prediction block generated using the respective motion information; and

the reconstructed residual block; and

determining, by the decoder, a visual quality of the reconstructed block without using the current block as a reference;

determining, by the decoder and based on the visual qualities of the reconstructed blocks, motion information from the plurality of motion information for predicting the current block; and

reconstructing, by the decoder, the current block based on the determined motion information.

2 . The method of claim 1 , wherein the motion information comprises a motion vector and a reference picture number.

3 . The method of claim 1 , wherein the motion information is determined based on the visual quality, among the visual qualities of the reconstructed blocks, with a highest visual quality.

4 . The method of claim 1 , wherein the visual quality of the reconstructed block is determined based on a visual parameter measurement index or a deep Learning for Blind Image Quality Assessment.

5 . The method of claim 1 , wherein the reconstructed residual block is decoded based on:

de-quantizing quantized transform coefficients of a residual block, received from the bitstream, to generate de-quantized transformed coefficients; and

inverse transforming the de-quantized transformed coefficients to generate the reconstructed residual block.

6 . The method of claim 1 , wherein the indication of whether decoder-side inter prediction is enabled comprises a one-bit flag.

7 . The method of claim 1 , wherein:

the indication being a first value indicates that the decoder-side inter prediction is enabled; and

the indication being a second value indicates that the decoder-side inter prediction is disabled and the motion information is signaled in the bitstream.

8 . A decoder comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the decoder to:

decode from a bitstream for a current block:

an indication of whether decoder-side inter prediction is enabled; and

a reconstructed residual block;

for each respective motion information of a plurality of motion information and based on the decoder-side inter prediction being enabled by the indication:

generate a reconstructed block based on:

a prediction block generated using the respective motion information; and

the reconstructed residual block; and

determine a visual quality of the reconstructed block without using the current block as a reference;

determine, based on the visual qualities of the reconstructed blocks, motion information from the plurality of motion information for predicting the current block; and

reconstruct the current block based on the determined motion information.

9 . The decoder of claim 8 , wherein the motion information comprises a motion vector and a reference picture number.

10 . The decoder of claim 8 , wherein the motion information is determined based on the visual quality, among the visual qualities of the reconstructed blocks, with a highest visual quality.

11 . The decoder of claim 8 , wherein the visual quality of the reconstructed block is determined based on a visual parameter measurement index or a deep Learning for Blind Image Quality Assessment.

12 . The decoder of claim 8 , wherein the reconstructed residual block is decoded based on:

de-quantizing quantized transform coefficients of a residual block, received from the bitstream, to generate de-quantized transformed coefficients; and

inverse transforming the de-quantized transformed coefficients to generate the reconstructed residual block.

13 . The decoder of claim 8 , wherein the indication of whether decoder-side inter prediction is enabled comprises a one-bit flag.

14 . The decoder of claim 8 , wherein:

the indication being a first value indicates that the decoder-side inter prediction is enabled; and

the indication being a second value indicates that the decoder-side inter prediction is disabled and the motion information is signaled in the bitstream.

15 . A non-transitory computer-readable medium storing instructions that, when executed by one or more processors of a decoder, cause the decoder to:

decode from a bitstream for a current block:

an indication of whether decoder-side inter prediction is enabled; and

a reconstructed residual block;

for each respective motion information of a plurality of motion information and based on the decoder-side inter prediction being enabled by the indication:

generate a reconstructed block based on:

a prediction block generated using the respective motion information; and

the reconstructed residual block; and

determine a visual quality of the reconstructed block without using the current block as a reference;

determine, based on the visual qualities of the reconstructed blocks, motion information from the plurality of motion information for predicting the current block; and

reconstruct the current block based on the determined motion information.

16 . The non-transitory computer-readable medium of claim 15 , wherein the motion information comprises a motion vector and a reference picture number.

17 . The non-transitory computer-readable medium of claim 15 , wherein the motion information is determined based on the visual quality, among the visual qualities of the reconstructed blocks, with a highest visual quality.

18 . The non-transitory computer-readable medium of claim 15 , wherein the visual quality of the reconstructed block is determined based on a visual parameter measurement index or a deep Learning for Blind Image Quality Assessment.

19 . The non-transitory computer-readable medium of claim 15 , wherein the indication of whether decoder-side inter prediction is enabled comprises a one-bit flag.

20 . The non-transitory computer-readable medium of claim 15 , wherein:

the indication being a first value indicates that the decoder-side inter prediction is enabled; and

the indication being a second value indicates that the decoder-side inter prediction is disabled and the motion information is signaled in the bitstream.