Code Monkey home page Code Monkey logo

object_tracking's Introduction

Object Tracking

Object tracking application using Open Computer Vision Framework.

You may not copy, redistribute, use without quoting the author. By visiting this project, you agree to the following LICENSE: license

##Introducion The goal for this application is to track a part of an image based on user selection. The project explores different algorithms and find the most optmized solution. Currently, there are companies and organization that have acheived this goal with different platforms, such as DJI Phantom 4 Drone with Visual Tracking (r)

I am also writing a research paper on this project. If you are interested in that, please let me know.

##Screen Shot

ScreenShot ScreenShot IMG_0124<script async src="//embedr.flickr.com/assets/client-code.js" charset="utf-8"></script>ScreenShot

##Algorithms

MSER help us to identify and track objects (regions). With MSER, we can teach the computer different images, pattern. I newly created a macOS application for MSER testing. Current, MSER is our biggest focus. We have had success in detecting regions as well as tracking regions. In the iOS application, you can programmatically set the template image to track (ex. cocola logo) then test it with realworld images. (Upon your request, I will be able to provide more information)

#######This projects a couple of algorithms, LKT algorithm is great at analyzing the content of a frame. It's fast and easy to implement. This algorithm is specifically used in the ObjectTracking class. That class is wrapped with ObjectTrackingSample class, which is more user friendly and actually gives you some useful data. SampleFacade is a objective-c++ class that directly talk to the ViewController. In there, you can find familiar classes such as NSMutableArray (instead of std::vector)

#######After some development and testing, the object tracking class is more reliable and purposeful than the other algorithms. However, improvements are need, please don't hesitate to fork this repo and make pull requests.

#######We also tried to use feature detections algorithms (in OpenCV): ORB, AKAZE, FAST. These algorithms are no longer supported. Our goal was to combine parts of different algorithms and train the computer to identify and track objects in realtime. (For more information, please visit the links above or the OpenCV documentations.)

##Usages Download/Clone the project. This project no longer support cocoapods. When the project is download, please make sure to change the Framework Search Path.
In another word, you have to download OpenCV compiled frameworks and change the framework search path or copy it into the project. I apologize for the inconvience. Cocoapods OpenCV is outdated and shouldn't be used.

Important changes are recorded on Github or please refer to the change log.

##Credit: Developed and actively maintained by Neil Nie. If you are intereste, please check out my other repositories.

Contact: [email protected]

Thanks to:

object_tracking's People

Contributors

neilnie avatar

Watchers

James Cloos 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.