open cv – an introduction to the vision

25
OPEN CV – AN INTRODUCTION TO THE VISION LIBRARY AND ITS APPLICATIONS Hemanth Haridas Co founder VidPulp Technologies

Post on 11-Sep-2014

3.768 views

Category:

Education


1 download

DESCRIPTION

Open Cv – An Introduction To The Vision library

TRANSCRIPT

Page 1: Open Cv – An Introduction To The Vision

OPEN CV – AN INTRODUCTION TO THE VISION LIBRARY AND ITS APPLICATIONSHemanth HaridasCo founder VidPulp Technologies

Page 2: Open Cv – An Introduction To The Vision

WHAT IS THIS TALK ABOUT? An basic introduction to Open CV, a cross

platform vision library. To get students interested in Vision and

related fields. Introduction to the capabilities of Open CV. Applications of the library. Limitations of the library

Page 3: Open Cv – An Introduction To The Vision

WHAT IS THIS TALK NOT ABOUT? Not a programmatic tutorial on Open CV. Not a detailed explaination about Open CV. No math behind Open CV covered.

Page 4: Open Cv – An Introduction To The Vision
Page 5: Open Cv – An Introduction To The Vision

COMPUTER VISION Rapidly growing field because of cheaper and

more capable cameras and affordable processing power.

Vision algorithms are starting to mature. Open CV has helped computer vision grow as

a field Open CV helps jump-start research by

providing them with a computer vision and machine learning infrastructure

Page 6: Open Cv – An Introduction To The Vision

CONTENTS Introduction Who Uses OpenCV? What is Computer Vision? How complex is the problem? Details about the Library. Summary

Page 7: Open Cv – An Introduction To The Vision

INTRODUCTION OpenCV (Open Source Computer Vision) library of programming functions for real

time computer vision. (computer efficiency) Written in optimized C and C++ Runs in windows, Linux and MAC OS. Can develop in C, C++, python, ruby, matlab

Page 8: Open Cv – An Introduction To The Vision

INTRODUCTION Simple to use infra Helps to build fairly complicated applications. 500 functions spanning

Factory product inspection medical imaging Security user interface camera calibration stereo vision robotics

contains a full, general-purpose Machine Learning Library (MLL)

Page 9: Open Cv – An Introduction To The Vision

WHO USES OPEN CV? Surveillance images and video on the Web. (Flickr, picasa

face recognition and tagging) aerial and street-map images (such as in

Google’s Street View) make heavy use of camera calibration and image stitching techniques

safety monitoring, unmanned flying vehicles, or biomedical analysis.

manufacturing: virtually everything that is mass-produced has been automatically inspected at some point using computer vision.

Page 10: Open Cv – An Introduction To The Vision

WHO USES OPEN CV? license for OpenCV has been structured such

that you can build a commercial product using all or part of OpenCV.

You are under no obligation to opensource large user community that includes people

from major companies (IBM, Microsoft , Intel, SONY, Siemens, and Google, to name only a few) and research centers (such as Stanford, MIT, CMU, Cambridge, and INRIA).

Page 11: Open Cv – An Introduction To The Vision

WHO USES OPEN CV? http://groups.yahoo.com/group/OpenCV - 20,000

members OpenCV was a key part of the vision system in the

robot from Stanford, “Stanley”, which won the $2M DARPA Grand Challenge desert robot race

web maps, image scan alignment, medical image noise reduction, object

analysis, security and intrusion detection systems, automatic monitoring and safety systems,

manufacturing inspection systems, camera calibration, military applications, and

unmanned aerial, ground, and underwater vehicles

Page 12: Open Cv – An Introduction To The Vision

WHAT IS COMPUTER VISION? transformation of data from a still or video

camera into either a decision or a new representation.

Data - > “the camera is mounted in a car” or “laser range fi nder indicates an object is 1 meter away”.

Decision -> “there is a person in this scene” or “there are 14 tumor cells on this slide”

new representation -> turning a color image into a grayscale image

Page 13: Open Cv – An Introduction To The Vision

HOW HARD CAN THAT BE? Human brain divides the vision signals to

many channels. Identifies important parts Complex feedback mechanism that is little

understood. draw on cross-associations made from years

of living in the world. Controls lighting through the iris.

Page 14: Open Cv – An Introduction To The Vision

HOW A MACHINE SEES IT? A 2d Image of a 3d object. No definite way to reconstruct the 3d image.

Page 15: Open Cv – An Introduction To The Vision

HOW A MACHINE SEES IT? Images are corrupted by noise and distortions. (weather, lighting, reflections, movements)

• Additional contextual knowledge is used

• Which is helpful in matching

Page 16: Open Cv – An Introduction To The Vision

NOISE Edge Detection -> impossible to detect

edges by comparing a point to its neighbours If the comparison is made over a localized

area its easier. Compensating noise by using statistics over

time. Explicit models learnt from available data.

(lens distortions)

Page 17: Open Cv – An Introduction To The Vision

CONTEXTUAL INFORMATION The decision taken by vision algorithms

depend on the application it is used for. Security system that alerts if a person tries

to cross a fence. monitoring system that counts how many

people cross through an area in an amusement park.

Strategy for vision algos in security cameras different from that of in robots.

The more constrained our context , the better the solution will be.

Page 18: Open Cv – An Introduction To The Vision

ABOUT THE LIBRARY aimed at providing the basic tools needed to

solve computer vision problems high-level functionalities in the library will be

sufficient to solve the more complex problems in computer vision

the basic components in the library are complete enough to enable creation of a complete solution

After you develop a first draft solution, check for weakness and fix it.

Page 19: Open Cv – An Introduction To The Vision

OPEN CV TIMELINE

Page 20: Open Cv – An Introduction To The Vision

COMPONENTS OF OPENCV

Page 21: Open Cv – An Introduction To The Vision

RESOURCES Download Open CV -

http://sourceforge.net/projects/opencvlibrary/ Install guide and tutorials -

http://opencv.willowgarage.com/wiki/ IDE – eclipse, .net , VC++

Page 22: Open Cv – An Introduction To The Vision

SUMMARY Open CV is a open source library to

implement Computer vision algorithms Computer vision is a complex problem. Made easy with enough context information. Computer vision is a interesting and a fast

growing field and skills in this field is niche , in demand

Page 23: Open Cv – An Introduction To The Vision

OCR ALGORITHMS Optical character recognition, to recognize

text in scanned documents. Useful in detecting text in videos For extracting contextual information in

videos. Tesseract and GOCR – open source OCRs

available

Page 24: Open Cv – An Introduction To The Vision

SPEECH TO TEXT ALGOS Algorithms to convert from Speech to text. Text to speech conversion algos are

available. Language translation research is underway.

Page 25: Open Cv – An Introduction To The Vision

QUESTIONS?