1 裁剪视频的原因

在有些情况下,我们只需要视频中间部分的视频内容,所以需要通过裁剪去掉周围冗余的视频部分。

2 代码

# -*- coding: utf-8 -*-import cv2
import osdef crop_video_by_width(input_video_path,out_video_path):# 判断视频是否存在if not os.path.exists(input_video_path):print('输入的视频文件不存在')# 获取video_read_cap = cv2.VideoCapture(input_video_path)input_video_width = int(video_read_cap.get(cv2.CAP_PROP_FRAME_WIDTH))input_video_height = int(video_read_cap.get(cv2.CAP_PROP_FRAME_HEIGHT))input_video_fps = int(video_read_cap.get(cv2.CAP_PROP_FPS))input_video_fourcc = int(cv2.VideoWriter_fourcc(*'XVID'))out_video_width = 512;out_video_height = 512;out_video_size = (int(out_video_width), int(out_video_height))video_write_cap = cv2.VideoWriter(out_video_path,input_video_fourcc,input_video_fps,out_video_size)while video_read_cap.isOpened():result, frame = video_read_cap.read()if not result:break# 裁剪到与原视频高度等宽的视频diff = input_video_width - input_video_heightdiff = int(diff/2)crop_start_index = int(diff)crop_end_index = int(diff + input_video_height)# 参数1 是高度的范围,参数2是宽度的范围target = frame[0:int(input_video_height),crop_start_index:crop_end_index]# 再resize到512x512target = cv2.resize(target,(out_video_width,out_video_height))video_write_cap.write(target)cv2.imshow('target',target)cv2.waitKey(10)video_read_cap.release()video_write_cap.release()cv2.destroyAllWindows()if __name__ == '__main__':crop_video_by_width(r'cxk.mp4','result.mp4')

3 结果

未裁剪的视频截图:

裁剪后的视频截图:

Python - 使用python-opencv裁剪原视频为与视频高同宽的视频相关推荐

  1. OpenCV入门(C++/Python)-使用OpenCV裁剪图像(四)

    裁剪是为了从图像中删除所有不需要的物体或区域.甚至突出显示图像的特定功能. 使用OpenCV裁剪没有特定的功能,NumPy数组切片是工作.读取的每个图像都存储在2D数组中(对于每个颜色通道).只需指定 ...

  2. 在Python中使用OpenCV裁剪图像

    What is Cropping? 什么是播种? Cropping is the removal of unwanted outer areas from a photographic or illu ...

  3. AI 视频云 VS 窄带高清,谁是视频时代的宠儿

    随着网络技术的逐渐改善,各类视频消息成为媒体传播的主要选择手段.但其实支撑着视频传播的并不单单是网络技术,还有视频转码与压缩技术.这类技术下分很多,比如曾经被频繁提到的 H.265,比如时下热门的窄带 ...

  4. Python:实现图片裁剪的两种方式——Pillow和OpenCV

    原文:https://blog.csdn.net/hfutdog/article/details/82351549 在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还 ...

  5. python opencv 裁剪图片_Python图片裁剪的两种方式——Pillow和OpenCV

    在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还有一种利用了OpenCV.两种方式都需要简单的几行代码,这可能也就是现在Python那么流行的原因吧. OpenCV ...

  6. Python 小型课设作业,仅200行代码,使用youtube-dl下载视频,使用OpenCV和ffmpeg处理视频成字符视频

    一.程序背后的小故事:    因为不想像传统的课设作业一样做一个很多人做过的小游戏,管理程序等,所以花了很长时间在选择一个有趣的程序方向,突然想起来以前看到的字符跳舞视频,突然引起了我的兴趣.分析字符 ...

  7. 「Python|场景案例」如何拼接、裁剪、多轨合并两个或多个视频

    本文主要介绍如何使用python的第三方库moviepy进行简单的视频编辑操作,比如: 拼接,裁剪,多轨合并. 文章目录 场景描述 准备工作 解决方案 重点参数说明 源代码 场景描述 我们可以日常可以 ...

  8. Python基于OpenCV的人脸识别自助商店(源码&部署视频)

    1.模块功能介绍 实现人脸识别模块.人脸登录与注册功能.商店显示和用户余额页显示功能 用GUl图形界面实现(pyqt)语言python windows下软件pycharm 1.用户登录模块:刷脸登录 ...

  9. python 爬取B站原视频的实站代码

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云,作者:python学习教程 ( 想要学习Python?Pyt ...

最新文章

  1. Java8的Optional是不是鸡肋?
  2. C语言实现生产者-消费者问题
  3. NestedScrollView平滑滑动嵌套 Fling
  4. 用界面读取图片并且保存图片的方法
  5. 同态加法_同态—当旧趋势突然变酷时
  6. Linux gcc 制作静态库01
  7. 惊了!最通俗易懂的Djongo入门竟然在这里!
  8. vim Ctrl+S锁定屏幕
  9. Python实战——2048
  10. 【学习总结】Git学习-参考廖雪峰老师教程三-创建版本库
  11. android sp缓存,Android sharedPreference设置缓存时间
  12. “你好,世界!” Python教程
  13. OpenFOAM提取等值面并计算面积
  14. 笔记本计算机图标怎么设置出来,电脑桌面图标隐藏了怎么弄出来
  15. 5G承载网络架构和技术方案白皮书(部分摘录-1)
  16. [渝粤教育] 西南科技大学 物流系统规划与设计 在线考试复习资料
  17. ntext字段的替换处理示例--全表替换
  18. IMAUOJ——1013: 超级密码
  19. 第三届蓝桥桥杯预赛真题及详细答案
  20. VBScript 函数

热门文章

  1. 应用计算机散热的原理是什么,笔记本电脑散热原理与CPU降频技术解析
  2. 漫画电子电路读书笔记
  3. 印钞能力一般的“随心飞” 为何让航空公司前仆后继?
  4. 高低温磁场型霍尔效应测试仪的设计方案
  5. 计算机辅助cad职称报考,计算机辅助设计绘图员(AUTO CAD)中级证
  6. 蓝屏0x000000A5解决方案
  7. 麒麟系统arm64或aarch64架构下docker打包jdk1.8镜像
  8. html5代码好学吗,0基础能学习Html5吗?Html5好学吗?
  9. 苹果使用过程的一些小技巧
  10. App一键切换url环境、一键打包__Android拓展篇(Java)