CUVIlib is now officially part of NVIDIA CUDA-X and is listed under partner libraries on NVIDIA’s website. Our journey began in early 2010 when we envisioned a library built on top of CUDA to provide accelerated primitives for vision applications. Since then we have helped dozens of companies and thousands of users with their performance needs. Today, we are better, faster and more robust than ever. We thank NVIDIA to recognize our efforts by giving us the appreciation that our developers deserve.

Image rotation – which seems trivial – has big implications in computer vision industry. The quality and even more so the speed at which a vision library can perform various types of rotation is vital to some industries. For example the rate at which a scanner can churn pages impacts greatly on its sales. That’s why Scantron, a global leader in scanning, uses CUVI for their line of products to self-align scanned documents at an insanely fast rate.

Image rotation can be of two broad types: cropping and non-cropping. Most image editing software uses cropping-based rotation (along with zoom) for image straighten purposes. Industries and data sensitive application, on the other hand, use non-cropping rotation.

CUVI is a simple to use C++ SDK that provides accelerated image processing and computer vision algorithms. To run CUVI on your machine, you’ll need an entry level understanding of C++ and NVIDIA GPU in your system. CUVI requires no or very little knowledge of programming skills yet provides sophisticated computer vision features ranging from medical, security, camera and research domains. Use CUVI to start building complex vision applications today!

Recently we have release version 1.6.0 which is available for download for free (for personal use) with nearly one hundred features including image filtering, transforms, geometric, color operations and computer vision. For any help and assistance, drop us an email at contact[at] In this article, I’ll be talking about some of the most sought-after features of CUVI. But first let’s go through how easy it is to use.

Nvidia releases CUDA toolkit version 10.2 on November 20th, 2019 with a bit surprise – it drops macOS support. According to the release notes, 10.2 will be the last version of the toolkit to support mac operating system while the next release will remove the support. Release notes published here says:


Comparison performed using CUDA toolkit version 9.1 and CUVI release 1.55 on an underlying core i3-6100, GTX 1080 system and benched with NVIDIA Nsight.

CUVI and NPP both have been in market for almost a decade now. NVIDIA’s own performance primitive library (NPP), which started as a CUDA-alternative to IPP, now has hundreds of functions over its decade long releases. These functions provide a quick way to prototype applications on massively parallel GPUs without much of a learning curve. CUVI (CUda Vision and Imaging) SDK, on the other hand, with its limited functionality, provides the most cutting edge computer vision solutions and offers production quality verticals for various domains.

In this post, I will be comparing one of CUVI’s most popular feature; debayer with its counterpart in NPP. It’s fair to mention that NPP’s debayer offers only bi-linear approach: “Missing pixel colors are generated using bi-linear interpolation with chroma correlation of generated green values“. This is the most basic approach to regenerate a colored image from CFA and is prone to artifacts at high feature regions. For a much better regeneration, CUVI offers the newer, much improved DFPD approach to debayering.

Earlier we demonstrated CUVI’s new underwater filter that works like a magic in clarifying and restoring the colors of underwater imagery. Today, I’m going to reveal what it does to underwater videos – most of which are shot using GoPro. You’ll find link to each of the original video to better compare the effectiveness of the filter:

GoPro on Hammerhead Fin

Original Video Link

This page is a showcase of our new underwater filter that removes haze and brings out the real colors to your underwater photography. All the results are generated from ‘Auto’ setting of the filter. Although Auto mode works on most of the images like magic, the filter is heavily parameter-ized to fine tune the results.


Apart from removing haze, it also enhances the colors of haze-less images and is so addicve that you start using it on every underwater photo by default. Feel free to comment your thoughts below and contact us if you’re interested in purchasing this feature.

We, humans have poor visibility in darkness and have always fantasized to have technology that enables us to see better in low light. When it comes to natural vision, our eyes are weak and any color captured by camera in its lower intensity appears black to us and hence the complete image is unrecognizable.

Today we present a feature of CUVI that enhances the low intensity colors in a dark photo taken from a general purpose mobile, CCTV or DSLR camera.


It was just another day at work for Brent, scanning the floor of the ocean off the coast of Florida, whose company Queens Jewels LLC owns “salvaging rights” to 1715 fleet, a group of 11 Spanish ships which sank somewhere off the shore of Florida.

And then Brent stuck gold, literally. He has unearthed jewels from one of the sunken ships, gold coins to be precise, which are worth over 1 million dollars in value.

Undersea imagery is awesome. It shows us the parallel world of creatures, coral reefs and whatnot which covers about 75% of our planet Earth. There are a plethora of cameras which record and stream underwater videos and images, ranging from analog cameras which are still widely used in commercial diving to HD and even 2K cameras streaming digital undersea video. However, water is different in the way it scatters light and visibility as a diver or an ROV goes further down. The visibility and the colors we see in undersea imagery are very sensitive to the depth as well as the equipment used. Most cameras do not have any “undersea filter” which can clean up your awesome scuba dive or in the case of commercial diving, you may miss visual details of important underwater infrastructure you were trying to inspect.