• Stars
    star
    2,254
  • Rank 20,433 (Top 0.5 %)
  • Language
    C++
  • Created about 8 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Learning OpenCV 3

INTRO

This is the example code that accompanies Learning OpenCV 3 by Adrian Kaehler and Gary Bradski (9781491937990).

Click the Download Zip button to the right to download example code.

Visit the catalog page here.

See an error? Report it here, 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.

See an error? Report it here, or simply fork and send us a pull request

More Repositories

1

open_government

Open Government, released as part of #PDFtribute
1,293
star
2

data_structures_and_algorithms_using_javascript

JavaScript
741
star
3

t-SNE-tutorial

A tutorial on the t-SNE learning algorithm
JavaScript
694
star
4

HTMLBook

Let's write books in HTML!
XSLT
631
star
5

etudes-for-elixir

Companion exercises for Introducing Elixir
Elixir
511
star
6

doing_data_science

This is the example code repository for Doing Data Science by Cathy O'Neil and Rachel Schutt (O'Reilly Media)
469
star
7

thebe

Jupyter javascript plugin for static sites
JavaScript
262
star
8

etudes-for-erlang

Companion exercises for O'Reilly Media's "Introducing Erlang"
Erlang
247
star
9

essential-sqlalchemy-2e

Jupyter Notebook
175
star
10

functional_thinking

This is the example code repository for Functional Thinking by Neal Ford (O'Reilly Media)
146
star
11

svg-essentials-examples

HTML
137
star
12

Using_SVG

Code examples and other supplementary material for the book Using SVG with CSS3 and HTML5.
HTML
107
star
13

iOS7_Programming_Cookbook

This is the example code repository for iOS 7 Programming Cookbook by Vandad Nahavandipoor (O'Reilly Media)
Objective-C
92
star
14

building_maintainable_software

C#
87
star
15

feedback_control_for_computer_systems

This is the example code repository for Feedback Control for Computer Systems by Philipp K. Janert (O'Reilly Media)
Python
87
star
16

97-things-every-agile-developer-should-know

97 Things Every Agile Software Developer Should Know
78
star
17

programming_rust

77
star
18

python_epiphanies

73
star
19

Learning_PHP

PHP
71
star
20

restful_java_jax-rs_2_0

This is the example code repository for RESTful Java with JAX-RS 2.0 by Bill Burke (O'Reilly Media)
65
star
21

java_cookbook_3e

This is the example code repository for Java Cookbook, 3E by Ian F. Darwin (O'Reilly Media)
63
star
22

docbook2asciidoc

XSL for transforming DocBook to AsciiDoc
XSLT
62
star
23

creating_apps_in_kivy

54
star
24

c_sharp_6_cookbook

53
star
25

decentralized_applications

53
star
26

bgp_in_the_data_center

Python
51
star
27

Data_Science_with_Java

Java
48
star
28

asciidoctor-htmlbook

Templates for the htmlbook backend for Asciidoctor
Ruby
44
star
29

ASP_NET-MVC-5-with-Bootstrap-and-Knockout_js

43
star
30

programming_hive

41
star
31

erlang_programming

This is the example code repository for Erlang Programming by Francesco Cesarini and Simon Thompson (O'Reilly Media)
41
star
32

c-in-a-nutshell-2E

39
star
33

atlas-cli

A command line for building and publishing (HTML only) Atlas projects
Go
36
star
34

learning-http2

29
star
35

backbone-gitlab

Backbone wrapper for the Gitlab API
JavaScript
28
star
36

hadoop_the_definitive_guide_4e

This is the Case Study repository for Hadoop: The Definitive Guide, 4E by Tom White (O'Reilly Media)
27
star
37

orm_book_samples

Sample book files for O'Reilly content
HTML
27
star
38

programming_javascript_applications

27
star
39

SVG_Colors_Patterns_Gradients

Example code for the book SVG Colors, Patterns & Gradients
HTML
27
star
40

linux_pocket_guide

Shell
27
star
41

physics_for_game_developers_2e

26
star
42

beautiful_javascript

JavaScript
25
star
43

htmlbook.js

html -> htmlbook parser
JavaScript
25
star
44

enterprise_web_development

This is the example code repository for Enterprise Web Development by Yakov Fain, Victor Rasputnis, Anatole Tartakovsky, and Viktor Gamov (O'Reilly Media)
23
star
45

liber_amicorum

Creative Coding Guidebook
22
star
46

ethics-datascience

Repository for Ethics and Data Science, by Mike Loukides, DJ Patil, and Hilary Mason
20
star
47

lean_enterprise

This is the example code repository for Lean Enterprise by Jez Humble, Joanne Molesky, and Barry O'Reilly (O'Reilly Media)
18
star
48

Learning-Path-Get-Started-with-Natural-Language-Processing-Using-Python-Spark-and-Scala

Links to example code downloads for Learning Path: Get Started with Natural Language Processing Using Python, Spark, and Scala
17
star
49

docbook2htmlbook

XSL Transform to convert Docbook XML to HTMLBook
XSLT
16
star
50

Getting-Started-with-Atlas

A guide to using Atlas, O'Reilly's wiki-like, git-managed authoring platform.
JavaScript
16
star
51

atlas_tech1c_theme

A CSS stylesheet for technical books.
CSS
15
star
52

SVG_Text_Layout

Example files for the book SVG Text Layout
HTML
15
star
53

learning_r

This is the example code repository for Learning R by Richard Cotton (O'Reilly Media)
15
star
54

jsonform

JS library for building JSON objects through a dynamic form
JavaScript
15
star
55

atlas_book_skeleton

Skeleton files for a new Atlas project
HTML
14
star
56

production-resources

Help and Information about O'Reilly Production
14
star
57

knockout_js

This is the example code repository for Knockout.js by Jamie Munro (O'Reilly Media)
CSS
13
star
58

ifpress-solr-plugin

Plugins that extend Solr's capabilities
Java
13
star
59

programmers_guide_to_drupal

Example code repository for Programmer's Guide to Drupal (Second edition) by Jennifer Hodgdon (O'Reilly Media)
PHP
13
star
60

Data_Analytics_with_Hadoop

Python
12
star
61

cypress-playback

Automatically record and playback HTTP requests in Cypress.
JavaScript
12
star
62

jnb-data-sci-handbook

Jupyter Notebook
11
star
63

Learning-Path-Mastering-SpaCy-for-Natural-Language-Processing

11
star
64

orm-awesome

O'Reilly Awesome List
11
star
65

atlas_trade_theme

One of two default themes for O'Reilly Atlas
CSS
10
star
66

biobuilder

9
star
67

dart_up_and_running

This is the example code repository for Dart: Up and Running by Kathy Walrath and Seth Ladd (O'Reilly Media)
9
star
68

Security_for_Web_Developers

9
star
69

cloud-function-template

google cloud function testing template
JavaScript
9
star
70

mapping_the_user_experience

This is the example code repository for Mapping the User Experience by James Kalbach (O'Reilly Media)
8
star
71

atlas_assets

Public repository with assets and design guide for the Atlas platform
SCSS
8
star
72

distributed_denial_of_service_ddos

Python
8
star
73

Spark_The_Definitive_Guide

7
star
74

introduction-to-seaborn

HTML
7
star
75

building_web_applications_with_erlang

This is the example code repository for Building Web Applications with Erlang by Zachary Kessin (O'Reilly Media)
7
star
76

ipython-kernel

IPython kernel server for Pyxie projects
Python
6
star
77

learning_ratpack

6
star
78

audit-python-package

Checks for compliance with current Python packaging best practices
Python
6
star
79

cloud_native_java

6
star
80

an-illustrated-introduction-to-the-t-sne-algorithm

An Illustrated Introduction to the t-SNE Algorithm using Docker
CSS
6
star
81

native-mobile-development

This is the example code repository for Native Mobile Development by Mike Dunn and Shaun Lewis (O'Reilly Media)
Swift
5
star
82

go-tang

Cache Rules Everything Around Me
Go
5
star
83

etudes_for_clojurescript

HTML
5
star
84

Designing_Efficient_BPM_Applications

5
star
85

prototype-imageproxy

Config for deploying imageproxy
Go
5
star
86

gulp-htmlbook

Gulp plugins for handling htmlbook content
HTML
5
star
87

best-of-fluent-verou

Best of Fluent (2012): Lea Verou
5
star
88

earsketch-samples

CSS
5
star
89

hello-alexa

JavaScript
4
star
90

designing-data-intensive-apps

4
star
91

satturn

A file editor with support for markdown and json
CSS
4
star
92

learning_path_go_programming_basics

HTML
4
star
93

atlas-api

Gem to interact with the O'Reilly Atlas API
Ruby
4
star
94

spock_up_and_running

4
star
95

article-template

Single chapter structure for short form writing.
HTML
4
star
96

pyxie-static

Companion repo to jupyter-kernel to show how to insert an ipython notebook code cell into a static site
JavaScript
4
star
97

automating_actionscript_projects_with_eclipse_and_ant

This is the example code repository for Automating ActionScript Projects with Eclipse and Ant by Sidney de Koning (O'Reilly Media)
4
star
98

ncsa-logparse

NCSA Logfile Parser in Haskell
Haskell
4
star
99

binder-trees-forest

Jupyter Notebook
3
star
100

atlas-book-sample

Sample Book Repo for Atlas v2
CSS
3
star