Task01:Opencv基本了解、图像读取、绘图
理论部分
了解Opencv发展历史、Opencv版本区别。
掌握图片和视频的读取、显示、保存方法。
掌握Opencv基本绘图操作。
你将学习使用这些函数: cv.imread(), cv.imshow() , cv.imwrite(),cv.VideoCapture(), cv.VideoWriter(), cv.line(), cv.circle() , cv.rectangle(), cv.ellipse(), cv.putText() 等.
练习部分
课后思考题
练习题
思考题:
Opencv库与Matlab、halcon的区别?
Halcon:机器视觉行业里知名的商业视觉库,非开源的,在国内市场份额处于第一,其提供了1500个多个API算子供开发人员使用,有些编程基础的都可以轻松的入门,其调试也是很方便的,断点单步运行,图像变化随时可以看到。Halcon算子可以被C++,VB,C#,Delphi等开发语言调用,同时算子也提供COM版,原则上,支持COM的所有语言都是可以调用Halcon算子的,所以其开发灵活性和调试方便性深受广大开发者喜欢。
Opencv:计算机图像方面的图像库,开源的,可以用于商用,在很多高校和科研机构使用比较多,更多的人选择它,是为了写自己的算法,其调试不像Halcon那样方便,其项目开发周期也比Halcon要长,所以在工业应用上,还不是太多。
Matlab可调用opencv库。
2为什么是import cv2?
cv2中的‘2’代表的不是OpenCV的版本,OpenCV是基于C/C++的,”cv”表示底层使用的是C API,”cv2”表示使用的是C++API。这主要是一个历史遗留问题,是为了保持向后兼容性。
3在显示完之后,用不用cv.destroyWindow()有什么区别
cv.destroyWindow()用来一个特定的窗口
4png图片格式和jpg图片格式有什么区别?
png是无损压缩,可以在PS中重新编辑。.jpg格式是一种压缩的图片文件,不能再次编辑,而且在解析度上也是不如.png格式。
练习题:
1同时显示两张不同分辨率的图片,对比他们的大小;
2使用Opencv,测试一下你电脑摄像头的分辨率和帧率是多少;