SIFT features in GPU

Hello, I am trying to use my GPU for finding corners and features from image, unfortunately only the function: detectFASTFeatures(Img), can work with gpuArray, the second function: extractFeatures(Img, points) is not working with gpuArray. I tried putting these codes in GPU Coder, and I got this error:
Code generation does not support MATLAB class 'vision.internal.cornerPoints_cg' in this context. Any suggestions?

Answers (1)

Joss Knight
Joss Knight on 12 Jun 2018

0 votes

Sorry about that. Your best bet is to use the OpenCV interface to leverage their GPU supported functionality inside MATLAB.
detectHarrisFeatures is also supported for GPU, as well as various deep learning-related features.

2 Comments

Thanks I will check it out, although its weird that you can use the GPU to detect cornerpoints but you can't use it afterwards for extracting the features.
Detecting features is both the most computationally intensive and most parallelisable part of typical vision workflows. It is the natural place to start with GPU acceleration. After that point you are no longer working with high resolution images, but sparse feature data, so data parallelism is less likely to provide a performance advantage.
BTW, detectHOGFeatures also support gpuArray.

Sign in to comment.

Categories

Find more on Get Started with GPU Coder in Help Center and File Exchange

Tags

Asked:

on 12 Jun 2018

Commented:

on 13 Jun 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!