A dynamic range conversion method and device, electronic equipment and storage medium
By dividing the input signal value into multiple intervals and determining the register parameters and conversion function, the problem of storage space occupation in the hardware system is solved, and storage space compression and controllability of operation latency are achieved.
Patent Information
- Application Number
- CN202511469258.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-15
- Publication Date
- 2026-01-23
- Estimated Expiration
- 2045-10-15
AI Technical Summary
Existing dynamic range conversion technology consumes a lot of storage space in hardware systems, leading to increased pressure on chip resources and costs.
By dividing the input signal value into multiple intervals, determining the corresponding register parameters and conversion functions, and using the conversion functions for processing, the storage space occupied is reduced.
While maintaining accuracy, the storage space has been compressed from thousands of levels to less than hundreds, reducing the chip area and keeping the computational latency controllable.
Smart Images

Figure CN120957022B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of computer, and particularly relates to a dynamic range conversion method and device, electronic equipment and storage medium. BACKGROUND
[0002] In the field of image and video display, dynamic range conversion technology is a key technology for realizing mutual conversion between high dynamic range (HDR) and standard dynamic range (SDR). In order to adapt to the characteristic parameters of different display devices and video / image sources, it is usually necessary to use the opto-electronic transfer function (OETF) and the electro-optical transfer function (EOTF) to complete the conversion process.
[0003] The existing hardware system generally uses a look-up table (LUT) to realize dynamic range conversion. Specifically, by pre-storing discrete conversion curve points, the complex nonlinear conversion relationship is quantized into a numerical mapping table that can be quickly accessed. Although this look-up table mechanism based on look-up table can effectively reduce the computational complexity and ensure the efficient execution of dynamic range conversion in the display pipeline.
[0004] However, in order to ensure the accuracy of the conversion function, the look-up table usually needs a large storage space, which will occupy a large hardware area in chip design, causing pressure on the resources and cost of the chip. SUMMARY
[0005] Therefore, the present disclosure provides a dynamic range conversion technical solution.
[0006] According to an aspect of the present disclosure, a dynamic range conversion method is provided, comprising:
[0007] determining an interval segment to which an input signal value belongs according to the input signal value;
[0008] in a case where the interval segment belongs to a target interval, determining a register parameter corresponding to the input signal value and a conversion function, the register parameter comprising a register parameter corresponding to a discrete signal value saved in a register, the discrete signal values being spaced apart by a plurality of integer values;
[0009] processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value.
[0010] In a possible implementation, the determining the register parameter corresponding to the input signal value comprises:
[0011] According to the interval segment to which the input signal value belongs, determining a register address parameter corresponding to the input signal value based on a determination rule of the register address parameter corresponding to the interval segment to which the input signal value belongs;
[0012] Reading a register value from a register according to the register address parameter.
[0013] In a possible implementation, the processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value comprises:
[0014] The processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value comprises:
[0015] In a possible implementation, the determining the register parameter corresponding to the input signal value comprises:
[0016] In a case where the input signal value is located in a first interval, determining register address parameters corresponding to the two discrete signal values closest to the input signal value according to the input signal value;
[0017] The processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value comprises:
[0018] The processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value comprises:
[0019] In a possible implementation, the method further comprises:
[0020] In a case where the input signal value is located in a second interval, calculating a position of the input signal value in the second interval by using a corresponding function according to the input signal value, the second interval being a non-target interval;
[0021] According to the position of the input signal value in the second interval, determining a conversion function corresponding to the input signal value, and performing a one-time function operation on the input signal value by using the determined conversion function to obtain an output signal value corresponding to the input signal value.
[0022] In a possible implementation, the determining the register parameter corresponding to the input signal value comprises:
[0023] In a case where the input signal value is located in the third interval, a sub-interval in which the input signal value is located in the third interval is determined according to the input signal value, and the sub-interval is composed of the discrete signal values;
[0024] The processing of the register parameter by using the conversion function to obtain the output signal value corresponding to the input signal value comprises:
[0025] The register value is read from the register according to the register address parameter of the discrete signal value corresponding to the sub-interval;
[0026] The input signal value, the register address parameter and the register value are subjected to a function operation by using the conversion function corresponding to the third interval, to obtain the output signal value corresponding to the input signal value.
[0027] In a possible implementation, the determination of the register parameter corresponding to the input signal value in a case where the interval segment to which the input signal value belongs is the target interval comprises:
[0028] In a case where the input signal value is located in the fourth interval, a register address parameter corresponding to the input signal value is determined according to the input signal value;
[0029] The processing of the register parameter by using the conversion function to obtain the output signal value corresponding to the input signal value comprises:
[0030] The register value is read from the register according to the register address parameter of the discrete signal value corresponding to the fourth interval;
[0031] The value of the register is taken as the output signal value corresponding to the input signal value.
[0032] In a possible implementation, the conversion function is obtained by piecewise linear fitting of an electro-optical conversion function EOTF or an opto-electrical conversion function OETF, and the piecewise linear fitting comprises:
[0033] According to the slope of the electro-optical conversion function or the opto-electrical conversion function, the electro-optical conversion function or the opto-electrical conversion function is divided into a plurality of interval segments according to the value range of the input signal;
[0034] For each interval segment, a corresponding linear function relationship is determined as the conversion function.
[0035] According to another aspect of the present disclosure, a dynamic range conversion device is provided, comprising:
[0036] An interval segment determination module is configured to determine an interval segment to which an input signal value belongs according to the input signal value;
[0037] The parameter obtaining module is configured to, in a case where the interval segment to which the input signal value belongs is located in a target interval, determine a register parameter corresponding to the input signal value and a conversion function, the register parameter including a register parameter corresponding to a discrete signal value saved in a register, the discrete signal values being spaced apart by a plurality of integer values;
[0038] The first conversion module is configured to process the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value.
[0039] In a possible implementation, the parameter obtaining module is configured to:
[0040] determine a register address parameter corresponding to the input signal value according to the interval segment to which the input signal value belongs and based on a determination rule of the address of the interval segment to which the input signal value belongs;
[0041] read a register value from the register according to the register address parameter.
[0042] In a possible implementation, the first conversion module is configured to:
[0043] perform an operation on the register address parameter and / or the register value by using the conversion function to obtain an output signal value corresponding to the input signal value.
[0044] In a possible implementation, the parameter obtaining module is configured to, in a case where the input signal value is located in a first interval, determine a register address parameter corresponding to the nearest two discrete signal values according to the input signal value;
[0045] The first conversion module is configured to perform a one-time function operation on the register address parameter by using the conversion function to obtain an output signal value corresponding to the input signal value.
[0046] In a possible implementation, the apparatus further includes:
[0047] The position calculation module is configured to, in a case where the input signal value is located in a second interval, calculate a position of the input signal value in the second interval by using a corresponding function according to the input signal value, the second interval being a non-target interval.
[0048] The second conversion module is configured to determine a conversion function corresponding to the position of the input signal value in the second interval, and perform a one-time function operation on the input signal value by using the determined conversion function to obtain an output signal value corresponding to the input signal value.
[0049] In a possible implementation, the first conversion module is configured to, in a case where the input signal value is located in a third interval, determine, according to the input signal value, a sub-interval of the input signal value in the third interval, the sub-interval being composed of the discrete signal values;
[0050] The first conversion module is configured to:
[0051] read, according to the register address parameter of the discrete signal value corresponding to the sub-interval, a register value from a register;
[0052] perform a first function operation on the input signal value, the register address parameter, and the register value by using a conversion function corresponding to the third interval, to obtain an output signal value corresponding to the input signal value.
[0053] In a possible implementation, the parameter acquisition module is configured to:
[0054] in a case where the input signal value is located in a fourth interval, determine, according to the input signal value, a register address parameter corresponding to the input signal value;
[0055] The first conversion module is configured to:
[0056] read, according to the register address parameter of the discrete signal value corresponding to the fourth interval, a register value from a register;
[0057] take the value of the register as an output signal value corresponding to the input signal value.
[0058] In a possible implementation, the conversion function is obtained by piecewise linear fitting of an electro-optical conversion function EOTF or an opto-electrical conversion function OETF, and the piecewise linear fitting includes:
[0059] according to a slope of the electro-optical conversion function or the opto-electrical conversion function, divide the electro-optical conversion function or the opto-electrical conversion function into a plurality of interval segments according to a value range of the input signal;
[0060] for each interval segment, determine a first function relationship corresponding to the interval segment as the conversion function.
[0061] According to another aspect of the present disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, the processor executes the computer program to implement the steps of the above method.
[0062] According to another aspect of the present disclosure, a non-volatile computer readable storage medium is provided, having a computer program stored thereon, the computer program is executed by a processor to implement the steps of the above method.
[0063] According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program, or a non-transitory computer-readable storage medium carrying the computer program, which, when executed by a processor, implements the steps of the above method.
[0064] In the embodiments of the present disclosure, by determining an interval segment to which an input signal value belongs according to the input signal value, determining a register parameter corresponding to the input signal value and a conversion function in a case where the interval segment belongs to a target interval, the register parameter comprising a register parameter corresponding to a discrete signal value saved in a register, and each discrete signal value being spaced apart by a plurality of integer values, and processing the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value. Thus, by determining an interval segment to which an input signal value belongs according to the input signal value, fast segmentation and positioning of a continuous signal space are realized. Then, in a case where the interval segment belongs to a target interval, a register parameter corresponding to the input signal value and a conversion function are determined, curve information originally carried by a complete LUT is split into a combination of sparse discrete points and a first-order function, and each discrete signal value in the register parameter is spaced apart by a plurality of integer values, so that the storage unit is compressed from a depth of thousands to within hundreds under the premise of ensuring accuracy, the occupation of storage space is reduced, and the chip area is greatly reduced. Finally, the register parameter is processed by using the conversion function to obtain an output signal value corresponding to the input signal value, and only one linear interpolation is required to restore any intermediate value, so that the operation delay is controllable.
[0065] Other features and aspects of the present disclosure will become apparent from the following detailed description of exemplary embodiments, taken in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0066] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the present disclosure and serve to explain the principles of the present disclosure.
[0067] Figure 1 A flowchart of a dynamic range conversion method according to an embodiment of the present disclosure is shown.
[0068] Figure 2 A flowchart of a dynamic range conversion method provided by an embodiment of the present disclosure is shown.
[0069] Figure 3 A schematic diagram of a conversion function provided by an embodiment of the present disclosure is shown.
[0070] Figure 4 A block diagram of a dynamic range conversion device provided by an embodiment of the present disclosure is shown.
[0071] Figure 5is a block diagram of a dynamic range conversion apparatus according to an exemplary embodiment. DETAILED DESCRIPTION
[0072] Various exemplary embodiments, features, and aspects of the present disclosure will be described below in detail with reference to the accompanying drawings. The same reference numbers are used throughout the drawings to refer to like or similar elements. Although various aspects of embodiments are illustrated in the drawings, the drawings are not necessarily drawn to scale unless specifically noted.
[0073] As used herein, the terms "include," "comprise," "have," or their variants are open-ended, and include one or more stated features, integers, elements, steps, components or functions but do not preclude the presence or addition of one or more other features, integers, elements, steps, components, functions or groups thereof.
[0074] When an element is referred to as being "connected", "coupled", "responsive", or "related" to another element, it can be directly connected, coupled, responsive, or related to the other element, or intervening elements can be present.
[0075] Although the terms first, second, third, and the like can be used herein to describe various elements / operations, these elements / operations should not be limited by these terms. These terms are only used to distinguish one element / operation from another element / operation. Thus, a first element / operation in some embodiments could be termed a second element / operation in other embodiments without departing from the teachings of the present inventive concept.
[0076] The word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any implementation described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other implementations.
[0077] In addition, for the purpose of convenience and brevity, detailed descriptions of well-known devices, methods, procedures, components, and circuits are not described in detail herein. It is appreciated that those skilled in the art will readily connect the aspects of the present disclosure with the devices, methods, procedures, components, and circuits without undue experimentation.
[0078] Dynamic range conversion technology is a key technology for realizing the mutual conversion between high dynamic range (HDR) and standard dynamic range (SDR). In order to adapt to the characteristic parameters of different display devices and video / image sources, it is usually necessary to use the opto-electronic transfer function (OETF) and the electro-optical transfer function (EOTF) to complete the conversion process.
[0079] The opto-electronic transfer function (OETF) can be used to convert the real-world light signal (luminance) into an electrical signal (digital code value) for storage or transmission. For example, when a camera captures a scene, the opto-electronic transfer function can be responsible for mapping the captured light luminance (unit: nit) to a digital signal (such as a 10-bit or 12-bit digital code value). For another example, when making high dynamic range (HDR) content (such as movies, games), the opto-electronic transfer function can nonlinearly compress high luminance data to avoid excessive data volume while preserving dark details. Common opto-electronic transfer function standards include Hybrid Log-Gamma (HLG) and S-Log. The perception of luminance by the human eye is nonlinear (more sensitive in the dark), and direct linear coding will result in data redundancy. The opto-electronic transfer function optimizes data storage through nonlinear mapping while preserving visually important information.
[0080] Electro-Optical Transfer Function (EOTF) can be used to convert digital signals (electrical signals) to luminance of screen display (optical signals), so as to restore the visual perception of the original scene. For example, when playing high dynamic range video, the electro-optical conversion function can map the digital code value (such as 0~1023 of PQ standard) to the actual luminance value (such as 0~1000 nit), ensuring that the picture can present rich details in both high light and dark parts. This process can also combine dynamic tone mapping technology to adapt to the performance differences of different display devices (such as 1000 nit of HDR TV and 400 nit of HDR mobile phone). Common electro-optical conversion function standards include PQ (Perceptual Quantizer) for modern HDR display and Gamma curve (such as Gamma 2.2) for traditional SDR display. Because the luminance range of display devices is limited (such as SDR screen only about 100 nit), the electro-optical conversion function intelligently allocates the limited luminance interval, both to avoid overexposure of high light part and to prevent loss of dark details, so as to achieve the best visual performance under hardware limitations.
[0081] In the complete workflow of image processing, the photoelectric conversion function and the electro-optical conversion function work together to realize the signal conversion from shooting to display. First in the shooting stage, the camera compresses the luminance of the real scene (such as 0~10000 nit) to digital signal (such as 0~1023) through photoelectric conversion function, which not only optimizes data storage, but also retains the visual information sensitive to human eyes. After encoding and transmission, in the display stage, the TV or projector expands the received digital signal to the luminance range suitable for screen display (such as 0~1000 nit) through electro-optical conversion function, and combines dynamic tone mapping technology to ensure the best picture quality on different performance display devices. Although the photoelectric conversion function and the electro-optical conversion function are theoretically inverse processes, in actual application, they are often adjusted according to the characteristics of specific display devices.
[0082] Taking HDR movie production as an example, a professional camera can record scene luminance information up to 10000 nits using a perceptual quantizer-based photoelectric conversion function, while a cinema projector can restore these data to a luminance range (such as 0-100 nits) suitable for screen display through a PQ electro-optical conversion function, still maintaining a rich dynamic range performance under hardware limitations. Another typical application is the process of SDR to HDR, which restores the signal processed by the inverse photoelectric conversion function, and re-applies the electro-optical conversion function curve of the HDR standard, so that traditional content can also adapt to high-end HDR display devices. This precise signal conversion mechanism enables the entire chain from content production to terminal display to maintain consistency in visual experience, both in terms of data transmission efficiency and in terms of ensuring true restoration of picture quality.
[0083] In the embodiments of the present disclosure, an interval segment to which an input signal value belongs is determined according to the input signal value; in a case where the interval segment belongs to a target interval, a register parameter corresponding to the input signal value and a conversion function are determined, the register parameter including register parameters corresponding to discrete signal values saved in a register, the discrete signal values being spaced apart by a plurality of integer values; and the register parameter is processed by using the conversion function to obtain an output signal value corresponding to the input signal value. Thus, by determining the interval segment to which the input signal value belongs according to the input signal value, fast segmentation and positioning of a continuous signal space are realized; subsequently, in a case where the interval segment belongs to the target interval, the register parameter corresponding to the input signal value and the conversion function are determined, curve information originally carried by a complete LUT is split into a combination of sparse discrete points and a first-order function, the discrete signal values in the register parameter are spaced apart by a plurality of integer values, thereby compressing storage units from a depth of thousands to within hundreds under the premise of ensuring accuracy, reducing the occupation of storage space, and greatly reducing chip area; finally, the register parameter is processed by using the conversion function to obtain the output signal value corresponding to the input signal value, and only one linear interpolation is required to restore any intermediate value, thereby ensuring controllable operation delay.
[0084] The dynamic range conversion method provided by the embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
[0085] Figure 1 A flowchart of a dynamic range conversion method according to an embodiment of the present disclosure is shown. As shown in Figure 1 The method includes:
[0086] In step S11, an interval segment to which an input signal value belongs is determined according to the input signal value;
[0087] In the dynamic range conversion process, the input signal value is the original signal value to be converted, such as the brightness value or color component value of an image pixel, etc. In order to efficiently process these signal values, the present disclosure adopts a segmented processing manner, i.e. dividing the entire input signal value range into multiple interval segments. Each interval segment corresponds to a specific processing manner, so as to select the appropriate conversion function and register parameter according to the specific range of the input signal value.
[0088] The input signal value can be a specific numerical value, for example, in image processing, the input signal value can be the brightness value or color component value of a pixel. The input signal value is usually a continuous numerical range, such as integer values from 0 to 1023.
[0089] After receiving the input signal value, the interval segment to which it belongs can be determined according to the size of the input signal value. The division of the interval segment is defined in advance based on the characteristics of the conversion function. If the conversion function in a certain input signal range can be characterized by a linear function, the input signal range can be divided into an interval. For details, refer to the possible implementation manner provided by the present disclosure, which will not be described here.
[0090] For example, assuming that the range of the input signal value is from 0 to 1023, this range can be divided into the following interval segments:
[0091] Interval segment 1: 0 to 144
[0092] Interval segment 2: 145 to 256
[0093] Interval segment 3: 257 to 512
[0094] Interval segment 4: 513 to 1020
[0095] Interval segment 5: 1021 to 1023
[0096] Each interval segment has its corresponding register parameter and conversion function. By judging which interval segment the input signal value falls into, the specific manner of subsequent processing can be determined. For example, if the input signal value is 150, it belongs to interval segment 1; if the input signal value is 300, it belongs to interval segment 2.
[0097] In step S12, in the case that the interval segment to which the input signal value belongs is located in the target interval, the register parameter and the conversion function corresponding to the input signal value are determined, the register parameter including the register parameter corresponding to the discrete signal value saved in the register, the discrete signal values being spaced apart by multiple integer values;
[0098] After determining the interval segment where the input signal value is located, it can be judged whether the interval segment is a target interval. The target interval is an interval range in the interval segment to which the input signal value belongs, which needs to be processed based on the discrete signal value stored in the register and the corresponding conversion function. These interval segments have high nonlinearity characteristics or specific conversion requirements, and cannot be directly mapped through simple function operations. Therefore, the pre-stored register parameters and the corresponding conversion function can be used to realize accurate and efficient dynamic range conversion.
[0099] The division of the target interval is based on the result of piecewise linear fitting of the electro-optical transfer function (EOTF) or the optical-electrical transfer function (OETF). By analyzing the slope change of the original conversion function, the entire input signal range is divided into multiple interval segments, wherein the interval segments with higher nonlinearity or complex conversion relationship can be determined as target intervals. In these interval segments, sparse discrete points (separated by multiple integer values) stored in the register can be used for interpolation or operation with a linear function to restore the complete conversion curve, thereby minimizing the demand for hardware storage resources while ensuring conversion accuracy.
[0100] Exemplarily, the target interval can be the first interval, the third interval, or the fourth interval provided in the implementations of the present disclosure. For details, refer to the possible implementations provided by the present disclosure, which will not be described here.
[0101] In the case where the interval segment belongs to the target interval, the register parameters and the conversion function corresponding to the input signal value can be further matched based on the interval segment, and different interval segments can correspond to different register parameters and conversion functions.
[0102] Each interval segment corresponds to an independent register region in the chip, which is used to store "discrete signal values". The discrete signal points here do not continuously cover the entire interval of the input signal value, but are sparsely distributed, i.e., the adjacent two discrete values are often separated by several integer values (e.g., 8, 16, 32), so that only a small amount of registers can be used to describe the trend of the entire conversion function curve on the hardware.
[0103] The physical meaning of the register parameters can be different in different intervals, for example, it can be a register address parameter or a register value. The physical meaning of the register value can also be different in different intervals, for example, it can be a preset value used to calculate the output signal or the output signal value itself. For details, refer to the possible implementations provided by the present disclosure.
[0104] The conversion function can be a one-time or piecewise one-time function, and its expression and coefficients can be fixed in the hardware in the form of registers or written in the software code. Different interval segments correspond to different function expressions; for example, interval segment A can use the linear formula y = k1·x + b1, and interval segment B uses y = k2·x + b2. The conversion function and the register parameters are pre-fitted, and specific details can be found in the possible implementation modes provided in the present disclosure, which will not be described here.
[0105] Since the input signal values are continuous or quasi-continuous, if point-by-point storage is used, the lookup table (LUT) will be extremely large. In the embodiment, only key nodes are retained by skipping a plurality of integer values, which not only compresses the number of registers but also ensures the interpolation accuracy: between any two discrete points, the hardware only needs to perform linear interpolation through a conversion function to restore the intermediate value.
[0106] Since a large number of intermediate values are skipped between adjacent discrete points, the total number of registers is significantly compressed; at the same time, these retained discrete points are sufficient to depict the local characteristics of the curve in the interval segment, so that the necessary conversion accuracy is not lost. For example, if a certain interval segment covers input values 0-255, the traditional scheme needs 256 registers to store point by point, and the present disclosure only takes 0, 32, 64, …, 255, 9 discrete points; the number of registers is reduced from 256 to 9, which greatly saves the hardware area, but still restores the entire curve through subsequent linear interpolation.
[0107] It should be noted that the conversion function here can be a one-time function, and in the case of storing the slope and intercept of the one-time function in the register, only 2 register values are occupied, thereby saving storage resources.
[0108] In step S13, the register parameters are processed using the conversion function to obtain an output signal value corresponding to the input signal value.
[0109] After determining the conversion function and the register parameters, the conversion function register parameters can be used to perform operations, so as to map the current input signal value to the final output signal value.
[0110] The value obtained after processing can be an optical / electrical signal value after dynamic range conversion, or an intermediate value, which is used for subsequent image rendering, HDR / SDR adaptation, and other downstream processing.
[0111] In the embodiments of the present disclosure, an interval segment to which the input signal value belongs is determined according to the input signal value; in a case where the interval segment belongs to a target interval, a register parameter corresponding to the input signal value and a conversion function are determined, the register parameter including a register parameter corresponding to a discrete signal value stored in a register, and the discrete signal values are spaced apart by a plurality of integer values; and the register parameter is processed by using the conversion function to obtain an output signal value corresponding to the input signal value. Thus, the continuous signal space is quickly segmented and positioned by determining the interval segment to which the input signal value belongs according to the input signal value; subsequently, in a case where the interval segment belongs to the target interval, the register parameter corresponding to the input signal value and the conversion function are determined, the curve information originally carried by the complete LUT is split into a combination of sparse discrete points and a first-order function, and the discrete signal values in the register parameter are spaced apart by a plurality of integer values, so that the storage unit is compressed from a depth of thousands to within hundreds under the premise of ensuring accuracy, the occupation of the storage space is reduced, and the chip area is greatly reduced; finally, the register parameter is processed by using the conversion function to obtain the output signal value corresponding to the input signal value, and only one linear interpolation is required to restore any intermediate value, thereby ensuring controllable operation delay.
[0112] In addition, when the register parameter is configured, the amount of parameters required for configuration is greatly reduced, and the complexity of configuration is reduced.
[0113] In a possible implementation, the register parameter corresponding to the input signal value is determined by determining a register address parameter corresponding to the input signal value based on an address determination rule of the interval segment according to the interval segment, and reading a register value from the register according to the register address parameter.
[0114] In the determination of the register parameter corresponding to the input signal value, the input signal value can be mapped to a discrete register address parameter through the address determination rule of the interval segment, and then the register value is read according to the address parameter. The register address parameter is an index for positioning the discrete signal value stored in the register. Through the register address parameter, the register position corresponding to the input signal value can be quickly accessed, so that the related register value can be read.
[0115] The address determination rule here can be a function, a shift splicing or a bit mask, etc., which is used to map the input signal value to the corresponding register address parameter. The address determination rule can be predefined according to the interval segment to which the input signal value belongs, so as to ensure that each input signal value can quickly find its corresponding register address.
[0116] For example, in one specific embodiment, assume that the range of input signal values is [0, 1023] and is divided into multiple interval segments, each of which has its corresponding address determination rule. For the interval segment [0, 144], the address determination rule is to determine the register address parameter by comparing the input signal value with a preset discrete point; while for the interval segment (144, 256), the address determination rule can be to calculate the register address parameter by a simple shift operation. Such flexible address determination rule can quickly locate the corresponding register address according to the range of input signal values, thereby significantly reducing the number of lookup tables and the complexity of configuration.
[0117] Further, by reading the register value from the register according to the register address parameter, the register value corresponding to the input signal value can be quickly obtained. The register value is a discrete signal value pre-stored in the register, each register value corresponding to a specific range of input signal values for subsequent conversion function processing. In this way, efficient dynamic range conversion can be achieved at the hardware level without the need to configure a lookup table for each conversion type, thereby greatly reducing the occupation of hardware resources.
[0118] In the embodiments of the present disclosure, the register address parameter corresponding to the input signal value is determined according to the interval segment to which the input signal value belongs, based on the address determination rule of the interval segment; and the register value is read from the register according to the register address parameter. Thus, through the flexible address determination rule, the corresponding register address can be quickly located, further improving the efficiency of dynamic range conversion.
[0119] In one possible implementation, the register parameter is processed by using the conversion function to obtain the output signal value corresponding to the input signal value, including: the register address parameter and / or the register value are operated by using the conversion function to obtain the output signal value corresponding to the input signal value.
[0120] In this implementation, the register parameter can include the register address parameter and / or the register value, depending on the interval segment to which the input signal value belongs.
[0121] In the present disclosure, the conversion function can be a linear function or a piecewise linear function, the specific form of which depends on the interval segment to which the input signal value belongs. By substituting the register parameter (including the register address parameter and / or the register value) into the conversion function for operation, the output signal value corresponding to the input signal value can be quickly calculated. This process not only improves the calculation efficiency, but also ensures the accuracy of conversion.
[0122] In the embodiments of the present disclosure, by flexibly setting the register parameters, appropriate parameter types can be selected according to different conversion requirements. For example, in some interval segments, only the register address parameter can be needed to locate the register value; while in other interval segments, both the register address parameter and the register value can be needed to perform more complex operations. Such flexibility can achieve the maximum range of dynamic range conversion with the minimum consumption of hardware resources, which not only significantly reduces the number of lookup tables and the occupation of hardware resources, but also improves the efficiency and flexibility of conversion.
[0123] In addition, by flexibly setting the register parameters, the scalability of the method is also enhanced, so that the method can easily adapt to changes in different dynamic range conversion standards without the need to redesign the hardware architecture.
[0124] Figure 2 A flowchart of a dynamic range conversion method provided by an embodiment of the present disclosure is shown. After receiving the input signal value, first, the interval in which the input signal is located is judged, and then the address parameter idx of the corresponding interval is calculated, which can be calculated by a pre-set rule or algorithm to access the register. Then the corresponding register value is read from the register using the calculated address parameter idx. The register can be accessed according to the address parameter idx to obtain the corresponding register value reg[idx]. Finally, the obtained register value and the corresponding conversion function are used for one-time function processing to obtain the output signal value corresponding to the input signal value.
[0125] The whole process is a continuous processing process, starting from the interval judgment of the input signal, through the calculation of the address parameter, the reading of the register value, to the last one-time function processing, finally outputting the converted signal, effectively improving the efficiency and flexibility of dynamic range conversion.
[0126] In a possible implementation manner, in a case where the interval segment belongs to the target interval, the register address parameter corresponding to the input signal value is determined, including: in a case where the input signal value is located in the first interval, according to the input signal value, the nearest two discrete signal values are found, and the register address parameters corresponding to the nearest two discrete signal values are determined; the conversion function is used to process the register parameter to obtain the output signal value corresponding to the input signal value, including: the conversion function is used to perform one-time function operation on the register address parameter to obtain the output signal value corresponding to the input signal value.
[0127] In this implementation, when the input signal value is in the first interval, the first interval belongs to the target interval, the register address parameter can be determined by searching for the two discrete signal values closest to the input signal value, realizing the rapid positioning of the address parameter, and the function calculation is performed according to the positioned address parameter to obtain the output signal value.
[0128] Specifically, by associating the interval segment to which the input signal value belongs with the corresponding register address parameter, efficient access to the register is realized. Each interval segment has its specific set of discrete signal values, which are pre-stored in the register. By comparing the input signal value with these discrete signal values, it is determined in which two discrete signal values the input signal value is located, thereby determining the corresponding register address parameter. Not only does this reduce the occupation of hardware resources, but it also improves the efficiency of dynamic range conversion.
[0129] Further, the register address parameter can be subjected to a first function operation by a conversion function to obtain the output signal value corresponding to the input signal value. The specific form of the conversion function depends on the interval segment to which the input signal value belongs, and can be a first function or a piecewise first function. In this way, dynamic range conversion can be efficiently completed at the hardware level without relying on the traditional lookup table (LUT) method.
[0130] For example, taking the transfer function of perceptual quantization (PQ) as an example, assume that the input signal value e_val is in the first interval [0, 144]. In this interval, a set of discrete signal values are pre-stored, which are obtained by fitting the PQ transfer function by software and stored in the register. First, find the two discrete signal values closest to the input signal value e_val, and then determine the register address parameters corresponding to the two values. For example, assume that the set of discrete signal values is [29, 50, 68, 76, 84, 90, 95, 100, 105, 109, 113, 117, 120, 124, 127, 130, 132, 135, 138, 140, 143, 144]. When the input signal value e_val = 51, it is determined that 51 is between the discrete signal values 50 and 68. Therefore, the register address parameters corresponding to the two discrete signal values are determined to be idx and idx+1, respectively, where idx is 1 (because 50 is the second discrete point, the first discrete point has idx = 0).
[0131] Then, the register address parameter is subjected to a one-time function operation by using the conversion function to obtain the output signal value o_val. In this embodiment, the specific form of the conversion function is o_val = idx + 1. Then, for the input signal value e_val = 51, idx = 1 is substituted into the conversion function, and the output signal value o_val = 1 + 1 = 2 is calculated.
[0132] In addition, if the input electrical signal e_val does not satisfy the condition reg[idx] < e_val ≤ reg[idx+1] in the range [0, 144], that is, is not between the two discrete signal values, the output optical signal o_val is 0.
[0133] Of course, the first interval [0, 144] is only obtained in the case of taking the PQ transfer function as an example. In actual applications, a person skilled in the art can set it according to actual conditions, for example, set the first interval as [0, 155], etc.
[0134] In the embodiments of the present disclosure, in the case that the input signal value is located in the first interval, the nearest two discrete signal values corresponding to the register address parameter are determined by searching the nearest two discrete signal values according to the input signal value; and the output signal value corresponding to the input signal value is obtained by using the conversion function to perform a one-time function operation on the register address parameter. Thus, the efficiency and flexibility of dynamic range conversion are significantly improved by converting the register address parameter by using the conversion function, and the occupation of hardware resources is reduced.
[0135] In a possible implementation, the method further includes: in the case that the input signal value is located in a second interval, calculating the position of the input signal value in the second interval by using a corresponding function according to the input signal value, the second interval being a non-target interval; determining a corresponding conversion function according to the position of the input signal value in the second interval, and performing a one-time function operation on the input signal value by using the determined conversion function to obtain an output signal value corresponding to the input signal value.
[0136] The non-target interval is an interval in an interval segment to which the input signal value belongs, and the conversion relationship in the interval is relatively simple and does not need to rely on the discrete parameters stored in the register to complete the dynamic range conversion. The input and output signal mapping relationship in these interval segments has a low nonlinearity or presents a stable and uniform change trend, and therefore can be directly calculated by using the preset conversion function fixed in the logic, so that the overhead of accessing the register is completely avoided.
[0137] Therefore, in the case that the input signal value is located in the second interval, according to the specific value of the input signal value, the position of the input signal value in the interval is calculated by using a corresponding function, which can map the input signal value to a specific position in the interval. This position information will be used for subsequent conversion function selection and output signal value calculation.
[0138] Then, according to the position of the input signal value in the second interval, the corresponding conversion function is determined. The specific form of the conversion function depends on the position of the input signal value, which can be a linear function or a piecewise linear function. In this way, the most suitable conversion function can be selected for operation according to the specific position of the input signal value.
[0139] Finally, the input signal value is calculated by using the determined conversion function, and the output signal value corresponding to the input signal value is obtained. This process is implemented by simple mathematical operations, ensuring the efficiency and accuracy of the conversion.
[0140] For example, taking the transfer function of PQ as an example, assume that the input signal value e_val is located in the second interval (144, 256). In this interval, the transfer function is divided into 7 segments with a step of 16, and a specific function is defined in advance to calculate the position of the input signal value in the interval. Assume that the function is position=(e_val-144)>>4, where position represents the position of the input signal value in the interval, and the function identifies that 144 is subtracted from the input signal value e_val, and then the result is right shifted by 4 bits (in binary, it is equivalent to dividing by 16 and taking the integer part). Through this function, the input signal value e_val can be mapped to a specific position in the interval.
[0141] Then, according to this position information, the corresponding conversion function is determined. Assume that in the second interval, the form of the conversion function is shown in the following table:
[0142]
[0143] Where x of the conversion function represents e_val, y represents o_val, and (e_val-144)>>4 on the left is the judgment function for determining the position information. Different conversion functions are preset for different positions 0-6. After determining the specific position of the input signal value in the second interval, the conversion function corresponding to the position can be determined for operation, so as to obtain the output signal value corresponding to the input signal value. This process not only improves the efficiency of dynamic range conversion, but also ensures the accuracy of the conversion.
[0144] Of course, the second interval (144, 256) is only an example in the case of the PQ transfer function. In actual applications, a person skilled in the art can set the second interval according to actual conditions, for example, set the second interval as (155, 267), etc.
[0145] In the embodiments of the present disclosure, in the case that the input signal value is located in the second interval, the position of the input signal value in the second interval is calculated according to the input signal value by using a corresponding function, the second interval is a non-target interval; a corresponding conversion function is determined according to the position of the input signal value in the second interval, and a one-time function operation is performed on the input signal value by using the determined conversion function to obtain an output signal value corresponding to the input signal value. Thus, by calculating the specific position of the input signal value in the second interval, the relative position of the signal value in the interval can be more accurately determined. This accurate positioning makes the selection of the conversion function more accurate, thereby improving the conversion accuracy. Since different input signal values may need different processing methods in the interval, by dynamically selecting the conversion function, the most suitable function can be selected for processing according to the specific position of the input signal, thereby improving the conversion accuracy and flexibility, and the characteristics of different input signal values can be better processed, so that the dynamic range conversion can be efficiently completed in hardware implementation.
[0146] In the non-target interval, without performing complex address calculation, register reading or interpolation operation, the output result is directly obtained by mapping the input signal value itself through a one-time function (the parameters of which are usually directly embedded in hardware logic or software code) pre-set. This method not only can reduce the occupation of the register area, but also can greatly simplify the data processing path and reduce the calculation delay.
[0147] In a possible implementation, in the case that the corresponding interval segment is located in the target interval, the register address parameter corresponding to the input signal value is determined, including: in the case that the input signal value is located in a third interval, the sub-interval of the input signal value in the third interval is determined according to the input signal value, the sub-interval is composed of the discrete signal values; the register parameter is processed by using the conversion function to obtain an output signal value corresponding to the input signal value, including: the register value is read from the register according to the register address parameter of the discrete signal value corresponding to the sub-interval; the input signal value, the register address parameter and the register value are subjected to one-time function operation by using the conversion function corresponding to the third interval to obtain an output signal value corresponding to the input signal value.
[0148] The third interval is divided into multiple sub-intervals, each of which is composed of a set of discrete signal values. The discrete signal values can be obtained by pre-fitting the conversion function through software and stored in the register. When the input signal value is located in the third interval, first, according to the specific value of the input signal value, the sub-interval in which the input signal value is located is determined, which can be achieved by comparing the input signal value with the boundary value of the sub-interval.
[0149] The third interval belongs to the target interval, and in this interval, the register value can be read from the register according to the register address parameter of the discrete signal value corresponding to the sub-interval, and the register value will be used for subsequent conversion function operation. Specifically, two register values related to the sub-interval in which the input signal value is located can be read for subsequent interpolation calculation.
[0150] Then, the input signal value, the register address parameter and the register value are subjected to a function operation by using the conversion function corresponding to the third interval, to obtain the output signal value corresponding to the input signal value. The specific form of the conversion function depends on the sub-interval in which the input signal value is located, and can be a linear function or a piecewise linear function. In this way, the dynamic range conversion can be efficiently completed at the hardware level without relying on the traditional lookup table (LUT) method.
[0151] In one example, taking the transfer function of PQ as an example, it is assumed that the input signal value e_val is located in the interval [256, 512). In this interval, the function is equally divided by 8, and the register address parameter is [22, 55] register discrete point, then a plurality of sub-intervals can be defined, each of which is composed of a pair of adjacent discrete signal values. It is assumed that the sub-intervals in this interval are composed of the following discrete signal values: [256, 264, 272, 280, ……512). When the input signal value e_val=260, it can be determined that the value is located in the sub-interval [256, 264).
[0152] According to the register address parameter corresponding to the sub-interval [256, 264), the register value is read from the register. It is assumed that the register address parameter corresponding to 256 is idx = 22, and the register address parameter corresponding to 264 is idx = 23, the register values reg
[22] and reg
[23] can be read. And the conversion function corresponding to the interval [256, 512) is subjected to a linear function operation on the register value, it is assumed that the conversion function corresponding to the interval [256, 512) is as follows:
[0153] o_val = ( ( ( e_val – idx )×( reg[idx+1] - reg[idx] ) + 4 ) >> 3 ) +reg[idx]
[0154] wherein idx is the register address parameter, and reg[] is the register value.
[0155] By substituting the specific register value and input signal value, the output signal value o_val can be calculated, for example, when the input signal value e_val = 260, the input signal value, the register address parameter and the register value are substituted into the above conversion function, the following conversion result is obtained:
[0156] o_val = ( ( ( 260 – idx
[22] )×( reg
[23] - reg
[22] ) + 4 ) >> 3 ) +reg
[22]
[0157] Substituting specific numerical values into the above formula, the output result can be obtained, realizing the conversion of the electrical-optical signal when the input signal value e_val = 260.
[0158] In another example, taking the transfer function of PQ as an example, it is assumed that the input signal value e_val is located in the interval [512, 1020). In this interval, the function is equally divided by 4 as a step, and the register address parameters of the register discrete points are [56, 181], then a plurality of subintervals can be defined, each subinterval is composed of a pair of adjacent discrete signal values. It is assumed that the subintervals in this interval are composed of the following discrete signal values: [512, 516, 520, 524, ……1020). When the input signal value e_val = 515, it can be determined that the value is located in the subinterval [512, 516).
[0159] According to the register address parameter corresponding to the subinterval [512, 516), the register value is read from the register. It is assumed that the register address parameter corresponding to 512 is idx = 56, and the register address parameter corresponding to 516 is idx = 57, the register values reg
[56] and reg
[57] can be read. And a function operation is performed on the register value by using the conversion function corresponding to the interval [512, 1020), it is assumed that the conversion function corresponding to the interval [512, 1020) is as follows:
[0160] o_val = ( ( ( e_val – idx )×( reg[idx+1] - reg[idx] ) + 2 ) >> 2 ) +reg[idx]
[0161] wherein idx is the register address parameter, and reg[] is the register value.
[0162] By substituting the specific register value and the input signal value, the output signal value o_val can be calculated, for example, when the input signal value e_val=515, the input signal value, the register address parameter and the register value are substituted into the above conversion function, the following conversion result is obtained:
[0163] o_val = ( ( ( 515 – idx
[56] )×( reg
[57] - reg
[56] ) + 4 ) >> 3 ) +reg
[56]
[0164] Substituting specific values into the above formula, the output result can be obtained, realizing the conversion of the electrical-optical signal when the input signal value e_val=515.
[0165] Of course, the third interval is [256, 512) or [512, 1020) is only a case obtained by taking the PQ transfer function as an example, and in actual application, a person skilled in the art can set it according to actual conditions.
[0166] In the embodiments of the present disclosure, in the case that the input signal value is located in the third interval, the sub-interval of the input signal value in the third interval is determined according to the input signal value, the sub-interval is composed of the discrete signal values; the register value is read from the register according to the register address parameter of the discrete signal value corresponding to the sub-interval; and the third interval corresponding conversion function is used to perform one function operation on the input signal value, the register address parameter and the register value, to obtain the output signal value corresponding to the input signal value. Therefore, by further subdividing the third interval into multiple sub-intervals, the selection of the parameters of the conversion function is more accurate through the subdivision of the interval, thereby improving the conversion accuracy, ensuring that the output signal value can be closer to the true value, and through the one function operation on the input signal value, the register address parameter and the register value, the output signal value can be more accurately calculated, the conversion efficiency is improved, and the occupation of hardware resources is reduced.
[0167] In a possible implementation, in the case that the interval segment belongs to the target interval, the register address parameter corresponding to the input signal value is determined, including: in the case that the input signal value is located in the fourth interval, the register address parameter corresponding to the input signal value is determined according to the input signal value; and the register parameter is processed by using the conversion function to obtain the output signal value corresponding to the input signal value, including: the register value is read from the register according to the register address parameter of the discrete signal value corresponding to the fourth interval; and the value of the register is taken as the output signal value corresponding to the input signal value.
[0168] When the input signal value is in the fourth interval, the fourth interval belongs to the target interval, the register address parameter corresponding to the input signal value can be determined by direct mapping, and the value in the register is taken as the final output signal value. This process can regard the conversion function as a linear function with a slope of 1 and a y-intercept of 0, simplifying the processing steps, improving the conversion efficiency, and ensuring the accuracy of the conversion.
[0169] The fourth interval is an interval in which there is a direct mapping relationship between the input signal value and the register address parameter, that is, the input signal value can be directly mapped to a specific output signal value without complex calculation or interpolation.
[0170] In the fourth interval, first, the specific value of the input signal value is determined according to the register address parameter. This process can be realized by a simple mapping table or a direct calculation formula. After the register address parameter is determined, the corresponding register value can be read from the register, and the value is directly taken as the output signal value corresponding to the input signal value.
[0171] For example, taking the transfer function of perceptual quantization (PQ) as an example, assume that the input signal value e_val is in the fourth interval [1020, 1023]. In this interval, a direct mapping table is defined in advance to map the input signal value directly to a specific register address. Specifically, assume that the input signal value e_val corresponds to a register address parameter idx, and the value of idx ranges from 181 to 185. These register address parameters correspond to a set of discrete signal values [245577, 254903, 257297, 259716, 262143].
[0172] When the input signal value e_val=1020, the corresponding register address parameter idx=181 is determined. Then, the register value reg
[181] =245577 can be read from the register, and the value is directly taken as the output signal value o_val=245577.
[0173] Similarly, when the input signal value e_val=1021, the corresponding register address parameter idx=182 is determined. Then, the register value reg
[182] =254903 can be read from the register, and the value is directly taken as the output signal value o_val=254903. In the same way, for the input signal values e_val=1022 and e_val=1023, the register values reg
[183] =257297 and reg
[184] =259716 can be read respectively, and these values are directly taken as the output signal values.
[0174] Of course, the fourth interval [1020, 1023] is only an example obtained by taking the PQ transfer function as an example. In actual applications, those skilled in the art can set it according to actual conditions.
[0175] In this way, in the fourth interval, the input signal value corresponding to the register address parameter is quickly determined by direct mapping in the embodiment of the disclosure, and the value in the register is directly taken as the output signal value. This method not only simplifies the processing steps, but also improves the conversion efficiency, while ensuring the accuracy of the conversion.
[0176] In a possible implementation, the conversion function is obtained by piecewise linear fitting of the electro-optical conversion function EOTF or the optical-electrical conversion function OETF, and the piecewise linear fitting includes: according to the slope of the electro-optical conversion function or the optical-electrical conversion function, the electro-optical conversion function or the optical-electrical conversion function is divided into multiple interval segments according to the value range of the input signal; for each interval segment, a corresponding linear function relationship is determined as the conversion function.
[0177] The electro-optical conversion function (EOTF) and the optical-electrical conversion function (OETF) are functions describing the nonlinear relationship between the input signal and the output signal. These functions usually have a complex curve shape, and directly implementing these functions requires a large amount of hardware resources. Figure 3 The schematic diagram of the conversion function provided by the embodiment of the disclosure is shown as Figure 3 The horizontal coordinate of the coordinate axis is the electrical signal value e_val, and the vertical coordinate is the optical signal value o_val. The curve of the corresponding electro-optical conversion function is shown in the (a) graph of FIG.
[0178] In order to simplify the implementation, the disclosure decomposes these complex nonlinear functions into multiple linear interval segments by the method of piecewise linear fitting. First, analyze the slope change of the electro-optical conversion function or the optical-electrical conversion function. According to the slope change, the value range of the entire input signal is divided into multiple interval segments. The function slope in each interval segment is relatively stable and can be approximated by a linear function. For example, assuming that the value range of the input signal is [0, 1023], the range can be divided into multiple interval segments according to the slope change, such as [0, 144], (144, 256), [256, 512), [512, 1020) and [1020, 1023], as shown in the (b) graph of FIG. Figure 3
[0179] In each interval segment, a linear function relationship is determined by a fitting method for approximating the nonlinear relationship in the interval segment. Specifically, in each interval segment, a plurality of discrete points can be selected, which can be obtained by fitting and can well describe the function shape in the interval segment. Then a linear function relationship is fitted according to the discrete points. The form of the linear function is usually y=k·x+b, where k is the slope and b is the intercept. The parameters k and b of the linear function in each interval segment are determined by the least square method or other fitting methods. Then the linear function parameters in each interval segment are stored in the register or written in the hardware code for use in hardware implementation.
[0180] The linear function can also include multiple variables, i.e. a multivariate linear function, which can include one or more variables such as input signal values, register address parameters and register values.
[0181] Taking the Electro-Optical Transfer Function (EOTF) as an example, the EOTF describes the mapping relationship between the digital signal and the screen brightness output. Common EOTF standards include Perceptual Quantizer (PQ) and Hybrid Log-Gamma (HLG). Both standards are designed to optimize the visual effect perceived by the human eye.
[0182] A conversion form of the EOTF can be seen in the following formula:
[0183]
[0184] Where m1=0.1593017578125, m2=78.84375, c2=18.8515625, c3=18.6875, c1=c3-c2+1, F D represents the display light signal, i.e. linear RGB, and E' represents the electrical signal, i.e. nonlinear RGB.
[0185] For the above EOTF conversion function, the value range of the input signal is [0, 1023], which can be divided into multiple interval segments according to the slope change, such as [0, 144], (144, 256), [256, 512), [512, 1020) and [1020, 1023], as shown in (b) of FIG. Figure 3
[0186] Then a linear function fitting is performed for the electro-optical conversion function of each interval to obtain the conversion function of each interval. For details, refer to the examples in the possible implementation modes provided by the present disclosure, which will not be described here.
[0187] It can be understood that the above-mentioned various method embodiments mentioned in the present disclosure can be combined with each other to form a combined embodiment without deviating from the principle logic. Limited by the length of the present disclosure, the present disclosure will not be described again. Those skilled in the art can understand that in the above-mentioned method of the specific embodiment, the specific execution order of each step should be determined according to its function and possible internal logic.
[0188] In a possible implementation, the execution subject of the dynamic range conversion method can be a dynamic range conversion apparatus, for example, the dynamic range conversion method can be executed by a terminal device or a server or other electronic device. Wherein, the terminal device can be a user equipment (User Equipment, UE), a mobile device, a user terminal, a terminal, a cellular phone, a cordless phone, a personal digital assistant (Personal Digital Assistant, PDA), a handheld device, a computing device, a vehicle-mounted device or a wearable device, etc. In some possible implementations, the method can be realized by a processor calling computer readable instructions stored in a memory.
[0189] In addition, the present disclosure also provides a dynamic range conversion apparatus, a non-volatile computer readable storage medium, and a computer program product, all of which can be used to implement any one of the dynamic range conversion methods provided by the present disclosure. The corresponding technical solutions and technical effects can be referred to the corresponding description in the method part, and will not be described again.
[0190] Figure 4 A block diagram of the dynamic range conversion apparatus provided by the embodiment of the present disclosure is shown. As shown in the figure, the dynamic range conversion apparatus 20 includes: Figure 4
[0191] The interval segment determination module 21 is configured to determine an interval segment to which the input signal value belongs according to the input signal value;
[0192] The parameter acquisition module 22 is configured to determine a register parameter corresponding to the input signal value and a conversion function in a case where the interval segment belongs to a target interval, the register parameter including a register parameter corresponding to a discrete signal value saved in a register, and the discrete signal values being spaced apart by a plurality of integer values;
[0193] The first conversion module 23 is configured to process the register parameter by using the conversion function to obtain an output signal value corresponding to the input signal value.
[0194] In a possible implementation, the parameter acquisition module is configured to:
[0195] determine a register address parameter corresponding to the input signal value based on an address determination rule of the interval segment to which the input signal value belongs.
[0196] read a register value from a register according to the register address parameter.
[0197] In a possible implementation, the first conversion module is configured to:
[0198] perform a function operation on the register address parameter and / or the register value by using the conversion function to obtain the output signal value corresponding to the input signal value.
[0199] In a possible implementation, the parameter acquisition module is configured to, in a case where the input signal value is located in a first interval, according to the input signal value, find two closest discrete signal values, and determine register address parameters corresponding to the two closest discrete signal values.
[0200] The first conversion module is configured to perform a function operation on the register address parameter by using the conversion function to obtain the output signal value corresponding to the input signal value.
[0201] In a possible implementation, the apparatus further includes:
[0202] The position calculation module is configured to, in a case where the input signal value is located in a second interval, according to the input signal value, calculate a position of the input signal value in the second interval by using a corresponding function, the second interval being a non-target interval.
[0203] The second conversion module is configured to, according to the position of the input signal value in the second interval, determine a corresponding conversion function, and perform a function operation on the input signal value by using the determined conversion function to obtain the output signal value corresponding to the input signal value.
[0204] In a possible implementation, the first conversion module is configured to, in a case where the input signal value is located in a third interval, according to the input signal value, determine a sub-interval of the input signal value in the third interval, the sub-interval being composed of the discrete signal values.
[0205] The first conversion module is configured to:
[0206] read a register value from a register according to the register address parameter corresponding to the discrete signal value of the sub-interval;
[0207] perform a function operation on the input signal value, the register address parameter, and the register value by using the conversion function corresponding to the third interval to obtain the output signal value corresponding to the input signal value.
[0208] In a possible implementation, the parameter acquisition module is configured to:
[0209] When the input signal value is in the fourth interval, the register address parameter corresponding to the input signal value is determined based on the input signal value;
[0210] The first conversion module is used for:
[0211] Based on the register address parameter corresponding to the discrete signal value of the fourth interval, read the register value from the register;
[0212] The value of the register is used as the output signal value corresponding to the input signal value.
[0213] In one possible implementation, the conversion function is obtained by piecewise linear fitting of the electro-optical conversion function EOTF or the photoelectric conversion function OETF, wherein the piecewise linear fitting includes:
[0214] Based on the slope of the electro-optical conversion function or the photoelectric conversion function, the electro-optical conversion function or the photoelectric conversion function is divided into multiple intervals according to the range of the input signal.
[0215] For each interval segment, determine its corresponding linear function expression, which serves as the transformation function.
[0216] In some embodiments, the functions or modules of the apparatus provided in this disclosure can be used to perform the methods described in the above method embodiments. The specific implementation and technical effects can be referred to the description of the above method embodiments. For the sake of brevity, they will not be repeated here.
[0217] This disclosure also provides an electronic device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the above method.
[0218] This disclosure also provides a non-volatile computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the above-described method.
[0219] This disclosure also provides a computer program product, including a computer program or a non-volatile computer-readable storage medium carrying the computer program, wherein the computer program, when executed by a processor, implements the steps of the above method.
[0220] Figure 5 This is a block diagram illustrating a dynamic range conversion device according to an exemplary embodiment. For example, device 1900 may be provided as a server or terminal device. (Refer to...) Figure 5The apparatus 1900 includes a processing component 1922, which further includes one or more processors, and memory resources represented by memory 1932 for storing instructions, such as application programs, that can be executed by the processing component 1922. The application programs stored in memory 1932 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 1922 is configured to execute instructions to perform the methods described above.
[0221] Device 1900 may also include a power supply component 1926 configured to perform power management of device 1900, a wired or wireless network interface 1950 configured to connect device 1900 to a network, and an input / output interface 1958 (I / O interface). Device 1900 can operate on an operating system, such as Windows Server, stored in memory 1932. TM macOS X TM Unix TM Linux TM FreeBSD TM Or similar.
[0222] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 1932 including computer program instructions that can be executed by a processing component 1922 of the device 1900 to perform the above-described method.
[0223] Computer-readable storage media can be tangible devices capable of holding and storing programs / instructions used by instruction execution devices. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination of the foregoing. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.
[0224] The computer program (or computer-readable program instructions) described herein can be downloaded from a computer-readable storage medium to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage medium in the respective computing / processing device.
[0225] The computer program (or computer program instructions) used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing state information from the computer-readable program instructions to implement various aspects of this disclosure.
[0226] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0227] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0228] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0229] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0230] Computer program products can be implemented specifically through hardware, software, or a combination thereof. In one alternative embodiment, the computer program product is specifically embodied in a computer storage medium; in another alternative embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.
[0231] The description of the various embodiments above tends to emphasize the differences between the various embodiments. The similarities or similarities between them can be referred to, and for the sake of brevity, they will not be repeated here.
[0232] If the technical solution of this disclosure involves personal information, the product applying the technical solution of this disclosure has clearly informed the user of the personal information processing rules and obtained the user's voluntary consent before processing the personal information. If the technical solution of this disclosure involves sensitive personal information, the product applying the technical solution of this disclosure has obtained the user's separate consent before processing the sensitive personal information, and also meets the requirement of "express consent". For example, at personal information collection devices such as cameras, clear and prominent signs are set up to indicate that the user has entered the scope of personal information collection and that personal information will be collected. If the user voluntarily enters the collection scope, it is deemed to have consented to the collection of their personal information; or on the personal information processing device, with clear signs / information informing the user of the personal information processing rules, authorization is obtained from the user through pop-up information or by asking the user to upload their personal information; wherein, the personal information processing rules may include information such as the personal information processor, the purpose of personal information processing, the processing method, and the types of personal information processed.
[0233] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A dynamic range conversion method, characterized in that, include: Based on the input signal value, determine the interval to which the input signal value belongs; If the interval to which the signal belongs is located within the target interval, determine the register parameters and conversion function corresponding to the input signal value. The register parameters include the register parameters corresponding to the discrete signal values stored in the register, with multiple integer values between each discrete signal value. The register parameters are processed using the conversion function to obtain the output signal value corresponding to the input signal value. Determining the register parameter corresponding to the input signal value includes: determining the register address parameter corresponding to the input signal value based on the address determination rule of the interval to which it belongs; The conversion function is used to process the register parameters to obtain an output signal value corresponding to the input signal value, including: using the conversion function to perform calculations on the register address parameters to obtain an output signal value corresponding to the input signal value.
2. The method according to claim 1, characterized in that, Determining the register parameters corresponding to the input signal value includes: The register value is read from the register according to the register address parameter.
3. The method according to claim 2, characterized in that, The register parameters are processed using the conversion function to obtain an output signal value corresponding to the input signal value, including: The conversion function is used to perform calculations on the register address parameter and the register value, or on the register value, to obtain an output signal value corresponding to the input signal value.
4. The method according to claim 1, characterized in that, Determining the register parameters corresponding to the input signal value when the interval to which it belongs is located within the target interval includes: When the input signal value is within the first interval, the two most recent discrete signal values are found based on the input signal value, and the register address parameters corresponding to the two most recent discrete signal values are determined. The process of using the conversion function to process the register parameters to obtain the output signal value corresponding to the input signal value includes: Using the conversion function, a function operation is performed on the register address parameter to obtain the output signal value corresponding to the input signal value.
5. The method according to claim 1, characterized in that, The method further includes: When the input signal value is located in the second interval, the position of the input signal value in the second interval is calculated using the corresponding function based on the input signal value, where the second interval is a non-target interval; Based on the position of the input signal value in the second interval, the corresponding conversion function is determined, and the determined conversion function is used to perform a function operation on the input signal value to obtain the output signal value corresponding to the input signal value.
6. The method according to claim 1, characterized in that, Determining the register parameters corresponding to the input signal value when the interval to which it belongs is located within the target interval includes: When the input signal value is located in the third interval, a sub-interval within the third interval is determined based on the input signal value, and the sub-interval is composed of the discrete signal values; The process of using the conversion function to process the register parameters to obtain the output signal value corresponding to the input signal value includes: The register value is read from the register based on the register address parameter of the discrete signal value corresponding to the sub-interval; Using the conversion function corresponding to the third interval, a single function operation is performed on the input signal value, register address parameter, and register value to obtain the output signal value corresponding to the input signal value.
7. The method according to claim 1, characterized in that, Determining the register parameters corresponding to the input signal value when the interval to which it belongs is located within the target interval includes: When the input signal value is in the fourth interval, the register address parameter corresponding to the input signal value is determined based on the input signal value; The process of using the conversion function to process the register parameters to obtain the output signal value corresponding to the input signal value includes: Based on the register address parameter corresponding to the discrete signal value of the fourth interval, read the register value from the register; The value of the register is used as the output signal value corresponding to the input signal value.
8. The method according to claim 1, characterized in that, The conversion function is obtained by piecewise linear fitting of the electro-optical conversion function EOTF or the photoelectric conversion function OETF, wherein the piecewise linear fitting includes: Based on the slope of the electro-optical conversion function or the photoelectric conversion function, the electro-optical conversion function or the photoelectric conversion function is divided into multiple intervals according to the range of the input signal. For each interval segment, determine its corresponding linear function expression, which serves as the transformation function.
9. A dynamic range conversion device, characterized in that, include: The interval segment determination module is used to determine the interval segment to which the input signal value belongs based on the input signal value; The parameter acquisition module is used to determine the register parameters and conversion function corresponding to the input signal value when the interval to which it belongs is located within the target interval. The register parameters include the register parameters corresponding to the discrete signal values stored in the register, with multiple integer values spaced between each discrete signal value. The first conversion module is used to process the register parameters using the conversion function to obtain an output signal value corresponding to the input signal value; The parameter acquisition module is used to determine the register address parameter corresponding to the input signal value based on the address determination rule of the interval segment to which it belongs. The first conversion module is used to perform calculations on the register address parameter using the conversion function to obtain an output signal value corresponding to the input signal value.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method according to any one of claims 1 to 8.
11. A non-volatile computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Calculation method of nonlinear function, electronic device and medium
CN118132910A