📅  最后修改于: 2023-12-03 15:28:06.385000             🧑  作者: Mango
OpenCV是一个开源的计算机视觉库,它被广泛应用于计算机视觉的研究、产品开发和工业应用等领域。
安装OpenCV有多种方式,下面介绍两种常用的方法:
在命令行中输入以下命令即可安装OpenCV:
pip install opencv-python
下载OpenCV源码:从源码仓库中下载最新的OpenCV源码,例如:
git clone https://github.com/opencv/opencv.git
编译OpenCV:进入OpenCV源码根目录,执行以下命令:
mkdir build && cd build
cmake ..
make -j4
make install
使用OpenCV读取和显示图像非常简单,以下是示例代码:
import cv2
# 读取图像
img = cv2.imread("test.jpg")
# 显示图像
cv2.imshow("Image", img)
cv2.waitKey()
其中,imread()
函数用于读取图像,imshow()
函数用于显示图像,waitKey()
函数用于等待键盘输入,不加参数的话程序将一直等待。
OpenCV提供了丰富的图像处理函数和算法,可以实现图像的滤波、变换、分割等操作。以下是部分常用的图像处理函数:
import cv2
# 读取图像
img = cv2.imread("test.jpg")
# 将图像转为灰度图
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 对灰度图进行二值化
_, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 显示二值化后的图像
cv2.imshow("Binary Image", binary)
cv2.waitKey()
# 对二值化后的图像进行边缘检测
edges = cv2.Canny(binary, 100, 200)
# 显示边缘检测后的图像
cv2.imshow("Edges Image", edges)
cv2.waitKey()
OpenCV可以处理实时视频流,也可以处理已经录制好的视频文件。以下是部分常用的视频处理函数:
import cv2
# 读取已经录制好的视频文件
cap = cv2.VideoCapture("test.mp4")
while True:
# 读取视频帧
ret, frame = cap.read()
if not ret:
break
# 将视频帧转为灰度图
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# 显示灰度图
cv2.imshow("Frame", gray)
# 按q键退出程序
if cv2.waitKey(25) & 0xff == ord("q"):
break
# 释放资源
cap.release()
cv2.destroyAllWindows()
OpenCV是一个非常强大的计算机视觉库,它有丰富的功能和算法,可以实现图像处理、视频处理等多种功能。本文简单介绍了OpenCV的安装和使用方法,但并未涉及完整的功能和算法,有需要的程序员可以自行查阅OpenCV官方文档。