OpenVIDIA : Parallel GPU Computer Vision




Home

Features

Screenshots & Videos

Installation
Instructions


Quickstart

Programming
Example v0-0.07x


Programming
Example v0.8


Computer Vision with CUDA (new 1May08)

Framebuffer Objects

Download

Papers

Contributing

Project
sf.net project page
Tracker Tracker

 - Bugs ( 0 open / 0 total )
Bug Tracking System

 - Support Requests ( 1 open / 1 total )
Tech Support Tracking System

 - Patches ( 1 open / 1 total )
Patch Tracking System

 - Feature Requests ( 0 open / 1 total )
Feature Request Tracking System


Forums Forums ( 246 messages in 2 forums )
Docs Doc Manager
Mail Lists Mailing Lists ( 0 mailing lists )
Screenshots Screenshots
Tasks Task Manager
There are no public subprojects available
CVS CVS Tree ( commits, adds ) known bug
FTP Released Files

Related Projects

Comparametric Toolkit

Reference Links

Open GL Reference

nVIDIA cg homepage

GeForce FX Overclocking

GPGPU

gpu's arent just good for vision and computation - some clever folks have started using them for games as well. ;) har har linux-games.net

7 Years of Graphics Card History

SourceForge.net Logo

Page design based on Blosxom (which was used originally before the move to sourceforge).

This page best viewed with Dillo, Lynx, w3m, Mozilla-Firefox, Galeon, Epiphany, konqueror . . .

   

Video4Linux2 with CUDA YUYV to RGB32 Conversion

This example shows how to process camera input using NVIDIA CUDA.

This example does YUYV to RGB32 conversion on an image from a V4L2 camera source. This was tested with a Logitech Quickcam Pro using the uvcvideo driver. (driver should be included with the Linux distro)

Make sure you have:

Compiling with CUDA

CUDA is a set of extensions to C, and so it runs through a compiler called nvcc. nvcc is available as part of the CUDA SDK download.

nvcc --host-compilation c++ --compiler-options "-I../include -I$HOME/NVIDIA_CUDA_SDK/common/inc" \
--linker-options "-L../ -lopenvidia -lglut -lGLEW -lstdc++ -lccext2 -lccgnu2" V4L2CUDA.cu

Download the Example

Here's a link to a downloadable C file
View it Online here

Additional info

The example shows how to put the image into a CUDA array, then access it using the CUDA texture 'path', which converts the unsigned char data to floats when accessing it.

To send the results back to OpenGL, we use a OpenGL Pixel Buffer Object. We create a PBO as usual in OpenGL, then retrieve a pointer to it for CUDA to use. the CUDA kernel then reads from the texture, and writes to this pointer. Afterwards we draw on screen in OpenGL, using the PBO to texture a quad.

Resources of Interest