alex stepanov uamobile2012

49
Распознавание образов и технологии Augmented Reality в мобильных приложениях Степанов Александр iOS Developer пятница, 14 декабря 12 г.

Upload: yltastep

Post on 29-Nov-2014

1.173 views

Category:

Documents


6 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Alex Stepanov UAMobile2012

Распознавание образов и технологии Augmented Reality в мобильных

приложениях

Степанов АлександрiOS Developer

пятница, 14 декабря 12 г.

Page 2: Alex Stepanov UAMobile2012

What is AR ?

пятница, 14 декабря 12 г.

Page 3: Alex Stepanov UAMobile2012

IronMan

пятница, 14 декабря 12 г.

Page 4: Alex Stepanov UAMobile2012

Minority report

пятница, 14 декабря 12 г.

Page 5: Alex Stepanov UAMobile2012

In real

пятница, 14 декабря 12 г.

Page 6: Alex Stepanov UAMobile2012

Google Eyes

пятница, 14 декабря 12 г.

Page 7: Alex Stepanov UAMobile2012

Juniper research, 2011пятница, 14 декабря 12 г.

Page 8: Alex Stepanov UAMobile2012

AR Types

‣Location based

‣ Image recognition

‣Face recognition

пятница, 14 декабря 12 г.

Page 9: Alex Stepanov UAMobile2012

Location based

‣Location (GPS)

‣Accelerometr

‣Magnetometr + Gyroscope

‣Mapkit

пятница, 14 декабря 12 г.

Page 10: Alex Stepanov UAMobile2012

Location based

‣ . . .

пятница, 14 декабря 12 г.

Page 11: Alex Stepanov UAMobile2012

ARKit• https://github.com/zac/iphonearkit/

• https://github.com/nielswh/iPhone-AR-Toolkit

✓ Free, open source (not GPL)

- Gyroscope support

- Different devices (iPhone, iPad, iPod) support

пятница, 14 декабря 12 г.

Page 12: Alex Stepanov UAMobile2012

• http://3dar.us/

✓ Gyroscope (CoreMotion)

✓ OpenGL 3D markers

- Free - branded

- 4 995 $ for unbranded

пятница, 14 декабря 12 г.

Page 13: Alex Stepanov UAMobile2012

Image based

‣Marker - based

‣Markerless

пятница, 14 декабря 12 г.

Page 14: Alex Stepanov UAMobile2012

Marker - based• https://github.com/benlodotcom/VRToolKit

✓ Free Open source

- GPL

- Low performance

пятница, 14 декабря 12 г.

Page 15: Alex Stepanov UAMobile2012

Marker - based• https://github.com/jonmarimba/NyArToolkit-iOS

✓ Free Open source

✓ Good performance

✓ Unity3D

- GPL

пятница, 14 декабря 12 г.

Page 16: Alex Stepanov UAMobile2012

✓ Українці✓ Geo-position SDK

- Licensing terms

пятница, 14 декабря 12 г.

Page 17: Alex Stepanov UAMobile2012

✓ Unity3D

✓ Marker is more flexible

- 485 € : 1year, 1 app, 1 marker, brandable

- 6 795 € : 1year, 1 app, no limits

пятница, 14 декабря 12 г.

Page 18: Alex Stepanov UAMobile2012

Markerless

• Pattern recognition• Tracking• 3D pose estimation

пятница, 14 декабря 12 г.

Page 19: Alex Stepanov UAMobile2012

OpenCV

пятница, 14 декабря 12 г.

Page 20: Alex Stepanov UAMobile2012

OpenCV• http://opencv.org/

• https://github.com/Itseez/opencv

✓ Standalone (MacOS, Linux, Windows)

✓ Mobile (Android, iOS from 2.3.1)

- No optimization for mobile (NEON)

пятница, 14 декабря 12 г.

Page 21: Alex Stepanov UAMobile2012

OpenCVOptimizationhttp://www.aorensoftware.com/blog/2011/03/31/bullet-physics-optimization-for-ios/

✓ {opencv}/ios/cmake/Modules/Platform/iOS.cmake

#43 set (CMAKE_CXX_FLAGS_RELEASE "-DNDEBUG -O3 -fomit-frame-pointer -ffast-math -mfpu=neon -mdynamic-no-pic")

✓ Compiler: Clang -> llvm-gcc4.2

пятница, 14 декабря 12 г.

Page 22: Alex Stepanov UAMobile2012

OpenCVOptimizationhttps://github.com/aptogo/OpenCVForiPhoneVersion 2.2-2.3

More about NEON :http://habrahabr.ru/post/156809/

пятница, 14 декабря 12 г.

Page 23: Alex Stepanov UAMobile2012

Pattern recognition

•STAR

•MSER

•SURF

•GFTT

•FAST

1.Feature detection

http://computer-vision-talks.com/2011/07/comparison-of-the-opencvs-feature-detection-algorithms-ii/

пятница, 14 декабря 12 г.

Page 24: Alex Stepanov UAMobile2012

Pattern recognition

•BRIEF

•SURF

•SIFT

2. Descriptor

пятница, 14 декабря 12 г.

Page 25: Alex Stepanov UAMobile2012

Pattern recognition

2. Matching

пятница, 14 декабря 12 г.

Page 26: Alex Stepanov UAMobile2012

Pattern recognition

• Brute force• FLANN

• Find nearest• dist < Eps

пятница, 14 декабря 12 г.

Page 27: Alex Stepanov UAMobile2012

Pattern recognition

RANSAC

пятница, 14 декабря 12 г.

Page 28: Alex Stepanov UAMobile2012

TrackingLucas-Kanade Optical Flow algorithm

• http://www.hatzlaha.co.il/150842/Lucas-Kanade-Detection-for-the-iPhone

✓ Implemented in OpenCV

- Low performance

пятница, 14 декабря 12 г.

Page 29: Alex Stepanov UAMobile2012

TrackingTemplate matching based tracking

• http://cvlab.epfl.ch/~lepetit/

✓ Faster

✓ Accurate

- Require hard-computational learning

пятница, 14 декабря 12 г.

Page 30: Alex Stepanov UAMobile2012

3D Pose estimation

Frame

Polygon

Homography

Model view matrix

Projection matrix3D

http://habrahabr.ru/post/139429/

пятница, 14 декабря 12 г.

Page 31: Alex Stepanov UAMobile2012

My experience• Ferns http://cvlab.epfl.ch/research/completed/

surface/ferns/

• Template matching tracking • http://isgl3d.com/

пятница, 14 декабря 12 г.

Page 32: Alex Stepanov UAMobile2012

Demo

пятница, 14 декабря 12 г.

Page 33: Alex Stepanov UAMobile2012

- Several markers

пятница, 14 декабря 12 г.

Page 34: Alex Stepanov UAMobile2012

• http://www.qualcomm.com/solutions/augmented-reality

✓ Free to use in commercial apps

✓ iOS & Android

✓ Unity3D extension

пятница, 14 декабря 12 г.

Page 35: Alex Stepanov UAMobile2012

✓ Fast and robust

пятница, 14 декабря 12 г.

Page 36: Alex Stepanov UAMobile2012

✓ Fast and robust

✓Really fast and robust !

пятница, 14 декабря 12 г.

Page 37: Alex Stepanov UAMobile2012

✓ Image target

Up to 50 markers

пятница, 14 декабря 12 г.

Page 38: Alex Stepanov UAMobile2012

✓ Virtual Buttons

пятница, 14 декабря 12 г.

Page 39: Alex Stepanov UAMobile2012

✓ Multi Targets

пятница, 14 декабря 12 г.

Page 40: Alex Stepanov UAMobile2012

✓ Online tool: https://ar.qualcomm.at/sdkRegistration required

✓ NinevehGL supports Vuforia SDK

http://nineveh.gl/

пятница, 14 декабря 12 г.

Page 42: Alex Stepanov UAMobile2012

Face tracking

✓ OpenCV Haar classification

пятница, 14 декабря 12 г.

Page 43: Alex Stepanov UAMobile2012

Face tracking

https://github.com/aptogo/FaceTracker

http://opencv.org/

✓ Not only face,

but face features too !

пятница, 14 декабря 12 г.

Page 44: Alex Stepanov UAMobile2012

- Too slow - 2D only

пятница, 14 декабря 12 г.

Page 45: Alex Stepanov UAMobile2012

3D Face contours tracking

пятница, 14 декабря 12 г.

Page 46: Alex Stepanov UAMobile2012

3D Face contours tracking

✓ Fast enough for 2 cores Smartphones CPU

✓ Tracks contours in realtime

✓Emotions recognition

пятница, 14 декабря 12 г.

Page 47: Alex Stepanov UAMobile2012

Demo

пятница, 14 декабря 12 г.

Page 48: Alex Stepanov UAMobile2012

3D Face contours tracking

✓ Licensing

✓ iOS/Android App development partnership

пятница, 14 декабря 12 г.

Page 49: Alex Stepanov UAMobile2012

Спасибо за внимание !

Степанов Александр[email protected]

пятница, 14 декабря 12 г.