opencv-python显示摄像头
时间: 2023-09-04 17:09:50 浏览: 196
要在 OpenCV-Python 中显示摄像头,可以使用 `cv2.VideoCapture` 函数打开摄像头,并使用 `cv2.imshow` 函数显示摄像头的图像。以下是示例代码:
```python
import cv2
# 打开摄像头
cap = cv2.VideoCapture(0)
if not cap.isOpened():
print("Failed to open camera.")
exit()
# 循环读取并显示摄像头图像
while True:
ret, frame = cap.read()
cv2.imshow("Camera", frame)
if cv2.waitKey(30) == ord('q'):
break
# 释放摄像头并关闭窗口
cap.release()
cv2.destroyAllWindows()
```
在上面的代码中,我们首先通过 `cv2.VideoCapture` 函数打开了编号为 0 的摄像头(如果有多个摄像头,可以通过修改编号来选择摄像头),然后循环读取并显示摄像头的图像。在读取图像时,我们使用了 `cap.read()` 语句,将摄像头的图像读取到了 `frame` 变量中。然后使用 `cv2.imshow` 函数在名为 "Camera" 的窗口中显示了 `frame` 中的图像。最后,我们使用 `cv2.waitKey` 函数等待键盘输入,如果用户按下了 "q" 键,就退出循环。在退出循环后,我们释放了摄像头资源,并关闭了显示窗口。
相关问题
opencv-python 摄像头灰度化实时
下是使用 OpenCV-Python 将摄像头实时灰度化的示例代码:
```python
import cv2
# 打开摄像头
cap = cv2.VideoCapture(0)
while True:
# 读取摄像头每一帧的图像
ret, frame = cap.read()
# 将图像转换为灰度图
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# 显示灰度图
cv2.imshow('gray', gray)
# 按下 'q' 键退出循环
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放摄像头资源
cap.release()
cv2.destroyAllWindows()
```
运行以上代码后,会打开摄像头并将实时视频流转换为灰度图像。通过按下键盘上的 'q' 键,可以退出程序并释放摄像头资源。
简单的利用opencv-python调用摄像头
可以使用以下代码利用OpenCV-Python调用摄像头:
```python
import cv2
cap = cv2.VideoCapture(0) # 打开默认的摄像头
while True:
ret, frame = cap.read() # 读取摄像头数据
cv2.imshow('frame', frame) # 显示图像
# 按下 'q' 键退出
if cv2.waitKey(1) == ord('q'):
break
cap.release() # 释放摄像头
cv2.destroyAllWindows() # 关闭所有窗口
```
上面的代码中,`cv2.VideoCapture(0)`打开默认的摄像头,`cap.read()`读取摄像头数据,`cv2.imshow()`显示图像,`cv2.waitKey(1)`等待按键事件,`cap.release()`释放摄像头,`cv2.destroyAllWindows()`关闭所有窗口。按下 'q' 键退出。
阅读全文