直接上code吧,算是学习笔记。
#!/usr/bin/env python
import numpy as np
import cv2
#imread第二个参数为0,强制将图像转换为灰度图像,如果为1,强制转换为彩色图像,-1应该是根据图像自身的信息决定
#img = cv2.imread("src.png", 0)
img = cv2.imread("src.png", 1)
cv2.imshow('image', img)
k = cv2.waitKey(0)
if k == 27: #如果按下 ESC ,关闭窗口并退出
cv2.destroyAllWindows()
elif k == ord('s'): #如果按下‘s'键,则保存图像
cv2.imwrite("src.jpg", img)
cv2.destroyAllWindows()
使用matplotlib
#!/usr/bin/env python
import numpy as np
import cv2
from matplotlib import pyplot as plt
#img = cv2.imread("src.png", 0)
img = cv2.imread("src.png", 1)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])
plt.show()
play video file:
#!/usr/bin/env python
import numpy as np
import cv2
cap = cv2.VideoCapture('output.avi')
while(cap.isOpened()):
ret, frame = cap.read()
if ret == True:
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('image', gray)
k = cv2.waitKey(20)
if (k & 0xff == ord('q')):
break
else:
break
cap.release()
cv2.destroyAllWindows()
从摄像头读取视频播放并保存为avi文件
#!/usr/bin/env python
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
i = 0
while( i < 18):
i = i+1
print cap.get(i)
ret = cap.set(3,320)
ret = cap.set(4,240)
#output info
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi', fourcc, 20.0, (320,240))
while(cap.isOpened()):
ret, frame = cap.read()
if ret == True:
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
out.write(frame)
cv2.imshow('image', gray)
k = cv2.waitKey(1)
if (k & 0xff == ord('q')):
break
else:
break
cap.release()
out.release()
cv2.destroyAllWindows()