open cv lecture 1.opencv introduction_r2

21
OpenCV Lecture #1. OpenCV Introduction MareArts http://study.marearts.com

Upload: jeonghyun-kim

Post on 12-Apr-2017

495 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Open cv lecture 1.opencv introduction_r2

OpenCV Lecture#1. OpenCV Introduction

MareArtshttp://study.marearts.com

Page 2: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?OpenCV : Open Source Computer Vision LibrarySite : http://www.opencv.org2006.10: 1.0(first) … 2015.12: 3.1(present)BSD license : Free academic and commercialC++, Python, Java / Window, Linux, Mac OS, iOS, AndroidGithub : https://github.com/Itseez/opencv

Extra Contribute : https://github.com/Itseez/opencv_contrib

Good site to reference opencv : http://study.marearts.com

Page 3: Open cv lecture 1.opencv introduction_r2

What is the OpenCV? Computer Vision Library

Image Processing : Image Enhancement, Filter, Rotation, Hough Transform, Histogram…

Robot / Machine / Video / Vision : Tracking, Feature description,

Artificial Intelligence Pattern Recognition / Machine Learning

Neural Network, Deep learning, AdaBoost, SVM… 3D geometry

Camera Calibration, 3D reconstruction, Stereo Camera Etc

Parallel Processing : CUDA, OpenCL..Optimization : nonlinear optimization, RANSAC…

Page 4: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?

Cell SegmentationCircle Detection using Hough TF

Histogram equalizationEdge DetectionDeburring

Image Processing

Page 5: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?Robot / Machine / Video / Vision

Face Detection

Tracking (Multi Pedestrian)

Cup pose estimation

Feature Detection and MatchingInspection

Obstacle avoidance

Page 6: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?Artificial Intelligence

Deep learningImage understanding

Handwriting Recognition Emotion Detection

Page 7: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?3D Geometry

Stereo Camera

SLAM & 3D reconstruction 3D reconstruction

Page 8: Open cv lecture 1.opencv introduction_r2

What is the OpenCV?Etc

Parallel Programming• Nvidia CUDA• OpenCL• TBB(Thread Building Block)

Non-linear Optimization• Bundle Adjustment• RANSAC

Super Resolution 3D Visualizer

Page 9: Open cv lecture 1.opencv introduction_r2

Explore the OpenCV functions OpenCV 3.1.0 Reference ( http://docs.opencv.org/3.1.0/#gsc.tab=0 )

Page 10: Open cv lecture 1.opencv introduction_r2

How to use OpenCV 1. download from official sitehttp://opencv.org/downloads.htmlSelect version and your OS

Download and ExtractionLib, Dll, pre-compiled

Header files

Page 11: Open cv lecture 1.opencv introduction_r2

How to use OpenCV2. build lib/dllReady to make the source codeGenerate code for your environment and your optionCode compile, create dll, lib files Including options. ex) cuda, TBB ..And that can include extra modules

(refer to : http://study.marearts.com/search/label/Opencv%20Build)

(refer to : http://study.marearts.com/2015/01/mil-boosting-tracker-test-in-opencv-30.html

Page 12: Open cv lecture 1.opencv introduction_r2

Try OpenCV firstly3. use Ceemple OpenCV

Visual Studio• Tools - Extension and Update• Search ceemple -> install• After, you can make openCV project very easy.

(Refer to http://study.marearts.com/2016/01/ceemple-opencv-pre-build-and-quick.html)

Page 13: Open cv lecture 1.opencv introduction_r2

Try OpenCV firstlyUse OpenCV firstly with me

Page 14: Open cv lecture 1.opencv introduction_r2

How to build own OpenCVAssignment #1Build your own OpenCVOption #1 : Include CUDA, TBBOption #2 : include extra opencv module

https://github.com/Itseez/opencv_contrib : github repository for extra moduleAssignment #2Use ceemple OpenCV, build and run!

Reference..Official Site : http://docs.opencv.org/3.1.0/df/d65/tutorial_table_of_content_introduction.html#gsc.tab=0Build : http://study.marearts.com/search/label/Opencv%20Buildextra module : http://study.marearts.com/2015/01/mil-boosting-tracker-test-in-opencv-30.html

Page 15: Open cv lecture 1.opencv introduction_r2

About OpenCV Mat (study deeply..)What about Mat?Matrix class Image, values, …. Think of all the data in a Matrix!Let’s use a Mat simply

Page 16: Open cv lecture 1.opencv introduction_r2

About Mat (study deeply..)First Mat useCreationSet value cout

Page 17: Open cv lecture 1.opencv introduction_r2

About Mat (study deeply..)First Mat useSimple operation +, -, /, * InvTranspose

Page 18: Open cv lecture 1.opencv introduction_r2

About Mat (study deeply..)First Mat use Image loadShow imageSimple processing

201 221 100 223 40 2130 11 231 91 32 189200 40 23 43 88 92231 129 231 122 18…..

201 221 100 223 40 2130 11 231 91 32 189200 40 23 43 88 92231 129 231 122 18…..

201 221 100 223 40 2130 11 231 91 32 189200 40 23 43 88 92231 129 231 122 18…..

RGB

Page 19: Open cv lecture 1.opencv introduction_r2

About Mat (study deeply..)First Mat useSet value

http://study.marearts.com/2014/04/opencv-study-mat-point-access-method.htmlVector to mat, Mat to vector

http://study.marearts.com/2014/01/opencv-vector-to-mat-mat-to-vector.html

Page 20: Open cv lecture 1.opencv introduction_r2

About Mat (study deeply..)Assignment #3To use over 20 functions related to the MatCreate example code

Page 21: Open cv lecture 1.opencv introduction_r2

Thank you.See you laterDo not forget your assignment!! I will miss you very much!!

Busan BEXCO