Giter VIP home page Giter VIP logo

hanleyweng / gesture-recognition-101-coreml-arkit Goto Github PK

View Code? Open in Web Editor NEW
335.0 11.0 49.0 12.93 MB

Simple project to recognize hands in realtime. ๐Ÿ‘‹ Serves as an Example for building your own object recognizer.

Home Page: https://medium.com/p/7f8c09b461a1

License: MIT License

Swift 100.00%
computer-vision hand-tracking gesture-recognition object-recognition coreml arkit ios augmented-reality machine-learning

gesture-recognition-101-coreml-arkit's Introduction

Hand Gesture Recognition

This simple sample project recognizes hands in realtime. ๐Ÿ‘‹ It serves as a basic example for recognizing your own objects. Suitable for AR ๐Ÿค“. Written for the tutorial โ€œCreate your own Object Recognizerโ€.

gif showing fist and spread hand appearing and dissappearing from screen, and it being recognized on an iPhone

Demo Video - on Youtube

Tech: iOS 11, ARKit, CoreML, iPhone 7 plus, Xcode 9.1, Swift 4.0

Notes:

This demonstrates basic Object Recognition (for spread hand ๐Ÿ–, fist ๐Ÿ‘Š, and no hands โŽ). It serves as a building block for object detection, localization, gesture-recognition, and hand tracking.

Disclaimer:

The sample model provided here was captured in 1 hour and is biased to one human handย ๐Ÿ‘‹๐Ÿผ. Itโ€™s intended as a placeholder for your own models. (See Tutorial)


Steps Taken (Overview)

Hereโ€™s an overview of the steps taken. (You can also view my commit history to see steps involved.)

  1. Build an Intuition by playing with Google CL's Teachable Machine.
  2. Build dataset.
  3. Create a Core ML Model using Microsoft's CustomVision.ai.
  4. Run the model in realtime with ARKit.

Full Tutorial here

P.S. A few well selected images are sufficient for CustomVision.ai . For the sample model here, I did 3 rounds of data collection (adding 63, 38, 21 images per round). Alternating classes during data collection also appeared to work better than gathering all the class images at once.

image of dataset

License

MIT Open Source License. ๐Ÿงž Use as you wish. Have fun! ๐Ÿ˜

gesture-recognition-101-coreml-arkit's People

Contributors

hanleyweng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gesture-recognition-101-coreml-arkit's Issues

error on ViewController : Use of unresolved identifier 'example_5s0_hand_model'

on the ViewController - line 43 and 44

guard let selectedModel = try? VNCoreMLModel(for: example_5s0_hand_model().model) else {
fatalError("Could not load model. Ensure model has been drag and dropped (copied) to XCode Project. Also ensure the model is part of a target (see: https://stackoverflow.com/questions/45884085/model-is-not-part-of-any-target-add-the-model-to-a-target-to-enable-generation ")
}

The xcode would return the error : Use of unresolved identifier 'example_5s0_hand_model'

Error while running to my iPhone X

I want test your program but got stuck this "error: Failed with exit code 1" in the Xcode. Do you had idea why of this error get from? I am running iOS 12.0 on iPhone X so let me know if you know

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.