# Learning OpenCV 3
## INTRO
This is the example code that accompanies Learning OpenCV 3 by Adrian Kaehler and Gary Bradski ([9781491937990](http:*shop.oreilly.com/product/0636920044765.do)).
Click the Download Zip button to the right to download example code.
Visit the catalog page [here](http:*shop.oreilly.com/product/0636920044765.do).
See an error? Report it [here](http:*oreilly.com/catalog/errata.csp?isbn=0636920044765), or simply fork and send us a pull request
## NOTES
For default suggestions of how the run the code, it assumes you put your build directory under `Learning-OpenCV-3_examples` directory.
Thus, from the `Learning-OpenCV-3_examples` directory:
```
mkdir build
cd build
cmake ..
make -j
```
#### Docker
For your interest, included here is an Ubuntu _Docker_ file that
* Shares a directory with the host operating system
* Shares the first camera between both systems
* Loads Ubuntu 16.04
* Loads all dependencies for OpenCV 3.2 and opencv_contrib
* Loads and builds OpenCV 3.2 and opencv_contrib into a build directory
* executable files end up in `opencv-3.2.0/build/bin`
* Next, it `git clones` the code (and Docker file) for Learning OpenCV 3 and builds it
* executable files end up in `Learning_OpenCV-3_examples/build`
* To get to the top level directory, just type: `cd`
## CONTENTS:
### SPECIAL FILES:
* README.md -- this readme file
* Dockerfile -- complete self contained opencv environment using Ubuntu 16-04
* CMakeLists.txt -- how to buld everything here
### EXERCISES:
* Exercises at end of Chapter 5
* Exercises at end of Chapter 7
* Exercises_8_1.cpp Exercises at end of Chapter 8
* Exercises_9_1-2-10-11-12-15-16.cpp Exercises at end of Chapter 8
* Exercises_9_4.cpp Exercises at end of Chapter 9
* Exercises_9_5.cpp Exercises at end of Chapter 9
* Exercises at end of Chapter 11
* Exercises_13_1-2-11.cpp Exercises for Chapter 13
* Exercises_13_9.cpp
### EXAMPLES:
* Example 2-1. A simple OpenCV program that loads an image from disk and displays it
* Example 2-2. Same as Example 2-1 but employing the “using namespace” directive
* Example 2-3. A simple OpenCV program for playing a video file from disk
* Example 2-4. Adding a trackbar slider to the basic viewer window for moving around
* Example 2-5. Loading and then smoothing an image before it is displayed on the screen
* Example 2-6. Using cv::pyrDown() to create a new image that is half the width and
* Example 2-7. The Canny edge detector writes its output to a single-channel (grayscale) image
* Example 2-8. Combining the pyramid down operator (twice) and the Canny
* Example 2-9. Getting and setting pixels in Example 2-8
* Example 2-10. The same object can load videos from a camera or a file
* Example 2-11. A complete program to read in a color video and write out the log-polar-
* Example 4-1. Summation of a multidimensional array, done plane by plane
* Example 4-2. Summation of two arrays using the N-ary operator
* Example 4-3. Printing all of the nonzero elements of a sparse array
* Example 4-4. A better way to print a matrix
* Example 5-1. Complete program to alpha-blend the ROI starting at (0,0) in src2 with the ROI starting at (x,y) in src1
* Example 7-1. Using the default random number generator to generate a pair of integers
* Example 8-1. Unpacking a four-character code to identify a video codec
* Example 8-2. Using cv::FileStorage to create a .yml data file
* Example 8-3. Using cv::FileStorage to read a .yml file
* Example 9-1. Creating a window and displaying an image in that window
* Example 9-2. Toy program for using a mouse to draw boxes on the screen
* Example 9-3. Using a trackbar to create a “switch” tha t the user can turn on and off;
* Example 9-4. Slightly modified code from the OpenCV documentation that draws a
* Example 9-5. An example program ch4_qt.cpp, which takes a single argument
* Example 9-6. The QMoviePlayer object header file QMoviePlayer.hpp
* Example 9-7. The QMoviePlayer object source file: QMoviePlayer.cpp
* Example 9-8. An example program which takes a single argument
* Example 9-9. The WxMoviePlayer object header file WxMoviePlayer.hpp
* Example 9-10. The WxMoviePlayer object source file WxMoviePlayer.cpp
* Example 9-11. An example header file for our custom View class
* Example 10-1. Using cv::threshold() to sum three channels of an image
* Example 10-2. Alternative method to combine and threshold image planes
* Example 10-3. Threshold versus adaptive threshold
* Example 11-1. An affine transformation.
* Example 11-2. Code for perspective transformation
* Example 11-3. Log-polar transform example
* Example 12-1. Using cv::dft() and cv::idft() to accelerate the computation of
* Example 12-2. Using cv::HoughCircles() to return a sequence of circles found in a
* **EXTRA** Example 12-3. Using GrabCut for background removal
* **EXTRA** Example 12-4. Using GrabCut for background removal
* Example 13-1. Histogram computation and display
* Example 13-2. Creating signatures from histograms for EMD; note that this code is the
* Example 13-3. Template matching
* Example 14-1. Finding contours based on a trackbar’s location; the contours are
* Example 14-2. Finding and drawing contours on an input image
* Example 14-3. Drawing labeled connected components
* Example 14-4. Using the shape context distance extractor
* Example 15-1. Reading out the RGB values of all pixels in one row of a video and
* Example 15-2. Learning a background model to identify foreground pixels
* Example 15-3. Computing the on and off-diagonal elements of a variance/covariance model
* Example 15-4. Codebook algorithm implementation
* Example 15-5. Cleanup using connected components
* **EXTRA** Example 15-6, using OpenCV's background subtractor class. Modified by Gary Bradski, 6/4/2017
* Example 16-1. Pyramid L-K optical flow
* **EXTRA** Example 16-2. 2D Feature detectors and 2D Extra Features framework
* Example 17-1. Kalman filter example code
* Example 17-2. Farneback optical flow example code
* Example 18-1. Reading a chessboard’s width and height, reading them and calibrating
* **EXTRA** Example 18-1. From disk. Reading a chessboard’s width and height, reading them and calibrating
* Example 19-1. Bird’s - eye view
* Example 19-2. Computing the fundamental matrix using RANSAC
* Example 19-3. Stereo calibration, rectification, and correspondence
* Example 19-4. Two-dimensional line fitting
* Example 20-01. Using K-means
* Example 20-02. Using the Mahalanobis distance for classification
* Example 21-1. Creating and training a decision tree
* Example 22-1. Detecting and drawing faces
### IMAGES:
* box.png
* box_in_scene.png
* checkerboard9x6.png
* example_16-01-imgA.png
* example_16-01-imgB.png
* faces.png
* BlueCup.jpg
* HandIndoorColor.jpg
* HandOutdoorColor.jpg
* HandOutdoorSunColor.jpg
* adrian.jpg
* faceScene.jpg
* faceTemplate.jpg
* fruits.jpg
* stuff.jpg
### MOVIES:
* test.avi
* tree.avi
### CLASSIFIERS:
* haarcascade_frontalcatface.xml #Cat faces!
* haarcascade_frontalcatface_extended.xml
* haarcascade_frontalface_alt.xml
### DIRECTORIES:
* birdseye -- where the images are of checkerboards on the floor
* build -- you will make and build things in this directory
* calibration -- checkerboard images to calibrate on
* muchroom -- machine learning database
* shape_sample -- silhoette shapes to recognize
* stereoData -- left, right image pairs of checkboards to calibrate and view on
## LINKS:
Click the Download Zip button to the right to download example code.
Visit the catalog page [here](http:*shop.oreilly.com/product/0636920044765.do).
See an error? Report it [here](http:*oreilly.com/catalog/errata.csp?isbn=0636920044765), or simply fork and send us a pull request
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Learning-OpenCV最新版pdf(彩色数字版)+示例练习代码 (193个子文件)
test.avi 3.36MB
tree.avi 1.25MB
citation 202B
example_15-05.cpp 18KB
example_15-04.cpp 14KB
example_19-03.cpp 11KB
Exercises_9_1-2-10-11-12-15-16.cpp 10KB
example_15-BackgroundSubtractor.cpp 9KB
example_18-01_from_disk.cpp 9KB
Exercises_13_9.cpp 9KB
example_15-03.cpp 8KB
example_19-02.cpp 8KB
example_16-02.cpp 7KB
Exercises_11-1-2-5-6-7.cpp 6KB
Exercises_5.cpp 6KB
Exercises_13_1-2-11.cpp 6KB
example_18-01.cpp 6KB
example_19-01.cpp 6KB
example_15-02.cpp 6KB
example_13-02.cpp 5KB
example_21-01.cpp 5KB
Exercises_7.cpp 4KB
example_16-01.cpp 4KB
example_09-11.cpp 4KB
example_12-04.cpp 3KB
example_09-04.cpp 3KB
example_20-02.cpp 3KB
Exercises_8_1.cpp 3KB
example_17-01.cpp 3KB
example_17-02.cpp 3KB
example_12-03.cpp 3KB
example_22-01.cpp 3KB
example_09-10.cpp 3KB
example_20-01.cpp 3KB
example_05-01.cpp 3KB
example_09-02.cpp 3KB
example_19-04.cpp 2KB
Exercises_9_5.cpp 2KB
example_14-02.cpp 2KB
example_14-04.cpp 2KB
Exercises_9_4.cpp 2KB
example_09-03.cpp 2KB
example_12-01.cpp 2KB
example_02-04.cpp 2KB
example_11-01.cpp 2KB
example_02-09.cpp 2KB
example_02-11.cpp 2KB
example_13-03.cpp 2KB
example_04-04.cpp 2KB
example_14-03.cpp 2KB
example_15-01.cpp 2KB
example_08-03.cpp 1KB
example_11-02.cpp 1KB
example_13-01.cpp 1KB
example_10-03.cpp 1KB
example_12-02.cpp 1KB
example_10-02.cpp 1KB
example_02-05.cpp 1KB
example_10-01.cpp 1KB
example_08-02.cpp 1KB
example_14-01.cpp 1KB
example_04-02.cpp 1KB
example_02-03.cpp 1KB
example_02-08.cpp 1KB
example_04-01.cpp 1KB
example_04-03.cpp 1KB
example_11-03.cpp 1024B
example_02-10.cpp 993B
example_08-01.cpp 973B
example_02-07.cpp 896B
example_09-01.cpp 881B
example_09-05.cpp 855B
example_09-08.cpp 831B
example_02-06.cpp 829B
example_09-09.cpp 776B
example_07-01.cpp 749B
example_02-01.cpp 693B
example_02-02.cpp 663B
example_09-06.cpp 552B
example_09-07.cpp 231B
agaricus-lepiota.data 365KB
Dockerfile 4KB
.DS_Store 6KB
.DS_Store 6KB
Index 193B
IMG_0207.jpg 544KB
IMG_0206.jpg 530KB
IMG_0203.jpg 491KB
IMG_0205.jpg 490KB
IMG_0209.jpg 484KB
IMG_0195.jpg 479KB
IMG_0208.jpg 474KB
IMG_0202.jpg 456KB
IMG_0201.jpg 454KB
IMG_0213.jpg 454KB
IMG_0191.jpg 453KB
IMG_0212.jpg 451KB
IMG_0200.jpg 447KB
IMG_0194.jpg 441KB
IMG_0210.jpg 440KB
共 193 条
- 1
- 2
资源评论
zhuf14
- 粉丝: 16
- 资源: 57
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功