fast cuda resizerDynamic image resizing software for web applications

Currently there are a lot of web services that need to resize images in real time. It's not unusual when web-service has to send up to 100K-1000K images per day and that number could even exceed many millions of pictures per day. Quite often that task is solved with some scripts and simpe resizing software on CPU. This is the way to get slow solution on multiple-core CPUs with moderate resize quality.

For high-volume applications it's better to have original pictures (usually they are compressed with JPEG format) at a storage and perform resizing dynamically on request. There are a lot of benefits in that approach (agility, mobile support, control), but primarily it can reduce resource utilization. Usually it's better to keep original compressed images in a storage and to perform decompression, resize and compression on request.

We can offer a high performance solution on a high-end NVIDIA GPU which can overcome a limit of million image resizes per hour at just one GPU. With a number of top GPUs our solution can give much better performance.

Fast Image Resizer Features

  • Input images: 8-bit or 16-bit per color component RGB, PGM, PPM, BMP, JPEG formats, byte array in CPU/GPU memory
  • Resize images to any size quickly and with high quality
  • Algorithm: Lanczos
  • Internal calculations with floating point precision
  • Fast JPEG decompression and compression on GPU
  • Create thumbnails for website/database images
  • Store resized files in a new folder or keep resized images in memory
  • Writes resized images in JPEG, BMP, PPM, PGM formats
  • Batch image resizer mode
  • Compatible with NVIDIA GPUs Fermi, Kepler, Maxwell and Pascal

OS Supported

  • Windows-7/8/10 (32/64)
  • Linux Ubuntu, SLC 6.5, RHEL 6.5, OpenSUSE 12, CentOS
  • Linux4Tegra (L4T)

Resize benchmarks for NVIDIA GeForce GTX Titan X

High quality image resize for color Full HD (1920×1080, 24-bit) image to final resolution 960×576 can be done on GPU GeForce GTX 1080 at framerate 2600 fps (this is performance without host to device and device to host transfers). We recommend to use our resize solution on GPU together with JPEG codec and Sharpen options from our SDK to be able to do fast and high quality resize for jpeg images.

Other options from Fastvideo SDK

  • JPEG codec
  • Image cropping
  • Image rotation
  • Image sharpening option
  • OpenGL module for image output

Standard tasks to solve with Image Resize on CUDA

  • Batch resize for photos
  • Pyramid imaging
  • Realtime resize and sharp for video streams to match resolution of user's device
  • GPU image processing for RAW and DNG
     Home                   Contacts                 Site Map
GPU Image Processing