Giter Site home page Giter Site logo

acl_ezsift's Introduction

===============================================================

Introduce

This C++11 code implements this source code:

https://sourceforge.net/projects/ezsift/

The original code is written by : Robert Wang (robertwgh (at) gmail.com)

It has been migrated to use ARM Computation Library (ACL) by: Armin Zare Zadeh ([email protected])

ACL: https://github.com/ARM-software/ComputeLibrary

This version of the EZSIFT code can compute the SIFT keypoints detection and matching on NEON and MALI GPUs. In order to compile the code for the NEON Technology, only in the main.cpp file, these two lines must be uncommented:

#define SIFTType arm_compute::NEEZSIFT
const char *ALGNAME = "NE_";

Likewise for the Mali GPU the -DARM_COMPUTE_CL=1 compile switch 
must be one and also uncommented these lines:
#define SIFTType arm_compute::CLEZSIFT
const char *ALGNAME = "CL_";

This will automatically build the code for NEON or Mali. Basically, this new version of the code uses C++ templates to switch between these two computation technologies. This version measures the total elapsed time for the computation of the SIFT algorithm and puts it as text on the output images. Based on the used technology, the output images have the NE_ or CL_ prefixes. In both cases, only the computation of images hierarchies (octaves, Gaussian, difference of Gaussian, Gradient & Rotation) are performed either on the NEON or Mali, the rest of the computation is performed on the CPU.

How TO

ComputeLibrary : v17.05 OpenCV : 3.4.3

Compile ComputeLibrary

git clone https://github.com/ARM-software/ComputeLibrary
git chekcout v17.05
scons Werror=1 debug=0 asserts=0 neon=1 opencl=1 os=linux arch=armv7a examples=0 embed_kernels=1

Compile opencv 3.4.3

git clone https://github.com/opencv/opencv
git chekcout 3.4.3

git clone https://github.com/opencv/opencv_contrib
git chekcout 3.4.3

cd opencv 
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local \
        -D INSTALL_PYTHON_EXAMPLES=OFF\
        -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
        -D BUILD_EXAMPLES=OFF ..

acl_ezsift's People

Contributors

akzare avatar jefby avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.