博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenCV处理文件、视频和摄像头
阅读量:6372 次
发布时间:2019-06-23

本文共 1069 字,大约阅读时间需要 3 分钟。

图像的本质(图像可以用数组来表示)

import numpy as npimport cv2img = np.zeros((3, 3), dtype=np.uint8)print(img, img.dtype)img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)print(img, img.dtype, img.shape)

图片格式转换(jpg->png)

image = cv2.imread("img/1.jpg")cv2.imwrite("img/1.png",image)

使用numpy.array访问图像数据

image = cv2.imread("img/1.jpg")image[0:100,0:100] = [255,255,255]cv2.imshow("Demo",image)cv2.waitKey(0)

图像的属性

image = cv2.imread("img/1.jpg")print(image.shape)print(image.size)print(image.dtype)

shape:图像的宽度、高度和通道数

size:图像的大小=宽*高*通道数

dtype:图像像素值的数据类型

视频类型转换

import numpy as npimport cv2videoCapture = cv2.VideoCapture("img/小杰克的攻击.mp4")fps = videoCapture.get(cv2.CAP_PROP_FPS)  # 获取每秒多少帧size = (    int(videoCapture.get(cv2.CAP_PROP_FRAME_WIDTH)),  # 获取视频帧宽度    int(videoCapture.get(cv2.CAP_PROP_FRAME_HEIGHT))  # 获取视频帧高度)videoWriter = cv2.VideoWriter("output.avi", cv2.VideoWriter_fourcc('I', '4', '2', '0'), fps, size)success ,frame = videoCapture.read()while success:    videoWriter.write(frame)    success,frame = videoCapture.read()

 

转载于:https://www.cnblogs.com/zhumengke/p/10186906.html

你可能感兴趣的文章
使用Metrics方法级远程监控Java程序
查看>>
Spring核心系列之Bean的生命周期
查看>>
VasSonic源码之并行加载
查看>>
小程序 LRU 存储设计
查看>>
Android 多线程之阻塞队列
查看>>
Haskell 在 macOS 下的环境搭建
查看>>
适配mpvue平台的的微信小程序日历组件mpvue-calendar
查看>>
【Linux学习】 Redis常用的一些指令
查看>>
Spring Cloud 中使用Feign解决参数注解无法继承的问题
查看>>
数据迁移方案 + Elasticsearch在综合搜索列表实现
查看>>
干货 | 分分钟教你用Python创建一个区块链
查看>>
Angular开发实践(八): 使用ng-content进行组件内容投射
查看>>
canvas+websocket+vue做一个完整的你画我猜小游戏
查看>>
android复习清单
查看>>
工作代码备用
查看>>
spring cloud互联网分布式微服务云平台规划分析--spring cloud定时调度平台
查看>>
说说如何配置 Webpack
查看>>
小程序中使用箭头函数的问题
查看>>
走进 JDK 之 Long
查看>>
Android打地鼠游戏的修改和优化
查看>>