Skip to content

Commit 70cc18f

Browse files
committed
03 打开摄像头
1 parent 70ad5cb commit 70cc18f

13 files changed

+64
-6
lines changed

.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/OpenCV-Python-Tutorial.iml

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/inspectionProfiles/profiles_settings.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

02-Basic-Element-Image/cv2_getting_start_with_images.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import cv2
22

33
# 1.灰度图加载一张彩色图
4+
# cv2.IMREAD_COLOR:彩色图,默认值(1)
5+
# cv2.IMREAD_GRAYSCALE:灰度图(0)
6+
# cv2.IMREAD_UNCHANGED:包含透明通道的彩色图(-1)
47
img = cv2.imread('lena.jpg', 0)
58

69

02-Basic-Element-Image/lena_gray.jpg

44.8 KB
Loading

02-Basic-Element-Image/lena_save.bmp

360 KB
Binary file not shown.

03-Open-Camera/cv2_capture_live_video_from_camera.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,23 @@
11
import cv2
22

33
# 1.打开摄像头
4-
capture = cv2.VideoCapture(2)
4+
capture = cv2.VideoCapture(0)
55

66
# 2.获取捕获的分辨率
77
width, height = capture.get(3), capture.get(4)
88
print(width, height)
9-
# 以原分辨率的一倍来捕获
9+
# 以原分辨率的一倍来捕获
1010
# 参数1可以直接写数字,或者OpenCV符号表示
1111
capture.set(cv2.CAP_PROP_FRAME_WIDTH, width * 2)
1212
capture.set(cv2.CAP_PROP_FRAME_HEIGHT, height * 2)
1313

1414
while(True):
15-
# 获取一帧
15+
# capture.read() 获取一帧
16+
# ret 是一个布尔值,表示这一帧是否获取正确
17+
# frame 获取这一帧的数据
1618
ret, frame = capture.read()
17-
# 将这帧转换为灰度图
19+
print(frame)
20+
# 将这帧转换为灰度图 COLOR_BGR2GRAY
1821
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
1922

2023
cv2.imshow('frame', gray)

03-Open-Camera/cv2_exercise1.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,12 @@ def track_back(x):
1414
capture = cv2.VideoCapture('demo_video.mp4')
1515
# 获取视频总共多少帧
1616
frames = capture.get(cv2.CAP_PROP_FRAME_COUNT)
17-
# 创建滑动条
17+
# 创建滑动条 5个参数
18+
# 参数1:滑动条的名称
19+
# 参数2:所在窗口的名称, 所以要先创建窗口
20+
# 参数3:当前的值
21+
# 参数4:最大值
22+
# 参数5:回调函数名称,回调函数默认有一个表示当前值的参数
1823
cv2.createTrackbar('process', 'window', 1, int(frames), track_back)
1924

2025
while(capture.isOpened()):

03-Open-Camera/cv2_play_video_from_file.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@
88
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
99

1010
cv2.imshow('frame', gray)
11+
# cv2.waitKey(), 它的参数表示暂停时间,值越大,播放速度越慢。反之值越小,播放速度越快,一般定为 30
1112
if cv2.waitKey(30) == ord('q'):
1213
break

03-Open-Camera/cv2_save_video_to_file.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,15 @@
22

33
capture = cv2.VideoCapture(0)
44

5-
# 定义编码方式并创建VideoWriter对象
5+
# 定义编码方式并创建 VideoWriter 对象
66
fourcc = cv2.VideoWriter_fourcc(*'MJPG')
7+
# fourcc = cv2.VideoWriter_fourcc('M','J','P','G')
8+
9+
# VideoWriter 四个参数
10+
# 输出文件名,如 'output.avi'
11+
# 编码方式 FourCC 码
12+
# 帧率 FPS
13+
# 要保存的分辨率大小
714
outfile = cv2.VideoWriter('output.avi', fourcc, 25., (640, 480))
815

916
while(capture.isOpened()):

0 commit comments

Comments
 (0)