IP Library › Granted Patent US 11,997,283
Granted Patent B2
US 11,997,283 · App. 17/708,369 · Granted May 28, 2024

Machine learning based content-aware image frame encoding

Inventors: Sankar Shanmugam (Bangalore, IN); Ashwin Kulkarni (Bangalore, IN)
Assignee: SONY GROUP CORPORATION
H04N19/136G06T5/70G06T7/50G06V20/52H04N19/124H04N19/154H04N19/162H04N19/176H04N19/42G06T2207/20081G06T2207/30232
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 11,997,283
App. No.
17/708,369
Granted
May 28, 2024
Kind
B2
Abstract

An electronic device and method for content-aware image encoding using a machine learning (ML) model are provided. The electronic device receives at least one foreground region and at least one background region from a first image frame. The electronic device determines a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region, determines a bit allocation control parameter associated with the determined set of second macroblocks, updates the determined bit allocation control parameter based on an application of a first trained ML model, and encodes the first image frame based on the updated bit allocation control parameter to obtain a second image frame so that a first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within a threshold range.

Claims (99)

1. An electronic device, comprising:

circuitry configured to:

detect at least one foreground region and at least one background region from a first image frame;

determine, from the first image frame, a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region;

determine a bit allocation control parameter associated with the determined set of second macroblocks, wherein the bit allocation control parameter comprises a quantization parameter;

update the determined bit allocation control parameter associated with the determined set of second macroblocks based on an application of a first trained machine learning model;

determine, as the updated bit allocation control parameter, an updated quantization parameter between a minimum threshold quantization parameter and a default quantization parameter based on the application of the first trained machine learning model; and

encode the first image frame based on the updated bit allocation control parameter to obtain a second image frame,

wherein a first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within a threshold range.

2. The electronic device according to claim 1 , wherein the circuitry is further configured to detect a set of objects from the first image frame based on an application of a second trained machine learning model on the first image frame, wherein

the detected at least one foreground region corresponds to the detected set of objects, and

the detected at least one background region corresponds to a region other than the detected at least one foreground region in the first image frame.

3. The electronic device according to claim 1 , wherein the circuitry is further configured to select at least one object of the detected set of objects as the at least one background region based on at least one of a user input or a system preference.

4. The electronic device according to claim 1 , wherein the circuitry is further configured to determine a focal blur value associated with each region of a plurality of regions of the first image frame, wherein

the focal blur value associated with the detected at least one foreground region is above a threshold, and

the focal blur value associated with the detected at least one background region is below the threshold.

5. The electronic device according to claim 4 , wherein the focal blur value is determined based on an application of one of a Laplacian operator or a blur computing technique on the first image frame.

6. The electronic device according to claim 1 , wherein the circuitry is further configured to:

determine a depth map associated with the first image frame; and

detect the at least one foreground region and the at least one background region based on a selective depth range in the determined depth map.

7. The electronic device according to claim 1 , wherein the bit allocation control parameter comprises a bit-rate control parameter that corresponds to at least one of: an initial quantization parameter (QP), a QP limiter, a group of pictures (GOP) bit allocation, a basic unit bit allocation, or an entropy coding parameter.

8. The electronic device according to claim 1 , wherein

each of the first image quality index and the second image quality index corresponds to a structural similarity index, and

the structural similarity index includes at least one of luminance information, contrast information, or structural information.

9. The electronic device according to claim 1 , wherein the circuitry is further configured to:

control an execution of a set of operations iteratively to update the determined bit allocation control parameter associated with the determined set of second macroblocks, wherein the set of operations includes:

a reduction of the determined bit allocation control parameter to obtain a reduced bit allocation control parameter, wherein the reduction is based on a fraction of the determined bit allocation control parameter,

a generation of a third image frame based on the reduced bit allocation control parameter,

a determination whether a third image quality index associated with the generated third image frame matches the first image quality index within the threshold range, and

a selection of the reduced bit allocation control parameter as the determined bit allocation control parameter associated with the set of second macroblocks, based on the determination of a match between the third image quality index and the first image quality index; and

obtain the reduced bit allocation control parameter as the updated bit allocation control parameter and the generated third image frame as the second image frame, based on the iterative execution of the set of operations.

10. The electronic device according to claim 1 , wherein the circuitry is further configured to:

determine a network bandwidth associated with a video stream, wherein

the video stream includes the first image frame, and

the update of the bit allocation control parameter associated with the determined set of second macroblocks is further based on a bit rate compatible with the determined network bandwidth; and

compress the first image frame based on the updated bit allocation control parameter.

11. The electronic device according to claim 1 , wherein the circuitry is further configured to:

select a file, from a set of files, stored in a memory device, wherein

the selected file includes an image or a video, and

the first image frame corresponds to the selected file; and

compress the selected file based on the encoded first image frame.

12. The electronic device according to claim 11 , wherein the selection of the file from the set of files is based on a time of creation of the file, a time of modification of the file, one of a time or a frequency of access of the file, or a user input associated with the file.

13. The electronic device according to claim 1 , wherein the circuitry is further configured to:

detect a set of objects from the first image frame, wherein

the first image frame corresponds to a surveillance video that includes a set of image frames, and

the detected at least one foreground region corresponds to the detected set of objects and the detected at least one background region corresponds to a region other than the detected at least one foreground region in the first image frame; and

compress the surveillance video based on the encoded first image frame.

14. The electronic device according to claim 1 , wherein

the circuitry is further configured to train a first machine learning model on a training dataset to obtain the first trained machine learning model, and

the training dataset includes a default quantization parameter associated with the determined set of second macroblocks, a modified quantization parameter associated with the determined set of second macroblocks, a foreground occupancy percentage in a set of image frames, a background occupancy percentage in the set of image frames, a quantization parameter divisor, a bit consumption associated with the determined set of second macroblocks, and an available network bandwidth for transmission of the first image frame.

15. A method, comprising:

in an electronic device:

determining a focal blur value associated with each region of a plurality of regions of a first image frame based on an application of one of a Laplacian operator or a blur computing technique on the first image frame;

detecting at least one foreground region and at least one background region from the first image frame based on the determined focal blur value, wherein

the focal blur value associated with the detected at least one foreground region is above a threshold, and

the focal blur value associated with the detected at least one background region is below the threshold;

determining, from the first image frame, a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region;

determining a bit allocation control parameter associated with the determined set of second macroblocks;

updating the determined bit allocation control parameter associated with the determined set of second macroblocks based on an application of a first trained machine learning model; and

encoding the first image frame based on the updated bit allocation control parameter to obtain a second image frame,

wherein a first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within a threshold range.

16. The method according to claim 15 , further comprising detecting a set of objects from the first image frame based on an application of a second machine learning model on the first image frame, wherein

the detected at least one foreground region corresponds to the detected set of objects, and

the detected at least one background region corresponds to a region other than the detected at least one foreground region in the first image frame.

17. The method according to claim 15 , further comprising:

determining a depth map associated with the first image frame; and

detecting the foreground region and the background region based on a selective depth range in the determined depth map.

18. A non-transitory computer-readable storage medium configured to stored thereon, computer-executable instructions which, when executed by an electronic device, cause the electronic device to execute operations, the operations comprising:

detecting at least one foreground region and at least one background region from a first image frame;

determining, from the first image frame, a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region;

determining a bit allocation control parameter associated with the determined set of second macroblocks, wherein the bit allocation control parameter comprises a quantization parameter;

updating the determined bit allocation control parameter associated with the determined set of second macroblocks based on an application of a first trained machine learning model;

determining, as the updated bit allocation control parameter, an updated quantization parameter between a minimum threshold quantization parameter and a default quantization parameter based on the application of the first trained machine learning model; and

encoding the first image frame based on the updated bit allocation control parameter to obtain a second image frame,

wherein a first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within a threshold range.

19. An electronic device, comprising:

circuitry configured to:

detect at least one foreground region and at least one background region from a first image frame;

determine, from the first image frame, a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region;

determine a bit allocation control parameter associated with the determined set of second macroblocks;

control an execution of a set of operations iteratively to update the determined bit allocation control parameter associated with the determined set of second macroblocks based on an application of a first trained machine learning model, wherein the set of operations includes:

a reduction of the determined bit allocation control parameter to obtain a reduced bit allocation control parameter, wherein the reduction is based on a fraction of the determined bit allocation control parameter,

a generation of a third image frame based on the reduced bit allocation control parameter,

a determination whether a third image quality index associated with the generated third image frame matches a first image quality index within a threshold range, and

a selection of the reduced bit allocation control parameter as the determined bit allocation control parameter associated with the set of second macroblocks, based on the determination of a match between the third image quality index and the first image quality index; and

obtain the reduced bit allocation control parameter as an updated bit allocation control parameter and the generated third image frame as a second image frame, based on the iterative execution of the set of operations; and

encode the first image frame based on the updated bit allocation control parameter to obtain the second image frame,

wherein the first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within the threshold range.

20. An electronic device, comprising:

circuitry configured to:

determine a focal blur value associated with each region of a plurality of regions of the first image frame,

detect at least one foreground region and at least one background region from a first image frame based on the determined focal blur value, wherein

the focal blur value associated with the detected at least one foreground region is above a threshold, and

the focal blur value associated with the detected at least one background region is below the threshold;

determine, from the first image frame, a set of first macroblocks associated with the detected at least one foreground region and a set of second macroblocks associated with the detected at least one background region;

determine a bit allocation control parameter associated with the determined set of second macroblocks;

update the determined bit allocation control parameter associated with the determined set of second macroblocks based on an application of a first trained machine learning model; and

encode the first image frame based on the updated bit allocation control parameter to obtain the second image frame,

wherein the first image quality index associated with the first image frame matches a second image quality index associated with the second image frame within a threshold range.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2022
From: SHANMUGAM, SANKAR; KULKARNI, ASHWIN
To: SONY GROUP CORPORATION
Reel/Frame 059441/0741 →
Continuity (1)
Related Publication 20230319285A1 · Oct 5, 2023