前言:
随着人工智能的不断发展,OpenCV这门技术也变得越来越重要,很多人开始学习OpenCV,那么本文就介绍了OpenCV的基础知识
一、OpenCV是什么
OpenCV是一个开源的计算机视觉库,1999年由英特尔的Gary Bradski启动。OpenCV 库由C和C++语言编写,涵盖计算机视觉各个领域内的500多个函数,可以在多种操作系统上运行。它旨在提供个简洁而 又高效的接口,从而帮助开发人员快速地构建视觉应用
二、图像处理基本操作
在图像处理过程中,读取图像、显示图像、保存图像是最基本的操作。
1.1、读取图像
在OpenCV中使用函数cv2.imread()来完成读取图像,该函数支持各种静态图像的格式
代码如下:
以上代码会读取当前目录下的图像lena.jpg,然后使用print语句打印读取图像数据,运行程序后输出图像的部分像素值,效果如下 :
1.2、显示图像
在完成显示图像的过程中使用到cv2.imshow()、cv2.waitKey()、cv2.destroyAllWindows()函数
cv2.imshow(),其语法格式为:None = cv2.imshow(winname, mat)
winname是窗口名称
mat是要显示的图像
函数cv2waitKey()用来等待按键,当用户按下键盘后,该语句会被执行,并获取返回值, 其语法格式为:
retval = cv2.waitKey( [delay] )
retval表示返回值。如果按键按下,则返回该按键的ASCII码;如果按键没有按下,则返回-1。
delay表示等待键盘触发的时间,单位为ms。当该值是负数或者零时,表示无限等待。默认为0。
函数cv2.destroyAllWindows()用来释放(销毁)所有窗口,其语法格式为:
None = cv2.destroyAllWindows()
代码如下:
效果:
1.3保存图像
在OpenCV中使用函数cv2.imwrite()来保存图像,其语法格式为:
retval = cv2.imwrite( filename, img [,params] )
- retval是返回值。如果保存成功,则返回逻辑值真(True); 如果保存不成功,则返回逻辑值假( False)。
- filename是要保存的目标文件的完整路径名,包含文件扩展名。
- img是被保存图像的名称。
- params是保存类型参数,是可选的。
代码如下:
效果如下:
运行上述程序会先读取当前目录下的图像lean.jpg,生成它的一个副本图像,然后将图像以名称lala.jpg存储到当前目录下