Coding and decoding performance index processing method and device, medium and electronic equipment
The method and device address the inaccuracies in codec performance comparison by establishing a monotonic nonlinear relationship, enhancing measurement accuracy and flexibility.
Patent Information
- Application Number
- CN202310747790.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-21
- Publication Date
- 2024-12-24
- Estimated Expiration
- 2043-06-21
AI Technical Summary
Existing methods for comparing codec performance using interpolation between data points lead to large deviations and randomness due to non-monotonicity, making it difficult to accurately measure and compare codec performance across different codecs.
A method and device that utilize a monotonic nonlinear relationship between codec performance indicators and bit rates, determined through a monotonic objective function with multiple parameters, allowing for accurate performance measurement and comparison within any interval.
Improves the accuracy and flexibility of codec performance indicator measurement by enabling monotonic nonlinear relationship determination, supporting performance comparison across any interval.
Smart Images

Figure CN119182912A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer and communication technology, and in particular to a method, device, medium and electronic device for processing encoding and decoding performance indicators. Background Art
[0002] In the process of multimedia codec research and development, it is usually necessary to compare the performance of different codecs. For example, BD-PSNR (Bjontegaard Delta PSNR) is used to measure the average PSNR (Peak Signal to Noise Ratio) gain under the same bit rate conditions, and BD-Rate (Bjontegaard Delta Rate) is used to measure the average bit rate gain under the same quality. In the related art, when multiple data points are obtained to represent the relationship between PSNR and Rate, the relationship curve between PSNR and Rate is usually obtained by interpolating between these multiple data points. However, this method will produce a large deviation for data points that do not have monotonicity, making it difficult to accurately measure the performance of the codec, and interpolation can only compare the overlapping parts of the relationship curves corresponding to different codecs, resulting in a large randomness in the comparison results. Summary of the invention
[0003] The embodiments of the present application provide a method, device, medium and electronic device for processing codec performance indicators, which can measure the performance of the codec through a monotonic nonlinear relationship, and can also support performance comparison within any interval through the obtained nonlinear relationship, thereby improving the accuracy and flexibility of the codec performance indicator measurement.
[0004] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by the practice of the present application.
[0005] According to one aspect of an embodiment of the present application, a method for processing a codec performance indicator is provided, comprising: obtaining a plurality of relationship data between a specified codec performance indicator and a bit rate, the relationship data comprising a bit rate value and a numerical value of the specified codec performance indicator corresponding to the bit rate value; obtaining a monotonic objective function set for the specified codec performance indicator and the bit rate, the objective function comprising a plurality of parameters for representing a shape of a function curve; solving the values of the plurality of parameters according to the plurality of relationship data and the objective function; and determining the nonlinear relationship between the specified codec performance indicator and the bit rate according to the objective function and the values of the plurality of parameters.
[0006] According to one aspect of an embodiment of the present application, a device for processing a codec performance indicator is provided, comprising: an acquisition unit, configured to acquire multiple relationship data between a specified codec performance indicator and a bit rate, the relationship data comprising a bit rate value and a numerical value of the specified codec performance indicator corresponding to the bit rate value, and to acquire a monotonic objective function set for the specified codec performance indicator and the bit rate, the objective function comprising multiple parameters for representing a shape of a function curve; a processing unit, configured to solve the values of the multiple parameters according to the multiple relationship data and the objective function; and a determination unit, configured to determine the nonlinear relationship between the specified codec performance indicator and the bit rate according to the objective function and the values of the multiple parameters.
[0007] In some embodiments of the present application, based on the aforementioned scheme, the acquisition unit is configured to: use multiple encoding parameters to encode the reference multimedia data respectively to obtain the encoding data corresponding to each encoding parameter; generate the relationship data corresponding to each encoding data according to the bit rate statistics of each encoding data and the value of the specified encoding and decoding performance indicator; obtain the multiple relationship data according to the relationship data corresponding to each encoding data.
[0008] In some embodiments of the present application, based on the aforementioned scheme, the processing unit is configured to: initialize the values of the multiple parameters according to the multiple relationship data to obtain the initial values of the multiple parameters; and fit the objective function based on the multiple relationship data according to the initial values of the multiple parameters to solve and obtain the values of the multiple parameters.
[0009] In some embodiments of the present application, based on the aforementioned scheme, the multiple parameters include at least one of the following parameters: a first parameter for representing the maximum output value of the objective function, a second parameter for representing the minimum output value of the objective function, a third parameter for representing the translation amount of the function curve corresponding to the objective function on the bit rate coordinate axis, and a fourth parameter for representing the degree of change of the function curve within the linear interval.
[0010] In some embodiments of the present application, based on the aforementioned scheme, the maximum value of the specified encoding and decoding performance indicator in the multiple relationship data is used as the initial value of the first parameter; the minimum value of the specified encoding and decoding performance indicator in the multiple relationship data is used as the initial value of the second parameter; the average value of the bit rate values contained in the multiple relationship data is used as the initial value of the third parameter; and the standard deviation of the bit rate values contained in the multiple relationship data is used as the initial value of the fourth parameter.
[0011] In some embodiments of the present application, based on the aforementioned scheme, the processing unit fits the objective function based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters, including any one of the following methods: fitting the objective function by Newton's method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by quasi-Newton's method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by evolutionary method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by gradient descent method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters.
[0012] In some embodiments of the present application, based on the aforementioned scheme, the multiple relationship data between the specified codec performance indicator and the bit rate include: multiple relationship data corresponding to the benchmark codec, and multiple relationship data corresponding to the test codec; the determination unit is configured to: determine the first nonlinear relationship between the specified codec performance indicator corresponding to the benchmark codec and the bit rate according to the objective function and the values of multiple parameters obtained by solving the multiple relationship data corresponding to the benchmark codec; determine the second nonlinear relationship between the specified codec performance indicator corresponding to the test codec and the bit rate according to the objective function and the values of multiple parameters obtained by solving the multiple relationship data corresponding to the test codec.
[0013] In some embodiments of the present application, based on the aforementioned scheme, the device for processing the codec performance indicator also includes: a calculation unit, configured to calculate the average gain of the specified codec performance indicator of the test codec relative to the benchmark codec under the same bit rate conditions based on the first non-linear relationship and the second non-linear relationship, and a set bit rate range.
[0014] In some embodiments of the present application, based on the aforementioned scheme, the calculation unit is configured to: calculate a first integral area of the function curve corresponding to the first nonlinear relationship within the set bit rate range according to the first nonlinear relationship and the set bit rate range; calculate a second integral area of the function curve corresponding to the second nonlinear relationship within the set bit rate range according to the second nonlinear relationship and the set bit rate range; calculate the area difference between the second integral area and the first integral area, and calculate the average gain of the specified codec performance indicator of the test codec relative to the benchmark codec under the same bit rate conditions based on the area difference and the bit rate range.
[0015] In some embodiments of the present application, based on the aforementioned scheme, the device for processing the codec performance indicator also includes: a calculation unit, configured to calculate the average bit rate gain of the test codec relative to the benchmark codec under the same specified codec performance indicator conditions based on the first non-linear relationship and the second non-linear relationship, and the set specified codec performance indicator interval.
[0016] In some embodiments of the present application, based on the aforementioned scheme, the calculation unit is configured to: calculate a third integral area of the function curve corresponding to the first nonlinear relationship within the set specified codec performance index interval according to the first nonlinear relationship and the set specified codec performance index interval; calculate a fourth integral area of the function curve corresponding to the second nonlinear relationship within the set specified codec performance index interval according to the second nonlinear relationship and the set specified codec performance index interval; calculate an area difference between the fourth integral area and the third integral area, and calculate an average rate gain of the test codec relative to the benchmark codec under the same specified codec performance index conditions according to the area difference and the specified codec performance index interval.
[0017] In some embodiments of the present application, based on the aforementioned scheme, the specified encoding and decoding performance indicators include at least one of the following: peak signal-to-noise ratio, average precision mean, multi-target tracking accuracy, encoding time, and decoding time.
[0018] According to one aspect of an embodiment of the present application, a computer-readable medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the method for processing the encoding and decoding performance indicator as described in the above embodiment is implemented.
[0019] According to one aspect of an embodiment of the present application, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more computer programs, wherein when the one or more computer programs are executed by the one or more processors, the electronic device implements the method for processing encoding and decoding performance indicators as described in the above embodiments.
[0020] According to one aspect of the embodiments of the present application, a computer program product is provided, the computer program product comprising a computer program, the computer program being stored in a computer-readable storage medium. A processor of an electronic device reads and executes the computer program from the computer-readable storage medium, so that the electronic device executes the processing method of the encoding and decoding performance indicator provided in the above-mentioned various optional embodiments.
[0021] In the technical solutions provided in some embodiments of the present application, multiple relationship data between specified codec performance indicators and bit rates, as well as a monotonic objective function set for the specified codec performance indicators and bit rates are obtained, and then the values of multiple parameters included in the objective function are solved according to the multiple relationship data and the objective function, and the nonlinear relationship between the specified codec performance indicators and the bit rate is determined according to the objective function and the values of the multiple parameters obtained, so that regardless of whether the relationship data between the specified codec performance indicators and the bit rate is monotonic, a monotonic nonlinear relationship can be solved, and then the performance of the codec can be measured by the monotonic nonlinear relationship, and the obtained nonlinear relationship can also be used to support performance comparison within any interval, thereby improving the accuracy and flexibility of the codec performance indicator measurement.
[0022] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 A schematic diagram showing an exemplary system architecture to which the technical solution of the embodiments of the present application can be applied;
[0024] Figure 2 A schematic diagram showing the placement of a video encoding device and a video decoding device in a streaming transmission system;
[0025] Figure 3 A schematic diagram of a curve showing the relationship between a bit rate and a performance index according to an embodiment is shown;
[0026] Figure 4 A schematic diagram showing the relationship between bit rate and performance indicators according to an embodiment of the present invention is shown;
[0027] Figure 5A flowchart of a method for processing a coding performance indicator according to an embodiment of the present application is shown;
[0028] Figure 6 A flowchart of a method for evaluating a video codec according to an embodiment of the present application is shown;
[0029] Figure 7 A schematic diagram of a curve of an objective function according to an embodiment of the present application is shown;
[0030] Figure 8 A flow chart of solving parameters in an objective function according to an embodiment of the present application is shown;
[0031] Fig. 9 A schematic diagram of a curve showing a relationship between a bit rate and a performance index according to an embodiment of the present application is shown;
[0032] Fig.10 A schematic diagram of a curve showing a relationship between a bit rate and a performance index according to an embodiment of the present application is shown;
[0033] Fig.11 A block diagram of a device for processing encoding and decoding performance indicators according to an embodiment of the present application is shown;
[0034] Fig.12 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown. DETAILED DESCRIPTION
[0035] The exemplary embodiments are now described in a more comprehensive manner with reference to the accompanying drawings. However, the exemplary embodiments can be implemented in various forms and should not be understood as being limited to these examples; on the contrary, the purpose of providing these embodiments is to make this application more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art.
[0036] In addition, the features, structures or characteristics described in the present application may be combined in one or more embodiments in any suitable manner. In the following description, there are many specific details so that the embodiments of the present application can be fully understood. However, those skilled in the art will appreciate that when implementing the technical scheme of the present application, all the detailed features in the embodiments may not be needed, one or more specific details may be omitted, or other methods, elements, devices, steps, etc. may be adopted.
[0037] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0038] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.
[0039] It should be noted that the "multiple" mentioned in this article refers to two or more. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.
[0040] The technical solution of the embodiment of the present application can be applied to video encoding and decoding scenarios, such as in Figure 1 In the exemplary system architecture shown, a plurality of terminal devices are included, and the terminal devices can communicate with each other through, for example, a network 150. For example, the system architecture 100 may include a first terminal device 110 and a second terminal device 120 interconnected through the network 150. Figure 1 In the embodiment of the present invention, the first terminal device 110 and the second terminal device 120 perform unidirectional data transmission.
[0041] For example, the first terminal device 110 may encode video data (e.g., a video picture stream captured by the terminal device 110) for transmission to the second terminal device 120 via the network 150. The encoded video data is transmitted in the form of one or more encoded video code streams. The second terminal device 120 may receive the encoded video data from the network 150, decode the encoded video data to restore the video data, and display the video picture based on the restored video data.
[0042] In one embodiment of the present application, the system architecture 100 may include a third terminal device 130 and a fourth terminal device 140 that perform bidirectional transmission of encoded video data, which may occur during a video conference, for example. For bidirectional data transmission, each of the third terminal device 130 and the fourth terminal device 140 may encode video data (e.g., a video picture stream collected by the terminal device) to transmit to the other terminal device of the third terminal device 130 and the fourth terminal device 140 through the network 150. Each of the third terminal device 130 and the fourth terminal device 140 may also receive the encoded video data transmitted by the other terminal device of the third terminal device 130 and the fourth terminal device 140, and may decode the encoded video data to restore the video data, and may display the video picture on an accessible display device according to the restored video data.
[0043] exist Figure 1 In the embodiment of the present invention, the first terminal device 110, the second terminal device 120, the third terminal device 130 and the fourth terminal device 140 may be servers, personal computers and smart phones, but the principles disclosed in the present application may not be limited thereto. The embodiments disclosed in the present application are applicable to laptop computers, tablet computers, media players and / or dedicated video conferencing equipment. The network 150 represents any number of networks that transmit encoded video data between the first terminal device 110, the second terminal device 120, the third terminal device 130 and the fourth terminal device 140, including, for example, wired and / or wireless communication networks. The communication network 150 may exchange data in circuit switching and / or packet switching channels. The network may include a telecommunications network, a local area network, a wide area network and / or the Internet. For the purpose of the present application, unless explained below, the architecture and topology of the network 150 may be irrelevant to the operation disclosed in the present application.
[0044] In one embodiment of the present application, Figure 2 The placement of the video encoding device and the video decoding device in the streaming environment is shown. The subject matter disclosed in the present application can be equally applicable to other video-supported applications, including, for example, video conferencing, digital TV (television), storing compressed video on digital media including CD, DVD, memory stick, etc.
[0045] The streaming system may include an acquisition subsystem 213, which may include a video source 201 such as a digital camera, which creates an uncompressed video picture stream 202. In an embodiment, the video picture stream 202 includes samples taken by a digital camera. The video picture stream 202 is depicted as a thick line to emphasize the high data volume of the video picture stream compared to the encoded video data 204 (or the encoded video code stream 204), and the video picture stream 202 can be processed by an electronic device 220, which includes a video encoding device 203 coupled to the video source 201. The video encoding device 203 may include hardware, software, or a combination of hardware and software to implement or implement various aspects of the disclosed subject matter as described in more detail below. Compared to the video picture stream 202, the encoded video data 204 (or the encoded video code stream 204) is depicted as a thin line to emphasize the lower data volume of the encoded video data 204 (or the encoded video code stream 204), which can be stored on the streaming server 205 for future use. One or more streaming client subsystems, such as Figure 2, can access the streaming server 205 to retrieve the copies 207 and 209 of the encoded video data 204. The client subsystem 206 can include, for example, a video decoding device 210 in the electronic device 230. The video decoding device 210 decodes the incoming copy 207 of the encoded video data and generates an output video picture stream 211 that can be presented on a display 212 (e.g., a display screen) or another presentation device. In some streaming systems, the encoded video data 204, the video data 207, and the video data 209 (e.g., video bitstreams) can be encoded according to certain video encoding / compression standards.
[0046] It should be noted that the electronic device 220 and the electronic device 230 may include other components not shown in the figure. For example, the electronic device 220 may include a video decoding device, and the electronic device 230 may also include a video encoding device.
[0047] In the above exemplary video encoding and decoding scenarios, multimedia codecs are required. In the development of multimedia codecs, it is usually necessary to compare the performance of different codecs through codec performance indicators. For example, BD-PSNR (Bjontegaard Delta PSNR) is used to measure the average PSNR (Peak Signal to Noise Ratio) gain under the same bit rate conditions, and BD-Rate (Bjontegaard Delta Rate) is used to measure the average bit rate gain under the same quality.
[0048] Specifically, Figure 3 As shown in FIG. 1 , in the relationship between a certain performance indicator (taking PSNR as an example) and the bit rate, the test curve represents the PSNR and bit rate curve corresponding to the test video codec, and the reference curve represents the PSNR and bit rate curve corresponding to the reference video codec. Figure 3 As shown in the middle left figure, within a certain bit rate range [x1, x2], the interval integrals of the benchmark curve and the test curve along the bit rate coordinate axis are calculated, denoted as Ga and Gt. Then the average PSNR gain of the test solution (i.e., the test video codec) relative to the benchmark solution (i.e., the benchmark video codec) under the same bit rate conditions can be expressed by the formula (Gt-Ga) / (x2-x1).
[0049] like Figure 3As shown in the middle right figure, within the PSNR range [y1, y2], the interval integrals of the benchmark curve and the test curve along the performance indicator coordinate axis are calculated, recorded as Ga' and Gt'. Then the average bit rate gain of the test solution (i.e., the test video codec) relative to the benchmark solution (i.e., the benchmark video codec) under the same PSNR conditions can be expressed by the formula (Gt'-Ga') / (y2-y1).
[0050] In the related art, when multiple data points are obtained to represent the relationship between the performance index and the rate, the relationship curve between the performance index and the rate is usually obtained by interpolating between the multiple data points. Specifically, a third-order function can be constructed by using cubic spline interpolation for every two adjacent points based on the piecewise cubic spline interpolation (PCHIP) algorithm, and the data between the two points is obtained by interpolation. For example, Figure 4 In the data shown in the middle left figure, 6 data points are used as input, recorded as (x1, y1), (x2, y2), (x3, y3), (x4, y4), (x5, y5), (x6, y6). From left to right, take two points, such as (x1, y1) and (x2, y2), and solve the interpolation polynomial through the input values of the two points and the first-order derivative value. Then the points between x1 and x2 are solved by the interpolation polynomial. Then, repeat this process in sequence to obtain the piecewise interpolation polynomial in the interval from x1 to x6, and then you can get the relationship curve between the performance index and the bit rate.
[0051] Although the PCHIP algorithm in the related art can ensure that the interpolation curve between two consecutive points remains monotonic, when the input data is not monotonic, it is impossible to calculate the average performance gain at the same bit rate and the average bit rate gain at the same quality. This is because the calculation method of the average performance gain at the same bit rate (such as BD-PSNR) and the average bit rate gain at the same quality (such as BD-Rate) is based on the assumption that the data satisfies monotonicity. For example, Figure 4 In the data shown in the middle right figure, 6 data points are used as input, denoted as (x1', y1'), (x2', y2'), (x3', y3'), (x4', y4'), (x5', y5'), (x6', y6'), and these data points do not meet the monotonicity requirement. Therefore, in this case, the average performance gain at the same bit rate and the average bit rate gain at the same quality cannot be calculated according to the algorithm in the related art.
[0052] In addition, the evaluation interval of the algorithm in the related art when calculating the average performance gain at the same bit rate and the average bit rate gain at the same quality needs to be the overlapping part of the two sets of data (such as Figure 3 However, this interval only accounts for a part of the overall data interval, which is not only unrepresentative but may also lead to large deviations due to chance.
[0053] Based on this, the embodiment of the present application proposes a new processing scheme for codec performance indicators, which can measure the performance of the codec through a monotonic nonlinear relationship, and can also support performance comparison within any interval through the obtained nonlinear relationship, thereby improving the accuracy and flexibility of the codec performance indicator measurement.
[0054] The implementation details of the technical solution of the embodiment of the present application are described in detail below:
[0055] Figure 5 A flowchart of a method for processing a codec performance indicator according to an embodiment of the present application is shown. The method for processing a codec performance indicator can be executed by an electronic device. Figure 5 As shown, the method for processing the encoding and decoding performance index at least includes steps S510 to S540, which are described in detail as follows:
[0056] In step S510, a plurality of relationship data between a specified codec performance indicator and a bit rate is obtained, wherein the relationship data includes a bit rate value and a value of the specified codec performance indicator corresponding to the bit rate value.
[0057] In some optional embodiments, the specified encoding and decoding performance indicators may be: peak signal-to-noise ratio, mean Average Precision (mAP), multiple object tracking accuracy (MOTA), encoding time, decoding time, etc.
[0058] In some optional embodiments, the process of obtaining multiple relationship data between the specified codec performance index and the bit rate can be: use multiple encoding parameters to encode the reference multimedia data respectively to obtain the encoded data corresponding to each encoding parameter, and then generate the relationship data corresponding to each encoded data according to the bit rate statistics of each encoded data and the value of the specified codec performance index, and then obtain multiple relationship data according to the relationship data corresponding to each encoded data. Optionally, the bit rate statistics of each encoded data can be an average bit rate, and the value of the specified codec performance index of each encoded data can also be an average value. The reference multimedia data can be video, audio, image, point cloud, three-dimensional grid, etc. used to evaluate the performance of the codec.
[0059] In step S520, a monotonic objective function set for a specified encoding and decoding performance index and a bit rate is obtained, wherein the objective function includes a plurality of parameters for representing a function curve shape.
[0060] In some optional embodiments, the objective function may be a logistic regression function, or may be other monotonic functions. The multiple parameters in the objective function may include at least one of the following parameters: a first parameter for indicating the maximum output value of the objective function, a second parameter for indicating the minimum output value of the objective function, a third parameter for indicating the translation amount of the function curve corresponding to the objective function on the bit rate coordinate axis, and a fourth parameter for indicating the degree of change of the function curve in the linear interval.
[0061] It should be noted that Figure 5 There is no strict order between steps S520 and S510 shown in FIG. Figure 5 The process shown in FIG. 1 executes S510 first and then executes S520; S520 may be executed first and then execute S510; or S510 and S520 may be executed simultaneously.
[0062] In step S530, values of multiple parameters included in the objective function are solved according to the multiple relationship data and the objective function.
[0063] In some optional embodiments, when solving the values of multiple parameters included in the objective function based on multiple relationship data and the objective function, the values of the multiple parameters can be initialized according to the multiple relationship data to obtain the initial values of the multiple parameters, and then the objective function can be fitted based on the multiple relationship data according to the initial values of the multiple parameters to solve the values of the multiple parameters.
[0064] Optionally, when initializing the values of multiple parameters according to multiple relationship data, the maximum value of the specified encoding and decoding performance indicator in the multiple relationship data can be used as the initial value of the first parameter; the minimum value of the specified encoding and decoding performance indicator in the multiple relationship data can be used as the initial value of the second parameter; the average value of the bit rate values contained in the multiple relationship data can be used as the initial value of the third parameter; and the standard deviation of the bit rate values contained in the multiple relationship data can be used as the initial value of the fourth parameter.
[0065] In some optional embodiments, according to the initial values of multiple parameters, the objective function is fitted based on multiple relationship data to solve for the values of multiple parameters. The process can be: according to the initial values of multiple parameters, the objective function is fitted based on multiple relationship data through Newton's method, quasi-Newton's method, evolutionary method, gradient descent method, etc. to solve for the values of multiple parameters.
[0066] In step S540, a nonlinear relationship between a specified encoding and decoding performance indicator and a bit rate is determined according to the objective function and the values of the multiple parameters.
[0067] In some optional embodiments, the obtained values of the multiple parameters may be substituted into the objective function to obtain a nonlinear relationship between the specified encoding and decoding performance index and the bit rate.
[0068] In some optional embodiments, if the performance between the reference codec and the test codec needs to be evaluated, then multiple relationship data corresponding to the reference codec and multiple relationship data corresponding to the test codec can be obtained according to the technical solution of the aforementioned embodiment. Specifically, for example, the reference multimedia data can be encoded using multiple encoding parameters by the reference codec to obtain encoding data corresponding to each encoding parameter, and then the relationship data corresponding to each encoding data is generated according to the bit rate statistics of each encoding data and the value of the specified encoding and decoding performance indicator, and then the multiple relationship data corresponding to the reference codec is obtained according to the relationship data corresponding to each encoding data.
[0069] For the test codec, the test codec can use multiple encoding parameters to encode the reference multimedia data respectively to obtain the encoding data corresponding to each encoding parameter, and then generate relationship data corresponding to each encoding data based on the bit rate statistics of each encoding data and the value of the specified encoding and decoding performance indicator, and then obtain multiple relationship data corresponding to the test codec based on the relationship data corresponding to each encoding data.
[0070] After obtaining multiple relationship data corresponding to the benchmark codec and multiple relationship data corresponding to the test codec, a first nonlinear relationship between a specified codec performance indicator and the bit rate corresponding to the benchmark codec can be determined based on an objective function and values of multiple parameters obtained by solving the multiple relationship data corresponding to the benchmark codec; and a second nonlinear relationship between a specified codec performance indicator and the bit rate corresponding to the test codec can be determined based on an objective function and values of multiple parameters obtained by solving the multiple relationship data corresponding to the test codec.
[0071] In some optional embodiments, after determining a first nonlinear relationship between a specified codec performance indicator corresponding to a benchmark codec and the bit rate, and a second nonlinear relationship between a specified codec performance indicator corresponding to a test codec and the bit rate, the average gain of the specified codec performance indicator of the test codec relative to the benchmark codec under the same bit rate conditions can be calculated based on the first nonlinear relationship and the second nonlinear relationship and a set bit rate range.
[0072] Optionally, the process of calculating the average gain of the specified codec performance index of the test codec relative to the reference codec under the same code rate condition according to the first nonlinear relationship and the second nonlinear relationship and the set code rate interval may include: calculating the first integral area of the function curve corresponding to the first nonlinear relationship within the set code rate interval according to the first nonlinear relationship and the set code rate interval; calculating the second integral area of the function curve corresponding to the second nonlinear relationship within the set code rate interval according to the second nonlinear relationship and the set code rate interval; calculating the area difference between the second integral area and the first integral area, and calculating the average gain of the specified codec performance index of the test codec relative to the reference codec under the same code rate condition according to the area difference and the code rate interval. For example, the average gain of the specified codec performance index of the test codec relative to the reference codec under the same code rate condition is obtained by dividing the area difference by the span of the code rate interval (i.e., the maximum value of the code rate interval minus the minimum value of the code rate interval).
[0073] In some optional embodiments, after determining a first nonlinear relationship between a specified codec performance indicator corresponding to a benchmark codec and the bit rate, and a second nonlinear relationship between a specified codec performance indicator corresponding to a test codec and the bit rate, the average bit rate gain of the test codec relative to the benchmark codec under the same specified codec performance indicator conditions can be calculated based on the first nonlinear relationship and the second nonlinear relationship, and a set specified codec performance indicator interval.
[0074] Optionally, according to the first nonlinear relationship and the second nonlinear relationship, and the set specified codec performance index interval, the process of calculating the average rate gain of the test codec relative to the reference codec under the same specified codec performance index condition may include: calculating the third integral area of the function curve corresponding to the first nonlinear relationship within the set specified codec performance index interval according to the first nonlinear relationship and the set specified codec performance index interval; calculating the fourth integral area of the function curve corresponding to the second nonlinear relationship within the set specified codec performance index interval according to the second nonlinear relationship and the set specified codec performance index interval; calculating the area difference between the fourth integral area and the third integral area, and calculating the average rate gain of the test codec relative to the reference codec under the same specified codec performance index condition according to the area difference and the specified codec performance index interval. For example, the average rate gain of the test codec relative to the reference codec under the same specified codec performance index condition is obtained by dividing the area difference by the span of the specified codec performance index interval (i.e., the maximum value of the specified codec performance index interval minus the minimum value of the specified codec performance index interval).
[0075] It can be seen that in the technical solution of the embodiment of the present application, regardless of whether the relationship data between the specified codec performance index and the bit rate is monotonic, a monotonic nonlinear relationship can be solved, and then the performance of the codec can be measured by the monotonic nonlinear relationship, and the obtained nonlinear relationship can also support performance comparison within any interval, thereby improving the accuracy and flexibility of the codec performance index measurement.
[0076] The following combination Figures 6 to 10 , taking the evaluation of the video codec as an example, the implementation details of the technical solution of the embodiment of the present application are described in detail:
[0077] Reference Figure 6 As shown, a video codec evaluation method according to an embodiment of the present application includes the following steps:
[0078] S601a, input reference codec A, test sequence, evaluation interval and test conditions; S601b, input test codec B, test sequence, evaluation interval and test conditions.
[0079] Optionally, the reference codec S can be called anchor, and the test codec B can be called test; the test sequence is the reference video s, which can be one or more; the test condition can be a set of coding parameters [c1, c2, …, cn], and the performance evaluation intervals [xa, xb] and [ya, yb]. If the purpose is to use the two indicators BD-PSNR and BD-Rate for evaluation, then the performance evaluation interval [xa, xb] represents the bit rate interval; the performance evaluation interval [ya, yb] represents the PSNR interval.
[0080] S602a, using a reference codec to encode a test sequence according to a test condition to obtain a reference coded sample; S602b, using a test codec to encode a test sequence according to the test condition to obtain a reference coded sample.
[0081] Optionally, for each coding parameter in [c1,c2,…,cn], s can be encoded using anchor and test respectively, so that two groups of coded videos are obtained, one group is recorded as [sa1,sa2,…,san], and the other group is recorded as [st1,st2,…,stn]. Among them, san represents the coded video obtained by encoding the reference video s by anchor using the coding parameter cn; stn represents the coded video obtained by encoding the reference video s by test using the coding parameter cn.
[0082] S603a, calculating the bit rate and objective quality score of the reference coded sample; S603b, calculating the bit rate and objective quality score of the test coded sample.
[0083] Optionally, the average bit rate size r and objective quality q of each encoded video can be calculated. Four sets of data are obtained, where [ra1, ra2, ..., ran] are the bit rate metrics of the video encoded by the anchor codec, [qa1, qa2, ..., qan] are the objective quality metrics (i.e., PSNR values) of the video encoded by the anchor codec, [rt1, rt2, ..., rtn] are the bit rate metrics of the video encoded by the test codec, and [qt1, qt2, ..., qtn] are the objective quality metrics of the video encoded by the test codec.
[0084] Using the bit rate measurement r (r can be log10(Rate)) as the x-axis and the objective quality q as the y-axis, two sets of discrete points can be obtained. If the x-axis size of some points between the two sets of data remains consistent, then the conclusion of which one is better can be drawn by comparing the height of the y-axis. However, the actual situation is that it is difficult for some points in the two sets of data to align the numerical values of the x-axis or y-axis. Therefore, in the embodiment of the present application, each set of data obtained above can be used to fit the nonlinear relationship curves of anchor and test respectively through numerical solution, and then the anchor and test are quantitatively compared on this basis.
[0085] S604a, using the method of the present application to solve the nonlinear relationship curve fa(x) between the bit rate and objective quality score of the sample encoded by the benchmark codec; S604b, using the method of the present application to solve the nonlinear relationship curve ft(x) between the bit rate and objective quality score of the sample encoded by the test codec.
[0086] Optionally, assume that the regularity between r and q is represented by the following objective function:
[0087]
[0088] Among them, a, b, c, and d are variables that control the shape of the curve, x is the input parameter (r in this example), and f(x) is the output value (q in this example). Optionally, a represents the maximum output value; b represents the minimum output value; c represents the horizontal translation of the entire curve on the bit rate coordinate axis; and d represents the degree of change of the function in the approximate linear interval.
[0089] Considering the physical meaning of the parameters to be solved, the following parameters can be used as initial values: a = max(yi), b = min(yi), c = avg(xi), d = std(xi). At the same time, in order to make the fitting results more consistent with the actual values, the following parameter update restrictions can be added: if yi represents PSNR or mAP or MOTA, the iterative value range of a is limited to [max(yi), 100]; the iterative value range of b is limited to [0, min(yi)].
[0090] The target curve used in the embodiment of the present application can better reflect the nonlinear relationship between the bit rate and the performance index. Specifically, Figure 7 The curve shown is used in the embodiment of the present application, which has the following characteristics: 1) At the intermediate bit rate point, the performance index and the bit rate show a nearly linear relationship, and as the bit rate increases, the performance index also increases rapidly. 2) When the bit rate increases to a certain extent, further increasing the bit rate does not necessarily bring additional performance index benefits, that is, the performance index enters the saturation area. 3) When the bit rate decreases to a certain extent, the performance index will not decrease as the bit rate decreases.
[0091] For the anchor data, i.e., [ra1, ra2, …, ran] and [qa1, qa2, …, qan], numerical fitting processing is performed according to the above objective function to solve the values of a, b, c, and d, and then the nonlinear curve fa(x) corresponding to the anchor data can be obtained.
[0092] In one embodiment of the present application, when solving the values of a, b, c, and d, a variety of methods can be used, such as Newton's method, quasi-Newton's method, evolutionary method, etc. In one embodiment, it can be done by minimizing the second-order distance between the input objective performance index value and the fitting performance index value, that is, solving by the following formula:
[0093]
[0094] Among them, yi represents the value of objective quality q corresponding to xi (i.e. bit rate metric), f(x i ) represents the output value obtained by fitting the objective function when the input is xi.
[0095] In one embodiment of the present application, when solving the values of a, b, c, and d, the gradient descent method can also be used for solving. The specific process is as follows: Figure 8 As shown, the following steps are included:
[0096] S801, determine the parameters to be optimized: a, b, c, d; hyperparameters: m, u, A, B, C; constants: D, E; variables: g is the gradient, t is the number of iterations; take the optimization parameter a as an example, assuming ai Refers to the value of parameter a at the tth iteration.
[0097] S802, initialize parameters, set t=0.
[0098] S803, calculate the t-th round fitting error and the gradient g of a at .
[0099] S804, determine whether the current fitting error meets the requirements or the number of iterations reaches the maximum value; if so, return to a i As the value of a. Otherwise, execute the following assignment process, and perform the next round of fitting, and then return to step S803:
[0100] m t =A×m t-1 +(1-A)×g t
[0101]
[0102]
[0103] a t =a t-1 -u t ×m t
[0104] Similarly, for the test data, namely [rt1, rt2, ..., rtn] and [qt1, qt2, ..., qtn], the corresponding nonlinear relationship curve ft(x) can also be obtained by the technical solution of the above embodiment.
[0105] S605a, calculate the integral area SA of the nonlinear relationship curve fa(x) of the reference codec within a given performance evaluation interval; S605b, calculate the integral area SB of the nonlinear relationship curve ft(x) of the test codec within a given performance evaluation interval.
[0106] For example, if the performance evaluation interval is [xa, xb], then the integral area SA of the nonlinear relationship curve fa(x) of the benchmark codec in the given test interval is The integral area SB of the nonlinear relationship curve ft(x) of the test codec in a given test interval is
[0107] S606, calculating an average difference between the integral area corresponding to the test codec and the integral area corresponding to the reference codec, and obtaining a performance gain of the test codec relative to the reference codec through the average difference calculation.
[0108] Specifically, for example, the average objective indicator PSNR benefit BD-PSNR of the test codec compared to the benchmark codec at the same bit rate can be expressed as:
[0109]
[0110] The average bitrate gain BD-Rate of the test codec compared to the benchmark codec at the same PSNR can be expressed as:
[0111]
[0112] Based on the technical solution of the embodiment of the present application, Fig. 9 and Fig.10 As shown, regardless of whether the input data is monotonic ( Fig. 9 The data in is monotonic. Fig.10 The data in the codec is not monotonic), the technical solutions of the embodiments of the present application can solve a target curve with monotonicity to evaluate the codec. It should be noted that other performance indicators, such as mAP, MOTA, encoding time and decoding time, can also be evaluated by the technical solutions of the aforementioned embodiments. And the technical solutions of the embodiments of the present application can not only be used to evaluate the performance of video codecs, but also to evaluate the performance of codecs for multimedia data such as audio, images, point clouds, and three-dimensional meshes, so as to be applied to application scenarios such as iteration of codec versions, development of codec internal tools, and horizontal comparison of the performance of multiple codecs.
[0113] The following describes an apparatus embodiment of the present application, which can be used to execute the method for processing the codec performance index in the above-mentioned embodiment of the present application. For details not disclosed in the apparatus embodiment of the present application, please refer to the embodiment of the method for processing the codec performance index in the above-mentioned embodiment of the present application.
[0114] Fig.11 A block diagram of a device for processing encoding and decoding performance indicators according to an embodiment of the present application is shown.
[0115] Reference Fig.11 As shown, a device 1100 for processing a coding performance indicator according to an embodiment of the present application includes: an acquiring unit 1102 , a processing unit 1104 and a determining unit 1106 .
[0116] Among them, the acquisition unit 1102 is configured to obtain multiple relationship data between the specified codec performance index and the bit rate, the relationship data includes the bit rate value and the numerical value of the specified codec performance index corresponding to the bit rate value, and obtain a monotonic objective function set for the specified codec performance index and the bit rate, the objective function includes multiple parameters for representing the shape of the function curve; the processing unit 1104 is configured to solve the values of the multiple parameters according to the multiple relationship data and the objective function; the determination unit 1106 is configured to determine the nonlinear relationship between the specified codec performance index and the bit rate according to the objective function and the values of the multiple parameters.
[0117] In some embodiments of the present application, based on the aforementioned scheme, the acquisition unit 1102 is configured to: use multiple encoding parameters to encode the reference multimedia data respectively to obtain the encoding data corresponding to each encoding parameter; generate the relationship data corresponding to each encoding data according to the bit rate statistics of each encoding data and the value of the specified encoding and decoding performance indicator; obtain the multiple relationship data according to the relationship data corresponding to each encoding data.
[0118] In some embodiments of the present application, based on the aforementioned scheme, the processing unit 1104 is configured to: initialize the values of the multiple parameters according to the multiple relationship data to obtain the initial values of the multiple parameters; and fit the objective function based on the multiple relationship data according to the initial values of the multiple parameters to solve and obtain the values of the multiple parameters.
[0119] In some embodiments of the present application, based on the aforementioned scheme, the multiple parameters include at least one of the following parameters: a first parameter for representing the maximum output value of the objective function, a second parameter for representing the minimum output value of the objective function, a third parameter for representing the translation amount of the function curve corresponding to the objective function on the bit rate coordinate axis, and a fourth parameter for representing the degree of change of the function curve within the linear interval.
[0120] In some embodiments of the present application, based on the aforementioned scheme, the maximum value of the specified encoding and decoding performance indicator in the multiple relationship data is used as the initial value of the first parameter; the minimum value of the specified encoding and decoding performance indicator in the multiple relationship data is used as the initial value of the second parameter; the average value of the bit rate values contained in the multiple relationship data is used as the initial value of the third parameter; and the standard deviation of the bit rate values contained in the multiple relationship data is used as the initial value of the fourth parameter.
[0121] In some embodiments of the present application, based on the aforementioned scheme, the processing unit 1104 fits the objective function based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters, including any one of the following methods: fitting the objective function by Newton's method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by quasi-Newton's method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by evolutionary method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters; fitting the objective function by gradient descent method based on the multiple relationship data according to the initial values of the multiple parameters to obtain the values of the multiple parameters.
[0122] In some embodiments of the present application, based on the aforementioned scheme, the multiple relationship data between the specified codec performance indicator and the bit rate include: multiple relationship data corresponding to the benchmark codec, and multiple relationship data corresponding to the test codec; the determination unit 1106 is configured to: determine the first non-linear relationship between the specified codec performance indicator corresponding to the benchmark codec and the bit rate based on the objective function and the values of multiple parameters obtained by solving the multiple relationship data corresponding to the benchmark codec; determine the second non-linear relationship between the specified codec performance indicator corresponding to the test codec and the bit rate based on the objective function and the values of multiple parameters obtained by solving the multiple relationship data corresponding to the test codec.
[0123] In some embodiments of the present application, based on the aforementioned scheme, the device 1100 for processing the codec performance indicator further includes: a calculation unit, configured to calculate the average gain of the specified codec performance indicator of the test codec relative to the benchmark codec under the same bit rate conditions based on the first non-linear relationship and the second non-linear relationship and the set bit rate range.
[0124] In some embodiments of the present application, based on the aforementioned scheme, the calculation unit is configured to: calculate a first integral area of the function curve corresponding to the first nonlinear relationship within the set bit rate range according to the first nonlinear relationship and the set bit rate range; calculate a second integral area of the function curve corresponding to the second nonlinear relationship within the set bit rate range according to the second nonlinear relationship and the set bit rate range; calculate the area difference between the second integral area and the first integral area, and calculate the average gain of the specified codec performance indicator of the test codec relative to the benchmark codec under the same bit rate conditions based on the area difference and the bit rate range.
[0125] In some embodiments of the present application, based on the aforementioned scheme, the device 1100 for processing the codec performance indicator further includes: a calculation unit, configured to calculate the average bit rate gain of the test codec relative to the benchmark codec under the same specified codec performance indicator conditions based on the first non-linear relationship and the second non-linear relationship and the set specified codec performance indicator interval.
[0126] In some embodiments of the present application, based on the aforementioned scheme, the calculation unit is configured to: calculate a third integral area of the function curve corresponding to the first nonlinear relationship within the set specified codec performance index interval according to the first nonlinear relationship and the set specified codec performance index interval; calculate a fourth integral area of the function curve corresponding to the second nonlinear relationship within the set specified codec performance index interval according to the second nonlinear relationship and the set specified codec performance index interval; calculate an area difference between the fourth integral area and the third integral area, and calculate an average rate gain of the test codec relative to the benchmark codec under the same specified codec performance index conditions according to the area difference and the specified codec performance index interval.
[0127] In some embodiments of the present application, based on the aforementioned scheme, the specified encoding and decoding performance indicators include at least one of the following: peak signal-to-noise ratio, average precision mean, multi-target tracking accuracy, encoding time, and decoding time.
[0128] Fig.12 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown.
[0129] It should be noted that Fig.12 The computer system 1200 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0130] like Fig.12As shown, the computer system 1200 may include a central processing unit (CPU) 1201, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1202 or the program loaded from the storage part 1208 to the random access memory (RAM) 1203, such as executing the method described in the above embodiment. In the RAM 1203, various programs and data required for system operation are also stored. The CPU 1201, ROM 1202 and RAM 1203 are connected to each other through a bus 1204. An input / output (I / O) interface 1205 is also connected to the bus 1204.
[0131] The following components can be connected to the I / O interface 1205: an input section 1206 including a keyboard, a mouse, etc.; an output section 1207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1208 including a hard disk, etc.; and a communication section 1209 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1209 performs communication processing via a network such as the Internet. A drive 1210 is also connected to the I / O interface 1205 as needed. A removable medium 1211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1210 as needed so that a computer program read therefrom is installed into the storage section 1208 as needed.
[0132] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program is used to perform the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication section 1209, and / or installed from a removable medium 1211. When the computer program is executed by a central processing unit (CPU) 1201, various functions defined in the system of the present application are executed.
[0133] It should be noted that the computer-readable medium shown in the embodiment of the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a computer program, which may be used by an instruction execution system, device or device or used in combination with it. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a computer-readable computer program is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0134] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of the boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and a computer program.
[0135] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.
[0136] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently without being assembled into the electronic device. The above computer-readable medium carries one or more computer programs, and when the above one or more computer programs are executed by an electronic device, the electronic device implements the method described in the above embodiment.
[0137] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.
[0138] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the implementation method of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable an electronic device to execute a method according to the implementation method of the present application. For example, the electronic device can execute Figure 5 The processing method of the encoding and decoding performance indicators shown.
[0139] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the embodiments disclosed herein. The present application is intended to cover any variations, uses or adaptations of the present application, which follow the general principles of the present application and include common knowledge or customary technical means in the art that are not disclosed in the present application.
[0140] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A method for processing encoding and decoding performance indicators, characterized in that: include: Acquire a plurality of relationship data between a specified codec performance indicator and a bit rate, wherein the relationship data includes a bit rate value and a value of the specified codec performance indicator corresponding to the bit rate value; Obtaining a monotonic objective function set for the specified encoding and decoding performance index and bit rate, wherein the objective function includes a plurality of parameters for representing a function curve shape; Solving the values of the plurality of parameters according to the plurality of relationship data and the objective function; A nonlinear relationship between the specified encoding and decoding performance indicator and a bit rate is determined according to the objective function and the values of the multiple parameters.
2. The method for processing encoding and decoding performance indicators according to claim 1, characterized in that: Get multiple relationship data between the specified codec performance indicators and bit rate, including: Using multiple encoding parameters to encode the reference multimedia data respectively to obtain encoded data corresponding to each encoding parameter; Generate relationship data corresponding to each coded data according to the bit rate statistics of each coded data and the value of the specified coding performance index; The plurality of relationship data are obtained according to the relationship data corresponding to the respective coded data.
3. The method for processing encoding and decoding performance indicators according to claim 1, characterized in that: Solving the values of the plurality of parameters according to the plurality of relationship data and the objective function includes: Initializing the values of the multiple parameters according to the multiple relationship data to obtain initial values of the multiple parameters; According to the initial values of the multiple parameters, the objective function is fitted based on the multiple relationship data to solve and obtain the values of the multiple parameters.
4. The method for processing encoding and decoding performance indicators according to claim 3, characterized in that: The plurality of parameters include at least one of the following parameters: A first parameter for representing the maximum output value of the objective function, a second parameter for representing the minimum output value of the objective function, a third parameter for representing the translation amount of the function curve corresponding to the objective function on the bit rate coordinate axis, and a fourth parameter for representing the degree of change of the function curve within the linear interval.
5. The method for processing encoding and decoding performance indicators according to claim 4, characterized in that: Initializing the values of the multiple parameters according to the multiple relationship data to obtain the initial values of the multiple parameters includes at least one of the following: Using the maximum value of the encoding and decoding performance indicators specified in the plurality of relationship data as the initial value of the first parameter; Using the minimum value of the encoding and decoding performance indicator specified in the plurality of relationship data as the initial value of the second parameter; taking an average value of the bit rate values included in the plurality of relationship data as an initial value of the third parameter; The standard deviation of the code rate values included in the plurality of relationship data is used as the initial value of the fourth parameter.
6. The method for processing encoding and decoding performance indicators according to claim 3, characterized in that: According to the initial values of the multiple parameters, the objective function is fitted based on the multiple relationship data to obtain the values of the multiple parameters, including any of the following methods: According to the initial values of the multiple parameters, the objective function is fitted by Newton's method based on the multiple relationship data to obtain the values of the multiple parameters; According to the initial values of the multiple parameters, the objective function is fitted by a quasi-Newton method based on the multiple relationship data to obtain the values of the multiple parameters; According to the initial values of the multiple parameters, the objective function is fitted by an evolutionary method based on the multiple relationship data to obtain the values of the multiple parameters; According to the initial values of the multiple parameters, the objective function is fitted by a gradient descent method based on the multiple relationship data to solve and obtain the values of the multiple parameters.
7. The method for processing encoding and decoding performance indicators according to any one of claims 1 to 6, characterized in that: The plurality of relationship data between the specified codec performance index and the bit rate include: a plurality of relationship data corresponding to the reference codec and a plurality of relationship data corresponding to the test codec; Determining the nonlinear relationship between the specified encoding and decoding performance indicator and the bit rate according to the objective function and the values of the multiple parameters includes: Determine a first nonlinear relationship between a specified codec performance indicator and a bit rate corresponding to the reference codec according to the objective function and values of multiple parameters obtained by solving multiple relationship data corresponding to the reference codec; A second nonlinear relationship between a specified codec performance indicator and a bit rate corresponding to the test codec is determined according to the objective function and values of multiple parameters obtained based on multiple relationship data corresponding to the test codec.
8. The method for processing encoding and decoding performance indicators according to claim 7, characterized in that: The method further comprises: According to the first non-linear relationship and the second non-linear relationship, and the set bit rate range, an average gain of the specified codec performance indicator of the test codec relative to the reference codec under the same bit rate condition is calculated.
9. The method for processing encoding and decoding performance indicators according to claim 8, characterized in that: Calculating, according to the first nonlinear relationship and the second nonlinear relationship, and the set bit rate range, an average gain of the specified codec performance indicator of the test codec relative to the reference codec under the same bit rate condition, including: According to the first nonlinear relationship and the set bit rate interval, calculating a first integral area of a function curve corresponding to the first nonlinear relationship within the set bit rate interval; According to the second nonlinear relationship and the set bit rate interval, calculating a second integral area of the function curve corresponding to the second nonlinear relationship within the set bit rate interval; An area difference between the second integrated area and the first integrated area is calculated, and based on the area difference and the bit rate range, an average gain of the specified codec performance indicator of the test codec relative to the reference codec under the same bit rate condition is calculated.
10. The method for processing encoding and decoding performance indicators according to claim 7, characterized in that: The method further comprises: According to the first non-linear relationship and the second non-linear relationship, and the set specified codec performance indicator interval, the average rate gain of the test codec relative to the reference codec under the same specified codec performance indicator condition is calculated.
11. The method for processing encoding and decoding performance indicators according to claim 10, characterized in that: Calculating, according to the first non-linear relationship and the second non-linear relationship, and the set specified codec performance index interval, an average bit rate gain of the test codec relative to the reference codec under the same specified codec performance index condition, including: According to the first nonlinear relationship and the set specified coding and decoding performance index interval, calculating a third integral area of the function curve corresponding to the first nonlinear relationship within the set specified coding and decoding performance index interval; Calculating, according to the second nonlinear relationship and the set designated coding and decoding performance indicator interval, a fourth integral area of the function curve corresponding to the second nonlinear relationship within the set designated coding and decoding performance indicator interval; An area difference between the fourth integrated area and the third integrated area is calculated, and based on the area difference and the specified codec performance indicator interval, an average bit rate gain of the test codec relative to the benchmark codec under the same specified codec performance indicator condition is calculated.
12. The method for processing encoding and decoding performance indicators according to any one of claims 1 to 6, characterized in that: The specified encoding and decoding performance indicators include at least one of the following: peak signal-to-noise ratio, average precision mean, multi-target tracking accuracy, encoding time, and decoding time.
13. A device for processing encoding and decoding performance indicators, characterized in that: include: an acquisition unit, configured to acquire a plurality of relationship data between a specified codec performance indicator and a bit rate, wherein the relationship data includes a bit rate value and a value of the specified codec performance indicator corresponding to the bit rate value, and acquire a monotonic objective function set for the specified codec performance indicator and the bit rate, wherein the objective function includes a plurality of parameters for representing a shape of a function curve; a processing unit configured to solve the values of the plurality of parameters according to the plurality of relationship data and the objective function; The determining unit is configured to determine the nonlinear relationship between the specified encoding and decoding performance indicator and the bit rate according to the objective function and the values of the multiple parameters.
14. A computer readable medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for processing the encoding and decoding performance indicator according to any one of claims 1 to 12 is implemented.
15. An electronic device, characterized in that: include: one or more processors; A memory for storing one or more computer programs, which, when executed by the one or more processors, enables the electronic device to implement the method for processing the encoding and decoding performance indicators as described in any one of claims 1 to 12.
16. A computer program product, characterized in that The computer program product includes a computer program, which is stored in a computer-readable storage medium. A processor of an electronic device reads and executes the computer program from the computer-readable storage medium, so that the electronic device executes the method for processing encoding and decoding performance indicators as described in any one of claims 1 to 12.
Citation Information
Patent Citations
Video decoding method and device, video coding method and device, medium and electronic equipment
CN112449187A
Encoder evaluation method and device, computer equipment and storage medium
CN112601073A
Video data processing method, video data processing device and storage medium
CN115623155A
Video coding method, device and equipment
CN116156227A
Encoder and program
JP2022183942A
