Table of contents : Introduction About OpenCV Target Audients of This Book Source Codes for This Book Hardware Requirements and Software Versions How This Book Is Organized Installation Install on Windows Install Python on Windows 10 PyCharm, the Integrated Development Environment Install Python on Ubuntu Install Python on Ubuntu Install PyCharm on Ubuntu Configure PyCharm and Install OpenCV Create a New Python Project Install and Upgrade OpenCV and Libraries Load the Project Files Hello OpenCV OpenCV Basics Load and Display Images Load Color Images Load Grayscale Images Convert Color Image to Grayscale Load and Display Videos Display Webcam Image Fundamentals Pixels BGR Color Space and Channels HSV Color Space and Channels Draw Shapes Create an Empty Canvas Draw a Line Draw Rectangles, Circles, Ellipses and Polylines Draw Texts Draw an OpenCV-like Icon User Interaction Mouse Operations Draw Circles with Mouse Draw Polygon with Mouse Crop an Image with Mouse Input Values with Trackbars Image Processing Conversion of Color Spaces Convert BGR to Gray Convert Grayscale to BGR Convert BGR to HSV Convert HSV to BGR Resize, Crop and Rotate an Image Adjust Contrast and Brightness of an Image Adjust Hue, Saturation and Value Blend Image Bitwise Operation Warp Image Blur Image What is Gaussian Blur Gaussian Blur Median Blur Histogram About Histogram Histogram for Grayscale Images Histogram for Color Images Object Detection Canny Edge Detection Dilation and Erosion Shape Detection Pre-processing for Shape Detection Find Contours Detect the Type, Area and Perimeter of the Shapes Other Contour Features Color Detection Find Color from an Image Find Color Labels Text Recognition with Tesseract Install and configure Tesseract Text Recognition Human Detection Human Detection from Pictures Human Detection from Videos Face and Eye Detection Remove Background Remove Background by Color Remove Background by Contour Remove Background by Machine Learning Remove Background by Mask Blur Background Machine Learning K-Means Clustering What is K-Means Clustering Color Quantization Handwritten Digits Grouping K-Nearest Neighbors What is K-Nearest Neighbors KNN Evaluation Recognize Handwritten Digits with KNN Support Vector Machine What is Support Vector Machine Recognize Handwritten Digits with SVM IRIS Dataset Classification Artificial Neural Network (ANN) What is an Artificial Neural Network (ANN)? Activation Functions Recognize Handwritten Digits with ANN Convolutional Neural Network (CNN) What is a Convolutional Neural Network Convolution Layer Pooling Layer Fully Connected Layer CNN Architecture Build a CNN Model with Tensorflow/Keras Popular CNN Architectures References About the Author