python提高视频清晰度,python改变图像分辨率
在测试alphapose的时候,原始视频的分辨率太高,导致网络难以运行,所以要修改视频的分辨率,代码如下:
导入cv2
cap=cv2。视频捕获( videl_1.mp4 )
videowriter=cv2。VideoWriter(videl_640_360 )。avi ,cv2。VideoWriter_fourcc(M , J , P , G ),15,(640,360))
成功,_=cap.read()whilesuccess:
成功,img1=cap.read()try:
img=cv2.resize(img1,(640,360),插值=cv2。INTER _线性)
videowriter.write
除了:打破
cv2。视频作者()
VideoWriter(文件名,fourcc,fps,帧尺寸[,isColor])
第一个参数是要保存的文件的路径。
Fourcc指定编码器,一般是“DIVX”、“MJPG”、“XVID”、“X264”。根据您的计算机环境安装哪些编码器。
fps保存的视频的帧速率
要保存的文件的屏幕大小。
IsColor表示是黑白图片还是彩色图片。
注意VideoWriter中的大小要和write()中写的大小一致,也就是resize()函数的大小,否则视频会存储失败。
cv2.resize()
cv2.resize(src,size,interpolation) -dst
src-原始图纸
理论上,调整大小后的图像大小可以任意设置。
插值-插值法。有五种:
最近邻-最近邻插值
INTER _ LINEAR-双线性插值(默认)
基于局部像素的INTER _ AREA-重采样(使用像素区域关系进行重采样)。这可能是一种较好的图像提取方法。但如果放大图像,则类似于最近邻法。
基于4x4像素邻域的立方-立方插值方法
基于88像素邻域的跨LANCZOS4-Lanczos插值
一般缩小用cv。INTER_AREA,缩小使用cv。INTER_CUBIC(较慢)和cv。INTER_LINEAR(更快的结果也很好)。默认情况下,cv。INTER_LINEAR用于所有缩放。
dst-目标图像。
此处不能使用异常处理,但在处理每个视频的最后一帧时会报告此错误:
原文:https://www.cnblogs.com/liuwenhua/p/12744997.html
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。