Study Learn Grow
Writing CUDA Kernels For Interpolation

Writing CUDA Kernels For Interpolation


In real-life applications, we want big images: when we watch a video clip on a PC, we like to see it in the full-screen mode.

Overview

In real-life applications, we want big images: when we watch a video clip on a PC, we like to see it in the full-screen mode. We want high-quality images: if a block of pixels gets damaged during the transmission, we want to repair it. We want cool images: by digital image manipulation, fancy artistic effects as seen in movies can be rendered. We want fast processing, especially when the images are big and many. To process even faster, we want that the various image pixels are processed in parallel.

CUDA (Compute Unified Device Architecture) is a hardware architecture and programming model introduced by NVIDIA for the parallel processing of Graphics Processing Units (GPUs). It represents by now an assessed tool for parallel programming and permits low-level programming capable of achieving very high performance by directly and properly managing the thread work.

In this course, the direct use of CUDA for a simple yet common problem like image interpolation is illustrated. This will enable the attendee to get familiar with the functions running on the GPU, namely, the kernel functions. Being interpolation very common in technical and scientific applications, the development of parallel interpolation codes permits having a tool that can be reused when needed.

Course Information

You should have basic knowledge of the fundamentals of C/C++ and CUDA programming
You should have basic knowledge of elements of calculus, especially function approximation

Nearest-neighbor interpolation
Linear and bilinear interpolation
CUDA texture memory
Texture filtering
Nearest-neighbor and linear interpolations of a PGM image
Cubic B-spline interpolation
Bicubic B-spline interpolation of a PGM image
Texture lookup
Catmull-Rom interpolation
Different common interpolation techniques for PGM images will be presented and implemented with customized CUDA kernels, also using CUDA texture memory.

Engineers

• Lifetime Access to Each Course
• Certificate on Completion of Course
• No Extra Charges Or Admin Fees
• Easy Access to Courses
• High Priority Support After Sales.
• Big Discounts on Individual Courses

Course Specifications

Plan your future in engineering with courses including MSc Engineering Management.

See All Courses

Adult education is the non-credential activity of gaining skills and improved education. 

See All Courses

Online education is electronically supported learning that relies on the Internet for teacher/student interaction. 

See All Courses

A short course is a learning programme that gives you combined content or specific skills training in a short period of time. Short courses often lean towards the more practical side of things and have less theory than a university course – this gives you a more hands-on experience within your field of interest.

See All Courses

Course duration is 24 hours.

See All Courses

Study Learn Grow

Related Jobs