opencvビデオフレームのデータはBGRに保存されており、他のライブラリで使用するために従来のRGB形式に変換したいと思います。
方法1
コアコード
cv2.cvtColor(Frame,cv2.COLOR_BGR2RGB)
、ここで、Frameはcv2によって読み取られたBGRデータです。
例
import cv2
cap = cv2.VideoCapture('1.avi')
assert cap.isOpened(), '视频文件打开失败'
ret, Frame = cap.read() # 读取一帧图像 ret读取了数据就返回True,没有读取数据(已到尾部)就返回False frame返回读取的视频数据--一帧数据
nowFrame = cv2.cvtColor(Frame,cv2.COLOR_BGR2RGB) # 转成RGB
方法2
コアコード
nowFrame = cv2.merge([R,G,B])
、ここで、Frameはcv2によって読み取られたBGRデータです。
例
import cv2
cap = cv2.VideoCapture('1.avi')
assert cap.isOpened(), '视频文件打开失败'
ret, Frame = cap.read() # 读取一帧图像 ret读取了数据就返回True,没有读取数据(已到尾部)就返回False frame返回读取的视频数据--一帧数据
B,G,R = cv2.split(Frame) # 把三个通道的数据分离
nowFrame = cv2.merge([R,G,B]) # 用 merge 函数来重构