IP Library Granted Patent US 12,413,748
Granted Patent B2
US 12,413,748 · App. 18/215,177 · Granted Sep 9, 2025

Method and image-capturing device for encoding image frames of an image stream and transmitting encoded image frames on a communications network

Inventors: Viktor Edpalm (Lund, SE); Mattias Pettersson (Lund, SE)
Assignee: AXIS AB
H04N19/174G06T7/11
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,413,748
App. No.
18/215,177
Granted
Sep 9, 2025
Kind
B2
Abstract

A method encodes image frames of an image stream and transmits encoded image frames on a communications network. The method includes receiving and then dividing an image frame into multiple slices defined by first slice parameters and second slice parameters. The method also includes prioritizing the multiple slices and then generating a first encoded image frame having first encoded slices, second encoded slices and one or more first skip blocks. The method then generates and transmits a second encoded image frame having further second encoded slices defined by the second slice parameters and based on encoding second slices and further first encoded slices defined by the first slice parameters with more second skip blocks.

Claims (48)

1. A method, performed by an image-capturing device, for encoding image frames of an image stream and transmitting encoded image frames on a communications network, the method comprising:

receiving an image frame of the image stream from an image sensor of the image-capturing device;

dividing the image frame into multiple slices,

wherein the multiple slices comprises one or more first slices defined by first slice parameters and one or more second slices defined by second slice parameters;

prioritizing the multiple slices such that the one or more first slices are prioritized over the one or more second slices;

generating a first encoded image frame comprising:

one or more first encoded slices defined by the first slice parameters and based on encoding the one or more first slices, and

one or more second encoded slices defined by the second slice parameters and comprising one or more first skip blocks,

wherein the first slice parameters comprise at least one of a first slice size or a first slice position within the first encoded image frame, and

wherein the second slice parameters comprise at least one of a second slice size or a second slice position within the first encoded image frame, the at least one of the second slice size or second slice position being different from a corresponding one of the at least one of the first slice size or first slice position;

generating a second encoded image frame comprising one or more further second encoded slices defined by the second slice parameters and based on encoding the one or more second slices, and comprising one or more further first encoded slices defined by the first slice parameters and comprising one or more second skip blocks; and

transmitting the first encoded image frame before the second encoded image frame on the communications network to a receiving device.

2. The method according to claim 1 , further comprising transmitting a first indication indicating that the first encoded image frame is not to be displayed to the receiving device.

3. The method according to claim 2 , wherein transmitting the first indication comprises transmitting the first indication in a header of the first encoded image frame.

4. The method according to claim 1 , wherein generating the encoded image frames comprises: encoding the multiple slices such that a respective encoded slice of multiple encoded slices is independent of every other encoded slice of the multiple encoded slices.

5. The method according to claim 1 , further comprising transmitting a second indication indicating bow the image frame is divided into the multiple slices to the receiving device.

6. The method according to claim 1 ,

wherein generating the first encoded image frame comprises encoding the multiple slices such that the one or more first slices are encoded into one or more first encoded slices of the first encoded image frame and the one or more second encoded slices are generated by replacing the one or more second slices with the second skip blocks; and

wherein generating the second encoded image frame comprises encoding the multiple slices such that the one or more second slices are encoded into the one or more further second encoded slices of the second encoded image frame and the one or more further first encoded slices are generated by replacing the one or more first slices with the one or more first skip blocks.

7. The method according to claim 1 ,

wherein generating the first encoded image frame and generating the second encoded image frame comprises generating an intermediate encoded image frame based on encoding the image frame by encoding the multiple slices such that the one or more first slices are encoded into one or more first encoded slices of the intermediate encoded image frame and the one or more second slices are encoded into one or more second encoded slices of the intermediate encoded image frame, and

wherein generating the first encoded image frame further comprises inserting the one or more first encoded slices of the intermediate encoded image frame into the first encoded image frame and inserting the one or more first skip blocks instead of the one or more second encoded slices of the intermediate encoded image frame, and

wherein generating the second encoded image frame further comprises inserting the one or more second encoded slices of the intermediate encoded image frame into the second encoded image frame and inserting the one or more second skip blocks instead of the one or more first encoded slices of the intermediate encoded image frame into the second encoded image frame.

8. The method according to claim 1 ,

wherein the multiple slices comprises one or more third slices defined by third slice parameters, and

wherein prioritizing the multiple slices comprises prioritizing the one or more second slices over the one or more third slices, and

wherein the generated first encoded image frame further comprises one or more third encoded slices defined by the third slice parameters and comprising one or more third skip blocks, and

wherein the generated second encoded image frame further comprises the one or more third encoded slices, the method further comprising:

generating a third encoded image frame comprising one or more further third encoded slices defined by the third slice parameters and based on encoding the one or more third slices, and comprising the one or more further first encoded slices defined by the first slice parameters and comprising the one or more second skip blocks, and comprising the one or more second encoded slices defined by the second slice parameters and comprising the one or more first skip blocks; and

transmitting the second encoded image frame before the third encoded image frame on the communications network to the receiving device.

9. The method according to claim 1 , wherein each skip block of the one or more first skip blocks and the one or more second skip blocks indicates that there is no encoded difference between the encoded image frame including the skip blocks and a previous encoded image frame for a part of the encoded image frame that the skip blocks cover.

10. The method according to claim 1 , wherein the multiple slices are of equal size.

11. A non-transitory computer program storage device that comprises computer readable code units which when executed on an image-processing device causes the image-processing device to perform the method according to claim 1 .

12. An image-processing device comprising:

a processor configured to perform a method for encoding image frames of an image stream and transmitting encoded image frames on a communications network, the processor configured to:

receive an image frame of the image stream from an image sensor of an image-capturing device;

divide the image frame into multiple slices,

wherein the multiple slices comprises one or more first slices defined by first slice parameters and one or more second slices defined by second slice parameters;

prioritize the multiple slices such that the one or more first slices are prioritized over the one or more second slices;

generate a first encoded image frame comprising:

one or more first encoded slices defined by the first slice parameters and based on encoding the one or more first slices, and

one or more second encoded slices defined by the second slice parameters and comprising one or more first skip blocks,

wherein the first slice parameters comprise at least one of a first slice size or a first slice position within the first encoded image frame, and

wherein the second slice parameters comprise at least one of a second slice size or a second slice position within the first encoded image frame, the at least one of the second slice size or second slice position being different from a corresponding one of the at least one of the first slice size or first slice position;

generate a second encoded image frame comprising one or more further second encoded slices defined by the second slice parameters and based on encoding the one or more second slices, and comprising one or more further first encoded slices defined by the first slice parameters and comprising one or more second skip blocks; and

transmit the first encoded image frame before the second encoded image frame on the communications network to a receiving device.

13. The image-processing device according to claim 12 , wherein the processor is further configured to transmit a first indication indicating that the first encoded image frame is not to be displayed to the receiving device.

14. The image-processing device according to claim 12 , wherein the image-processing device is a video camera.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2023
From: EDPALM, VIKTOR; PETTERSSON, MATTIAS
To: AXIS AB
Reel/Frame 064090/0660 →
Priority Claims (1)
EP 22183384 · Jul 6, 2022 · regional
Continuity (1)
Related Publication 20240015307A1 · Jan 11, 2024
References Cited (12)
US 20030112867A1 · Hannuksela et al. · 2003 [cited by applicant]
US 20120300836A1 · Shimizu · 2012 [cited by examiner]
US 20140036999A1 · Ryu et al. · 2014 [cited by applicant]
US 20150010069A1 · Guignard · 2015 [cited by examiner]
US 20150208095A1 · Schierl · 2015 [cited by examiner]
US 20180176596A1 · Jeong · 2018 [cited by examiner]
US 20230070492A1 · Luo · 2023 [cited by examiner]
US 20230076537A1 · Pettersson · 2023 [cited by examiner]
US 20230308668A1 · Pettersson · 2023 [cited by examiner]
Chi et al., “Robust Region-of-Interest Determination Based on User Attention Model Through Visual Rhythm Analysis”, IEEE Transactions on Circuits and Systems for Video Technology, vol. 19, No. 7, Jul. 2009, pp. 1025-103… [cited by applicant]
Tillo et al., “Unequal Protection of Video Data According to Slice Relevance”, IEEE Transactions on Image Processing, vol. 20, No. 6, Jun. 2011, pp. 1572-1582. [cited by applicant]
Go et al., “A systematic reallocation and prioritization scheme for error-resilient transmission of video packets”, Multimed Tools Appl., vol. 76, 2017, pp. 6755-6783. [cited by applicant]