由于項(xiàng)目需求用灰度圖像訓(xùn)練了一個目標(biāo)檢測的squeezeDet網(wǎng)絡(luò)杜漠,把視頻提取成為每一幀來進(jìn)行測試璧针。開始測試的時候沒有注意直接用了彩色視頻來進(jìn)行測試翠桦,發(fā)現(xiàn)檢測的一點(diǎn)都不準(zhǔn)钧敞,然后就想把彩色視頻裝換成灰度視頻試試葵擎,本想找個軟件直接轉(zhuǎn)換谅阿,結(jié)果找了半天沒找到,那還是自己動手吧酬滤。代碼很簡單奔穿,下面直接貼代碼。用灰度圖測試效果就好了很多敏晤。
import numpy as np
import cv2
'''
這是一個將彩色視頻裝換成灰度視頻的代碼塊
'''
# 捕獲視頻
cap = cv2.VideoCapture('C:/Users/Administrator/Desktop/video.mp4')
# 定義編解碼器贱田,創(chuàng)建VideoWriter 對象
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('C:/Users/Administrator/Desktop/output1.mp4',fourcc, 20.0, (1280,720),False)
#(寫出的文件,嘴脾?男摧?,幀率译打,(分辨率)耗拓,是否彩色) 非彩色要把每一幀圖像裝換成灰度圖
while(cap.isOpened()):
ret, frame = cap.read()
if ret==True:
# frame = cv2.flip(frame,0) #可以進(jìn)行視頻反轉(zhuǎn)
# write the flipped frame
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) #換換成灰度圖
out.write(frame)
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
else:
break
# Release everything if job is finished
cap.release()
out.release()
cv2.destroyAllWindows()