这次一定要记住opencv和cv2是什么及其基础用法
opencv是一个基于BSD许可发行(也就是俗称的开源)的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS上。由一系列 C 函数和少量 C++ 类构成的它轻量且高效,并提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
对于python而言,在引用opencv库的时候需要写为import cv2。其中,cv2是opencv的C++命名空间名称,使用它来表示调用的是C++开发的opencv的接口。
参考地址:
https://pypi.org/project/opencv-python/
https://blog.csdn.net/saltriver/article/details/78166046
使用文档:https://docs.opencv.org/master/
需要注意的是,如果按文档编写后报本应存在的预设常量不存在的错误时,记得在常量名前加上cv2. ,或者在引用是直接将cv2引用为*。
基础用法
为了加深印象,特此记录。
void cv2.namedWindow(String winname, int flags=WINDOW_AUTOSIZE)
以flags设置的方式初始化一个名为winname的窗口。WINDOW_AUTOSIZE生成的窗口无法自由改变大小(指鼠标拖动改变窗口大小)。如要改变大小使用cv2.WINDOW_NORMAL初始化窗口。
void cv2.imshow(String winname, InputArray img)
在指定窗口winname中显示图像img。
若在此之前未生成窗口,该函数将按图像分辨率初始化窗口。
int cv2.waitKey(int delay=0)
如果使用默认值或设置一个小于等于0的值,程序会在此阻塞,等待键盘事件。设置一个大于0的值,程序会在此等待至少设置值数值的时间(设置数值单位为毫秒),因为操作系统切换线程需要时间,所以是至少。其返回值是按键对应的ascii码值或设定时间内无按键事件时的-1。
需要注意的是,这个函数只有在已有窗口之后才能生效。(简单来说可以是imshow过一次之后)