# US 10,321,144 B2 · Method and system for determining encoding parameters of video sources in large scale video surveillance systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,321,144 B2
- Document ID: US10321144B2
- Status: Granted
- Kind: B2
- Application number: 15/818,396
- Filed: 2017-11-20
- Published: 2018-05-31
- Granted: 2019-06-11
- Earliest claimed: 2016-11-25
- Assignees: Canon Kabushiki Kaisha
- Applicants: Canon Kabushiki Kaisha
- Inventors: Julien Sevin; Pierre Visa
- Web page: https://patentgrep.com/patent/US10321144B2

## CPC

- H04N 19/40: using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
- H04N 7/0102: {involving the resampling of the incoming video signal}
- H04N 7/181: {for receiving images from a plurality of remote sources}
- H04N 19/103: Selection of coding mode or of prediction mode
- H04N 19/124: Quantisation
- H04N 19/132: Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
- H04N 19/136: Incoming video signal characteristics or properties
- H04N 19/146: Data rate or code amount at the encoder output
- H04N 19/154: Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion (use of rate-distortion criteria H04N19/147)
- H04N 19/172: the region being a picture, frame or field
- H04N 19/184: the unit being bits, e.g. of the compressed video stream
- H04N 19/196: being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters (processing of motion vectors H04N19/513)
- H04N 19/85: using pre-processing or post-processing specially adapted for video compression
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

At least one embodiment of a method of configuring a video source comprising an embedded encoder for generating a stream, in a video-surveillance system comprising virtual encoders generating virtual streams, the method comprising: transcoding a reference stream generated by the video source to generate virtual streams according to distinct encoding configurations of the virtual encoders; for each of the generated virtual streams, computing a similarity distance between the corresponding virtual stream and a reference stream generated by the video source; obtaining a quality indicator relative to a task to be carried out on a stream generated by the video source; selecting an encoding configuration of a virtual encoder based on the computed similarity distances and the obtained quality indicator; and determining at least one configuration parameter value of the encoder of the video source as a function of the selected encoding configuration of the virtual encoder and of a look-up table.

## Claims

### Claim 1

A method of configuring a video source comprising an embedded encoder for generating a stream, the embedded encoder having at least one configuration parameter, at least one configuration parameter value making it possible to generate a reference stream, in a video-surveillance system comprising at least one virtual encoder configured to generate a plurality of virtual streams each corresponding to a distinct encoding configuration, each of the virtual streams being generated from a reference stream generated by the video source, the method comprising:
transcoding a reference stream generated by the video source to generate virtual streams according to distinct encoding configurations of the at least one virtual encoder;
for each of the generated virtual streams, computing a similarity distance between the corresponding virtual stream and a reference stream generated by the video source;
obtaining a quality indicator relative to a task to be carried out on a stream generated by the video source;
selecting an encoding configuration of the at least one virtual encoder based on the computed similarity distances and the obtained quality indicator; and
determining at least one configuration parameter value of the encoder of the video source as a function of the selected encoding configuration of the at least one virtual encoder and of a look-up table.

### Claim 2 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table, the step of generating the look-up table comprising:
retrieving a stream generated by the embedded encoder of the video source configured with at least one predetermined parameter value;
transcoding the reference stream by using each of the distinct encoding configurations of the at least one virtual encoder so as to obtain virtual streams; and
selecting an encoding configuration of the at least one virtual encoder based on similarity distances between the retrieved stream and the virtual streams.

### Claim 3 (depends on 2)

The method of claim 2, wherein the step of generating the look-up table further comprises:
obtaining a list of streams, each stream of the list of streams being generated by the embedded encoder of the video source configured with at least one predetermined distinct parameter value;
retrieving each stream of the list of streams; and
for each retrieved stream, selecting an encoding configuration of the at least one virtual encoder based on similarity distances between the retrieved streams and the virtual streams.

### Claim 4 (depends on 2)

The method of claim 2, wherein the step of generating the look-up table further comprises a step of computing similarity distances between a retrieved stream and the virtual streams.

### Claim 5 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table and a step of computing a quantization parameter from a stream generated by the embedded encoder, the quantification parameter characterizing the configuration of the embedded encoder.

### Claim 6 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table, wherein the distinct encoding configurations of the at least one virtual encoder are distinct variable bitrate encoding configurations.

### Claim 7 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table, wherein the look-up table comprises links between values of a compression quality parameter of a retrieved stream, of a quantization parameter of the embedded encoder, and of a quantization parameter of a selected virtual encoder.

### Claim 8 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table and a step of computing a target bitrate from a stream generated by the embedded encoder, the target bitrate characterizing the configuration of the embedded encoder.

### Claim 9 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table, wherein the reference stream has a frame rate and a stream generated by the embedded encoder has a frame rate, wherein the frame rate of the reference stream is modified to be set to the frame rate of a stream generated by the embedded encoder and wherein the distinct encoding configurations of the at least one virtual encoder are distinct constant bitrate encoding configurations.

### Claim 10 (depends on 1)

The method of claim 1, further comprising a step of generating the look-up table, wherein the look-up table comprises links between values of a target bit rate of a retrieved stream, of a target bit rate of the embedded encoder, of a target bit rate of a selected virtual encoder, and of a frame rate of the embedded encoder.

### Claim 11 (depends on 1)

The method of claim 1, wherein computation of a similarity distance is based on a full-reference metric used in computer vision in order to assess the image visual quality such as the Peak Signal-to-Noise Ratio (PSNR) and the Structural Similarity Image Metric (SSIM).

### Claim 12 (depends on 1)

The method of claim 1, wherein the video-surveillance system comprises a plurality of virtual encoders, each virtual encoder of the plurality of virtual encoders being configured according to a distinct encoding configuration of the distinct encoding configurations, or wherein the video-surveillance system comprises one virtual encoder, the virtual encoder being sequentially configured according to each of the distinct encoding configurations.

### Claim 13 (depends on 1)

A non-transitory computer-readable storage medium storing instructions of a computer program for implementing the method according to claim 1.

### Claim 14

A device for configuring a video source comprising an embedded encoder for generating a stream, the embedded encoder having at least one configuration parameter, at least one configuration parameter value making it possible to generate a reference stream, in a video-surveillance system comprising at least one virtual encoder configured to generate a plurality of virtual streams each corresponding to a distinct encoding configuration, each of the virtual streams being generated from a reference stream generated by the video source, the device comprising a microprocessor configured for carrying out the steps of:
transcoding a reference stream generated by the video source to generate virtual streams according to distinct encoding configurations of the at least one virtual encoder;
for each of the generated virtual streams, computing a similarity distance between the corresponding virtual stream and a reference stream generated by the video source;
obtaining a quality indicator relative to a task to be carried out on a stream generated by the video source;
selecting an encoding configuration of the at least one virtual encoder based on the computed similarity distances and the obtained quality indicator; and
determining at least one configuration parameter value of the encoder of the video source as a function of the selected encoding configuration of the at least one virtual encoder and of a look-up table.

### Claim 15 (depends on 14)

The device of claim 14, wherein the microprocessor is further configured for carrying out a step of generating the look-up table, and wherein the microprocessor is configured so that the step of generating the look-up table comprises:
retrieving a stream generated by the embedded encoder of the video source configured with at least one predetermined parameter value;
transcoding the reference stream by using each of the distinct encoding configurations of the at least one virtual encoder so as to obtain virtual streams; and
selecting an encoding configuration of the at least one virtual encoder based on similarity distances between the retrieved stream and the virtual streams.

### Claim 16 (depends on 15)

The device of claim 15, wherein the microprocessor is configured so that the step of generating the look-up table further comprises:
obtaining a list of streams, each stream of the list of streams being generated by the embedded encoder of the video source configured with at least one predetermined distinct parameter value;
retrieving each stream of the list of streams; and
for each retrieved stream, selecting an encoding configuration of the at least one virtual encoder based on similarity distances between the retrieved streams and the virtual streams.

### Claim 17 (depends on 15)

The device of claim 15, wherein the microprocessor is configured so that the step of generating the look-up table further comprises a step of computing similarity distances between a retrieved stream and the virtual streams.

### Claim 18 (depends on 14)

The device of claim 14, wherein the microprocessor is further configured for carrying out a step of generating the look-up table and a step of computing a quantization parameter from a stream generated by the embedded encoder, the quantification parameter characterizing the configuration of the embedded encoder.

### Claim 19 (depends on 14)

The device of claim 14, wherein the microprocessor is further configured for carrying out a step of generating the look-up table and a step of computing a target bitrate from a stream generated by the embedded encoder, the target bitrate characterizing the configuration of the embedded encoder.

### Claim 20 (depends on 14)

The device of claim 14, wherein the video-surveillance system comprises a plurality of virtual encoders, each virtual encoder of the plurality of virtual encoders being configured according to a distinct encoding configuration of the distinct encoding configurations, or wherein the video-surveillance system comprises one virtual encoder, the virtual encoder being sequentially configured according to each of the distinct encoding configurations.
