GitXplorerGitXplorer
w

pyfast

public
3 stars
2 forks
1 issues

Commits

List of commits on branch master.
Unverified
01f066aefecd873ab976b0c54b2064ad9355269e

added fix to make code compile on windows

wwelinder committed 12 years ago
Unverified
65ae85285ce5d2affbdb71d539bfc08260e95341

fixed broken markdown syntax

wwelinder committed 12 years ago
Unverified
27e2b7d5726d7087be27fc5528e1d4658a320c32

fixed typo

wwelinder committed 12 years ago
Unverified
3f71ff3c43cd83f70d034d48c92eb77b5874c7d1

more information on how to use wrapper

wwelinder committed 12 years ago
Unverified
e3a578a9a954e782fbf8fdee14ced0bc682907ff

fixed typo in readme

wwelinder committed 12 years ago
Unverified
4681171bad500766a01ff048e1298cfbbc70de2d

added more info to setup.py

wwelinder committed 12 years ago

README

The README file for this repository.

Python wrapper for the FAST corner detector

This is a python wrapper for the FAST corner detector written in Cython. It is a wrapper around the original C implementation, so it is very fast.

FAST is a super fast corner detector developed by Edward Rosten and Tom Drummond. For more information, visit Rosten's project page:

http://www.edwardrosten.com/work/fast.html

There are many other wrappers and implementations for FAST, for example in OpenCV. I wrote this wrapper for two reasons (1) to have a simple standalone wrapper for python, and (2) to learn how to use Cython.

Installation

You can download or clone this repository and then run:

python setup.py build_ext -i

This will compile the module in the current directory (assuming Cython and numpy are installed), but not install it on your system. Great approach if you just want to try it out. If you want to install it, you just run:

python setup.py install

Use

To use pyfast, just import the module and run the detect function. For example, the most basic use is

import pyfast
detections, scores = pyfast.detect(image, threshold)

where image is the image represented as a 2D UINT8 numpy array, and threshold is the threshold parameter for the FAST algorithm. Setting threshold to a value between 20 to 100 usually yields good results. Smaller values of the threshold run slower but returns more corners, higher values run faster but return fewer corners. See the Figure 11 in the original paper (PDF) for more information about the tradeoff between speed and the number of corners detected.

Check out demo/demo.py for a real example of how to use the wrapper. It's really quite simple.

License and copyright

Licensed under the same license as the original FAST implementation. See LICENSE and fast/LICENSE. The fast/ directory contains the original (unmodified) fast C implementaton.

Copyright (c) 2012 Peter Welinder