OpenCV3 Python语言实现 笔记1
来源:互联网 发布:软件安装管理器 知乎 编辑:程序博客网 时间:2024/05/22 04:55
一、
python和numpy表示一幅图像
img = numpy.zeros((3,3), dtype=numpy.uint8)
二、
一个opencv图像是.array类型的二维或三维数组
使用numpy.array访问图像数据1.单像素操作:获取指定位置(150,120,0)像素: image.item(150,120,0)
设置B通道位置(150,120)像素为255: image.itemset((150,120,0),255)
2.数组索引: 所有G通道值设为0: img[:,:,1] = 0
3.设定感兴趣区域: my_roi = img[0:100, 0:100]
img[300:400,300:400] = my_roi
4.获得图像属性: img.shape 返回(宽,高,通道数)
img.size 返回像素大小
img.dtype 返回数据类型
三、
视频读/写
1.视频读:cv2.VideoWriter
import cv2videoCapture = cv2.VideoCapture('MyInputVid.avi')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( 'MyOutputVid.avi', cv2.VideoWriter_fourcc('I','4','2','0'), fps, size)#其他编码器PIM1,XVID,THEO,FLV1success, frame = videoCapture.read()while success: # Loop until there are no more frames. videoWriter.write(frame) success, frame = videoCapture.read()2.摄像头:
cameraCapture = cv2.VideoCapture(0)size = (int(cameraCapture.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cameraCapture.get(cv2.CAP_PROP_FRAME_HEIGHT)))success, frame = cameraCapture.read()cameraCapture.release()cameraCapture.isOpened()#是否正确打开#同步一组摄像头:success0=cameraCapture0.grab()success0=cameraCapture1.grab()if success0 and success1: frame0 = cameraCapture0.retrieve() frame1 = cameraCapture1.retrieve()
阅读全文
1 0
- OpenCV3 Python语言实现 笔记1
- OpenCV3 Python语言实现 笔记2
- OpenCV3 Python语言实现 笔记3
- OpenCV3 Python语言实现 笔记4
- OpenCV3 Python语言实现 笔记5
- OpenCV3 Python语言实现 笔记6
- OpenCV3 python语言实现(1)
- OpenCV3 椒盐噪声python语言实现
- OpenCV3计算机视觉Python语言实现(三):使用OpenCV3处理图像
- OpenCV3计算机视觉Python语言实现(二):处理文件、摄像头和图形用户界面
- 《OpenCV3 计算机视觉 Python语言实现》——处理文件、摄像头和图形用户界面
- opencv3计算机视觉Python语言实现(原书第二版)第三章3.6节缺少BGRPortraCurveFilter()函数
- 1 用python进行OpenCV实战之用OpenCV3实现图片载入、显示和储存
- OpenCV3.0 Examples学习笔记(1)-contours2.cpp-通过findContours 函数实现轮廓提取
- 《OpenCV3编程入门》学习笔记番外篇之OpenCV-Python使用
- Opencv3中画图功能详解(C++实现,python说明)
- opencv3.1学习笔记(1)-模块介绍
- opencv3.1+opencv_contrib 编译出错笔记
- mybatis框架及原理
- CentOS7 安装 vsftpd 完整版
- (三)简单工厂模式详解
- ARM指令中如何判断一个立即数是有效立即数
- [7.9] 纪中C组
- OpenCV3 Python语言实现 笔记1
- GalaxyOJ-687 (离散化)
- 递推问题之“佐罗”的烦恼
- POJ1087:A Plug for UNIX(最大流)
- 零阶矩、一阶矩、二阶矩、三阶矩
- java中等待一些线程执行完之后,再去执行别的方法(后者需要使用前者返回的结果)
- Android系列之手机多点触摸画圆
- 二进制、八进制、十进制、十六进制之间的转换
- 字符串转二进制