Data processing apparatus, data processing methods, and computer-readable media
By analyzing the similarity measure between signal time samples and determining the quantization parameters to optimize the quantization process, the low efficiency problem of signal compression and decompression systems in high-definition video in the existing technology is solved, and efficient signal quality recovery and data volume reduction are achieved.
Patent Information
- Application Number
- CN202111203833.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2016-09-08
- Filing Date
- 2017-09-08
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2037-09-08
AI Technical Summary
Existing signal compression and decompression systems have difficulty effectively improving signal quality and reducing data volume when processing high-definition video. Especially in scalable coding technology, the quantization operation leads to low efficiency in information storage and transmission.
By analyzing the similarity measure between time samples of the signal, quantization parameters are determined to optimize the quantization process, generate output data, and achieve efficient compression and decompression of the signal.
It improves the effect of signal quality recovery, reduces the amount of data, improves the efficiency of signal transmission and storage, and adapts to the reconstruction needs of different quality levels.
Smart Images

Figure CN113904688B_ABST
Abstract
Description
[0001] This invention application is a divisional application of a Chinese invention patent application that entered the Chinese national phase, with an international application date of September 8, 2017, and international application number "PCT / GB2017 / 052633". The application number of the Chinese invention patent application is 2017800692216, and the invention title is "Quantitative Parameter Determination and Hierarchical Coding". Technical Field
[0002] This invention relates to data processing apparatus, methods, computer programs, and computer-readable media. Background Technology
[0003] Signal compression and decompression are considerations in many known systems. Many types of signals (e.g., video, audio, or volumetric signals) can be compressed and encoded for transmission, for example, over data communication networks. Signals can also be stored in compressed form, for example, on storage media such as Digital Universal Discs (DVDs). When decoding such signals, it is desirable to improve the signal quality level and / or recover as much information as possible from the original signal.
[0004] Quantization is a technique used in signal compression. Quantization involves approximating a larger set of values with a smaller set of values, for example, by rounding, thresholding, or truncating the values in the larger set. The goal of quantization is to reduce the amount of data in the quantized output compared to the input data.
[0005] Some known systems utilize scalable coding techniques. Scalable coding involves encoding a signal along with its information to allow the signal to be reconstructed at one or more different quality levels, depending on the capabilities of the decoder and the available bandwidth. However, it is still possible to store and / or transmit larger amounts of information, especially as the use of higher quality, higher definition video becomes more prevalent. Summary of the Invention
[0006] According to a first aspect of the present invention, a device is provided, configured to:
[0007] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0008] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0009] Derive a similarity measure between the first value and the second value;
[0010] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0011] Output data is generated using the at least one quantization parameter.
[0012] According to a second aspect of the present invention, a method is provided, comprising:
[0013] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0014] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0015] Derive a similarity measure between the first value and the second value;
[0016] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0017] Output data is generated using the at least one quantization parameter.
[0018] According to a third aspect of the present invention, a computer program including instructions is provided, which, when executed, cause a device to perform the following methods:
[0019] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0020] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0021] Derive a similarity measure between the first value and the second value;
[0022] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0023] Output data is generated using the at least one quantization parameter.
[0024] According to a fourth aspect of the present invention, a computer-readable medium is provided comprising a computer program, the computer program including instructions that, when executed, cause a device to perform the following methods:
[0025] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0026] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0027] Derive a similarity measure between the first value and the second value;
[0028] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0029] Output data is generated using the at least one quantization parameter.
[0030] Other features and advantages will become apparent from the following description of the accompanying drawings, which are given by way of example only. Attached Figure Description
[0031] Figure 1 A schematic block diagram illustrating an example of a signal processing system according to an embodiment of the present invention;
[0032] Figure 2 A schematic block diagram illustrating an example of a device according to an embodiment of the present invention;
[0033] Figure 3 A schematic block diagram illustrating an example of a time sample group of a signal according to an embodiment of the present invention;
[0034] Figure 4 A flowchart illustrating an example of a method according to an embodiment of the present invention is shown;
[0035] Figure 5 A graph showing the total similarity score relative to time samples according to an embodiment of the present invention is presented;
[0036] Figure 6 A schematic block diagram illustrating another example of a device according to an embodiment of the present invention;
[0037] Figure 7 A schematic block diagram illustrating another example of a device according to an embodiment of the present invention. Detailed Implementation
[0038] refer to Figure 1 An example of a signal processing system 100 is shown. The signal processing system 100 is used to process signals. Examples of signal types include, but are not limited to, video signals, image signals, audio signals, volumetric signals (such as volumetric signals used in medical, scientific, or holographic imaging), or other multidimensional signals.
[0039] The signal processing system 100 includes a first device 102 and a second device 104. The first device 102 and the second device 104 may have a client-server relationship, with the first device 102 performing the functions of a server device and the second device 104 performing the functions of a client device. The signal processing system 100 may include at least one additional device (not shown). The first device 102 and / or the second device 104 may include one or more components. Components may be implemented in hardware and / or software. One or more components may be co-located within the signal processing system 100 or remotely located. Examples of device types include, but are not limited to, computerized devices, routers, workstations, handheld or laptop computers, tablets, mobile devices, game consoles, smart TVs, set-top boxes, augmented and / or virtual reality headsets, etc.
[0040] The first device 102 is communicatively coupled to the second device 104 via a data communication network 106. Examples of the data communication network 106 include, but are not limited to, the Internet, a local area network (LAN), and a wide area network (WAN). The first and / or second devices 102, 104 may have wired and / or wireless connections to the data communication network 106.
[0041] The first device 102 includes an encoder device 108. The encoder device 108 is configured to encode data (hereinafter referred to as "signal data") included in a signal. In addition to encoding the signal data, the encoder device 108 may also perform one or more other functions. The encoder device 108 may be implemented in various different ways. For example, the encoder device 108 may be implemented in hardware and / or software.
[0042] The second device 104 includes a decoder device 110. The decoder device 110 is configured to decode signal data. In addition to decoding signal data, the decoder device 110 may also perform one or more other functions. The decoder device 110 can be implemented in various different ways. For example, the decoder device 110 can be implemented in hardware and / or software.
[0043] Encoder device 108 encodes signal data and transmits the encoded signal data to decoder device 110 via data communication network 106. Decoder device 110 decodes the received encoded signal data and generates decoded signal data. Decoder device 110 can output decoded signal data or data derived from decoded signal data. For example, decoder device 110 can output such data for display on one or more display devices associated with second device 104.
[0044] In some examples described herein, encoder device 108 transmits to decoder device 110 a representation of a signal at a given quality level and information that decoder device 110 can use to reconstruct representations of one or more higher quality levels of signal. The representation of a signal at a given quality level can be considered as an expression, version, or depiction of the data included in the signal at the given quality level. The information that decoder device 110 can use to reconstruct representations of one or more higher quality levels of signal can be referred to as "reconstructed data." In some examples, the reconstructed data is included in the signal data encoded by encoder device 108 and transmitted to decoder device 110. In some examples, the reconstructed data is encoded and transmitted separately from the signal data.
[0045] In some examples, encoder device 108 performs one or more quantization operations on all or part of the signal data and / or all or part of the reconstructed data. One or more quantization operations may be performed before encoding the signal data and / or the reconstructed data. In some examples, one or more quantization operations are part of the encoding process.
[0046] refer to Figure 2 The diagram illustrates an example of a data processing device 200. The data processing device 200 may include an encoder device.
[0047] In data processing device 200, items are displayed at four logical levels. Items at the first, highest logical level involve data of a higher quality level. The quality level of the first logical level is higher than that of at least some of the other logical levels. Items at the second logical level involve data of a lower quality level. The quality level of the second logical level is lower than that of at least some of the other logical levels. Items at the third logical level involve additional data. Items at the fourth, lowest logical level involve the quantification of data. Both higher and lower quality levels are part of a hierarchical structure with multiple quality levels. In some examples, the hierarchical structure includes more than two quality levels. In these examples, data processing device 200 may include more than two different quality levels.
[0048] Data processing device 200 obtains a representation (or "expression") of a first time sample t1 of a higher quality level signal 206. Obtaining the representation of the first time sample t1 of the higher quality level signal 206 may include receiving the representation from one or more other entities. The representation of the first time sample t1 of the higher quality level signal 206 may be referred to below as "input data" because, in this example, it is data provided as input to data processing device 200.
[0049] When the signal is a video signal, the first time sample of the signal can be all or a portion of an image, frame, or field from a series of images or frames that constitute the video signal. Input data 206 may include a set of signal elements. Signal elements can be considered as components of input data 206, or can correspond to them. For example, in the case where input data 206 is an image, signal elements can be pixels in the image, or can correspond to them. In this example, input data 206 relates to a portion of an image. A portion of an image can be called a tile. The entire image may include many such tiles. The techniques described herein can be repeated in the same or similar manner for a portion or all of the other tiles in the image.
[0050] Data processing device 200 derives data 208 based on input data 206. In this example, data 208 based on input data 206 is a primary representation 208 of a first time sample t1 of a signal at a lower quality level. Representation 208 is primary in the sense that one or more additional processing operations can be performed at a lower quality level. In this example, data 208 is derived by downsampling input data 206, and is therefore referred to below as "downsampled data". In other examples, data 208 is derived by performing operations other than downsampling on input data 206.
[0051] In this example, the downsampled data 208 is encoded to produce a lower-quality encoded signal 210. In some examples, the data processing device 200 encodes the downsampled data 208 to produce the encoded signal 210. The data processing device 200 may output the encoded signal 210, for example, for transmission to at least one other device. In other examples, the data processing device 200 outputs data that can be used to derive the encoded signal 210, such as an encrypted version of the encoded signal 210. The encoded signal 210 may be generated by a separate encoding device. The encoded signal may be an H.264 encoded signal.
[0052] In this example, the encoded signal 210 is decoded to produce a decoded signal 212 of lower quality. The decoding operation can be performed to simulate a decoding operation that would be performed on at least one other device (e.g., a decoder). In some examples, the data processing device 200 decodes the encoded signal 210 to produce the decoded signal 212. In other examples, the data processing device 200 receives the decoded signal 212, for example, from a separate encoding and / or decoding device. The encoded signal can be decoded using an H.264 decoder. H.264 decoding produces a series of lower quality images (i.e., a series of time samples of the signal). Therefore, subsequent processing is performed on an image-by-image basis, where the data processing device 200 processes the video signal data.
[0053] In this example, data processing device 200 obtains correction data 214 based on a comparison between downsampled data 208 and decoded signal 212. Data processing device 200 may obtain correction data 214 by generating or deriving it itself or by receiving it from one or more other entities. Correction data 214 can be used to correct errors introduced during the encoding and decoding of downsampled data 208. In some examples, data processing device 200 outputs correction data 214 along with encoded signal 210, for example, for transmission to at least one other device. Providing correction data 214 allows the receiver to correct errors introduced during the encoding and decoding of downsampled data 208.
[0054] In this example, data processing device 200 uses correction data 214 to correct the decoded signal 212 to derive a representation 216 of the signal at a lower quality level. This representation 216 of the signal at a lower quality level will be referred to below as "corrected downsampled data". In other examples, without applying correction data 214 to the decoded signal 212, data processing device 200 uses downsampled data 208 as the representation 216 of the signal at a lower quality level.
[0055] Data processing device 200 obtains data 218 based on corrected downsampled data 216. In this example, data 218 is a second representation of a first time sample of a higher quality signal, and a first representation of the first time sample of the higher quality signal is input data 206. In this example, data processing device 200 derives data 218 by upsampling the corrected downsampled data 216. Therefore, data 218 is referred to below as "upsampled data". However, in other examples, one or more other operations may be used to derive data 218, for example, where data 216 is not derived by downsampling the input data 206.
[0056] Input data 206 and upsampled data 218 are used to obtain residual data 220. Residual data 220 is related to a first time sample t1 of the signal. Residual data 220 can be obtained by comparing input data 206 with upsampled data 218. Residual data 220 can take the form of a set of residual elements. The residual elements in the set 220 are related to individual signal elements in the input data 206. Thus, the set 220 of residual elements can be combined with upsampled data 218 to reconstruct input data 206. Residual data 220 can also be referred to as "reconstructed data" or "enhanced data."
[0057] In some examples, the residual element set 220 is transformed into one or more additional sets of data elements. These additional sets of data elements may include a set of associated elements. The set of associated elements may utilize the correlations between residual elements in the residual element set 220. The set of associated elements may indicate the result of the directional decomposition of the residual element set 220. For example, when there is a strong correlation between residual elements in the residual element set 220, less data can be transmitted to the set of associated elements compared to the residual element set 220. The set of associated elements is an example of a first set of data elements based on a first time sample t1 of the signal. In some examples, the set of associated elements utilizes the temporal correlation between data based on the first time sample t1 of the signal and data based on one or more different time samples (e.g., earlier time samples). For example, the set of associated elements may utilize the temporal redundancy between the residual element set 220 associated with the first time sample t1 and one or more further sets of residual elements, each element in the one or more further sets of residual elements being associated with a different time sample (e.g., an earlier time sample). In some examples, the associated element set indicates both the degree of association between residual elements in the residual element set 220 and the degree of temporal association based on one or more different time samples (e.g., earlier time samples).
[0058] For an example of how residual data can be transformed into directional components, the reader may refer to International Patent Application PCT / EP2013 / 059847, which relates to the directional decomposition of residual data during signal encoding, decoding, and reconstruction in a hierarchical structure. The entire contents of International Patent Application PCT / EP2013 / 059847 are incorporated herein by reference.
[0059] In this example, data processing device 200 outputs data based on downsampled data 208, data based on corrected data 214, and data based on residual data 220 for encoding and transmission to at least one other device.
[0060] In this example, the data based on correction data 214 includes quantized correction data 222 generated by quantizing correction data 214. In some examples, data processing device 200 quantizes correction data 214. In other examples, one or more other entities quantize correction data 214. Correction data 214 can be quantized using a first quantization parameter 224. The first quantization parameter 224 can be used as input to determine the quantization settings for quantizing correction data 214. The first quantization parameter 224 can indicate the level, amount, granularity, step size, and / or threshold associated with the quantization operation. For example, a higher quantization level may correspond to a greater degree of compression. On the other hand, a lower quantization level may correspond to a smaller degree of compression. The first quantization parameter 224 is determined based on a similarity measure between the values of corresponding data elements in different derived sets of data elements.
[0061] In this example, the data based on residual data 220 includes quantized residual data 226. Quantized residual data 226 is generated by quantizing residual 220 or one or more further sets of data elements derived from residual 220. For example, a set of correlated elements can be quantized, indicating the degree of correlation between residuals in the set of residuals 220 and / or the degree of temporal correlation based on one or more different time samples (e.g., earlier time samples). In some examples, quantization is performed by data processing device 200. In other examples, quantization is performed by one or more other entities. A second quantization parameter 228 can be used to generate quantized residual data 226. The second quantization parameter 228 can be used as input to determine the quantization settings for quantizing residual 220 or one or more additional sets of data elements derived from residual 220. In some examples, the first quantization parameter 224 and the second quantization parameter 228 have the same value. In other examples, the first quantization parameter 224 and the second quantization parameter 228 have different values. In some examples, the first quantization parameter 224 is independent of the second quantization parameter 228. In other examples, there is a correlation between the first quantization parameter 224 and the second quantization parameter 228. The data processing device 200 may be configured to determine one of the first quantization parameter 224 and the second quantization parameter 228 based on a predetermined relationship with the other of the first quantization parameter 224 and the second quantization parameter 228.
[0062] Data based on a group of signal time samples can be encoded according to a total bit rate target or budget. A separate bit rate can be allocated to each time sample in the group based on the total bit rate budget. The allocated bit rate for a given time sample can correspond to the amount of data to be used to represent that given time sample. The allocated bit rate for a given time sample can indicate a quality metric for that given time sample. For example, the allocated bit rate for a given time sample can indicate a quality metric for the reconstructed representation of the signal at that given time sample. The reconstructed representation can be a reconstruction of the input data 206 after one or more compression and decompression processes. For example, a lower bit rate can indicate a lower quality level because fewer bits are allocated. Bit rate allocation can be viewed as a form of rate control.
[0063] The first quantization parameter 224 and the second quantization parameter 228 can be used to influence the bit rate allocation of a given time sample within a time sample group. For example, data undergoing a higher quantization level can be allocated a smaller total bit rate. Figure 2 In the example shown, the first quantization parameter 224 and the second quantization parameter 228 are used to influence the bit rate allocation of the data based on the first time sample t1 of the signal. Specifically, the first quantization parameter 224 is used to influence the bit rate allocation of the correction data 214, and the second quantization parameter 228 is used to influence the bit rate allocation of the residual data 220.
[0064] Several feasible methods can be used to allocate bit rates to time sample groups.
[0065] In the first feasible method, the first quantization parameter 224 and / or the second quantization parameter 228 have the same value for all time samples in the time sample group. Therefore, the same amount of bit rate can be allocated to each time sample in the group. For example, assuming a total bit rate budget of 400 bits is available for a group of four time samples, each time sample would be allocated 100 bits. This provides a relatively straightforward technique in terms of implementation, as the bit rate can be evenly distributed across all time samples in the group without any analysis required for individual analysis of the time samples. However, the bit rate may be over-allocated to relatively less important time samples. This can lead to inefficient use of the available bit rate. Additionally or alternatively, the bit rate may be under-allocated to more important time samples, resulting in a loss of visual quality.
[0066] In the second feasible method, a first quantization parameter 224 and / or a second quantization parameter 228 are determined for a given time sample based on its category. Therefore, under the constraint that the sum of all bit rates used for time samples in a group equals the total bit rate budget for the group, different amounts of bit rate can be allocated to different time samples in the group according to their respective categories. For example, assuming a total bit rate budget of 400 bits is available for a group of four time samples, the first time sample could be allocated 150 bits based on its category, the second and third time samples could be allocated 75 bits each based on their categories, and the fourth time sample could be allocated 100 bits based on its category. Compared to the first feasible method, this method may involve additional processing because the time sample category needs to be determined and the bit rate allocated accordingly. However, this method may be advantageous for non-uniform distributions of bit rate across time samples, to reflect, for example, different types of time samples. While this method can produce finer bit rate allocations, it relies on the category of each time sample. Furthermore, allocating bit rate based on category in this way may not necessarily reflect the objective importance of each time sample in the group.
[0067] In the third feasible approach, instead of considering a given time sample in isolation based on its category as in the second approach described above, other time samples are also considered to assess the relative importance of the given time sample. In this method, a bit rate can be allocated to a given time sample based on its relative importance compared to other time samples in the group. More important time samples can be allocated a larger amount of the total bit rate for the group, and less important time samples can be allocated a smaller amount. For example, assuming a total bit rate budget of 400 bits is available for a group of four time samples, then based on determining that the first time sample is the most important in the group, 350 bits are allocated to it; based on determining that the second time sample is the second most important, 30 bits are allocated to it; based on determining that the third time sample is the third most important, 15 bits are allocated to it; and based on determining that the fourth time sample is the least important, 5 bits are allocated to it. By considering the relative importance of time samples, bit rates can be allocated to time samples in the group more effectively.
[0068] In the following example, a first time-sample of the signal and one or more subsequent time-samples are analyzed to determine the degree of influence of the first time-sample on the one or more subsequent time-samples. A first quantization parameter 224 and / or a second quantization parameter 228 can be derived based on such analysis. Therefore, data derived from time samples with a higher degree of influence can be allocated a higher bit rate than data derived from time samples with a lower degree of influence. This allows for more dynamic and intelligent bit rate allocation. Consequently, inefficient use of bit rate can be reduced and visual quality can be improved.
[0069] refer to Figure 3 The diagram schematically illustrates an example of a group 300 of data element sets. Each data element set in group 300 is based on different time samples of the signal. The group 300 of data element sets can be obtained by a data processing device (e.g., data processing device 200). The group 300 of data element sets can correspond to a series of images included in a video signal. For example, a given data element set in group 300 can be based on a set of pixels included in a given image that forms part of a video.
[0070] Group 300 includes a first data element set 310. The first data element set 310 is based on a first time sample t1 of the signal. The first data element set 310 may include signal data corresponding to the first time sample t1 of the signal. In some examples, the first data element set 310 includes data obtained by processing the first time sample t1 of the signal. The first data element set 310 may include reconstructed data corresponding to the first time sample t1 of the signal. The first data element set 310 may be based on input data 206. In some examples, the first data element set 310 is based on a set of residual elements, such as a set of residual elements 220. In some examples, the first data element set 310 includes a set of residual elements. In some examples, the first data element set 310 includes a set of correlation elements indicating the degree of correlation between the sets of residual elements. The first data element set 310 includes at least a first data element 311 and a second data element 312, and it should be understood that more data elements may be included in the data element set. In this example, the first data element 311 has a value of 3, and the second data element 312 has a value of 2. Although the value is a decimal number in this example, in other examples, the values of the first data element 311 and the second data element 312 can be symbols, binary values, functions, codes, or any other type of data.
[0071] Thus, the data processing device 200 obtains a first value for a first data element 311 in the first data element set 310. In some examples, obtaining the value includes receiving the value from at least one other entity. In some examples, obtaining the value includes receiving data that can be used to derive the value. In some examples, obtaining the value includes (e.g., using one or more inputs and / or processing steps) deriving or generating the value.
[0072] Group 300 also includes a second data element set 320. The second data element set 320 is based on a second time sample t2 of the signal. In some examples, the second data element set 320 includes data obtained by processing the second time sample t2 of the signal. The second data element set 320 may include reconstructed data corresponding to the second time sample t2 of the signal. For example, the second data element set 320 may include a set of residual elements. In some examples, the second data element set 320 includes a set of correlation elements indicating the degree of correlation between the sets of residual elements. The second time sample t2 is a later time sample relative to the first time sample t1. In some examples, a later time sample represents a time sample in the input data that follows the first time sample t1. The second time sample t2 may be an immediately following time sample associated with the first time sample t1. In some examples, the second time sample t2 is a later time sample relative to the first time sample t1, rather than an immediately following time sample relative to the first time sample t1.
[0073] The second data element set 320 includes at least a first data element 321 and a second data element 322. The position of the first data element 321 in the second data element set 320 is the same as the position of the first data element 311 in the first data element set 310. The position of the second data element 322 in the second data element set 320 is also the same as the position of the second data element 312 in the first data element set 310.
[0074] In this way, the data processing device 200 obtains the values of the data elements in the second data element set 320.
[0075] The first data element 321 in the second data element set 320 is compared with the first data element 311 in the first data element set 310. A similarity measure is derived between the value of the first data element 311 in the first data element set 310 and the value of the first data element 321 in the second data element set 320. The similarity measure indicates how similar the values of the first data element 311 in the first data element set 310 and the first data element 321 in the second data element set 320 are. The similarity measure can be binary. For example, a similarity measure can indicate whether values are considered sufficiently similar. In other examples, the similarity measure is non-binary. For example, a similarity measure can provide a more detailed indication of the degree of similarity. For example, a similarity measure can be a value that increases in increments of 0.1 within the range of 0.0 to 1.0. A similarity measure of 1.0, for example, can indicate that the compared values are the same.
[0076] Deriving a similarity measure may involve determining whether the difference between two values is below a predetermined threshold. The difference may be the absolute value of the difference between the value of a first data element 311 in a first data element set 310 and the value of a first data element 321 in a second data element set 320. In some examples, the predetermined threshold is zero. In other words, the similarity measure may include determining whether two values are equal. In other examples, the predetermined threshold is non-zero. In other words, the similarity measure may include determining whether two values differ by less than a threshold amount.
[0077] In this way, the data processing device 200 derives a similarity measure between the value of the first data element 311 in the first data element set 310 and the value of the corresponding data element 321 in the second data element set 320.
[0078] In this example, the value of the first data element 311 in the first data element set 310 and the value of the first data element 321 in the second data element set 320 are both 3. Therefore, these values are considered sufficiently similar regardless of whether the predetermined threshold is zero or non-zero. In response to the two values being considered sufficiently similar, the similarity score of the first data element 311 in the first data element set 310 increases from 0 to 1. The similarity score indicates the persistence of the value of the first data element 311 from the first data element set 310 across subsequent data element sets. For example, a time sample of a video with relatively static content may receive a higher persistence score than a time sample of a video with relatively dynamic content.
[0079] A similar comparison can be made between the second data element 312 in the first data element set 310 and the second data element 322 in the second data element set 320, both of which have a value of 2. Therefore, regardless of whether the predetermined threshold is zero or non-zero, the similarity score of the second data element 312 in the first data element set 310 also increases from 0 to 1.
[0080] exist Figure 3 In the example shown, the value of a single data element in the first data element set 310 is compared with the value of a single data element in the second data element set 320. In other examples, the value of a group comprising multiple data elements from the first data element set 310 is compared with the value of a corresponding group comprising multiple data elements from the second data element set 320. A similarity score for the data element groups can be determined.
[0081] exist Figure 3 In the example shown, the position of the first data element 311 in the first data element set 310 is the same as the position of the first data element 321 in the second data element set 320. In other examples, it is permissible for the position of the first data element 311 in the first data element set 310 to be different from the position of the first data element 321 in the second data element set 320. Such other examples can be used where data elements or groups of data elements move between different time samples of the signal but maintain the same or sufficiently similar values.
[0082] Group 300 also includes a third data element set 330. The third data element set 330 is based on a third time sample t3 of the signal. The third time sample t3 is a later time sample relative to both the first time sample t1 and the second time sample t2. The third data element set 330 includes at least a first data element 331 and a second data element 332. In addition, the values of the first and second data elements 331 and 332 in the third data element set 330 are also obtained.
[0083] Following a similar approach, the first data element 331 in the third data element set 330 is compared with one or both of the first data element 311 in the first data element set 310 and the first data element 321 in the second data element set 320. In this example, the value of the first data element 331 in the third data element set 330 is the same as the values of the first data element 311 in the first data element set 310 and the first data element 321 in the second data element set 320. Therefore, regardless of whether the predetermined threshold is zero or non-zero, the similarity score of the first data element 311 in the first data element set 310 increases from 1 to 2. The value of the first data element 331 in the third data element set 330 can be compared with the value of the first data element 311 in the first data element set 310 to determine whether the similarity score of the first data element 311 should be increased. Alternatively or additionally, the value of the first data element 331 in the third data element set 330 can be compared with the value of the first data element 321 in the second data element set 320 to determine whether the similarity score of the first data element 311 should be increased.
[0084] Accordingly, the second data element 332 in the third data element set 330 is compared with one or both of the second data element 312 in the first data element set 310 and the second data element 322 in the second data element set 320. Because the second data element 332 in the third data element set 330 has the same value as the second data element 312 in the first data element set 310 and the second data element 322 in the second data element set 320, the similarity score of the second data element 312 in the first data element set 310 increases from 1 to 2, regardless of whether the predetermined threshold is zero or non-zero.
[0085] Group 300 also includes a fourth data element set 340. The fourth data element set 340 is based on a fourth time sample t4 of the signal. The fourth time sample t4 is a subsequent time sample relative to each of the first time sample t1, the second time sample t2, and the third time sample t3. The fourth data element set 340 includes at least a first data element 341 and a second data element 342. Furthermore, the values of the first and second data elements 341 and 342 in another data element set 340 are obtained.
[0086] In a similar manner to the above, the first data element 331 in the third data element set 340 is compared with one or more of the first data elements 311 in the first data element set 310, 321 in the second data element set 320, and 331 in the third data element set 330. In this example, the value of the first data element 341 in the fourth data element set 340 is 2, which is not equal to the values of the first data elements 311, 321, and 333 in the first data element set 310, the second data element set 320, and the third data element set 330.
[0087] In some examples, a non-zero predetermined difference threshold is used. If the difference threshold is 2, in other words, if values with a difference less than or equal to 2 are considered sufficiently similar, then the similarity score of the first data element 311 in the first data element set 310 increases from 2 to 3. If the difference threshold is 1, in other words, if values with a difference less than or equal to 1 are considered sufficiently similar, then similarly, the similarity score of the first data element 311 in the first data element set 310 increases from 2 to 3.
[0088] In some examples, a zero predetermined difference threshold is used. If the difference threshold is 0, in other words, if only equal values are considered sufficiently similar, then the similarity score of the first data element 311 in the first data element set 310 is maintained, that is, it is not increased and the value of 2 is kept.
[0089] In this example, the value 9 of the second data element 342 in the fourth data element set 340 is not equal to the values of the second data elements 312, 322, and 332 in the first, second, and third data element sets 310, 320, and 330, respectively.
[0090] Because the difference between the value of the second data element 342 in the fourth data element set 340 and the values of the second data elements 312, 322, and 332 in the first, second, and third data element sets 310, 320, and 330 is 7, the similarity score of the second data element 312 in the first data element set 310 will not increase and will remain at the value of 2, regardless of whether the difference threshold is 2, 1, or 0.
[0091] If the similarity score of the first data element 311 increases to a value of 3, then one or more further sets of data elements (not shown) can be analyzed with respect to the first data element 311 in the first set of data elements 310. The similarity score of the first data element 311 can be further increased until the value of the first data element 311 no longer exists in other sets of data elements. However, because the value of the second data element 312 in the first set of data elements 310 does not exist in the fourth set of data elements 340, in this example, one or more other sets of data elements are not analyzed with respect to the second data element 312 in the first set of data elements 310.
[0092] By repeating the above process for other data elements in the first data element set 310, a similarity score can be generated for each data element in the first data element set 310. Each similarity score can indicate how the value of a particular data element will persist in subsequent data element sets.
[0093] A total similarity score for the first data element set 310 can be obtained by combining (e.g., adding or averaging) the similarity scores of each data element in the first data element set 310. The total similarity score indicates how the values of data elements from the first data element set 310 persist across subsequent data element sets. Different total similarity scores can be obtained for different data element sets, and these scores can be compared to determine at least one quantification factor.
[0094] Thus, device 200 determines at least one quantization parameter based on a similarity measure between a first value of a first data element 311 in a derived first data element set 310 and a second value of a corresponding data element 321 in a second data element set 320. The at least one quantization parameter may include a single quantization parameter. The at least one quantization parameter may include multiple quantization parameters. The at least one quantization parameter may indicate one or more quantization levels. The at least one quantization parameter can be used to quantize data based on a first time sample t1 of the signal. The data based on the first time sample t1 of the signal may include the first data element set 310. In some examples, the at least one quantization parameter includes a first quantization parameter and a second quantization parameter. The first quantization parameter can be used to quantize data at a lower quality level in a hierarchical structure with multiple quality levels. The lower quality level data may include correction data, such as correction data 214. The second quantization parameter can be used to quantize data at a higher quality level in the hierarchical structure. The higher quality level data may include data based on residual data (e.g., residual data 210). Determining at least one quantization parameter may include selecting at least one quantization parameter from a predetermined set of possible quantization parameters. In some examples, determining at least one quantization parameter includes generating or deriving at least one quantization parameter.
[0095] Data processing device 200 generates output data using at least one quantization parameter. In some examples, the output data includes at least one quantization parameter or data that can be used to derive at least one quantization parameter. In such examples, the output data can be transmitted to one or more other entities so that the one or more other entities can perform quantization using at least one quantization parameter. In some examples, the output data includes quantized data or data that can be used to derive quantized data. Quantized data can be generated by performing at least one quantization operation using at least one quantization parameter. In other words, data processing device 200 can quantize data based on a first time sample of a signal.
[0096] refer to Figure 4 An example of a method 400 for processing data is shown. Method 400 can be performed using a device such as device 102 or device 200 described above.
[0097] In step 410, index i is set to 1. i indicates the index of a given time sample of the signal within the time sample group of the signal to which a similarity score is to be determined. The time sample group may correspond to a time sample group to which a certain bit rate is to be assigned.
[0098] In step 415, the i-th time sample in the time sample group is analyzed. Analyzing the i-th time sample may include obtaining the values of at least a subset of data elements in the i-th data element set, which is based on the i-th time sample. The i-th data element set includes at least the first data element.
[0099] In step 420, if the i-th time sample is not the last time sample in the time sample group, then the next time sample in the time sample group is analyzed. The next time sample can be the time sample immediately following the i-th time sample, for example, the (i+1)-th time sample. Analyzing the (i+1)-th time sample may include obtaining the values of at least a portion of the data elements in the (i+1)-th data element set, which is based on the (i+1)-th time sample. The (i+1)-th data element set includes at least a second data element.
[0100] In step 425, a similarity measure between the first data element and the second data element is derived. As described above, the similarity measure can be derived based on a predetermined difference threshold. If the difference between the value of the first data element and the value of the second data element is less than the threshold, then the first data element and the second data element are considered sufficiently similar. If the difference between the value of the first data element and the value of the second data element is greater than or equal to the threshold, then the first data element and the second data element are considered insufficiently similar.
[0101] If it is determined in step 425 that the first data element and the second data element are sufficiently similar, then in step 430, the similarity score of the first data element is increased.
[0102] If it is determined in step 425 that the first data element and the second data element are not sufficiently similar, then the similarity score of the first data element is not increased in step 435.
[0103] If the similarity score of the first data element is added in step 430, then in step 440 it is determined whether the expected number of later time samples have been analyzed. In some examples, the expected number of later time samples is less than the number of time samples in the time sample group. In other words, only a portion of the time samples in the time sample group are analyzed. In some examples, the expected number of later time samples includes the difference between the total number of time samples in the time sample group and index i. Therefore, in such examples, the number of later time samples to be analyzed decreases as i increases. In some examples, the expected number of later time samples is a constant. In such examples, the time samples to be analyzed can therefore be viewed as a “sliding window” that moves through the time sample group as i increases. In some examples, the expected number of later samples is the lowest of a constant and the difference between the total number of time samples in the group and i. Therefore, for some values of i, the expected number of later samples can be a constant, and for other values of i, the expected number of later time samples can be the difference between the total number of time samples in the group and i. In this example, time samples that are not part of the time sample group are not analyzed. However, in other examples, time samples that are not part of the time sample group are analyzed. For example, if the expected number of subsequent time samples remains constant, then as i increases, time samples outside the group can be analyzed, such as time samples in the subsequent time sample group.
[0104] If it is determined in step 440 that the expected number of later time samples have not yet been analyzed, then the method returns to step 420, in which the next time sample, such as the (i+2)th time sample, is analyzed, and the above comparison and increment process is repeated.
[0105] If it is determined in step 440 that the desired number of later time samples have been analyzed, or if the similarity score of the first data element does not increase in step 435, then the total similarity score of the i-th time sample is obtained in step 445. The total similarity score of the i-th time sample indicates the degree of dependence of one or more later time samples on the i-th time sample. Obtaining the total similarity score may include repeating steps 415 through 440 for one or more other data elements in the first data element set. In other words, multiple similarity scores can be obtained for multiple data elements in the first data element set. In some examples, generating the total similarity score of the i-th time sample involves combining multiple similarity scores, each of which is related to a different data element in the first data element set.
[0106] In step 450, it is determined whether the i-th time sample is the last time sample in the time sample group.
[0107] If it is determined in step 450 that the i-th time sample is not the last time sample in the time sample group, then in step 455, i is incremented and the method returns to step 415. Steps 415 to 450 are then repeated, such that multiple total similarity scores are generated, each of which is associated with a different time sample in the time sample group.
[0108] If it is determined in step 450 that the i-th time sample is the last time sample in the time sample group, then at least one quantization parameter is determined in step 460. The at least one quantization parameter is determined based on multiple total similarity scores of the time sample group. Thus, at least one quantization parameter is determined based on the similarity metric derived in step 425. This at least one quantization parameter can be used to quantize data based on the first time sample in the time sample group.
[0109] refer to Figure 5 Example graph 500 is shown, which illustrates the total similarity score of a time sample group of the signal. The time sample group corresponds to the reference above. Figure 3 The time sample group 300 is described. The total similarity score is shown on the y-axis 510, and the time sample index is shown on the x-axis 520. Each bar corresponds to a different time sample within the time sample group. The time sample group may conform to a total bit rate target or constraint used for encoding it. References above can be used, for example. Figure 4The method described above obtains a total similarity score for each time sample. In some examples, the total similarity score for a group of time samples is normalized, for example, by dividing each total similarity score by the maximum total similarity score in the group. The total similarity score for a given time sample indicates the degree of persistence of data element values from a given time sample to subsequent time samples. In other words, the total similarity score is a measure of the influence of a given time sample on subsequent time samples.
[0110] In this example, the time sample group comprises four time samples. The first time sample in the time sample group has a total similarity score of 5. The second time sample in the time sample group has a total similarity score of 3. The third time sample in the time sample group has a total similarity score of 1. The fourth time sample in the time sample group has a total similarity score of 0. Therefore, the first time sample in the time sample group has the highest total similarity score. This is because the value of the data element based on the first time sample is repeated in the data elements based on subsequent time samples. Compared to the transmission of different values, the transmission of repeated values in subsequent time samples may require less data, or no data at all. Therefore, less bitrate can be allocated to these "affected" time samples compared to the "influential" time samples. Because the first time sample has the highest total similarity score in the time sample group, it is considered the most influential time sample in the group. Therefore, more bitrate is allocated to the first time sample compared to the other time samples in the group.
[0111] To allocate a higher bit rate to the first time-sample compared to other time-samples, at least one quantization parameter is determined for the first time-sample. This parameter is determined based on multiple total similarity scores. This at least one quantization parameter indicates one or more quantization levels and can be used to quantize data based on the first time-sample. In some examples, the quantization level indicated by the at least one quantization parameter is inversely proportional to the degree of influence of the first time-sample on subsequent time-samples. In other words, the greater the influence of the first time-sample on subsequent time-samples, the lower the quantization level indicated by the at least one quantization parameter. Therefore, a larger amount of information can be used to represent the more influential time-samples compared to those with less influence. This provides an efficient analytical method for allocating bit rates across time-sample groups.
[0112] In some examples, at least one additional quantization parameter is determined. This additional quantization parameter can be used to quantize data from at least one other time sample within a time sample group. The additional quantization parameter can be used to generate further output data. In this example, the first time sample has the highest total similarity score, thus at least one quantization parameter indicating the lowest quantization level is given. The second time sample has the second highest total similarity score, thus at least one quantization parameter indicating the second lowest quantization level is given, and so on.
[0113] refer to Figure 6 The diagram illustrates an example of a data processing device 600. The data processing device 600 may include an encoder device. Figure 6 Some of the projects mentioned are similar to Figure 2 The items shown are used as illustrated. Therefore, the corresponding reference numerals (the number of numerals is increased by 400) are used for similar items. In the data processing device 600, items are displayed at two logical levels. Items at the first higher logical level relate to data of a higher quality level. Items at the second lower logical level relate to data of a lower quality level. Both the higher and lower quality levels are part of a hierarchical structure with multiple quality levels.
[0114] Data processing device 600 obtains high-quality input data 606. Input data 606 includes a first representation of a first time sample t1 of the high-quality signal. Data processing device 600 uses input data 606, for example, by performing a downsampling operation on input data 606, to derive lower-quality downsampled data 608.
[0115] In some examples, data processing device 600 performs additional processing 610 on the downsampled data 608. (See above reference.) Figure 2 The additional processing 610 may involve encoding the downsampled data 608 to produce encoded data, decoding the encoded data to produce decoded data, obtaining correction data by comparing the downsampled data 608 with the decoded data, applying the correction data to the decoded data to obtain correction data, and upsampling the correction data to derive a second representation of the first time sample t1 at a higher quality level.
[0116] In this example, separate from additional processing 610, data processing device 600 uses downsampled data 608 to derive a primary second representation 630 of the first time sample t1 of the signal at a higher quality level. The higher quality primary second representation 630 can be derived by upsampling the downsampled data 608. The higher quality primary second representation 630 is hereinafter referred to as "primary upsampled data" because it is derived without the above reference... Figure 2The above-described encoding, decoding, and correction steps are used to export the upsampled data 218. Exporting the primary upsampled data 630 can be a faster process than exporting the upsampled data 218 because the primary upsampled data 630 is obtained without additional processing 610. Therefore, exporting the primary upsampled data 630 reduces the waiting time for obtaining upsampled data compared to exporting the upsampled data 218.
[0117] Data processing device 600 obtains a first set of residual elements 632 associated with a first time sample t1 of the signal. The first set of residual elements 632 is obtained by comparing primary upsampled data 630 with input data 606. The residual elements in the first set of residual elements 632 are associated with individual signal elements in the input data 606. The first set of residual elements 632 is an example of a first set of data elements based on the first time sample t1 of the signal.
[0118] Data processing device 600 obtains a second set of residual elements 634 associated with a second time sample t2 of the signal. In some examples, the second time sample t2 of the signal immediately follows a first time sample t1 of the signal. The second set of residual elements 634 can be obtained using a method similar to that used to obtain the first set of residual elements 632, i.e., by generating a primary second expression of the second time sample t2 of the signal at a higher quality level. The second set of residual elements 634 is an example of a second set of data elements based on the second time sample t2 of the signal.
[0119] Data processing device 600 uses a first set of residual elements 632 and a second set of residual elements 634 to determine a primary quantization parameter 640. The primary quantization parameter 640 can be determined based on a similarity measure between a first value of a first residual element in the first set of residual elements 632 and a second value of a second residual element in the second set of residual elements 634. The primary quantization parameter 640 can be used to quantize data based on a first time sample t1 of the signal. In some examples, the primary quantization parameter 640 is used as a reference as described above. Figure 2At least one quantization parameter 224, 228 is mentioned. The data processing device 600 can be configured to quantize data based on a first time sample t1 of the signal. In other words, the primary quantization parameter 640 can be used to generate quantization correction data 222 and / or quantization residual data 226 as part of the additional processing 610. In other examples, the primary quantization parameter 640 is used to perform primary quantization on the data based on the first time sample t1 of the signal. Then, the quantization of the data based on the first time sample t1 of the signal is adjusted using at least one quantization parameter 224, 228 obtained by the additional processing 610. Because the primary quantization parameter 640 is determined without performing low-quality encoding and decoding, the initial quantization parameter 640 can be obtained faster than if low-quality encoding and decoding were performed before obtaining the quantization parameter. Therefore, the primary quantization parameter 640 can be used to quantize the correction data 222 and / or the residual data 226 more quickly than if the quantization parameter is determined based on the residual data 226. Although the primary quantization parameter 640 is derived from primary upsampled data that does not account for the effects of lower-quality encoding and decoding, the upsampled data generated as part of additional processing 610 may resemble the primary upsampled data. This is because the upsampled data generated as part of additional processing 610 has been corrected to compensate for errors introduced in the lower-level encoding and decoding processes, or because the lower-level encoding and decoding processes introduce no errors or only very few errors. Thus, the primary quantization parameter 640 can represent a sufficiently good approximation of the quantization parameters subsequently obtained via additional processing 610.
[0120] refer to Figure 7 A schematic block diagram of an exemplary device 700 is shown.
[0121] In one example, device 700 includes an encoder device. In another example, device 700 is capable of communicating with the encoder device.
[0122] Other examples of device 700 include, but are not limited to, mobile computers, personal computer systems, wireless devices, base stations, telephone devices, desktop computers, laptop computers, notebook computers, netbook computers, mainframe computers, handheld computers, workstations, network computers, application servers, storage devices, consumer electronic devices such as cameras, portable video cameras, mobile devices, video game consoles, handheld video game consoles, peripherals such as switches, modems, routers, or any type of computing or electronic device in general.
[0123] In this example, device 700 includes one or more processors 701 configured to process information and / or instructions. The one or more processors 701 may include a central processing unit (CPU). The one or more processors 701 are coupled to a bus 702. The operations performed by the one or more processors 701 may be performed by hardware and / or software. The one or more processors 701 may include multiple co-located processors or multiple separately placed processors.
[0124] In this example, device 700 includes computer-usable volatile memory 703 configured to store information and / or instructions for one or more processors 701. Computer-usable volatile memory 703 is coupled to bus 702. Computer-usable volatile memory 703 may include random access memory (RAM).
[0125] In this example, device 700 includes computer-usable non-volatile memory 704 configured to store information and / or instructions for one or more processors 701. Computer-usable non-volatile memory 704 is coupled to bus 702. Computer-usable non-volatile memory 704 may include read-only memory (ROM).
[0126] In this example, device 700 includes one or more data storage units 705 configured to store information and / or instructions. The one or more data storage units 705 are coupled to bus 702. The one or more data storage units 705 may, for example, include a magnetic disk or optical disk and a disk drive or solid-state drive (SSD).
[0127] In this example, device 700 includes one or more input / output (I / O) devices 706 configured to exchange information with one or more processors 701. The one or more I / O devices 706 are coupled to a bus 702. The one or more I / O devices 706 may include at least one network interface. The at least one network interface enables device 700 to communicate via one or more data communication networks. Examples of data communication networks include, but are not limited to, the Internet and a local area network (LAN). The one or more I / O devices 706 enable a user to provide input to device 700 via one or more input devices (not shown). The one or more input devices may include, for example, a remote control, one or more physical buttons, etc. The one or more I / O devices 706 enable information to be provided to the user via one or more output devices (not shown). The one or more output devices may include, for example, a display screen.
[0128] Various other entities are depicted for device 700. For example, if present, operating system 707, data processing module 708, one or more other modules 709, and data 710 are shown residing in one or a combination of computer-usable volatile memory 703, computer-usable non-volatile memory 704, and one or more data storage units 705. Data processing module 708 may be implemented by computer program code stored in a storage location within computer-usable non-volatile memory 704, computer-readable storage medium, and / or other tangible computer-readable storage medium. Examples of tangible computer-readable storage media include, but are not limited to, optical media (e.g., CD-ROM, DVD-ROM, or Blu-ray disc), flash memory cards, floppy disks, or hard disks, or any other medium capable of storing computer-readable instructions, such as firmware or microcode in at least one ROM or RAM or programmable ROM (PROM) chip, or as an application-specific integrated circuit (ASIC).
[0129] Therefore, device 700 may include a data processing module 708, which may be executed by one or more processors 701. The data processing module 708 may be configured to include instructions for implementing at least a portion of the operations described herein. During operation, one or more processors 701 initiate, run, execute, interpret, or otherwise perform the instructions in the data processing module 708.
[0130] While at least some of the embodiments described herein with reference to the accompanying drawings include computer processing performed in a processing system or processor, the examples described herein also extend to computer programs, such as computer programs on or within a carrier suitable for incorporating the examples into practice. A carrier can be any entity or device capable of carrying a program.
[0131] It should be understood that device 700 may include [devices related to...]. Figure 7 The components shown are more, fewer, and / or different compared to other components.
[0132] The device 700 can be located in a single location or distributed across multiple locations. These locations can be local or remote.
[0133] The techniques described herein can be implemented in software or hardware, or a combination of both. They may include configuring devices to perform and / or support any or all of the techniques described herein.
[0134] The above embodiments should be understood as illustrative examples. Further embodiments are conceived.
[0135] In the example above, the first time sample t1 and the second time sample t2 are time samples of the same signal. In other examples, the first time sample t1 and the second time sample t2 are time samples of different signals. For example, if the signal is a video signal, the first time sample t1 may correspond to the last frame of a first video signal, and the second time sample t2 may correspond to the first frame of a subsequent video signal.
[0136] In the example above, the similarity score is determined by examining the similarity between corresponding data elements in consecutive sets of data elements, starting from the first set and ending in the final set. In other examples, the similarity score can be determined in a different way, such as starting from the final set and working backwards to the first set. For example, the final set and the penultimate set could be analyzed together to determine the similarity score, and so on, until the second set and the first set have been analyzed. If corresponding data elements in adjacent sets are not considered sufficiently similar, the similarity score can be reset and the process restarted once the corresponding data elements in adjacent sets are deemed sufficiently similar.
[0137] In the above examples, the data processing device 200 encodes and decodes the downsampled data 208 to produce corrected data 214 or corrected downsampled data 216. In some examples, the data processing device 200 does not encode or decode the downsampled data 208, nor does it produce corrected data 214. In such examples, the data processing device 200 uses the downsampled data 208 instead of the corrected downsampled data 216.
[0138] In the example above, the set of data elements corresponding to the signal time sample group is analyzed on an element-by-element basis. In other words, the first data element in the first data element set is compared with the corresponding data element in the second data element set, the corresponding data element in the third data element set, and so on, until the value of the first data element is no longer present. Then, the second data element in the first data element set is compared with the corresponding data element in one or more other data element sets. By analyzing the set of data elements on an element-by-element basis, compared to comparing all data elements in the first set with all data elements in the second set, then all data elements in the third set, and so on, less data can be processed, making bit rate allocation more efficient. For example, if it is determined that the value of a given data element is no longer present, the corresponding data element in another data element set is not obtained. Only the portion of the other data element set corresponding to the data element whose value remains is obtained. In other examples, the set of data elements is analyzed on a set-by-set basis rather than on an element-by-element basis. In other words, each data element in the first data element set is compared with the corresponding data element in the second data element set before considering the third data element set.
[0139] In the example above, a similarity measure between corresponding data elements in different sets of data elements is derived by determining how close their values are to each other. In other examples, a similarity measure is derived by calculating the differences between corresponding data elements in different sets of data elements. Therefore, a similarity measure can be inversely proportional to the magnitude of the calculated differences. For example, if the magnitude of the calculated differences is less than a predetermined threshold, the corresponding data elements can be considered sufficiently similar. The calculated differences can be used to derive difference data. Difference data can be derived by calculating the difference between each data element in a first set of data elements and each corresponding data element in a second set of data elements. Thus, a similarity measure can be derived by analyzing the absolute values in the difference data. Therefore, difference data utilizes the temporal correlation between a first time sample of a signal and a later time sample of the signal. Difference data can be used instead of the second set of data elements to represent later time samples of the signal. In other words, later time samples can be represented as temporal variations relative to the first time sample. A stronger temporal correlation between the first time sample and later time samples corresponds to a smaller size of the difference data used to represent later time samples. The smaller size of the difference data corresponds to the higher importance of the first time sample and the higher dependence of later time samples on the first time sample. Therefore, accurately reflecting the values in the first time sample is more important. In some examples, one or more quantization parameters are used to quantify the difference data.
[0140] In the example above, the quantization parameters for the time samples of the signal are determined based on each time sample. In other examples, different quantization parameters can be determined for different portions or regions of a given time sample. For example, the quantization parameters can be determined for each tile that is part of a given time sample.
[0141] Various measures (e.g., apparatus, methods, and computer programs) are provided. A first value of a first data element in a first set of data elements is obtained. The first set of data elements is based on a first time sample of the signal. A second value of a second data element in a second set of data elements is obtained. The second set of data elements is based on a subsequent second time sample of the signal. A similarity measure between the first and second values is derived. At least one quantization parameter is determined based on the derived similarity measure. The at least one quantization parameter can be used to quantize data based on the first time sample of the signal. Output data is generated using the at least one quantization parameter.
[0142] The position of the second data element in the second set of data elements can be the same as the position of the first data element in the first set of data elements.
[0143] At least one quantization parameter can indicate one or more quantization levels, which are inversely proportional to the associated similarity measure.
[0144] The signal may include multiple time samples, including a first time sample and a second time sample. At least one quantization parameter can be determined based on the total bit rate target of the multiple time samples.
[0145] Operations can be performed based on a hierarchical structure with multiple different quality levels. The hierarchical structure can have at least a high quality level and a low quality level. The first set of data elements can be at a high quality level.
[0146] At least one quantization parameter may include a first quantization parameter and a second quantization parameter. The first quantization parameter can be used to quantize data at a lower quality level. The second quantization parameter can be used to quantize data at a higher quality level.
[0147] The first set of data elements can be based on the set of residual elements. The set of residual elements can be used to reconstruct a first representation of the first time-series samples of a higher-quality signal using a second representation of the first time-series samples of the higher-quality signal. The second representation can be based on the representation of the first time-series samples of a lower-quality signal.
[0148] The first set of data elements may include the set of residual elements.
[0149] The first set of data elements may include a set of associated elements, which indicates the degree of association between multiple residual elements in the set of residual elements.
[0150] A lower-quality representation of the first time-time sample of the signal can be derived by downsampling the first representation of the first time-time sample. A second representation of the first time-time sample of the signal can be derived by upsampling the second representation of the first time-time sample of the signal. A first set of data elements can be obtained by comparing the first and second representations of the first time-time sample of the signal.
[0151] A primary representation of the signal's first time-series samples with a lower quality level can be derived by downsampling the first representation. Encoding the primary representation generates encoded data with a lower quality level. Decoding the encoded data generates decoded data with a lower quality level. A lower quality representation can then be derived based on the decoded data.
[0152] Correction data can be generated by comparing the decoded data with a lower-quality primary representation.
[0153] Data based on the first time sample of the signal may include correction data.
[0154] A primary second representation of the first time-series samples of a higher-quality signal can be derived by upsampling the primary representation of the first time-series samples of the lower-quality signal. The primary quantization parameters can then be determined based on this primary second representation.
[0155] Primary quantization parameters can be used as at least one quantization parameter.
[0156] Primary quantization parameters can be used to quantize data based on the first time sample of the signal. At least one quantization parameter can be used to adjust the quantization of the data based on the first time sample of the signal.
[0157] It can quantize data based on the first time sample of the signal.
[0158] The data based on the first time sample of the signal can be the first set of data elements.
[0159] A second time sample of the signal can follow immediately after the first time sample of the signal.
[0160] The similarity score of a first data element can be increased in response to determining that the similarity metric exceeds a predetermined threshold. At least one quantization parameter can be determined based on the similarity score of the first data element.
[0161] In response to determining that the similarity metric does not exceed a predetermined threshold, the similarity score of the first data element can be maintained.
[0162] In response to determining that a similarity metric exceeds a predetermined threshold, a third value for a third data element in a third data element set can be obtained. The third data element set can be based on a third time sample of the signal. The third time sample of the signal can be later than both the first and second time samples of the signal. An additional similarity metric can be derived between the third value and the first and / or second values; in response to determining that an additional similarity metric exceeds a predetermined threshold, the similarity score of the first data element can be increased.
[0163] A total similarity score for the first-time sample can be generated by combining multiple similarity scores. Each of the multiple similarity scores can be correlated with a different data element in the first set of data elements. At least one quantization parameter can be determined based on the total similarity score.
[0164] Multiple total similarity scores can be generated. Each of these total similarity scores can be used for different time samples across multiple time periods. At least one quantization parameter can be determined based on these multiple total similarity scores.
[0165] Determining at least one quantization parameter may involve analyzing only some time samples out of multiple time samples.
[0166] At least one additional quantization parameter can be determined based on a similarity measure between the derived first and second values. This additional quantization parameter can be used to quantize data based on subsequent second time-samples of the signal. Additional output data can be generated using this additional quantization parameter.
[0167] The embodiments of this disclosure may be described in light of the following terms:
[0168] 1. A device configured to:
[0169] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0170] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0171] Derive a similarity measure between the first value and the second value;
[0172] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0173] Output data is generated using the at least one quantization parameter.
[0174] 2. The device according to Clause 1, wherein the position of the second data element in the second set of data elements is the same as the position of the first data element in the first set of data elements.
[0175] 3. The device according to clause 1 or 2, wherein the at least one quantization parameter indicates one or more quantization levels, the quantization level being inversely proportional to the associated similarity metric.
[0176] 4. The device according to any one of clauses 1 to 3, wherein the signal comprises a plurality of time samples, the plurality of time samples including a first time sample and a second time sample, and the device is configured to determine the at least one quantization parameter based on a total bit rate target of the plurality of time samples.
[0177] 5. The device according to any one of clauses 1 to 4, wherein the device is configured to operate according to a hierarchical structure having multiple different quality levels, the hierarchical structure having at least a higher quality level and a lower quality level, and wherein the first set of data elements is at the higher quality level.
[0178] 6. The device according to Clause 5, wherein the at least one quantization parameter includes a first quantization parameter and a second quantization parameter, the first quantization parameter being capable of quantizing the lower quality level data and the second quantization parameter being capable of quantizing the higher quality level data.
[0179] 7. The device according to Clause 6, wherein the device is configured to determine the other of the first quantization parameter and the second quantization parameter based on a predetermined relationship with one of the first quantization parameter and the second quantization parameter.
[0180] 8. The device according to any one of clauses 5 to 7, wherein the first set of data elements is based on a set of residual elements, the set of residual elements being capable of being used to reconstruct a first representation of a first time sample of a higher quality signal using a second representation of a first time sample of the higher quality signal, the second representation being based on a representation of a first time sample of the lower quality signal.
[0181] 9. The apparatus according to Clause 8, wherein the first set of data elements includes the set of residual elements.
[0182] 10. The device according to Clause 8, wherein the first set of data elements includes a set of associated elements, the set of associated elements indicating the degree of association between a plurality of residual elements in the set of residual elements.
[0183] 11. The device according to any one of clauses 8 to 10, wherein the device is configured to:
[0184] The representation of the first time sample of the lower quality level signal is derived by downsampling the first representation of the first time sample of the signal.
[0185] A second representation of the first time-time sample of the signal is derived by upsampling the representation of the first time-time sample of the lower quality level signal; and
[0186] The first set of data elements is obtained by comparing a first representation of a first time sample of the signal with a second representation of a first time sample of the signal.
[0187] 12. The device according to Clause 11, wherein the device is configured to derive a representation of a first time sample of the lower quality level signal by:
[0188] By downsampling the first representation, a primary representation of the first time-series sample of the lower quality level signal is derived;
[0189] The primary representation is encoded to generate the lower-quality encoded data;
[0190] Decoding the encoded data to generate the lower-quality decoded data; and
[0191] Based on the decoded data, a representation at the lower quality level is derived.
[0192] 13. The apparatus according to Clause 12, wherein the apparatus is configured to generate correction data by comparing the decoded data with the primary representation of the lower quality level.
[0193] 14. The device according to clause 12 or 13, wherein the data based on a first time sample of the signal includes the correction data.
[0194] 15. The device according to any one of clauses 12 to 14, wherein the device is configured to:
[0195] A primary second representation of the first time-time samples of the higher-quality signal is derived by upsampling the primary representation of the first time-time samples of the lower-quality signal; and
[0196] The primary quantization parameters are determined based on the primary second representation.
[0197] 16. The device according to Clause 15, wherein the device is configured to use the primary quantization parameter as the at least one quantization parameter.
[0198] 17. The equipment as described in Clause 15,
[0199] The primary quantization parameters can be used to quantize data based on a first time sample of the signal; and
[0200] The at least one quantization parameter can be used to adjust the quantization of data based on a first time sample of the signal.
[0201] 18. The device according to any one of clauses 1 to 17, wherein the device is configured to perform the quantization on data based on a first time sample of the signal.
[0202] 19. The device according to any one of clauses 1 to 18, wherein the data based on the first time sample of the signal is the first set of data elements.
[0203] 20. The device according to any one of clauses 1 to 19, wherein a subsequent second time sample of the signal immediately follows a first time sample of the signal.
[0204] 21. The device according to any one of clauses 1 to 20, wherein the device is configured to:
[0205] In response to determining that the similarity metric exceeds a predetermined threshold, the similarity score of the first data element is increased; and
[0206] The at least one quantization parameter is determined based on the similarity score of the first data element.
[0207] 22. The device according to Clause 21, wherein the device is configured to maintain the similarity score of the first data element in response to determining that the similarity metric does not exceed the predetermined threshold.
[0208] 23. The device according to clause 21 or 22, wherein the device is configured to:
[0209] In response to determining that the similarity metric exceeds the predetermined threshold, a third value of a third data element in a third data element set is obtained, the third data element set being based on a third time sample of the signal, the third time sample of the signal being later than both the first time sample and the second time sample of the signal.
[0210] Derive an additional similarity measure between the third value and the first and / or second value; and
[0211] In response to determining that the additional similarity metric exceeds the predetermined threshold, the similarity score of the first data element is increased.
[0212] 24. The device according to any one of clauses 1 to 23, wherein the device is configured to:
[0213] A total similarity score for the first time-series sample is generated by combining multiple similarity scores, each of which is associated with a different data element in the first set of data elements; and
[0214] The at least one quantization parameter is determined based on the total similarity score.
[0215] 25. The device according to clause 24, wherein the signal comprises a plurality of time samples, the plurality of time samples including a first time sample and a second time sample, the device being configured to:
[0216] Generate multiple total similarity scores, each of which is used for different time samples among the multiple time samples; and
[0217] The at least one quantization parameter is determined based on the multiple total similarity scores.
[0218] 26. The device according to any one of clauses 1 to 25, wherein the signal comprises a plurality of time samples, the plurality of time samples including the first time sample and the second time sample, and wherein determining the at least one quantization parameter involves analyzing only some of the plurality of time samples.
[0219] 27. The device according to any one of clauses 1 to 26, wherein the device is configured to:
[0220] Based on a similarity measure between the derived first and second values, at least one additional quantization parameter is determined, which can be used to quantize data based on subsequent second time samples of the signal; and
[0221] Additional output data is generated using the at least one additional quantization parameter.
[0222] 28. A method comprising:
[0223] Obtain the first value of the first data element in the first data element set, the first data element set being based on the first time sample of the signal;
[0224] Obtain the second value of the second data element in the second data element set, the second data element set being based on a subsequent second time sample of the signal;
[0225] Derive a similarity measure between the first value and the second value;
[0226] Based on the derived similarity metric, at least one quantization parameter is determined, which can be used to quantize data based on a first time-series sample of the signal; and
[0227] Output data is generated using the at least one quantization parameter.
[0228] 29. The method according to Clause 28, wherein the position of the second data element in the second set of data elements is the same as the position of the first data element in the first set of data elements.
[0229] 30. The method according to clause 28 or 29, wherein the at least one quantization parameter indicates one or more quantization levels, the quantization levels being inversely proportional to the associated similarity measure.
[0230] 31. The method according to any one of clauses 28 to 30, wherein the signal comprises a plurality of time samples, the plurality of time samples including a first time sample and a second time sample, the method comprising determining the at least one quantization parameter based on a total bit rate target of the plurality of time samples.
[0231] 32. The method according to any one of clauses 28 to 31, wherein the method is performed according to a hierarchical structure having multiple different quality levels, the hierarchical structure having at least a higher quality level and a lower quality level, and wherein the first set of data elements is at the higher quality level.
[0232] 33. The method according to Clause 32, wherein the at least one quantization parameter includes a first quantization parameter and a second quantization parameter, the first quantization parameter being capable of quantizing data of a higher quality level and the second quantization parameter being capable of quantizing data of a lower quality level.
[0233] 34. The method according to Clause 33, the method comprising determining the other of the first quantization parameter and the second quantization parameter based on a predetermined relationship with one of the first quantization parameter and the second quantization parameter.
[0234] 35. The method according to any one of clauses 32 to 34, wherein the first set of data elements is based on a set of residual elements, the set of residual elements being capable of being used to reconstruct a first representation of a first time sample of a higher quality signal using a second representation of a first time sample of the higher quality signal, the second representation being based on a representation of a first time sample of the lower quality signal.
[0235] 36. The method according to Clause 35, wherein the first set of data elements includes the set of residual elements.
[0236] 37. The method according to Clause 35, wherein the first set of data elements includes a set of associated elements, the set of associated elements indicating the degree of association between a plurality of residual elements in the set of residual elements.
[0237] 38. The method according to any one of clauses 35 to 37, said method comprising:
[0238] The representation of the first time sample of the lower quality level signal is derived by downsampling the first representation of the first time sample of the signal.
[0239] A second representation of the first time-time sample of the signal is derived by upsampling the representation of the first time-time sample of the lower quality level signal; and
[0240] The first set of data elements is obtained by comparing a first representation of a first time sample of the signal with a second representation of a first time sample of the signal.
[0241] 39. The method according to Clause 38, wherein the method includes deriving a representation of a first time-varying sample of the lower quality level signal by:
[0242] By downsampling the first representation, a primary representation of the first time-series sample of the lower quality level signal is derived;
[0243] The primary representation is encoded to generate encoded data of lower quality.
[0244] The encoded data is decoded to generate decoded data of lower quality; and
[0245] The lower quality level representation is derived based on the decoded data.
[0246] 40. The method according to Clause 39, wherein the method includes generating correction data by comparing the decoded data with the primary representation of the lower quality level.
[0247] 41. The method according to clause 39 or 40, wherein the data based on the first time sample of the signal includes the correction data.
[0248] 42. The method according to any one of clauses 39 to 41, wherein the method comprises:
[0249] A primary second representation of the first time-time samples of the higher-quality signal is derived by upsampling the primary representation of the first time-time samples of the lower-quality signal; and
[0250] The primary quantization parameters are determined based on the primary second representation.
[0251] 43. The method according to Clause 42, wherein the method includes using the primary quantization parameter as the at least one quantization parameter.
[0252] 44. According to the method of Clause 42,
[0253] The primary quantization parameters can be used to quantize data based on a first time sample of the signal; and
[0254] The at least one quantization parameter can be used to adjust the quantization of data based on a first time sample of the signal.
[0255] 45. The method according to any one of clauses 28 to 44, wherein the method includes performing the quantization on data based on a first time sample of the signal.
[0256] 46. The method according to any one of clauses 28 to 45, wherein the data based on the first time sample of the signal is the first set of data elements.
[0257] 47. The method according to any one of clauses 28 to 46, wherein a subsequent second time sample of the signal immediately follows a first time sample of the signal.
[0258] 48. The method according to any one of clauses 28 to 47, wherein the method comprises:
[0259] In response to determining that the similarity metric exceeds a predetermined threshold, the similarity score of the first data element is increased; and
[0260] The at least one quantization parameter is determined based on the similarity score of the first data element.
[0261] 49. The method according to Clause 48, wherein the method includes: maintaining the similarity score of the first data element in response to determining that the similarity metric does not exceed the predetermined threshold.
[0262] 50. The method according to clause 48 or 49, wherein the method comprises:
[0263] In response to determining that the similarity metric exceeds the predetermined threshold, a third value of a third data element in a third data element set is obtained, the third data element set being based on a third time sample of the signal, the third time sample of the signal being later than both the first time sample and the second time sample of the signal.
[0264] Derive an additional similarity measure between the third value and the first and / or second value; and
[0265] In response to determining that the additional similarity metric exceeds the predetermined threshold, the similarity score of the first data element is increased.
[0266] 51. The method according to any one of clauses 28 to 50, said method comprising:
[0267] A total similarity score for the first time-series sample is generated by combining multiple similarity scores, each of which is related to a different data element in the first set of data elements; and
[0268] The at least one quantization parameter is determined based on the total similarity score.
[0269] 52. The method according to clause 51, wherein the signal comprises a plurality of time samples, the plurality of time samples including a first time sample and a second time sample, the method comprising:
[0270] Generate multiple total similarity scores, each of which is used for different time samples among the multiple time samples; and
[0271] The at least one quantization parameter is determined based on the multiple total similarity scores.
[0272] 53. The method according to any one of clauses 28 to 52, wherein the signal comprises a plurality of time samples, the plurality of time samples including the first time sample and the second time sample, and wherein determining the at least one quantization parameter involves analyzing only some of the plurality of time samples.
[0273] 54. The method according to any one of clauses 28 to 53, said method comprising:
[0274] Based on a similarity measure between the derived first and second values, at least one additional quantization parameter is determined, which can be used to quantize data based on subsequent second time samples of the signal; and
[0275] Additional output data is generated using the at least one additional quantization parameter.
[0276] 55. A computer program comprising instructions that, when executed, cause a device to perform the method according to any one of clauses 28 to 54.
[0277] 56. A computer-readable medium comprising a computer program as described in Clause 55.
[0278] It should be understood that any feature described in any embodiment may be used alone or in combination with other described features, and may also be used in combination with one or more features of any other embodiment or any combination of any other embodiment. Furthermore, equivalents and modifications not described above may be employed without departing from the scope of the invention as defined by the appended claims.
Claims
1. A data processing device, configured to: Obtain a first value of a first data element in a first data element set, the first data element set including data obtained by processing a first time sample of the signal; Obtain a second value for a second data element in a second set of data elements, the second set of data elements comprising data obtained by processing a subsequent second time sample of the signal; Derive a similarity measure between the first value and the second value; In response to determining that the similarity metric exceeds a predetermined threshold, the similarity score of the first data element is increased; as well as Based on the similarity score of the first data element, at least one quantization parameter is determined, which can be used to quantize data based on the first time sample of the signal; as well as Output data is generated using the at least one quantization parameter; The data processing device is configured to operate according to a hierarchical structure having multiple different quality levels, the hierarchical structure having at least a higher quality level and a lower quality level, and wherein the first set of data elements is at the higher quality level; The first data element and the second data element are data obtained by processing the first time sample or the second time sample of the signal.
2. The data processing device according to claim 1, wherein, The position of the second data element in the second data element set is the same as the position of the first data element in the first data element set.
3. The data processing apparatus according to claim 1 or 2, wherein, The at least one quantization parameter indicates one or more quantization levels, which are inversely proportional to the associated similarity measure.
4. The data processing apparatus according to claim 1 or 2, wherein, The signal includes multiple time samples, including a first time sample and a second time sample, and the data processing device is configured to determine the at least one quantization parameter based on the total bit rate target of the multiple time samples.
5. The data processing device according to claim 1, wherein, The at least one quantization parameter includes a first quantization parameter and a second quantization parameter. The first quantization parameter can be used to quantize the data at the lower quality level, and the second quantization parameter can be used to quantize the data at the higher quality level.
6. The data processing apparatus according to claim 5, wherein, The data processing device is configured to determine the other of the first quantization parameter and the second quantization parameter based on a predetermined relationship with one of the first quantization parameter and the second quantization parameter.
7. The data processing apparatus according to claim 1, wherein, The first set of data elements is based on a set of residual elements, which can be used to reconstruct a first representation of the first time-time sample of the higher quality signal using a second representation of the first time-time sample of the higher quality signal, the second representation being based on the representation of the first time-time sample of the lower quality signal.
8. The data processing apparatus according to claim 7, wherein, The first set of data elements includes the set of residual elements.
9. The data processing apparatus according to claim 7, wherein, The first set of data elements includes a set of associated elements, which indicates the degree of association between multiple residual elements in the set of residual elements.
10. The data processing apparatus according to claim 7, wherein, The data processing device is configured to: The representation of the first time sample of the lower quality level signal is derived by downsampling the first representation of the first time sample of the signal. A second representation of the first time-time sample of the signal is derived by upsampling the representation of the first time-time sample of the lower quality level signal. as well as The first set of data elements is obtained by comparing a first representation of a first time sample of the signal with a second representation of a first time sample of the signal.
11. The data processing apparatus according to claim 10, wherein, The data processing device is configured to derive a representation of a first-time sample of the lower-quality signal in the following manner: By downsampling the first representation, a primary representation of the first time-series sample of the lower quality level signal is derived; The primary representation is encoded to generate the lower-quality encoded data; The encoded data is decoded to generate the lower quality decoded data; as well as Based on the decoded data, a representation at the lower quality level is derived.
12. The data processing apparatus according to claim 11, wherein, The data processing device is configured to generate correction data by comparing the decoded data with the primary representation of the lower quality level.
13. The data processing apparatus according to claim 12, wherein, The data based on the first time sample of the signal includes the correction data.
14. The data processing apparatus of claim 11, wherein the data processing apparatus is configured to: A primary second representation of the first time-time samples of the higher-quality signal is derived by upsampling the primary representation of the first time-time samples of the lower-quality signal; and The primary quantization parameters are determined based on the primary second representation.
15. The data processing apparatus of claim 14, wherein the data processing apparatus is configured to use the primary quantization parameter as the at least one quantization parameter.
16. The data processing apparatus according to claim 14, in, The primary quantization parameters can be used to quantize data based on a first time sample of the signal; and The at least one quantization parameter can be used to adjust the quantization of data based on a first time sample of the signal.
17. The data processing apparatus of claim 1 or 2, wherein the data processing apparatus is configured to perform the quantization on data based on a first time sample of the signal.
18. The data processing apparatus according to claim 1 or 2, wherein, The data based on the first time sample of the signal is the first set of data elements.
19. The data processing apparatus according to claim 1 or 2, wherein, The subsequent second time sample of the signal immediately follows the first time sample of the signal.
20. The data processing apparatus of claim 1 or 2, wherein the data processing apparatus is configured to maintain the similarity score of the first data element in response to determining that the similarity metric does not exceed the predetermined threshold.
21. The data processing apparatus according to claim 1 or 2, wherein, The data processing device is configured to: In response to determining that the similarity metric exceeds the predetermined threshold, a third value of a third data element in a third data element set is obtained, the third data element set being based on a third time sample of the signal, the third time sample of the signal being later than both the first time sample and the second time sample of the signal. Derive an additional similarity measure between the third value and the first and / or second value; as well as In response to determining that the additional similarity metric exceeds the predetermined threshold, the similarity score of the first data element is increased.
22. The data processing apparatus according to claim 1 or 2, wherein the data processing apparatus is configured to: A total similarity score for the first time-series sample is generated by combining multiple similarity scores, each of which is associated with a different data element in the first set of data elements; and The at least one quantization parameter is determined based on the total similarity score.
23. The data processing apparatus according to claim 22, wherein, The signal includes multiple time samples, the multiple time samples including a first time sample and a second time sample, and the data processing device is configured to: Multiple total similarity scores are generated, and each of the multiple total similarity scores is used for different time samples in the multiple time samples; as well as The at least one quantization parameter is determined based on the multiple total similarity scores.
24. The data processing apparatus according to claim 1 or 2, wherein, The signal includes multiple time samples, the multiple time samples including the first time sample and the second time sample, and wherein determining the at least one quantization parameter involves analyzing only some of the multiple time samples.
25. The data processing apparatus according to claim 1 or 2, wherein, The data processing device is configured to: Based on the similarity measure between the derived first value and the second value, at least one additional quantization parameter is determined, which can be used to quantize data based on subsequent second time samples of the signal. as well as Additional output data is generated using the at least one additional quantization parameter.
26. A data processing method, comprising: Obtain a first value of a first data element in a first data element set, the first data element set including data obtained by processing a first time sample of the signal; Obtain a second value for a second data element in a second set of data elements, the second set of data elements comprising data obtained by processing a subsequent second time sample of the signal; Derive a similarity measure between the first value and the second value; In response to determining that the similarity metric exceeds a predetermined threshold, the similarity score of the first data element is increased; as well as Based on the similarity score of the first data element, at least one quantization parameter is determined, which can be used to quantize data based on the first time sample of the signal; as well as Output data is generated using the at least one quantization parameter; The method is based on a hierarchical structure with multiple different quality levels, the hierarchical structure having at least a higher quality level and a lower quality level, and wherein the first set of data elements is at the higher quality level; The first data element and the second data element are data obtained by processing the first time sample or the second time sample of the signal.
27. The data processing method according to claim 26, wherein, The position of the second data element in the second data element set is the same as the position of the first data element in the first data element set.
28. The data processing method according to claim 26 or 27, wherein, The at least one quantization parameter indicates one or more quantization levels, which are inversely proportional to the associated similarity metric.
29. The data processing method according to claim 26 or 27, wherein, The signal includes multiple time samples, the multiple time samples include a first time sample and a second time sample, and the data processing method includes determining the at least one quantization parameter based on the total bit rate target of the multiple time samples.
30. The data processing method according to claim 26 or 27, wherein, The at least one quantization parameter includes a first quantization parameter and a second quantization parameter. The first quantization parameter can be used to quantize data with a higher quality level, and the second quantization parameter can be used to quantize data with a lower quality level.
31. The data processing method of claim 30, further comprising determining the other of the first quantization parameter and the second quantization parameter based on a predetermined relationship with one of the first quantization parameter and the second quantization parameter.
32. The data processing method according to claim 26 or 27, wherein, The first set of data elements is based on a set of residual elements, which can be used to reconstruct a first representation of the first time-time sample of the higher quality signal using a second representation of the first time-time sample of the higher quality signal, the second representation being based on the representation of the first time-time sample of the lower quality signal.
33. The data processing method according to claim 32, wherein, The first set of data elements includes the set of residual elements.
34. The data processing method according to claim 32, wherein, The first set of data elements includes a set of associated elements, which indicates the degree of association between multiple residual elements in the set of residual elements.
35. The data processing method according to claim 32, comprising: The representation of the first time sample of the lower quality level signal is derived by downsampling the first representation of the first time sample of the signal. A second representation of the first time-time sample of the signal is derived by upsampling the representation of the first time-time sample of the lower quality level signal. as well as The first set of data elements is obtained by comparing a first representation of a first time sample of the signal with a second representation of a first time sample of the signal.
36. The data processing method of claim 35, comprising deriving a representation of a first time sample of the lower quality level signal by: By downsampling the first representation, a primary representation of the first time-series sample of the lower quality level signal is derived; The primary representation is encoded to generate encoded data of lower quality. The encoded data is decoded to generate decoded data of lower quality. as well as The lower quality level representation is derived based on the decoded data.
37. The data processing method of claim 36, further comprising generating correction data by comparing the decoded data with the primary representation of the lower quality level.
38. The data processing method according to claim 37, wherein, The data based on the first time sample of the signal includes the correction data.
39. The data processing method according to claim 36, comprising: By upsampling the primary representation of the first time-time sample of the lower quality level signal, a primary second representation of the first time-time sample of the higher quality level signal is derived. as well as The primary quantization parameters are determined based on the primary second representation.
40. The data processing method according to claim 39, wherein, The method includes using the primary quantization parameter as the at least one quantization parameter.
41. The data processing method according to claim 40, in, The primary quantization parameters can be used to quantize data based on the first time sample of the signal; as well as The at least one quantization parameter can be used to adjust the quantization of data based on a first time sample of the signal.
42. The data processing method according to claim 26 or 27, comprising performing the quantization on data based on a first time sample of the signal.
43. The data processing method according to claim 26 or 27, wherein, The data based on the first time sample of the signal is the first set of data elements.
44. The data processing method according to claim 26 or 27, wherein, The subsequent second time sample of the signal immediately follows the first time sample of the signal.
45. The data processing method according to claim 26 or 27, comprising: In response to determining that the similarity metric does not exceed the predetermined threshold, the similarity score of the first data element is maintained.
46. The data processing method according to claim 26 or 27, wherein, The method includes: In response to determining that the similarity metric exceeds the predetermined threshold, a third value of a third data element in a third data element set is obtained, the third data element set being based on a third time sample of the signal, the third time sample of the signal being later than both the first time sample and the second time sample of the signal. Derive an additional similarity measure between the third value and the first and / or second value; and In response to determining that the additional similarity metric exceeds the predetermined threshold, the similarity score of the first data element is increased.
47. The data processing method according to claim 26 or 27, comprising: A total similarity score for the first time sample is generated by combining multiple similarity scores, each of which is related to a different data element in the first set of data elements. as well as The at least one quantization parameter is determined based on the total similarity score.
48. The data processing method according to claim 47, wherein, The signal includes multiple time samples, the multiple time samples including the first time sample and the second time sample, and the data processing method includes: Generate multiple total similarity scores, each of which is used for different time samples among the multiple time samples; and The at least one quantization parameter is determined based on the multiple total similarity scores.
49. The data processing method according to claim 26 or 27, wherein, The signal includes multiple time samples, the multiple time samples including the first time sample and the second time sample, and wherein determining the at least one quantization parameter involves analyzing only some of the multiple time samples.
50. The data processing method according to claim 26 or 27, comprising: Based on the similarity measure between the derived first value and the second value, at least one additional quantization parameter is determined, which can be used to quantize data based on subsequent second time samples of the signal. as well as Additional output data is generated using the at least one additional quantization parameter.
51. A computer-readable medium comprising a computer program, the computer program including instructions that, when executed, cause a device to perform the method according to claim 26 or 27.
Citation Information
Patent Citations
DPCM image compression with plural quantization table levels
US6295379B1