目录
001:认识计算机视觉
1.发展历史
2.主要任务
早期-重建
2012年之后-感知+重建<-----------------深度学习
目标-通过图灵测试
3.应用场景
自动驾驶/辅助驾驶
机器视觉
安防监控
002:计算机视觉框架
1.传统计算机视觉框架
时间 流行框架 最早 Matlab数据处理工具箱<--------图像处理 1993年 Matrox mil 1996年 Halcon 1999年 OpenCv(2006年发布1.0版本,2009年发布2.0版本) 2009年
visionPro 当前 Simple/CVBoofCV/JavaCV
2.深度学习计算机视觉框架
Caffe,Tensorflow,Pytorch,Paddlepaddle,Keras
OpenVINO,TensorRT,onnxruntime,Deepface,YOLO/DarkNet
mmdetection,Paddle-detection/seg/ocr
3.当前主流框架应用
机器视觉方向-Halcon/VisionPro/Mil/OpenCV
深度学习方向-TensorFlow/Pytorch/paddlepaddle+openvino/tensorRT/onnxruntime
主流语言python/C++
4.未来趋势
低代码平台流行趋势明显
传统视觉跟深度学习整合趋势明显
算法设计流程化/可视化
算法模块易用性跟通用性
计算资源异构化支持趋势
深度学习模型训练简洁化
003:OpenCV框架
1.发展历史
2.模块架构
3.安装与支持
我使用的环境是conda+pycharm,cv版本是4.5.1
因为害怕python版本,以及numpy版本与opencv版本不兼容问题,所以没有安装最新版
numpy=1.18.1
python=3.6.5
opencv-python=4.5.1
且直接在pycharm导入镜像源链接下载的,速度很快,不到一分钟
代码实现:
import cv2 as cv import numpy as np print(np.version.version) print(cv.__version__)
运行结果:
004:图像的读取与显示
图像理解
• import cv2 as cv – 导入 OpenCV 支持• import numpy as np – 导入 Numpy 支持• imread 函数,读取图像• imshow 函数 , 显示图像• 加载图像的通道顺序函数与参数
• cv.imread (filename[,flags]) -> retval- filename 表示文件路径- [] 内的参数表示可选,可以不填• cv.imshow ( winname , mat) -> None- winname 表示窗口标题- mat 表示图像对象显示与等待时间
• cv.waitKey (0) 表示一直等待,直到任意一个键盘操作• cv.waitKey (1000) 表示等待 1000 毫秒即 1 秒• 不加图片会一闪而过代码实现:
image = cv.imread(r"F:\Python\OpenCV\data\lena.jpg") cv.imshow("lena", image) cv.waitKey(0) cv.destroyAllWindows()
我在官网下载了官方给的图片案例,链接给在下面,有需要的自行下载
https://github.com/opencv/opencv/archive/4.6.0.zip
图片在sample/data目录下
运行结果:
第一节课的内容总结完毕!