Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

NI Vision development Module (VDM) - GPU usage

Solved!
Go to solution
Hi - Does or can the NI Vision development Module (VDM) use a NVidia GPU on a PC? I am looking to speed up some image processing. Reducing the time of particle filter etc would help.
Certified LabVIEW Architect
0 Kudos
Message 1 of 5
(2,071 Views)
Solution
Accepted by Martin.D

As far as I know, there is nothing of that kind until now. There is a toolkit available to access some of the cuda libraries directly.

Another thing you could do is to pass LabVIEW images to functions of a dll which could contain some cuda calls. I recommend you check IMAQ GetImagePixelPtr.vi or IMAQ ImageToEDVR.vi for passing/getting image buffer to a dll function.

 

Sami

Message 2 of 5
(2,039 Views)

Hi Martin,

 

We (@Ngene) have a CuLab - GPU toolkit for LabVIEW, which provides a bunch of functionality out of the box.

We are going to include CV functions in upcoming releases. If you could tell which specific CV functions you are interested in (besides particle filter) we will consider adding them as well.

In AI We Trust
0 Kudos
Message 3 of 5
(1,783 Views)

Hello, I must say your CuLab toolkit looks very decent. Vision routines such as particle filter that utilise the GPU would be great, that routine is the one that takes most time for us in our current application but we can get away it (although faster would be better). Ideally any processor intensive routine (pattern match?) in NI-VDM would have an option for GPU optimisation, I was surprised to find that a GPU is of no use to NI-VDM. I see "Vision OpenCV Utilities" are available, I have been intending to check if these utilities can target the GPU (OpenCV can), maybe CV+GPU tools are readily available in LabVIEW now.

Certified LabVIEW Architect
Message 4 of 5
(1,775 Views)

Thank you, Martin, for the feedback.

 

We will start with implementing most common functions.

There are some functions in VDM which look very specific to VDM, and underlying algorithm is not clear.

Particle filter, analysis, count is something we implemented previously and can match with VDM. 

For pattern matching, I am not sure about underlying algorithm, so cant say whether it would be supported by CuLab.

Have you considered Deep Learning approach for pattern matching.

We have a DeepLTK (Deep Learning Toolkit for LabVIEW) which could help achieving decent results in pattern matching if you have enough data to train. I suppose object detection approach should be something to consider here.

DeepLTK is also GPU accelerated, so speed should not be a concern.

 

In AI We Trust
0 Kudos
Message 5 of 5
(1,754 Views)