All Projects → bkornel → opencv_android_nonfree

bkornel / opencv_android_nonfree

Licence: other
No description or website provided.

Programming Languages

C++
36643 projects - #6 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to opencv android nonfree

Feature-Detection-and-Description
Feature Detection and Description with SIFT, SURF, KAZE, BRIEF, ORB, BRISK, AKAZE and FREAK using Python and OpenCV
Stars: ✭ 31 (-3.12%)
Mutual labels:  surf, sift
imgalign
Webapplication for image stitching and aligning
Stars: ✭ 162 (+406.25%)
Mutual labels:  surf, sift
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 (+196.88%)
Mutual labels:  surf, sift
MIT-Driverless-CV-TrainingInfra
PyTorch pipeline of MIT Driverless Computer Vision paper(2020)
Stars: ✭ 89 (+178.13%)
Mutual labels:  keypoints
kPAM
kPAM: Generalizable Robotic Manipulation
Stars: ✭ 73 (+128.13%)
Mutual labels:  keypoints
surfer
The Blog built on pure Rust stack. Backend for graphql services, and frontend for web application.
Stars: ✭ 35 (+9.38%)
Mutual labels:  surf
mods-light-zmq
MODS with external deep descriptors/detectors
Stars: ✭ 46 (+43.75%)
Mutual labels:  sift
SURF
SURF - Speeded Up Robust Features - source code
Stars: ✭ 117 (+265.63%)
Mutual labels:  surf
sift-saltstack
Salt States for Configuring the SIFT Workstation
Stars: ✭ 82 (+156.25%)
Mutual labels:  sift
Awesome Hand Pose Estimation
Awesome work on hand pose estimation/tracking
Stars: ✭ 2,196 (+6762.5%)
Mutual labels:  keypoints
Motion-Estimation-using-Speeded-Up-Robust-Features-SURF-and-Oriented-Fast-Rotated-Brief-ORB-
No description or website provided.
Stars: ✭ 25 (-21.87%)
Mutual labels:  surf
Imgaug
Image augmentation for machine learning experiments.
Stars: ✭ 12,107 (+37734.38%)
Mutual labels:  keypoints
pedx
Python tools for working with PedX dataset.
Stars: ✭ 26 (-18.75%)
Mutual labels:  keypoints
udacity-cvnd-projects
My solutions to the projects assigned for the Udacity Computer Vision Nanodegree
Stars: ✭ 36 (+12.5%)
Mutual labels:  keypoints
Surf
🏄‍♂️ Surf GitHub code with VS Code. (with CLI, chrome extensions, also works for Gitlab)
Stars: ✭ 1,797 (+5515.63%)
Mutual labels:  surf
mods
MODS (Matching On Demand with view Synthesis) is algorithm for wide-baseline matching.
Stars: ✭ 84 (+162.5%)
Mutual labels:  sift
Alphapose
Real-Time and Accurate Full-Body Multi-Person Pose Estimation&Tracking System
Stars: ✭ 5,697 (+17703.13%)
Mutual labels:  keypoints
stipcv
Realtime implemnetation of spatial-temporal local features
Stars: ✭ 14 (-56.25%)
Mutual labels:  sift
Fragsurf-2
Fragsurf is an actively developed standalone game based on HL2 surf and bhop movement mechanics.
Stars: ✭ 68 (+112.5%)
Mutual labels:  surf
NodeKit
surfstudio.github.io/nodekit
Stars: ✭ 27 (-15.62%)
Mutual labels:  surf

My development environment is set up as follows:

  • android-ndk-r10d (install path: D:\adt-bundle-windows-x86_64-20140702\android-ndk-r10d\)
  • OpenCV-2.4.10-android-sdk (install path: D:\CODE\OpenCV-2.4.10-android-sdk\), Download link
  • OpenCV-2.4.10 (install path: D:\CODE\OpenCV-2.4.10\), Download link

Building the nonfree module

  1. We actually only need to copy a few files from OpenCV-2.4.10 source code to OpenCV-2.4.10-android-sdk, namely:
    Copy the nonfree folder from OpenCV-2.4.10\sources\modules\nonfree\include\opencv2\ to OpenCV-2.4.10-android-sdk\sdk\native\jni\include\opencv2.

  2. Create a folder to hold our new project for libnonfree.so. Here, I call it libnonfree. Create a jni folder under libnonfree. Copy the following files from OpenCV-2.4.10\sources\modules\nonfree\src to libnonfree\jni\ folder:

  1. Building libnonfree.so:
    Create Android.mk and Application.mk scripts. This Android.mk is used to build libnonfree.so.

cd into the project folder libnonfree and type ndk-build to build the libnonfree.so.

So far, you have got libnonfree.so along with libopencv_java.so and libgnustl_shared.so in libnonfree\libs\armeabi-v7a folder.
You can easily build any SIFT or SURF applications using those libraries. If you want to use SIFT and SURF in JAVA code in your Android application, you only need to write JNI interfaces for the functions you want to use.

Building a sample application

  1. Create a project folder call libnonfree_demo. Create a jni folder inside the project folder. Then copy libnonfree.so along with libopencv_java.so and libgnustl_shared.so into jni.

  2. Create a nonfree_jni.cpp in jni. It is simple SIFT test program. It basically reads an image and detects the keypoints, then extracts feature descriptors, finally draws the keypoints to an output image.

  3. Create Android.mk and Application.mk inside jni:

cd into the project folder libnonfree_demo and type ndk-build to build the libnonfree_demo.so.

At this point you can easily extend the sample app with your SVMDetector. Just copy the source and include files int to the folder libnonfree_demo\jni and add cpp files to LOCAL_SRC_FILES in Android.mk.

The whole source can be downloaded from: https://github.com/bkornel/opencv_android_nonfree.

Original source from: http://web.guohuiwang.com/technical-notes/sift_surf_opencv_android

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].