fast cuda DNG viewer and playerFast CinemaDNG Processor on GPU

We have designed high quality CUDA-accelerated solution for CinemaDNG processing with very high performance - much faster than realtime. Now it's possible by implementing full CinemaDNG processing pipeline on NVIDIA GPU with CUDA technology.

Advantages of Fast CinemaDNG Processor

  • 4K CinemaDNG processing at 24-30 fps
  • 8K DNG photo editing with fast response
  • High performance DNG decoding on CPU
  • MLV player, viewer, converter, transcoder
  • RAW Curves and Levels before demosaicing
  • High quality demosaicing with MG algorithm
  • High speed denoising for raw, luma and chroma
  • No proxies, 4K dailies can be processed in realtime
  • Smooth and scalable Player for CinemaDNG footages
  • Software for footage Culling and Reviewing before editing

We have implemented full image processing pipeline on CUDA to make fast each stage of RAW data workflow. That gives us opportunity to significantly decrease data transfer time over PCI-Express bus and to improve total performance. Now we can do CUDA-based DNG rendering much faster than real time. At the same time, output image quality is comparable with Adobe Camera Raw (ACR) and LightRoom (LR), etc.

Features of CUDA RAW Processor

  • Import images: 8/10/12/14/16-bit DNG or CinemaDNG (compressed or uncompressed)
  • Other input image formats: MLV, Blackmagic CinemaDNG RAW 3:1 and 4:1, PGM
  • Input video (Cinema DNG or MLV): 1080, 2K, 4K CDNG clips and more, up to 8K
  • Output formats for image series: JPG (24/36-bit), PPM (24/48-bit), TIFF (24/48-bit)
  • Output Color Spaces: sRGB, Rec.709, AdobeRGB, Rec.2020, BMD Film, BMD Film 4K, BMD Film 4.6K
  • Highly optimized multi-threaded DNG and MLV reading, parsing and decoding on CPU
  • White Balance and Exposure Correction
  • Curves and Levels for each channel of RAW data
  • RAW denoising (float workflow)
  • Demosaicing algorithms: HQLI (5×5), DFPD (11×11), MG (23×23)
  • Denoise adaptive algorithm for luma and chroma (float workflow)
  • Correlated Color Temperature and Tint control
  • Color correction with matrix or DCP profile
  • RGB and HSV Curves and Levels
  • 3D LUTs for RGB and HSV, DCP support, Tone curve
  • Image rotation to arbitrary angle, other geometric transforms
  • LCP support: undistortion, chromatic aberrations, vignetting suppression
  • RGB Histograms for each frame in realtime
  • RGB Parade monitor
  • Resize algorithm: Lanczos (float workflow)
  • Sharpening with Unsharp Mask algorithm (float workflow)
  • Smooth playback of CinemaDNG or MLV sequences via OpenGL in realtime

Compatibility

  • Windows-7/8/10 (64-bit)
  • Linux Ubuntu 16.04 (64-bit) - expected soon
  • NVIDIA GPU driver 397.31 or later
  • CUDA-9.1 (64-bit)
  • NVIDIA GPU (Kepler, Maxwell and Pascal) for mobile, laptop, desktop, server
  • Compatibility with FFmpeg to read/write MJPEG streams (FFmpeg is under LGPLv2.1)

CinemaDNG Workflow on CUDA

The software supports DNG/CinemaDNG files, produced either by DNG-enabled digital cameras or by Adobe software such as the Adobe DNG Converter or Adobe Lightroom (DNG 1.4 specification). Current list of supported cameras could be found here. CUDA RAW Processor also supports 8/10/12/14/16-bit DNG and PGM files created by 3rd-party applications.

DNG-enabled digital cameras

  • Blackmagic Design Pocket/Production 4K/Cinema, URSA Mini 4K, URSA Mini 4.6K, Ursa Mini Pro
  • Kinefinity cameras: KINEMINI 4K, KINEMAX 6K, KINERAW-MINI (Full HD), KINERAW-S35 (Full HD)
  • AJA CION 4K/UHD and 2K/HD Production Camera
  • DJI Zenmuse X5S, X5R or X7 cameras for Mavic, Phantom, Inspire, Matrice drones
  • Digital Bolex D16 and D16M
  • Atomos Ninja Shogun
  • Ikonoskop
  • XIMEA 4/5/8/12/20/50 MPix

Image/Video Processing Pipeline for DNG/CinemaDNG on CUDA

  • Ingestion of DNG images from HDD/SSD
    • Multithreaded reading of DNG images from SSD to CPU memory
    • Parcing of DNG images
    • Multithreaded DNG decoding for lossless JPEG and BMD RAW 3:1, 4:1 or 5:1
  • Data transfer from CPU to GPU
  • Data linearization and transform to 16-bit representation
  • RAW historgam
  • White/Black points
  • White Balance (R, G1, G2, B)
  • Exposure compensation
  • Raw Curve for each channel of Bayer data
  • Raw denoising
  • Demosaicing
  • Adaptive noise suppression
  • Color Correlated Temperature and Tint control
  • Color Correction with matrix or DCP profile
  • Tone mapping (RGB/HSV Curves for each color channel)
  • Histogram and RGB Parade for processed image
  • Monitor output
    • Crop
    • Resize to specified width and height in output window
    • Sharp with USM
    • Transform with monitor profile
    • LUT 16-bit to 8/10-bit for each color channel
    • Copy data to OpenGL texture
    • Realtime monitor output via OpenGL (DNG video player)
    • Histogram output for RAW and processed data
    • RGB Parade output
  • Compressed video output
    • Crop
    • Resize to Full HD
    • Sharp with USM
    • LUT 16-bit to 8/10-bit for each color channel
    • Native MJPEG or MJ2K encoding
    • External compression via FFmpeg to ProRes, DNxHD or H.264
    • Data transfer from GPU to CPU memory
    • Save compressed video to SSD/HDD
  • Image sequence output
    • Data transform to 16-bit TIFF or to 8/12-bit JPEG for each frame
    • Data transfer from GPU to CPU memory
    • Save image sequence to SSD/HDD

Benchmarks for NVIDIA GeForce GTX 1080

Standard image processing pipeline for rendering of 12-bit DNG images with 4K resolution on GPU GeForce GTX 980 could be done at frame rates up to 60 fps (raw dng and processed data reside in CPU memory, without denoising and USM). Here you can find other benchmarks for our SDK.

Options for realtime output compression on CUDA

  • JPEG/MJPEG codec
  • JPEG2000 codec

Standard tasks to solve with Fast CinemaDNG Processor

  • Batch image processing for DNG image sequences
  • Realtime full frame rendering, compression, preview and playback for video streams with RAW data
  • Full image processing pipeline for industrial cameras with 8/10/12/14/16-bit Bayer format
  • Fast processing of MLV video files from Canon cameras with Magic Lantern formware

Workflow example for Fast CinemaDNG Processor

  • Upload video footage to computer (PC) from camera or card reader
  • Convert RAW files to DNG format with Adobe DNG Converter (option)
  • Create new project and import DNG images
  • DNG image processing with CUDA RAW Processor
  • DNG video player
  • Export JPEG (8/12-bit), TIFF (16-bit), EXR (16/32-bit) files
  • Export H.264 video in MP4 with Full HD resolution

Full version of that pipeline is implemented in Fast CinemaDNG Processor software. Please visit www.fastcinemadng.com

     Home                   Contacts                 Site Map
GPU Image Processing