opencv常用api
opencv常用api
一、图像及视频读写
img=cv2.imread('jiang.jpg',1) cv2.imwrite('jiang.jpg',img) cv2.imshow('jiang',img) cap=cv2.VideoCapture(0) ret,frame=cap.read()
cap.isOpened() cap.open() width,hight=cap.get(3),cap.get(4) cap.set(propId,value) gray=cv2.ctvColor(img,color_BGR2GRAY)
cap=cv2.VideoCapture('hello.avi') cv2.waitKey(25) fourcc=cv2.VideoWrier_fourcc(*'MJPG') out=cv2.VideoWriter('jiang.avi',fourcc,25.0,(640,480))
out.write(frame)
二、窗口操作相关:
cv2.namedWindow('jiang',[cv2.WINDOW_NORMAL,cv2.WINDOW_AUTOSIZE]) k=cv2.waitKey(0)&0xFF cv2.destroyWindow('jiang') cv2.destroyAllWindows()
cv2.setMouseCallback('windowname',callfunc)
三、绘图api
cv2.line(img,(0,0),(511,511),(0,255,0),5) cv2.rectangle() cv2.circle() cv2.ellipse() cv2.putText()
四、图像属性
img.shape() img.size() img.dtype() img.item(10,20,2)
五、图像加\二值化\位运算
dst=cv2.addWeighted(img1,0.7,img2,0.3,0) ret, mask = cv2.threshold(grayImage, 175, 255, cv2.THRESH_BINARY) cv2.bitwise_and()
六、拆分合并通道
b,g,r=cv2.split(img) img=cv2.merge([b,g,r])
七、程序运算效率相关
e1 = cv2.getTickCount() e2 = cv2.getTickCount() time = (e2 - e1)/ cv2.getTickFrequency()
八、按颜色选取图像区域
lower_blue=np.array([110,50,50]) upper_blue=np.array([130,255,255]) mask=cv2.inRange(hsv,lower_blue,upper_blue)
九、图像几何变换
移位:M=np.float32([[1,0,50][0,1,100]]) newPic = cv2.warpAffine(img,M,(cols,rows)) cv2.resize(src,dsize,dst=None,fx=None,fy=None,interpolation=None)
interpolation:['INTER_AREA', 'INTER_LINEAR' , 'INTER_CUBIC']
旋转:M = cv2.getRotationMatrix2D((rows/2,cols/2),45,0.6) newPic = cv2.warpAffine(img,M,(cols,rows))
仿射变换:M = cv2.getAffineTransform(pt1,pt2) newPic = cv2.warpAffine(img,M,(2*cols,2*rows))
newPic=cv2.resize(newPic,None,fx=0.5,fy=0.5,interpolation=cv2.INTER_CUBIC)
透视变换:M=cv2.getPerspectiveTransform(pts1,pts2) dst=cv2.warpPerspective(img,M,(300,300))
pts1:原图上四个点,任意三点不能共线
opencv常用api的更多相关文章
- Android学习八---OpenCV JAVA API
OpenCV java API的文档说明在OpenCV-2.4.10-android-sdk/sdk/java/javadoc/index.html的文件夹下. 想用java API的方式进行Open ...
- html5 canvas常用api总结(一)
1.监听浏览器加载事件. window.addEventListener("load",eventWindowLoaded,false); load事件在html页面加载结束时发生 ...
- compass General 常用api学习[Sass和compass学习笔记]
compass 中一些常用api 包括一些浏览器hack @import "compass/utilities/general" Clearfix Clearfix 是用来清除浮动 ...
- java基础3.0:Java常用API
本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...
- C++ 中超类化和子类化常用API
在windows平台上,使用C++实现子类化和超类化常用的API并不多,由于这些API函数的详解和使用方法,网上一大把.本文仅作为笔记,简单的记录一下. 子类化:SetWindowLong,GetWi ...
- node.js整理 02文件操作-常用API
NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...
- js的常用api
JavaScript常用API总结 原创 2016-10-02 story JavaScript 下面是我整理的一些JavaScript常用的API清单. 目录 元素查找 class操作 节点操作 属 ...
- JS操作DOM常用API总结
<JS高程>中的DOM部分写的有些繁琐,还没勇气整理,直到看到了这篇博文 Javascript操作DOM常用API总结,顿时有了一种居高临下,一览全局的感觉.不过有时间还是得自己把书里面的 ...
- request对象常用API 获取请求参数的值 request应用 MVC设计模式
1 request对象常用API 1)表示web浏览器向web服务端的请求 2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1 ...
随机推荐
- Mac使用
安装you-get: 用到mac下安装软件的工具:brew 百度搜brew到官网首页照说明在终端执行一段指令 安装方法:命令行输入 /usr/bin/ruby -e "$(curl -fsS ...
- python中logging模块的用法
很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...
- virtualenvwrappers pipreqs 踩坑
virtualenvwrappers 1.安装 pip install virtualenvwrapper 在~/.bashrc 中写入 export WORKON_HOME=~/.virtualen ...
- HI3518EV200+AR0130开发板烧录uboot、kernel、rootfs及其参数配置
分区名 分区大小 起始地址 截至地址bootloader:1M 0x00000000 0x00100000kernel: 3M 0x00100000 0x00400000rootfs: 12M 0x0 ...
- 2018-2019-2 网络对抗技术 20165308 Exp2 后门原理与实践
2018-2019-2 网络对抗技术 20165308 Exp2 后门原理与实践 1.实验内容 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...
- 记一次java电话面试
答案补充中... 一.java基础 1.简述java的几种基本数据类型 JAVA的基本数据类型有:byte.char.boolean.short.int.long.float.double 2.什么是 ...
- 定时任务模块 schedule
# coding:utf-8 from learning_python.Telegram_push.check_hardware import check_cpu import schedule im ...
- h5动画如何实现?如何快速开发h5动画
最近几年随着h5的兴起,复杂的h5动画,甚至是交互动画类型的产品不断涌现,尤其在课件产品方面,很多公司都有相关需求,最近很多h5开发工程师想了解相关方面的技术. 针对h5,如果是简单的动画效果,可以考 ...
- Eclipse导入hadoop源码
在windows中,使用Eclipse阅读hadoop源码,首先到apache官网下载tar.gz的hadoop源码压缩文件,解压. 方法1:(hadoop技术内幕推荐) 打开Eclipse,新建ja ...
- TCP/IP学习20180709-数据链路层-arp协议
arp协议:address resolution protocol地址解析协议数据链路层,每个数据包都有MAC地址.主机是怎样根据对方主机的ip地址知道对方主机的mac地址呢?通过arp协议.主机里有 ...