写在前面
这是笔者在学习贾志刚老师的OpenCV基础课的一些笔记,提供给个人以后在不同电脑查阅使用。因为给本人查看,所以并没有详细的注释。
差最后几节课没学完,因为实在是学不懂了,另外要开学了,所以,暂时先将其他笔记发出来,剩下的学校去在学。
图像处理太深奥了,涉及到好多数学理论。在学习时参考了大量CSDN博客,还有数字图像处理的相关课程。
目前决定研究生走这个方向,学完这门课只是简单入门。
课程预备
笔记用到的图片
其中基本所有的图片都是网图,女友的图片太过性感,不予展示。所有实验中我用女友照片做素材的,都用 代替女友出境.jpg 这张图进行展示。
配置
软件
Visual Studio 2017 社区版
OpenCV 3.4.2
Windows 10
硬件
i7-9700 CPU
64G 内存
第一节课测试的代码和未来每节课要用的初始模板
#include <iostream>
#include<opencv2\opencv.hpp>
using namespace cv;
int main(){
// 读入一张图片(poyanghu缩小图)
Mat img = imread("A:\\专用\\tae.jpg");
// 在窗口中显示图片
imshow("图片", img);
Mat gray;
cvtColor(img, gray, COLOR_BGR2GRAY);
imshow("灰度化后的图片", gray);
int blockSize = 25;
int constValue = 10;
Mat local;
adaptiveThreshold(gray, local, 255, CV_ADAPTIVE_THRESH_MEAN_C, CV_THRESH_BINARY_INV, blockSize, constValue);
imshow("全局二值化", local);
waitKey(0);
return 0;
}
/*
板子
#include<iostream>
#include<opencv2/opencv.hpp>
#include<cmath>
using namespace std;
using namespace cv;
int main() {
Mat src = imread("A:\\专用\\TestForTheCV\\tae.jpg");
Mat dst;
imshow("图片", src);
waitKey(0);
return 0;
}
*/