Image-feature-detector - A C++ Qt GUI Linux program to calculate with OpenCV Harris, FAST, SIFT and

  •        0

Image Feature DetectorImage Feature Detector (IFD) is a Linux computer program with an intuitive graphic user interface aimed to calculate and show the main image features related with computer vision: Harris, FAST, SIFT and SURF. It is programmed in C++ with the Qt libraries. To calculate features IFD makes use of the OpenCV libraries. The purpose of the program is mainly academic and didactic. This program was part of the end of degree project Image Features Extraction for Mobile Robots Navigation of my Telecommunications Degree, exposed at the Cáceres Polytechnic School of the University of Extremadura , Spain, on February 2011. You can download the project memory and presentation in PDF format. IMPORTANT NOTE: (LUCKILY, I AM WORKING TO SOLVE THIS, BUT DUE TO MY LACK OF TIME IT WILL TAKE ME SOME MONTHS): although you can download the source code, it can NOT be executed because it uses RoboComp (, a C++ library from my university. IFD just uses this library to communicate with the cameras of the laboratory robots, that is, it doesn't need the library to run rightly. But due to the RoboComp architecture, the execution of IFD is started creating an object from a main RoboComp cpp "launcher". This can be fixed and unlinking IFD from the library, but I've not feel like. May be in the future. Screenshots Project memory and presentationImage Feature Detector is part of my end of degree project Image Features Extraction for Mobile Robots Navigation. Thus, it has a memory where each of the principles used in the project are explained. The project got Distinction. The memory is entirely in English whit the preface also in Spanish. The index is as following: Prólogo Sobre la Memoria Preface About the Memory Introduction What Is Computer Vision What Is Digital Image Processing Robotics and Robolab Visual Odometry Image Features, Descriptors and Detectors What Is a Feature What Is a Descriptor Main Detectors Overview Comparing Image Descriptors: Proofs and Results Harris vs. FAST SIFT vs. SURF Image Feature Detector: the Computer Program Overview Qt Application Framework OpenCV Library Image Feature Detector Conclusions Bibliography References Image Credits The project also has a presentation which I used to defence my work the day of the project evaluation before the examining board. You can download both the project memory and presentation in PDF format. Although the project is titled Image Features Extraction for Mobile Robots Navigation, the principles about image features exposed there can be applied to any other purpose in addition to that of mobile robots navigation. It explains the imagery part related with image features that any robot should have, but not a particular implementation. Program development and change historyI have no intention to further develop the project beyond fixing bugs. But I have though the code and the project memory and presentation may be worthwhile to other developers or students. If you wonder why to get Harris features the whole image is processed rather than just to calculate the keypoints and show them in the original image with a circle as it is done with the rest of features, that is because I am using the Harris OpenCV implementation, and like this is how Harris is implemented in OpenCV. There are other Harris features C++ implementations through the net, but I am exclusively using OpenCV, with no further libraries. A change history can be seen in the wiki section. So far not very long. Licenses and source codeImage Feature Detector is Free and Open Source Software published under the GNU General Public License v3. The project memory and presentation is issued under the Creative Commons 3.0 BY-SA license. You can download the source files either through the SVN repository or by downloading the 7z compressed file. 2010-2012 © Antonio Redondo López. Chuck Norris approves this program.



Related Projects

Integrating Vision Toolkit

The Integrating Vision Toolkit (IVT) is a powerful and fast C++ computer vision library with an easy-to-use object-oriented architecture. It offers its own multi-platform GUI toolkit. OpenCV is integrated optionally. Website:

OpenCV - Open Source Computer Vision

OpenCV (Open Source Computer Vision) is a library of programming functions for real time computer vision. The library has more than 500 optimized algorithms. It is used to interactive art, to mine inspection, stitching maps on the web on through advanced robotics.

StarUML - UML or MDA Platform

StarUML is a software modeling tool to develop fast, flexible, extensible, featureful UML/MDA platform running on Win32 platform. It is a good alternative to Rational Rose. StarUML provides simple and powerful plug-in architecture so anyone can develop plug-in modules in COM-compatible languages.


OpenCms from Alkacon Software is a professional, easy to use website content management system. OpenCms helps content managers worldwide to create and maintain beautiful websites fast and efficiently. OpenCms is based on Java and XML technology.

VideoMan Library

Library for capturing video from cameras, 3d sensors, frame-grabbers, video files and image sequences. It can also display multiple images using OpenGL with different layouts. Easy integration with OpenCV, CUDA... Perfect for computer vision. Keywords: video capture, computer vision, machine vision, opencv, opengl, cameras, video input devices, firewire, usb, gige

QVision: Computer Vision Library for Qt

Computer vision and image processing library for Qt.


The Open Source Computer Vision Library has gt;2500 algorithms, extensive documentation and sample code for real-time computer vision. It works on Windows, Linux, Mac OS X, Android and iOS. Homepage: Qamp;A forum: Documentation: Please pay special attention to our tutorials! Books about the OpenCV are described here:


ImageMagick is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.

Quick Launch

Quick Launch - a New Lightweight and Fast Way to Manage and Launch Thousands of Tools and Applications

Gallery - Photo Album Organizer

Gallery is the open source web based photo album organizer. Gallery gives you an intuitive way to blend photo management seamlessly into your own website. Its features include Create Album, view Album, Photo, Slideshow, Rotate image, Rearrange photo and lot more.