This is a project for basic learning of OpenCV. There are many functions for image processing in the project. For some simple functions, we do not use OpenCV functions, but complete the code independently, so as to better help beginners understand OpenCV.


  1. Operation System: macOS-11.5.2
  2. Development Platform: Qt-5.15.1 (Clang 11.0 (Apple), 64 bit)
  3. Machine Vision: OpenCV-4.5.3




  1. Image preprocessing: open image, image grayscale processing, display grayscale histogram, grayscale equalization, gradient sharpening, Laplace sharpening, etc.
  2. Edge detection: including Roberts operator, Sobel operator, Laplace operator, Prewitt operator, Canny operator, Krisch operator, etc.
  3. Add noise: including salt and pepper noise, Gaussian noise, etc.
  4. Filtering processing: including mean filtering, median filtering, side window filtering, morphological filtering, Gaussian filtering, etc.
  5. Camera calibration: realize camera calibration. Stereo matching, etc.
  6. Image transformation: mainly affine transformation and perspective transformation.
  7. Background processing: implement threshold segmentation, OSTU and Kittler static threshold segmentation, inter-frame difference and Gaussian mixture background, etc.
  8. Feature obvious operations: including LBP, histogram detection, template matching, color matching, Gabor filtering, etc.
  9. Feature extraction: implement SIFT algorithm, ORB algorithm, coordinate point SVM, Haar algorithm, etc.



If you want to know more about this code, you can click the detailed explanation of this code or contact me via the link above.?


View Github