Temporal Filtering Exponential Weight Computation via Fixed-Point Lookup
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The temporal filtering process in video encoding is inefficient due to extensive floating-point computations, particularly in calculating exponential functions, which becomes a significant portion of the encoding time, especially in real-time encoders, leading to expensive and inefficient hardware implementation.
Innovation Solution
The method involves computing the exponential function using fixed-point values or lookup tables, converting factors to fixed-point representations, and applying a temporal filter to a current picture by obtaining a weight from neighboring pictures, thereby reducing computational complexity and improving efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If floating-point computation is used for exponential function in temporal filtering, then computation precision is improved, but hardware cost and computational time increase
Solution Approach 1:
The patent changes the parameter type from floating-point to fixed-point representation for the exponential function computation. This parameter change maintains sufficient computational precision while dramatically reducing hardware complexity and cost, as fixed-point arithmetic can be implemented with simpler digital logic circuits rather than complex floating-point units.
Solution Approach 2:
The patent employs lookup tables (LUTs) pre-storing exponential function values as a cheap alternative to complex real-time computation. These LUTs provide approximate but sufficiently accurate results for video encoding applications, replacing expensive floating-point exponential calculators with simple memory access operations.
2Measurement precision
If floating-point computation is used for exponential function in temporal filtering, then computation precision is improved, but computational time increases
Solution Approach 1:
The patent changes the computation from floating-point to fixed-point arithmetic, which can be executed faster in digital signal processors and hardware accelerators. Fixed-point operations avoid the overhead of floating-point normalization and rounding, resulting in significantly reduced computational time while maintaining adequate precision for video encoding.
Solution Approach 2:
The patent pre-computes and stores exponential function values in lookup tables before the actual encoding process. During temporal filtering, instead of computing exponential functions in real-time, the system simply retrieves pre-computed values from memory, dramatically reducing computational time while maintaining precision through the use of high-resolution LUTs.
3Manufacturing precision
If temporal filtering is applied in real-time encoding, then video quality is improved, but encoding speed deteriorates
Solution Approach 1:
The patent changes the arithmetic precision from floating-point to fixed-point in the temporal filtering process. This parameter change reduces the computational burden of each filtering operation, allowing real-time encoding to maintain high video quality through proper temporal filtering while achieving the processing speeds required for practical encoding applications.
Solution Approach 2:
The patent pre-computes exponential function values and stores them in lookup tables, eliminating the need for time-consuming real-time exponential calculations during the encoding process. This preliminary action allows the encoder to apply temporal filtering at full resolution without compromising encoding speed, thereby improving video quality while maintaining real-time performance.
Data Source
AI summary
Systems and methods for implementing temporal filtering are provided. A method includes: applying a temporal filter to a current picture and encoding the current picture after the temporal filter is applied. The applying includes obtaining an exponential function; obtaining a weight of at least one neighboring picture by multiplying a scaling function with the exponential function; obtaining a filtered sample value of the current picture based on a sample value of the current picture and the weight of the at least one neighboring picture; and replacing the sample value of the current picture with the filtered sample value.


