|
|
Tonemapper software for image enhancement
Our local tone mapping algorithm compresses an image's dynamic range, making details more vivid and producing a more pleasing reproduction. We've developed highly efficient, accurate, and adaptive local tonemapper software suitable for almost any imaging application. Not only does it work with HDR or high-bit-depth images, but it can also be successfully applied to 8/24-bit monochrome or color JPEG images to improve visual quality and recover shadows.
The local tone mapping algorithm uses local image intensity transforms to improve visua perception by using information from local regions of each image. The tonemapper engine defines these regions as a grid of rectangular tiles within each frame. The engine processes each tile to compute local parameters for further processing. We minimize this set of parameters to achieve very fast performance. Finally, we use these local and global parameters to create a set of local tone curves and transforms to apply to each pixel in the image. This algorithm is essentially local and adaptive, which is important for preserving image detail and contrast.
Source image is on the left, the result of the tonemapper is on the right.
What can we do with the tonemapper?
- Visual perception image enhancement
- Fast and accurate adaptive local tone mapping engine
- Controlled Contrast Preservation and Visual Quality Improvement:
- Global contrast
- Local contrast
- Micro contrast
- Image detail preservation
- Local Gain control
- Over Gain mode for low-illumination cases
- Saturation correction improves visualization
- Moderate fall-off compensation
- Soft cloud shadows suppression
- Dehazing
- 360 panoramas support
- Flicker reduction for video tone mapping
- Automatic histogram smoothing
- Consistent image quality for both rural and urban environments
- No hallucinations (no AI)
- ISP with 32-bit accuracy for tone mapping on CPU and GPU
- Tonemapper software for image and video processing: GUI app, CLI app with python control, API for GPU-based pipeline
Compatibility issues
- Built-in timing and performance measurements
- OS Windows-10/11, Linux Ubuntu, and L4T (Jetson Xavier, Orin, Thor)
- Supported NVIDIA GPUs: Jetson, GeForce, Quadro, CUDA-12.6
Tonemapper Benchmarks on GeForce RTX 4090
- Image resolution: 9344 × 7000 (62.4 MPix), 16-bit per channel, RGB
- Test description: all data in GPU memory, timing includes GPU computations only
- Software: OS Windows-10/11, CUDA-12.6
- Hardware: CPU AMD Ryzen9 7950X (16 cores, 4.5–5.7 GHz)
- Hardware: NVIDIA GeForce RTX 4090, PCI-Express 4.0 x16
- Processing time for Tonemapper on CUDA - 4.32 ms (14.4 GPix/s)
Such tone mapping benchmarks are especially important for use cases involving enormous volumes of images or video. We are prepared for these demanding tasks, and we developed our tonemapper algorithm on CUDA with such applications in mind.
Tonemapper Benchmarks on Jetson Orin AGX 32GB
- Image resolution: 4128 × 3008 (11.84 MPix), 16-bit per channel, RGB
- Test description: all data in GPU memory, timing includes GPU computations only
- Hardware/Software: NVIDIA Jetson Orin AGX 32GB, Jetpack 6.2.1, CUDA-12.6
- Processing time for Tonemapper algorithm on Jetson Orin AGX 32GB - 4.6 ms (2.5 GPix/s)
Tonemapper Benchmarks on CPU AMD Ryzen9 7950X
- Image resolution: 9344 × 7000 (62.4 MPix), 16-bit per channel, RGB
- Test description: input image in JPG format at SSD, full timing includes SSD read/write and JPG decoding/encoding
- Software: OS Windows-10/11
- Hardware: CPU AMD Ryzen9 7950X (16 cores, 4.5–5.7 GHz)
- Processing time for Tonemapper on CPU AMD Ryzen9 7950X - 6 seconds (10 MPix/s)
Applications for the tonemapper
- Machine vision and Industrial imaging applications
- Street View, Mobile Mapping and Aerial Imaging
- Broadcast and streaming
- Medical imaging
- Digital photography and digital cinema
- Display Devices
- Computer Vision
|