PARP Research Group Universidad de Murcia


examples/SIFTGPU/realTime/realTime.cpp File Reference

Performs real-time SIFT detection and matching on the frames from an input video sequence using SIFTGPU. More...

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <QDebug>
#include <QVApplication>
#include <QVVideoReaderBlock>
#include <QVDefaultGUI>
#include <QVImageCanvas>
#include <qvipp.h>
#include <qvsiftgpu.h>

Go to the source code of this file.


Detailed Description

Performs real-time SIFT detection and matching on the frames from an input video sequence using SIFTGPU.

SIFTGPU is a software package with functionality to perform parallel SIFT detection and matching on GPU hardware. This example uses QVision wrapper functions for that software package to detect SIFT features on the input frames of a video sequence. Those wrapper functions are also used to perform feature matching between the most recent frame in the video sequence and a key-frame selected by the user.

See file 'config.pri' to enable QVision compatibility with the SIFTGPU package.

Usage

Once compiled, the program should be used with this command line:

        ./realTime --URL=<path or url to video>

An image canvas shows the input frame and the SIFT features detected on it, with the orientation and the scale indicated with a segment line drawn from the location of each feature:

SIFTGPU-features.png

Pushing the button Grab reference frame sets the actual frame as the key-frame.

Then the application will match the SIFT features detected at the key-frame with the features detected at each new input frame from the video sequence.

These matchings are shown in another image canvas:

SIFTGPU-matchings.png
Parameters:
URL Video source identification string. See dynamic property URL for QVMPlayerCamera.
Author:
PARP Research Group. University of Murcia, Spain.

Definition in file realTime.cpp.




QVision framework. PARP research group. Copyright © 2007, 2008, 2009, 2010, 2011.