This is a series of Jupyter notebooks that attempts to cover computer vision from its origins to the present day.
- How vision works
- How does eyes work
- How do we process light?
- How the brain sees 3D
- One eye
- Two eyes
- Brain
- So what are we looking at?
- where does light come from?
- so what makes visible light special, then?
- How do we perceive colors?
- CIE 1931 and Color Matching (William Wright and John Guild Experiment)
- Experiment
- Restrictions on viewing conditions
- Practical example
- From CIE-RGB to CIE-XYZ
- sRGB
- Linear sRGB
- CIELAB
- How the cameras work
- Camera operation
- Pinhole camera
- Bayer Pattern
- Reading Images on the Computer
- Pixel Grid
- Pixel read types
- HWC (Height, Width, Channel)
- CHW (Channel, Height, Width)
- Getting started with OpenCV
- Read an Image
- Show an Image
- Save an Image
- Read from the camera (video)
- Read from a video
- Draw in a frame
- Draw a line
- Draw an arrow
- Draw a rectangle
- Draw a circle
- Draw a Polygon
- Draw text
- Print day and time on video
- Event Handlers in OpenCV
- Representation of information in tensors
- Object Detection and Object Tracking Using HSV
- Image interpolation and scaling
- Image size scaling
- Nearest neighbor
- Triangle interpolation
- Bilinear interpolation
- Bicubic Interpolation
- Summary and some others
- Image size reduction
- Box filter
- Gaussean filter
- Filters for Images on OpenCV (summary and some others)
- Image De-noising - Non-Local Means Denoising
- Low-pass/High-pass Filters
- Simple Image Thresholding (With Global Value)
- Adaptive Thresholding (With Dynamic Value)
- Otsu's Binarization
- Histograms
- One-dimensional
- Multidimensional
- Morphological Transformations
- Dilation
- Erosion
- Opening
- Closing
- Gradiant
- Tophat
- blackhat
- Structuring Elements
- Thinning
- Thickening
- Skeletonization (Medial Axis Transform)
- Bitwise Operations
- AND
- OR
- XOR
- NOT - square
- Find Edges
- Properties of convolutions
- Commutative property
- Associative property
- Distribution property over addition
- Scalable property
- Sobel filters
- Sobel X
- Sobel Y
- Sobel XY
- Sobel Combined
- Laplacian
- Gaussian difference (DoG)
- Sharpen
- Identity Kernel
- Sharpen Kernel
- Canny Edge Detector
- Sharpen