All Projects → robertwgh → ezSIFT

robertwgh / ezSIFT

Licence: Apache-2.0 license
ezSIFT: An easy-to-use standalone SIFT library written in C/C++

Programming Languages

C++
36643 projects - #6 most used programming language
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to ezSIFT

Feature-Detection-and-Matching
Feature Detection and Matching with SIFT, SURF, KAZE, BRIEF, ORB, BRISK, AKAZE and FREAK through the Brute Force and FLANN algorithms using Python and OpenCV
Stars: ✭ 95 (+18.75%)
Mutual labels:  feature-detection, sift, feature-matching
Competitive-Feature-Learning
Online feature-extraction and classification algorithm that learns representations of input patterns.
Stars: ✭ 32 (-60%)
Mutual labels:  feature-detection, feature-extraction
SiftySifty
implements SIFT algorithm using pure c++
Stars: ✭ 25 (-68.75%)
Mutual labels:  sift, sift-algorithm
SIFT-BoF
Feature extraction by using SITF+BoF.
Stars: ✭ 22 (-72.5%)
Mutual labels:  feature-extraction, sift
Feature-Detection-and-Description
Feature Detection and Description with SIFT, SURF, KAZE, BRIEF, ORB, BRISK, AKAZE and FREAK using Python and OpenCV
Stars: ✭ 31 (-61.25%)
Mutual labels:  feature-detection, sift
imgalign
Webapplication for image stitching and aligning
Stars: ✭ 162 (+102.5%)
Mutual labels:  feature-detection, sift
SIFT-GPU
A CUDA implementation of SIFT
Stars: ✭ 18 (-77.5%)
Mutual labels:  feature-detection, sift
Bag-of-Visual-Words
🎒 Bag of Visual words (BoW) approach for object classification and detection in images together with SIFT feature extractor and SVM classifier.
Stars: ✭ 39 (-51.25%)
Mutual labels:  feature-extraction, sift
towhee
Towhee is a framework that is dedicated to making neural data processing pipelines simple and fast.
Stars: ✭ 821 (+926.25%)
Mutual labels:  feature-extraction
opensmile
The Munich Open-Source Large-Scale Multimedia Feature Extractor
Stars: ✭ 280 (+250%)
Mutual labels:  feature-extraction
lung-image-analysis
A basic framework for pulmonary nodule detection and characterization in CT
Stars: ✭ 26 (-67.5%)
Mutual labels:  feature-extraction
dodo detector
Python object detection package (uses TF models and OpenCV)
Stars: ✭ 19 (-76.25%)
Mutual labels:  sift-algorithm
imsearch
Framework to build your own reverse image search engine
Stars: ✭ 64 (-20%)
Mutual labels:  feature-extraction
LoFTR
Code for "LoFTR: Detector-Free Local Feature Matching with Transformers", CVPR 2021
Stars: ✭ 1,046 (+1207.5%)
Mutual labels:  feature-matching
PyTorch-Model-Compare
Compare neural networks by their feature similarity
Stars: ✭ 119 (+48.75%)
Mutual labels:  feature-extraction
xcms
This is the git repository matching the Bioconductor package xcms: LC/MS and GC/MS Data Analysis
Stars: ✭ 124 (+55%)
Mutual labels:  feature-detection
DSeg
Invariant Superpixel Features for Object Detection
Stars: ✭ 18 (-77.5%)
Mutual labels:  feature-extraction
fastknn
Fast k-Nearest Neighbors Classifier for Large Datasets
Stars: ✭ 64 (-20%)
Mutual labels:  feature-extraction
autoencoders tensorflow
Automatic feature engineering using deep learning and Bayesian inference using TensorFlow.
Stars: ✭ 66 (-17.5%)
Mutual labels:  feature-extraction
antropy
AntroPy: entropy and complexity of (EEG) time-series in Python
Stars: ✭ 111 (+38.75%)
Mutual labels:  feature-extraction

ezSIFT: An easy-to-use stanalone SIFT library

License Build Status

The SIFT (scale-invariant feature transform) algorithm is considered to be one of the most robust local feature detector and description methods. Most of the open-source SIFT implementations rely on some 3rd-party libraries. Some of them even rely on a few different large libraries. These dependencies make the installation, compilation and usage not easy.

The ezSIFT library provides a standalone and lightweight SIFT implementation written in C/C++. The ezSIFT is self-contained, and does not require any other libraries. So it is easy to use and modify. Besides, the implementation of the ezSIFT is straightforward and easy to read.

The ezSIFT project was original hosted at SourceForge (link). We recently migrated it to github to better maintain the code development.

Documentation

Please read ezSIFT Wiki page for details.

Examples

I also provide two examples showing how to use this library:

  • examples/feature_extract: detect keypoints and extract feature descriptor from a single image.
  • examples/image_match: detect keypoints and extract features from two images and perform feature matching.

How to build

Mac OS

Follow the following instructions:

cd platforms/desktop/
mkdir build
cd build
cmake ..
make

Then you can find the built binary under build/bin directory. Run the two demos like this:

./image_match img1.pgm img2.pgm
./feature_extract img1.pgm

Or, you can use the following instruction to generate Xcode project:

cd platforms/desktop/
mkdir build
cd build
cmake .. -GXcode

Then, open ezsift.xcodeproj project to build.

Windows (Visual Studio)

cd platforms/desktop/
mkdir build
cd build
cmake ..

Upon finishing the above instructions, A Visual Studio solution ezsift.sln will be generated. Open the solution file and build all projects, the static lib and examples will be built.

Android NDK native

  1. Please install the latest Android NDK package, and add NDK root folder to your system environment PATH to expose ndk-build tool to the shell.
  2. Go to platforms/android.
  3. run ./build.sh
  4. After build is finished, you will find the binaries under build/android/bin/.
  5. Connect an Android device to your computer using ADB. Use install_and_run.sh to install the binaries and run them on the device.

License

Copyright 2013 Guohui Wang

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].