Encoding device and method of operating encoding device

By dynamically adjusting the variable parameters of the filter coefficient in the encoding device and adaptively adjusting the degree of spatial filtering, the contradiction between image quality and bit rate when encoding image data is solved, and the effect of maintaining or improving image quality at low bit rate is achieved.

CN120529082APending Publication Date: 2025-08-22SAMSUNG ELECTRONICS CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510062489.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-02-21
Filing Date
2025-01-15
Publication Date
2025-08-22

AI Technical Summary

Technical Problem

When encoding image data, especially short video encoding by social network services, the prior art is difficult to meet the target bit rate requirements while maintaining image quality. Especially under low bit rate conditions, the increase in the quantization parameter value will lead to deterioration of image quality.

Method used

The variable parameters of the filter coefficients are dynamically adjusted by the controller in the encoding device, and the cutoff frequency of the filter is adjusted according to the encoding information, so as to adaptively adjust the degree of spatial filtering to meet the target bit rate and optimize the image quality.

Benefits of technology

Under low bit rate conditions, maintain or improve image quality while meeting the target bit rate, adaptively adjusting the filter coefficients, and solving the contradiction between image quality and bit rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120529082A_ABST
    Figure CN120529082A_ABST
Patent Text Reader

Abstract

An encoding apparatus and a method of operating the encoding apparatus are provided. The encoding device comprises an encoder and a controller. The encoder spatially filters the image data based on the filter coefficients, and encodes the filtered image data. The controller receives the encoding information from the encoder and determines a variable parameter for adjusting the filter coefficients based on the encoding information.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims priority from Korean Patent Application No. 10-2024-0025268 filed on February 21, 2024, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference in its entirety. Technical Field

[0002] The present disclosure relates to an encoding device and a method of operating the encoding device. Background Art

[0003] When encoding image data (such as video), the bit rate can be adjusted using the quantization parameter value. When encoding short videos, such as those used for social networking services, at a relatively low bit rate, and the quantization parameter value increases due to the characteristics of the video, image quality may degrade. This can also result in situations where the target bit rate cannot be met even when the quantization parameter value is maximized. Summary of the Invention

[0004] Embodiments of the present disclosure provide an encoding device and an encoding method capable of adaptively adjusting filter coefficients.

[0005] According to an embodiment, an encoding device includes an encoder and a controller, wherein the encoder spatially filters image data based on filter coefficients and encodes the filtered image data, and the controller receives encoding information from the encoder and determines a variable parameter for adjusting the filter coefficients based on the encoding information.

[0006] According to an embodiment, a method of an encoding device includes determining a variable parameter for adjusting a filter coefficient based on encoding information, calculating the filter coefficient based on the variable parameter, spatially filtering image data based on the filter coefficient, and encoding the filtered image data.

[0007] An encoding device includes a processing device and a memory device storing instructions, wherein the instructions, when executed by the processing device, cause the encoding device to perform operations. The operations include determining variable parameters for adjusting filter coefficients based on encoding information, calculating the filter coefficients based on the variable parameters, spatially filtering image data based on the filter coefficients, and encoding the filtered image data. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The above and other objects and features of the present disclosure will become apparent by describing in detail embodiments of the present disclosure with reference to the accompanying drawings.

[0009] Figure 1 An example encoding apparatus according to some embodiments is shown.

[0010] Figure 2 An example encoding apparatus according to some embodiments is shown.

[0011] Figure 3 Example filters according to some embodiments are shown.

[0012] Figure 4 An example filtering unit according to some embodiments is shown.

[0013] Figure 5 Example transfer functions of filters according to some embodiments are shown.

[0014] Figure 6 Example 3D frequency characteristics of a filter transfer function according to some embodiments are shown.

[0015] Figure 7 An example encoder according to some embodiments is shown.

[0016] Figure 8 An example encoding apparatus according to some embodiments is shown.

[0017] Figure 9 is a flowchart of an example method of encoding a device according to some embodiments.

[0018] Figure 10 An example encoding apparatus according to some embodiments is shown.

[0019] Figure 11 is a flowchart of an example method of encoding a device according to some embodiments.

[0020] Figure 12 An example encoding apparatus according to some embodiments is shown.

[0021] Figure 13 Example operations of an encoding apparatus according to bit control information according to some embodiments are shown.

[0022] Figure 14 An example encoding apparatus according to some embodiments is shown.

[0023] Figure 15 is a flowchart of an example method of encoding a device according to some embodiments.

[0024] Figure 16 An example encoding apparatus according to some embodiments is shown.

[0025] Figure 17 is a flowchart of an example method of encoding a device according to some embodiments.

[0026] Figures 18 to 20 is a flowchart of an example bit control method of an encoding device according to some embodiments. DETAILED DESCRIPTION

[0027] Hereinafter, embodiments of the present disclosure will be described clearly and in detail so that those skilled in the technical field of the present disclosure can easily practice the embodiments of the present disclosure.

[0028] Figure 1 An encoding device according to some embodiments is shown.

[0029] Reference Figure 1 The encoding device 100 may be configured to receive image data IMG and encode the received image data IMG. The encoding device 100 may be referred to as an "encoder." The "image" of the image data IMG used for encoding may represent a frame, picture, or scene constituting a video, or may represent the video itself.

[0030] The encoding device 100 according to some embodiments may include an encoding unit 110 and a controller 120 .

[0031] The encoding unit 110 may spatially filter the image data IMG based on the filter coefficients and may encode the filtered image data FD.

[0032] For example, spatial filtering can be low-pass filtering of the image data IMG. Through spatial filtering, high-frequency components (e.g., edge components) of the image data IMG can be filtered. As spatial filtering is applied more strongly (i.e., as the number of filtered high-frequency components increases), coding efficiency improves, and the bit rate of the bitstream BS output by the encoding device 100 can be reduced. Furthermore, the quality of the image corresponding to the bitstream BS can be relatively degraded.

[0033] Alternatively, as spatial filtering is applied more weakly (that is, as the number of filtered high-frequency band components decreases), encoding efficiency may deteriorate and the bit rate of the bitstream BS may increase. In addition, the quality of the image corresponding to the bitstream BS may be relatively improved.

[0034] Adjusting the spatial filtering mentioned above may mean adjusting the cutoff frequency of the spatial filter used for spatial filtering. When the cutoff frequency is increased relatively high, the spatial filtering is applied weakly, and when the cutoff frequency is decreased relatively low, the spatial filtering may be applied strongly.

[0035] The degree of the spatial filtering described above (that is, the cutoff frequency of the filter) may be determined based on the filter coefficient. That is, the degree of the spatial filtering performed by the encoding unit 110 may be determined according to the value of the filter coefficient.

[0036] The encoding unit 110 may encode the image data IMG in response to a target bit rate for the filtered image data FD filtered by spatial filtering. The encoding unit 110 may perform encoding so that the target bit rate can be achieved based on several unit tools, unit operations, and unit algorithms.

[0037] In this disclosure, the term "tool" may refer to an elemental technique or algorithm for encoding and decoding an image. The encoding device 100 may perform encoding based on one or more tools. For example, the tools may include tools related to image segmentation methods, tools for predictive encoding / decoding, tools for quantization / inverse quantization, tools for transform / inverse transform, and tools for filtering.

[0038] According to some embodiments, the encoding unit 110 may encode the image data IMG for each coding unit. A coding unit may be referred to as a "block," and one image data IMG may include a plurality of blocks.

[0039] The shape and size of the block may be determined differently depending on the characteristics of the image and the encoding efficiency of the image. In addition, in order to encode a large amount of image data IMG (such as a high-resolution image or a high-definition image), the size of the data unit (such as a coding unit, a prediction unit, and a transform unit) may be increased. The size of the macro block MB according to the hierarchical structure based on the H.264 standard is 4X4, 8X8, and 16X16, but in the case of High Efficiency Video Coding (HEVC), Versatile Video Coding (VVC), etc., according to some embodiments, the encoding device 100 may expand the size of the data unit to 4X4, 8X8, 16X16, 32X32, 64X64, 128X128, etc.

[0040] According to some embodiments, the encoding unit 110 may perform encoding at a buffer level. For example, the encoding unit 110 may buffer a bitstream BS obtained by encoding one or more image data IMG (e.g., multiple frames). The bitstream BS for the one or more image data IMG may be accumulated through buffering, and the encoding unit 110 may transmit the accumulated bit information to the controller 120 as buffer level information.

[0041] The encoding unit 110 may output a bit stream BS corresponding to the image data IMG through encoding.

[0042] When encoding of one or more image data IMG is completed, the encoding unit 110 may output encoding information. For example, the encoding information may include bit generation information and buffer level information.

[0043] The bit generation information may indicate the size of the bitstream BS output by the encoding unit 110 in response to the bit rate requested by the controller 120. When the size of the bitstream BS indicated by the bit generation information is lower than the required bit rate, the bit rate may be defined as "undershoot", and when the size of the bitstream BS is higher than the required bit rate, the bit rate may be defined as "overshoot". Of course, depending on the embodiment, a threshold value for determining whether the bit rate is undershooting or overshooting may be applied. For example, the reference point of undershoot and overshoot may be defined as the threshold value applied to the required bit rate. That is, when the size of the bitstream BS exists within the range where the threshold value is applied to the required bit rate, it may be regarded as neither undershooting nor overshooting.

[0044] The buffer level information may be defined as buffered bit information according to the above-described bitstream BS.

[0045] The controller 120 may control the overall operation of the encoding unit 110. According to some embodiments, the controller 120 may receive encoding information according to the encoding from the encoding unit 110. The controller 120 may check the bit rate based on the encoding information and may determine a variable parameter for adjusting the filter coefficient. Since adjusting the filter coefficient means adjusting the cutoff frequency as described above, the variable parameter may ultimately control the degree of spatial filtering by adjusting the cutoff frequency of the filter. The variable parameter may be determined relative to the cutoff frequency of the prototype filter. The prototype filter is a filter for spatial filtering that is basically used by the encoding unit 110 and may be a filter having a cutoff frequency before being adjusted by the variable parameter.

[0046] For example, when the variable parameter is defined as "A", ω c is defined as the initial cutoff frequency of the prototype filter and Ω c When defined as the adjusted cutoff frequency, the variable parameter may be determined based on Equation 1 below.

[0047] [Equation 1] cos ω c = A + (1-A) cos Ω c .

[0048] here, Ω c and ω c Can be any real number. The variable parameter "A" can be a value in the range of, for example, -a to a. For example, "A" can be 1 or a specific other non-zero real number. When the variable parameter A is adjusted, the cutoff frequency of the filter can be adjusted. Ωc , and the filter coefficients used for the filter can also be adjusted to have characteristics corresponding to the cutoff frequency.

[0049] Using Equation 1 makes it possible to change only the cutoff frequency while maintaining the frequency characteristics of the prototype filter's passband, transition band, or stopband by adjusting only one variable parameter, "A." This means that a desired filter can be easily obtained in real time without requiring time-consuming and complex filter redesign to obtain a new cutoff frequency.

[0050] According to some embodiments, the controller 120 may determine whether the bit rate according to the encoding is overshooting or undershooting based on the encoding information. For example, the controller 120 may determine whether it is overshooting or undershooting based on the size of the bit stream BS indicated by the bit generation information included in the encoding information and the size of the required bit rate.

[0051] The controller 120 may reduce the variable parameter based on whether the bit rate is overshooting. The filter coefficients may be defined (or adjusted) to increase the cutoff frequency of spatial filtering based on the relative increase in the variable parameter. Therefore, because the degree of spatial filtering is reduced, the encoding device 100 can meet the required bit rate while improving image quality.

[0052] Alternatively, the controller 120 may increase the variable parameter based on whether the bit rate is undershooting. The filter coefficients may be defined (or adjusted) to reduce the cutoff frequency based on the relative decrease in the variable parameter. Thus, because the degree of spatial filtering is increased, the encoding device 100 can meet the required bit rate without compromising image quality.

[0053] According to the above-described embodiment, the encoding device 100 of the present disclosure can adaptively adjust the filter coefficients used for spatial filtering, which is used to encode input image data IMG, based on variable parameters. The filter used for spatial filtering has a fixed cutoff frequency when it is designed, and it is difficult to adjust the cutoff frequency in real time by modifying the design of the filter itself. By determining whether the bit rate is met based on the encoded encoding information and adjusting the variable parameters used to control the filter coefficients based on whether the bit rate is met, the encoding device 100 of the present disclosure can adjust the degree of spatial filtering in real time.

[0054] Specifically, scenes requiring relatively low bitrate encoding (e.g., short videos on social networking services (SNS) and video calls) suffer from poor image quality or fail to meet the target bitrate for encoding due to the characteristics of the scenes. The encoding device 100 of the present disclosure can achieve this by adjusting the degree of spatial filtering separately from encoding in low-bitrate scenes, thereby maintaining or improving image quality while meeting the target bitrate.

[0055] Figure 2An encoding device according to some embodiments is shown.

[0056] Reference Figure 2 , the encoding device 200 according to some embodiments may include a filtering unit 210 and a rate controller 220 according to some embodiments. According to an embodiment, Figure 2 The encoding device 200 can be used with Figure 1 Corresponding to the encoding unit 110.

[0057] The filtering unit 210 may receive image data IMG and may output filtered image data FD by performing spatial filtering on the image data IMG. For example, the filtering unit 210 may be implemented as a two-dimensional (2D) spatial filter. For example, the filtering unit 210 may be implemented as a low-pass filter (LPF).

[0058] According to the above-described embodiment, the filtering unit 210 may perform spatial filtering through a filter having a cutoff frequency and a filter coefficient adjusted through variable parameters.

[0059] The rate controller 220 may encode the filtered image data FD output from the filtering unit 210. The rate controller 220 may perform encoding so that a target bit rate can be achieved based on the encoding tools described above. At least some of the tools may perform encoding based on bit control information BCI. The bit control information BCI may be used to indicate an operating mode for each tool to meet the target bit rate. Based on the indicated operating mode, each tool may operate so that the bitstream BS to be ultimately output has a higher or lower bit rate.

[0060] Figure 3 Filters according to some embodiments are shown.

[0061] Reference Figure 3 , the filter may be defined as including at least one filter coefficient FC. The filter may have a size corresponding to the filtering unit. Assuming that the size of the filtering unit is N (N is a natural number greater than 0), Figure 3 A filter for N=5 is shown as an example. As shown, the filter may have a mask form having a size corresponding to a filtering unit. For example, a filtering unit may be the same as the coding unit described above.

[0062] Each element of the filter may correspond to a filter coefficient FC. As shown, the filter may be implemented to include filter coefficients FC that are symmetrical with respect to the center of the mask. Alternatively, each element may have a different filter coefficient FC from one another.

[0063] One or more filter coefficients FC may be defined, and each filter coefficient FC may be adjusted according to the variable parameters of the above-described embodiment.The filter coefficient FC may be calculated and defined in units of one image data.

[0064] According to some embodiments, scaling may be applied to the calculation of filter coefficients FC. Scaling may include multiplying a predetermined scaling parameter by a variable (e.g., a variable parameter) used to calculate filter coefficients FC, or applying the scaling parameter to the calculation of filter coefficients FC through other mathematical operations. When scaling is applied, the calculation or adjustment process of filter coefficients FC may be implemented as a shift-based operation rather than a product operation.

[0065] Figure 1 The coding unit or Figure 2 The filtering unit of the encoding unit can perform spatial filtering while applying the filter according to the above embodiment in units of pixels included in the image data. For example, the encoding unit can apply the filter coefficient C0 corresponding to the center of the filter to the target pixel, and apply the remaining filter coefficients C1 to C5 to the surrounding pixels of the target pixel.

[0066] Figure 4 A filtering unit according to some embodiments is shown.

[0067] Reference Figure 4 , the filtering unit 300 according to some embodiments may include a plurality of multipliers 311 to 313 (MUL0, MUL1, . . . , MUL(N−1)), an adder (ADD) 320 , and a limiter 340 .

[0068] The multipliers 311 to 313 may receive the filter coefficients FC and the unit pixels PX[0] to PX[N-1] included in the image data. For example, the multipliers 311 to 313 may be provided as many times as the size N of the filtering unit. The multipliers 311 to 313 may perform a product operation on the unit pixels PX[0] to PX[N-1] and the filter coefficients FC corresponding to the unit pixels PX[0] to PX[N-1], and output the results of the product operation to the adder 320.

[0069] The adder 320 may receive the results of the product operations from the plurality of multipliers 311 to 313 and perform a sum operation on the received results of the product operations. The adder 320 may output the result of the sum operation.

[0070] According to some embodiments, the filtering unit 300 may further include a shifter 330. The shifter 330 may perform a shift operation on the result of the summation operation output from the adder 320. A shift operation is used to shift data in a bit string by a specific number of bits in a specific direction (left or right). When scaling is applied to the filter coefficients FC, the shifter 330 may perform a shift operation to restore the scaled values ​​to their original scale. In other words, a specific number of bits corresponding to the size of the shift operation may be defined to compensate for the scaling of the filter coefficients FC.

[0071] The limiter 340 may limit the data output from the adder 320 or the shifter 330. Limiting is used to remove excess data when the output data exceeds the size of the unit pixels PX[0] to PX[N-1]. For example, when the unit pixels PX[0] to PX[N-1] are 8 bits (or 10 bits), the limiter 340 may limit the portion of the output data that exceeds 8 bits (or 10 bits). Through limiting, the final filtered image data FD may be output.

[0072] Figure 5 The magnitude response characteristic of the filter transfer function according to some embodiments is shown.

[0073] Reference Figure 5 According to the above embodiment, the filter can be used for spatial filtering by the encoding unit (or filtering unit). The filter can use the initial cutoff frequency ω c To design.

[0074] When adjusting the variable parameter "A", the initial cutoff frequency can be adaptively adjusted ω c For example, when the bit rate is overshooting, the variable parameter "A" and the filter coefficient may be adjusted to further reduce the cutoff frequency of the filter. In this case, the variable parameter "A" may be adjusted to have a value between -1 and 0 as shown, and the initial cutoff frequency ω c can be reduced to the adjusted cutoff frequency Ωc1. As the variable parameter "A" is further reduced (that is, as the absolute value of the variable parameter "A" increases), the adjusted cutoff frequency Ωc1 can be gradually reduced. Therefore, the degree of spatial filtering by the filter can be set more strongly.

[0075] Therefore, when the bit rate is overshooting, the target bit rate can be met by suppressing the amount of bits generated by adjusting the variable parameter 'A'.

[0076] For example, when the bit rate is undershooting, the variable parameter "A" and the filter coefficient may be adjusted to further increase the cutoff frequency of the filter. In this case, the variable parameter "A" may be adjusted to have a value between 0 and 1 as shown, and the initial cutoff frequency ω c It can be increased to the adjusted cutoff frequency Ωc2. As the variable parameter "A" further increases, the adjusted cutoff frequency Ωc1 can be gradually increased. Therefore, the degree of spatial filtering by the filter can be set weaker.

[0077] Therefore, when the bit rate is undershooting, image quality can be improved within the target bit rate by increasing the amount of bits generated by adjusting the variable parameter 'A'.

[0078] Figure 6 3D magnitude response frequency characteristic (H) of a filter transfer function according to some embodiments is shown.

[0079] Reference Figure 6 , it can be seen that as the variable parameter "A" gradually increases (A=0.1, A=0.2), the frequency characteristics of the filter become wider. On the other hand, it can be seen that as the variable parameter "A" gradually decreases (A=-0.1, A=-0.2), the frequency characteristics of the filter become sharper. In other words, as the variable parameter "A" increases, the degree of spatial filtering becomes weaker, and higher frequency components may exist in the image data. On the other hand, as the variable parameter "A" decreases, the degree of spatial filtering becomes stronger, and the high-frequency components in the image data can be reduced.

[0080] Figure 7 Coding units according to some embodiments are shown.

[0081] Reference Figure 7 The encoding unit 400 according to some embodiments may include a block-level control unit 410. In addition, the encoding unit 400 may include at least part of a Q matrix unit 420, a rounding offset unit 430, a single bit elimination unit 440, and a block skip unit 450.

[0082] The block-level control unit 410 may control the bit rate of each block as a coding unit. According to some embodiments, the block-level control unit 410 may control the quantization parameter QP used for encoding. The quantization parameter may represent the value of the transform coefficient level used to generate the transform coefficient during quantization. Alternatively, the quantization parameter may represent the value used to generate the transform coefficient by scaling the transform coefficient level during inverse quantization. Alternatively, the quantization parameter may be a value mapped to a quantization step size.

[0083] The transform coefficient may be a coefficient value generated by performing transform in an encoding device. Alternatively, the transform coefficient may be a coefficient value generated by performing at least one of entropy decoding and inverse quantization in a decoding device.

[0084] The block-level control unit 410 can meet the target bit rate by adjusting the quantization parameter in units of blocks. For example, when the bit rate of the bitstream is high, the block-level control unit 410 can increase the quantization parameter, and when the bit rate is low, the block-level control unit 410 can decrease the quantization parameter.

[0085] According to some embodiments, the block level control unit 410 may generate and transmit a control signal for controlling at least part of the Q matrix unit 420 , the rounding offset unit 430 , the single bit elimination unit 440 , and the block skipping unit 450 included in the encoding unit 400 .

[0086] The Q matrix unit 420 may perform quantization based on a Q matrix. The Q matrix may be referred to as a quantization matrix. The Q matrix may represent a matrix used in a quantization process or an inverse quantization process to improve the subjective image quality or the objective image quality of an image. Each element included in the quantization matrix may correspond to a quantization matrix coefficient, and the quantization matrix coefficient may correspond to the quantization parameter described above.

[0087] The rounding offset unit 430 may add a rounding offset to the quantization parameter. The rounding offset may be an adjustment value used for rounding calculation when a rounding function is used for the quantization parameter.

[0088] When a single bit remains in the data quantized by the Q matrix unit 420, the single bit elimination unit 440 may remove or leave the single bit. For example, the single bit elimination unit 440 may leave the bit when there is a bit margin for the target bit rate, and may remove the bit when there is no bit margin for the target bit rate.

[0089] The block skipping unit 450 may determine whether a specific coding unit is skipped according to encoding. Similarly, the block skipping unit 450 may determine whether a specific coding unit is skipped according to a target bit rate.

[0090] In addition to the above-described configurations, the encoding unit 400 may further include various configurations capable of adjusting a bit rate.

[0091] Figure 8 An encoding device according to some embodiments is shown.

[0092] Reference Figure 8In the encoding apparatus 500 according to some embodiments, the encoding unit 510 may calculate the filter coefficient FC in real time based on the variable parameter VP. In addition to the filtering unit 511 and the rate controller 512, the encoding unit 510 may further include a calculation unit 513 for calculating the filter coefficient FC.

[0093] Specifically, the encoding unit 510 may perform spatial filtering on the image data IMG through the filtering unit 511 to output filtered image data FD, and the rate controller 512 may encode the filtered image data FD to output a bitstream BS. When encoding of one or more image data IMG is terminated, the encoding unit 510 may transmit encoding information EI for the encoding result to the controller 520.

[0094] The controller 520 can check the bit rate using the encoding information EI and determine the variable parameter VP. The controller 520 can send the determined variable parameter VP to the calculation unit 513. According to some embodiments, the controller 520 can reduce the filter cutoff frequency by decreasing the variable parameter VP when the bit rate is overshooting, and can increase the cutoff frequency by increasing the variable parameter VP when the bit rate is undershooting. In this case, even if the encoding unit 510 increases the quantization parameter for stronger encoding (or uses the maximum quantization parameter), the controller 520 can reduce the variable parameter VP to reduce the cutoff frequency when the bit rate is overshooting.

[0095] In addition, the controller 520 may generate bit control information BCI for controlling the bit rate according to the encoding based on the encoding information EI, and may transmit the bit control information BCI to the encoding unit 510. According to some embodiments, the controller 520 may determine whether the bit rate according to the encoding is overshooting or undershooting based on the encoding information EI, and may generate the bit control information BCI based on the overshooting or undershooting. For example, when the bit rate is overshooting, the controller 520 may generate the bit control information BCI so that the rate controller 512 operates in the direction of reducing the bit rate. Alternatively, when the bit rate is undershooting, the controller 520 may generate the bit control information BCI so that the rate controller 512 operates in the direction of increasing the bit rate.

[0096] The encoding unit 510 may encode the filtered image data FD based on the received bit control information BCI.

[0097] The encoding unit 510 may receive the variable parameter VP from the controller 520 through the calculation unit 513 and may calculate the filter coefficient FC based on the variable parameter VP. According to some embodiments, the calculation unit 513 may calculate the filter coefficient FC based on at least one of the variable parameter VP, the basic filter setting value, and the scaling parameter. The variable parameter VP may be defined as a sign bit "m" (m is a natural number greater than 0), and the 2 represented by the sign bit m The value of can represent any of the values ​​to be used in the actual calculation.

[0098] The basic filter setting value may be defined as an impulse response (or transfer function) of the basic filter described above, and a plurality of basic filter setting values ​​may be defined corresponding to the number of basic filters.

[0099] According to some embodiments, the calculation unit 513 may calculate the filter coefficients FC based on adjusting the basic filter settings according to the variable parameter VP.

[0100] According to some embodiments, the calculation unit 513 may calculate the filter coefficient FC based on a k-th order polynomial (k is an integer greater than or equal to 0) having a variable parameter VP as a variable. Each coefficient of the k-th order polynomial may be defined based on at least one of a scaling parameter and a basic filter setting value.

[0101] According to some embodiments, the calculation unit 513 may calculate the filter coefficients FC based on a polynomial in which each term is defined as a different basic filter setting value. Each coefficient of the polynomial may be defined based on at least one of a scaling parameter and a variable parameter VP.

[0102] The calculation unit 513 may be based on the number of filter coefficients FC included in the filter (eg, Figure 3 The filter coefficient FC is calculated using a polynomial defined differently for each of the filter coefficients C0 to C5).

[0103] The calculation unit 513 may transmit the calculated filter coefficient FC to the filtering unit 511 , and the filtering unit 511 may perform spatial filtering based on the received filter coefficient FC.

[0104] According to some embodiments, the calculation unit 513 may apply scaling to the calculation. The filtering unit 511 may apply a shift according to the scaling to the filtered image data FD.

[0105] Therefore, according to the above-described embodiment, the controller 520 included in the encoding device 500 of the present disclosure can determine the variable parameter VP and transmit the variable parameter VP to the encoding unit 510, and the encoding unit 510 can calculate the filter coefficient FC. Therefore, the calculation load of the filter coefficient FC of the controller 520 can be reduced.

[0106] Figure 9 is a flowchart of a method of encoding a device according to some embodiments.

[0107] Reference Figure 9 In operation S110, the encoding unit may transmit encoding information EI according to the encoding to the controller. In operation S120, the controller may receive the encoding information EI from the encoding unit and may check the bit rate BR based on the received encoding information EI. In this case, the controller may compare the bit rate BR indicated by the encoding information EI with the target bit rate and determine whether the bit rate BR is overshooting or undershooting. In operation S130, the controller may determine a variable parameter VP based on whether the bit rate BR is overshooting or undershooting. In operation S140, the controller may transmit the determined variable parameter VP to the encoding unit.

[0108] In operation S150, the encoding unit may calculate a filter coefficient FC based on the variable parameter VP received from the controller. When the bit rate is overshooting, the filter coefficient FC may be calculated to further reduce the cutoff frequency of the filter. Alternatively, when the bit rate is undershooting, the filter coefficient FC may be calculated to further increase the cutoff frequency of the filter.

[0109] In operation S160 , the encoding unit may perform encoding based on the calculated filter coefficient FC.

[0110] According to the above-described embodiment, in the case of the encoding method of the present disclosure, since the controller only determines and transmits the variable parameter VP to the encoding unit, the load on the filter coefficient FC calculation of the controller can be reduced.

[0111] Figure 10 An encoding device according to some embodiments is shown.

[0112] Reference Figure 10 In the encoding apparatus according to some embodiments, the controller 610 may determine the variable parameter VP and calculate the filter coefficient FC based on the determined variable parameter VP. That is, Figure 8 Different, in Figure 10In the case of an encoding device of FIG. 6 , the controller 610 may perform calculation of the filter coefficient FC. In this case, the encoding unit 620 may receive the filter coefficient FC from the controller 610 and perform spatial filtering on the image data IMG by using the received filter coefficient FC.

[0113] Specifically, the encoding unit 620 may perform spatial filtering on the image data IMG through the filtering unit 621 to output filtered image data FD, and the rate controller 622 may perform encoding on the filtered image data FD to output a bit stream BS. The encoding unit 620 may transmit encoding information EI for the encoding result to the controller 610.

[0114] The controller 610 can check the bit rate using the encoding information EI and determine the variable parameter VP. As described above, the controller 610 can adjust the variable parameter VP and the cutoff frequency depending on whether the bit rate is overshooting or undershooting. In this case, even if the encoding unit 620 increases the quantization parameter for stronger encoding (or uses the maximum quantization parameter), the controller 610 can decrease the variable parameter VP to reduce the cutoff frequency when the bit rate is overshooting.

[0115] The controller 610 may calculate the filter coefficient FC based on the determined variable parameter VP. Figure 10 , the controller 610 may calculate the filter coefficient FC based on at least one of the variable parameter VP, the basic filter setting value, and the scaling parameter. For example, the controller 610 may calculate the filter coefficient FC based on adjusting the basic filter setting value according to the variable parameter VP. For example, the controller 610 may calculate the filter coefficient FC based on a polynomial having the variable parameter VP as a variable. For example, the controller 610 may calculate the filter coefficient FC based on a polynomial in which each term is defined as a different default filter setting value.

[0116] According to some embodiments, the controller 610 may apply scaling to calculations (eg, calculations of the filter coefficients FC).

[0117] The controller 610 may transfer the calculated filter coefficient FC to the encoding unit 620. Also, the controller 610 may generate bit control information BCI for controlling a bit rate according to encoding based on the encoding information EI and transmit the bit control information BCI for controlling a bit rate according to encoding to the encoding unit 620.

[0118] When the encoding unit 620 receives the calculated filter coefficient FC from the controller 610, the encoding unit 620 may immediately perform spatial filtering based on the received filter coefficient FC. According to some embodiments, the encoding unit 620 may apply a shift according to scaling to the filtered image data FD.

[0119] Therefore, according to the above-described embodiment, the controller 610 included in the encoding device of the present disclosure determines both the variable parameter VP and the filter coefficient FC and transmits both the variable parameter VP and the filter coefficient FC to the encoding unit 620, and the encoding unit 620 performs only spatial filtering. Therefore, the computational load of the filter coefficient FC of the encoding unit 620 can be reduced.

[0120] Figure 11 is a flowchart of a method of encoding a device according to some embodiments.

[0121] Reference Figure 11 In operation S210, the encoding unit may transmit encoding information EI according to the encoding to the controller. In operation S220, the controller may receive the encoding information EI from the encoding unit and may check the bit rate BR based on the received encoding information EI. In operation S230, the controller may determine the variable parameter VP based on whether the bit rate BR is overshooting or undershooting. In addition, in operation S230, the controller may calculate the filter coefficient FC based on the variable parameter VP. In other words, the controller may determine both the variable parameter VP and the filter coefficient FC.

[0122] In operation S240, the controller may transmit the determined filter coefficient FC to the encoding unit. In operation S250, the encoding unit may perform encoding based on the filter coefficient FC received from the controller.

[0123] According to the above-described embodiment, in the case of the encoding method of the present disclosure, since the controller calculates the filter coefficient FC and transmits the filter coefficient FC to the encoding unit, the load on the filter coefficient FC calculation of the encoding unit can be reduced.

[0124] Figure 12 shows an encoding device according to some embodiments, and Figure 13 The operation of an encoding apparatus based on bit control information according to some embodiments is shown.

[0125] Reference Figure 12 , the encoding unit 710 of the encoding device 700 may include a block-level control unit 711, and may also include at least part of a Q matrix unit 712, a rounding offset unit 713, a single bit elimination unit 714, and a block skipping unit 715.

[0126] The encoding unit 710 transmits encoding information EI generated by the encoding to the controller 720. The controller 720 may determine whether the bit rate is overshooting or undershooting based on the encoding information EI and may generate first bit control information BCI1 based on the overshoot or undershoot. In this case, the encoding information EI may include image data (e.g., bit generation information for one frame). Therefore, the first bit control information BCI1 may include control information required for encoding one frame.

[0127] The block-level control unit 711 may generate second-bit control information BCI2, which is control information required for a unit smaller than one frame, for example, a coding unit such as a block. The block-level control unit 711 may transmit the generated second-bit control information BCI2 to the Q matrix unit 712, the rounding offset unit 713, the single-bit elimination unit 714, and the block skipping unit 715.

[0128] The Q matrix unit 712, the rounding offset unit 713, the single bit elimination unit 714, and the block skip unit 715 may perform encoding based on the first bit control information BCI1 and / or the second bit control information BCI2. The operation modes of the Q matrix unit 712, the rounding offset unit 713, the single bit elimination unit 714, and the block skip unit 715 may be determined according to the first bit control information BCI1 and / or the second bit control information BCI2.

[0129] Reference Figure 13 The Q matrix unit 712, the rounding offset unit 713, the single bit elimination unit 714, and the block skipping unit 715 may operate in a specific operation mode according to the first bit control information BCI1 and / or the second bit control information BCI2. Each of the components (the Q matrix unit 712, the rounding offset unit 713, the single bit elimination unit 714, and the block skipping unit 715) may determine the operation mode by referring to each control information.

[0130] First, the Q matrix unit 712 may operate in the 1-1 operating mode M1-1 or the 1-2 operating mode M1-2 according to the first bit control information BCI1 and / or the second bit control information BCI2. For example, the Q matrix unit 712 may operate in the 1-1 operating mode M1-1, which increases the value of the Q matrix when the bit rate is overshooting. For example, when the bit rate is undershooting, the Q matrix unit 712 may operate in the 1-2 operating mode M1-2, which decreases the value of the Q matrix. In the 1-1 operating mode M1-1, the Q matrix unit 712 may quantize the image data in a direction that further reduces the bit rate by increasing the value of the Q matrix. In the 1-2 operating mode M1-2, the Q matrix unit 712 may quantize the image data in a direction that further increases the bit rate by decreasing the value of the Q matrix.

[0131] The rounding offset unit 713 may add the rounding offset to the quantization parameter.

[0132] The single bit elimination unit 714 can operate in the 3-1st operating mode M3-1 or the 3-2nd operating mode M3-2 according to the first bit control information BCI1 and / or the second bit control information BCI2. In the 3-1st operating mode M3-1, the single bit elimination unit 714 can further reduce the bit rate by removing a single bit. In the 3-2nd operating mode M3-2, the single bit elimination unit 714 can leave a single bit, so that the bit rate can be further increased.

[0133] The block skipping unit 715 can operate in the 4-1st operating mode M4-1 or the 4-2nd operating mode M4-2 based on the first bit control information BCI1 and / or the second bit control information BCI2. In the 4-1st operating mode M4-1, the block skipping unit 715 can relatively relax the block skipping conditions, allowing more blocks to be skipped. In the 4-2nd operating mode M4-2, the block skipping unit 715 can relatively strengthen the block skipping conditions, allowing fewer blocks to be skipped. The fewer block skips generated, the greater the bit rate can be increased.

[0134] According to the above-mentioned embodiments, the encoding apparatus of the present disclosure can adaptively adjust the bit rate by controlling the components for rate control according to whether the encoded bit rate is overshooting or undershooting.

[0135] Figure 14 An encoding device according to some embodiments is shown.

[0136] Reference Figure 14 , the encoding device 800 according to some embodiments may include a memory 810 and a processor 820. One or more of the memories 810 may be provided, and one or more of the processors 820 may be provided.

[0137] The memory 810 may be connected to the processor 820 to store instructions to be executed by the processor 820. The memory 810 may be broadly interpreted as including any electronic component capable of storing electronic information. The memory 810 may represent various types of processor-readable media (such as random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable PROM (EEPROM), flash memory, magnetic or optical data storage devices, and registers).

[0138] The processor 820 can be broadly interpreted as including a general-purpose processor, a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a controller, a microcontroller, a state machine, and the like. Furthermore, the processor 820 may represent an on-demand semiconductor or application-specific integrated circuit (ASIC), a programmable logic device (PLD), a field-programmable gate array (FPGA), and the like. Furthermore, the processor 820 may represent, for example, a combination of a DSP and a microprocessor, a combination of multiple microprocessors, or a combination of one or more microprocessors combined with a DSP core. The processor 820 may also represent a combination of processing devices (such as a combination of a DSP and a microprocessor, a combination of multiple microprocessors, a combination of one or more microprocessors combined with a DSP core, or any other such configuration).

[0139] According to various embodiments of the present disclosure, the aforementioned “unit,” “controller,” and / or “controller” may be implemented using one or more processors 820 and one or more memories 810. Therefore, according to the aforementioned embodiments, the encoding device 800 and the components included in the encoding device 800 may operate as a separate processor or may operate under the control of a central processing unit.

[0140] The memory 810 may store data received from outside the encoding apparatus 800 and data generated by the processor 820. For example, according to the above-described embodiment, the memory 810 may store target bit rate, image data, bit stream, variable parameters, filter coefficients, encoding information, bit control information, etc.

[0141] According to some embodiments, the processor 820 may perform spatial filtering on the image data based on the filter coefficients and may encode the filtered image data. The processor 820 may determine a variable parameter for adjusting the filter coefficients based on the encoded encoding information. The processor 820 may calculate the filter coefficients based on the variable parameter.

[0142] Figure 15 is a flowchart of a method of encoding a device according to some embodiments.

[0143] Reference Figure 15 In operation S310, the encoding device may determine a variable parameter VP for adjusting a filter coefficient FC based on the encoding information EI according to the encoding. In operation S320, the encoding device may calculate the filter coefficient FC based on the variable parameter VP. In operation S330, the encoding device may perform spatial filtering on the image data based on the filter coefficient FC. In operation S340, the encoding device may encode the filtered image data.

[0144] Figure 16 An encoding device according to some embodiments is shown.

[0145] Reference Figure 16 , the encoding apparatus 900 according to some embodiments may include a frame level controller 910 and an encoding unit 920 .

[0146] The frame level controller 910 may control the overall operation of the encoding unit 920. According to some embodiments, the frame level controller 910 may control the encoding unit 920 in units of one image data (that is, one frame).

[0147] According to some embodiments, the frame level controller 910 may receive first encoding information EI1 from the encoding unit 920 and a target bit rate TB from an external device. Based on the first encoding information EI1 and the target bit rate TB, the frame level controller 910 may generate and transmit bit 1-1 control information BCI1-1 for controlling the operation mode of the Q matrix unit 928 and the rounding offset unit 929 included in the quantizer 927, and may generate and transmit bit 1-2 control information BCI1-2 for controlling the operation mode of the single bit elimination (SBE) unit 931 and the block skip unit 932 included in the post-processor 930.

[0148] The frame level controller 910 may determine the variable parameters based on the first encoding information EI1. According to some embodiments, the frame level controller 910 may send the variable parameters to the spatial filter 921. Alternatively, the frame level controller 910 may calculate filter coefficients FC based on the variable parameters and send the filter coefficients FC to the spatial filter 921.

[0149] The encoding unit 920 may encode one image data (that is, frame data FD) and output a bitstream BS. According to some embodiments, the encoding unit 920 may include a spatial filter 921, an inter-frame predictor 922, an intra-frame predictor 923, a mode selector 924, a subtractor 925, a transformer 926, a quantizer 927, a post-processor 930, an entropy encoding unit 933, an inverse quantizer 934, an inverse transformer 935, an adder 936, a loop filter 937, and a block-level controller 938.

[0150] According to the above-described embodiment, the spatial filter 921 may perform spatial filtering on the current frame data FD. For example, the spatial filter 921 may adaptively perform spatial filtering based on a filter coefficient FC controlled by a variable parameter.

[0151] The inter-frame predictor 922 can perform inter-frame prediction on the filtered frame data in coding units (that is, for each block). Inter-frame prediction may refer to a prediction method that uses, for example, similarities between the current image and another image. Specifically, the inter-frame predictor 922 can determine prediction samples for the current block by using blocks of reference samples. In the present disclosure, a sample can be the basic unit that constitutes a block. For example, a sample can be a pixel or a pixel value. The inter-frame predictor 922 can detect a reference block similar to a block of the current frame from reference frame data REF decoded earlier than the current frame data FD, and can determine prediction samples based on the reference block.

[0152] The intra-frame predictor 923 may perform intra-frame prediction for each block. Intra-frame prediction may refer to a processing method that uses, for example, spatial similarity in an image. Specifically, the intra-frame predictor 923 may determine a prediction sample of the current block by using neighboring samples that are spatially adjacent to the current block.

[0153] The mode selector 924 may select the term 'inter' or 'intra' according to an inter mode for performing inter prediction or an intra mode for performing intra prediction.

[0154] The subtractor 925 may output a residual sample RS by subtracting a prediction sample generated by the inter predictor 922 or the intra predictor 923 from the original sample of the current block.

[0155] The transformer 926 may perform conversion on the residual sample RS and output conversion coefficients.

[0156] The quantizer 927 may quantize the transform coefficient output from the transformer 926 to output a quantized transform coefficient COEF. According to some embodiments, the quantizer 927 may include a Q matrix unit 928 and a rounding offset unit 929, and may perform quantization by the Q matrix unit 928, or may add a rounding offset to the quantization parameter QP by the rounding offset unit 929.

[0157] The post-processor 930 may perform post-processing on the quantized transform coefficient COEF. According to some embodiments, the post-processor 930 may include a single bit elimination unit 931 and a block skip unit 932. The single bit elimination unit 931 may be used to remove a single bit, or the block skip unit 932 may be used to skip some blocks. According to some embodiments, the post-processor 930 may be omitted.

[0158] The entropy encoding unit 933 may encode the post-processed quantized transform coefficient into a residual syntax element including a level value and may output the residual syntax element in the form of a bitstream BS.

[0159] The quantized transform coefficient COEF or the quantized transform coefficient post-processed by the post-processor 930 may be inversely quantized and inversely transformed through the inverse quantizer 934 and the inverse transformer 935 to generate residual samples RS again.

[0160] The adder 936 may output restored samples by summing the residual samples RS and the predicted samples. The loop filter 937 may perform deblocking filtering and / or adaptive loop filtering on the restored samples. The restored frame data RFD may ultimately be output through the loop filter 937.

[0161] The block level controller 938 may receive the block target bit rate BTB from the frame level controller 910 and may receive the second encoding information EI2 from the entropy encoding unit 933. The block level controller 938 may perform block level control based on the block target bit rate BTB and the second encoding information EI2.

[0162] According to some embodiments, the block level controller 938 may determine a quantization parameter QP and transmit the quantization parameter QP to the quantizer 927. The block level controller 938 may generate and transmit 2-1st bit control information BCI2-1 and 2-2nd bit control information BCI2-2, wherein the 2-1st bit control information BCI2-1 is used to control the operation modes of the Q matrix unit 928 and the rounding offset unit 929 included in the quantizer 927, and the 2-2nd bit control information BCI2-2 is used to control the operation modes of the single bit elimination unit 931 and the block skipping unit 932 included in the post-processor 930.

[0163] The quantizer 927 may determine an operating mode based on the 1-th bit control information BCI1-1 and the 2-th bit control information BCI2-1, and the post-processor 930 may determine an operating mode based on the 1-th bit control information BCI1-2 and the 2-2nd bit control information BCI2-2. The operating mode may include at least one of the 1-1st to 4-2nd operating modes described above. Therefore, the quantizer 927 and / or the post-processor 930 may operate in an appropriate operating mode according to the bit rate of the bitstream BS, thereby enabling the bitstream BS to meet the target bit rate TB.

[0164] According to the above-mentioned embodiments, the encoding device 900 of the present disclosure can adaptively adjust the bit rate through the spatial filter 921, the quantizer 927, and the post-processor 930. Specifically, there may be a scenario where it is necessary to maintain image quality while operating at an extremely low target bit rate TB. In such a scenario, the encoding device 900 of the present disclosure can maintain image quality and meet the target bit rate TB without increasing the quantization parameter QP by adjusting the filter coefficients and controlling the bit rate through the quantizer 927 and the post-processor 930.

[0165] Figure 17 is a flowchart of a method of encoding a device according to some embodiments.

[0166] Reference Figure 17 In operation S410, the encoding apparatus may determine a bit rate. The encoding apparatus may determine a bit rate of a bitstream based on encoding information obtained by encoding one or more image data.

[0167] In operation S420, the encoding apparatus may determine whether the current bit rate is overshooting or undershooting. For example, the encoding apparatus may determine that the bit rate is overshooting when the bit rate indicated by the encoding information is greater than the target bit rate, and determine that the bit rate is undershooting when the bit rate is less than the target bit rate.

[0168] If the bit rate is determined to be overshooting, the encoding device may control the filter coefficients in operation S430 so that the filter has a lower cutoff frequency (fc). According to the above-described embodiment, the control of the filter coefficients may be performed based on adjusting a variable parameter. For example, the encoding device may further reduce the variable parameter to lower the filter cutoff frequency.

[0169] When it is determined that the bit rate is undershooting, the encoding apparatus may control the filter coefficients so that the filter has a higher cutoff frequency in operation S440. For example, the encoding apparatus may further increase the variable parameter to make the filter have a higher cutoff frequency.

[0170] When the bit rate is not determined to be overshoot or undershoot, or when control of the filter coefficient is terminated, in operation S450 , the encoding apparatus may perform spatial filtering based on the filter coefficient.

[0171] In operation S460, the encoding apparatus may perform encoding on the filtered image data. When encoding of one or more image data is completed, the encoding apparatus may repeat operation S410 of checking encoding information according to the encoding.

[0172] According to the above-mentioned embodiments, the encoding method of the present disclosure can determine whether the bit rate is overshooting or undershooting based on encoding information, and adaptively control the filter coefficient FC through a variable parameter according to whether the bit rate is overshooting or undershooting.

[0173] Figures 18 to 20 is a flowchart of a bit control method of an encoding device according to some embodiments.

[0174] Reference Figure 18 In operation S510, the encoding device may check the bit rate, and in operation S520, an overshoot or undershoot of the bit rate may be determined. When the bit rate is overshooting, in operation S530, the encoding device may increase the compression ratio by increasing the value of the Q matrix. Alternatively, when the bit rate is undershooting, in operation S540, the encoding device may reduce the compression ratio by reducing the value of the Q matrix. In operation S550, the encoding device may perform encoding according to the adjusted value of the Q matrix.

[0175] Reference Figure 19 In operation S610, the encoding device may check the bit rate, and in operation S620, an overshoot or undershoot of the bit rate may be determined. When the bit rate is overshooting, in operation S630, the encoding device may activate a single bit elimination operation to increase the compression ratio. Alternatively, when the bit rate is undershooting, in operation S640, the encoding device may deactivate the single bit elimination operation to reduce the compression ratio. In operation S650, the encoding device may perform encoding based on the data in which a single bit is removed or retained.

[0176] Reference Figure 20 In operation S710, the encoding device may check the bit rate, and in operation S720, an overshoot or undershoot of the bit rate may be determined. When the bit rate is overshooting, in operation S730, the encoding device may alleviate the block skipping condition and increase the compression rate. Alternatively, when the bit rate is undershooting, in operation S740, the encoding device may strengthen the block skipping condition to reduce the compression rate. In operation S750, the encoding device may perform encoding based on the data for which block skipping is performed.

[0177] According to the present disclosure, an encoding device and an encoding method capable of adaptively adjusting filter coefficients can be provided.

[0178] Although the present disclosure contains many specific implementation details, these should not be interpreted as limiting the scope of the protection that can be claimed. Specific features described in the context of separate embodiments in this disclosure may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable subcombination. In addition, although features may be described above as working in a particular combination, one or more features from a combination may be excluded from the combination in some cases, and the combination may refer to a subcombination or a variation of a subcombination.

[0179] The above are specific embodiments for implementing the present disclosure. In addition to the above embodiments, the present disclosure will also include embodiments that can be simply designed or easily changed. In addition, the present disclosure will also include technologies that can be easily modified and implemented by using the embodiments. Therefore, the scope of the present disclosure should not be limited to the above embodiments, but should be determined not only by the scope of the claims described, but also by claims equivalent to the claims of the present disclosure.

[0180] While the present disclosure has been described with reference to the embodiments thereof, it will be apparent to those skilled in the art that various changes and modifications can be made without departing from the spirit and scope of the disclosure as set forth in the appended claims.

Claims

1. An encoding device, comprising: an encoder configured to spatially filter the image data based on the filter coefficients and encode the filtered image data; as well as The controller is configured to receive encoding information from the encoder and determine a variable parameter for adjusting the filter coefficient based on the encoding information.

2. The encoding device according to claim 1, wherein The encoder is also configured to: Receive variable parameters from the controller; and The filter coefficients are calculated based on the variable parameters.

3. The encoding device according to claim 2, wherein: The encoder is configured to calculate filter coefficients based on adjusting basic filter settings according to the variable parameters.

4. The encoding device according to claim 2, wherein: The encoder is further configured to apply scaling when calculating the filter coefficients and to apply a shift according to the scaling to the filtered image data.

5. The encoding device according to claim 1, wherein The controller is further configured to calculate filter coefficients based on the variable parameters and is further configured to send the filter coefficients to the encoder.

6. The encoding device according to claim 5, wherein The controller is configured to apply scaling when calculating the filter coefficients, and Therein, the encoder is configured to apply a shift according to the scaling to the filtered image data.

7. The encoding device according to claim 1, wherein The controller is configured to determine whether the bit rate is overshooting or undershooting based on the encoding information, to decrease the variable parameter based on the bit rate being overshooting, and to increase the variable parameter based on the bit rate being undershooting.

8. The encoding device according to claim 1, wherein The filter coefficients are configured to increase the cutoff frequency of the spatial filtering based on the variable parameter increase, and The filter coefficients are further configured to reduce the cutoff frequency based on a variable parameter reduction.

9. The encoding device according to claim 1, wherein The controller is further configured to send bit control information to the encoder and is configured to control the bit rate, and The encoder is configured to encode the filtered image data based on the bit control information.

10. The encoding device according to claim 9, wherein The controller is further configured to determine whether the bit rate is overshooting or undershooting based on the encoding information, and is configured to generate bit control information according to whether the bit rate is overshooting or undershooting.

11. A method of operating an encoding device, the method comprising: determining a variable parameter for adjusting filter coefficients based on the encoding information; calculating filter coefficients based on the variable parameters; spatially filtering the image data based on the filter coefficients; as well as Encode the filtered image data.

12. The method of claim 11, wherein: The steps to determine the variable parameters include: determining whether the bit rate is overshooting or undershooting based on the encoding information; reducing the variable parameter based on whether the bit rate is overshooting; and The variable parameter is increased based on whether the bit rate is undershooting.

13. The method of claim 11, further comprising: Apply scaling when computing filter coefficients; as well as A shift according to the scaling is applied to the filtered image data.

14. The method of claim 11, wherein: The filter coefficients are configured to increase the cutoff frequency of the spatial filtering based on the variable parameter increase, and The filter coefficients are further configured to reduce the cutoff frequency based on a variable parameter reduction.

15. The method of claim 11, further comprising: determining whether the bit rate is overshooting or undershooting based on the encoding information; as well as Bit control information for controlling the bit rate is generated according to whether the bit rate is overshooting or undershooting.

16. An encoding device comprising: processing device; as well as A memory device storing instructions that, when executed by a processing device, cause the processing device to perform operations comprising: determining variable parameters for adjusting filter coefficients based on the coding information, Calculate the filter coefficients based on the variable parameters, spatially filtering the image data based on the filter coefficients, and Encode the filtered image data.

17. The encoding device according to claim 16, wherein: The steps to determine the variable parameters include: determining whether the bit rate is overshooting or undershooting based on the encoding information; reducing the variable parameter based on whether the bit rate is overshooting; and The variable parameter is increased based on whether the bit rate is undershooting.

18. The encoding device according to claim 16, wherein: The operations further include: Applying scaling when calculating filter coefficients; and A shift according to the scaling is applied to the filtered image data.

19. The encoding device according to claim 16, wherein: The filter coefficients are configured to increase the cutoff frequency of the spatial filtering based on the variable parameter increase, and The filter coefficients are further configured to reduce the cutoff frequency based on a variable parameter reduction.

20. The encoding device according to claim 16, wherein: The operations further include: determining whether the bit rate is overshooting or undershooting based on the encoding information; and Bit control information for controlling the bit rate is generated according to whether the bit rate is overshooting or undershooting.

Citation Information

Patent Citations

  • Laundry Treatment Apparatus and Control Method for the same

    KR1020240025268A