vc如何打开plt图像_图像基本操作-open cv

import cv2
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
img = cv2.imread('revolte.jpg')
img # 读取的是array 格式
array([[[240, 243, 255],[239, 242, 255],[238, 241, 255],...,def cv_show(name,image):cv2.imshow(name,image)cv2.waitKey(0)cv2.destroyAllWindows()
cv_show('image',img) #定义个函数不用每次都写这么多行
img.shape#常用的属性
(183, 275, 3)
###灰度图的读取
img= cv2.imread('revolte.jpg',cv2.IMREAD_GRAYSCALE)
cv_show('Gray',img)
cv2.imwrite('gray.jpg',img)
True

视频的处理

vc = cv2.VideoCapture('AMZ.mp4')
while open:ret,frame = vc.read()#返回两个值if frame is None:breakif ret == True:gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)cv2.imshow('gray result',gray)if cv2.waitKey(1)&0xFF ==27:break
vc.realse()
cv2.destroyAllWindows()                     ^

颜色通道的提取

b,g,r = cv2.split(img)
img = cv2.merge((b,g,r)) #合并通道
#只保留B
cur_img = img.copy()
cur_img[:,:,1]=0
cur_img[:,:,2]=0
cv_show('B',cur_img)

边界的填充(padding),有复制法(复制最边缘的像素),反射法,外包装法,常量法

top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)
reflect = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT_101)
wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_WRAP)
const =wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_CONSTANT,value = 0)
plt.subplot(221),plt.imshow(img,'gray'),plt.title('Original')
plt.subplot(222),plt.imshow(replicate,'gray'),plt.title('replicate')
plt.subplot(223),plt.imshow(reflect,'gray'),plt.title('replicate101')
plt.subplot(224),plt.imshow(const,'gray'),plt.title('const')

133897d737d75949705b3c95639bc266.png

数值计算

img2 = img+10
#可以切片进行计算,numpy计算越界取余
#不同于cv2.add 越界取最大

图像融合

img2 = cv2.imread('mito.jpg')
img2.shape
(159, 317, 3)
img.shape
(159, 317, 3)
img = cv2.resize(img,(317,159))
img = cv2.flip(img, 1)
res = cv2.addWeighted(img,0.6,img2,0.4,0)
plt.imshow(res)

7e1ebb30394f4a0a4458d9d05f11ff61.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276788.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自学编程需要注意什么?

1。选合适自己的职业,不同的职业门槛不一样,难度不一样,或多或少总有差别。 笨的选JS,有点底子的选Java,半调子的选Android或者是IOS-如果这两个职业还没完蛋的话。 不想写代码的选PM和UI,要求不高的选QA&a…

帆软报表(finereport)table块钻取,返回记住table块位置

<1>首先table块加初始化事件&#xff0c;idex为参数&#xff0c;参数值为$tab_idexsetTimeout(function(){_g().getWidgetByName("tabpane0").showCardByIndex(Number(idex)); },10) <2>在table块钻取位置&#xff0c;加js事件钻取var u navigator.user…

python调用api应用接口_Python接口测试之urllib2库应用

在接口测试中或者说在网络爬虫中&#xff0c;urllib2库是必须要掌握的一个库&#xff0c;当然还有优秀的requests库&#xff0c;今天重点来说urllib2库在接口测试中的应用。urllib2定义了很多的函数和类&#xff0c;这些函数和类能够帮助我们在复杂情况下获取URLS的内容。这些情…

破解MS Word 的只读密码限制

如果你有Microsoft Office XP 或者 Microsoft Office 2003&#xff0c;你可以使用Microsoft Script Editor 来查看&#xff08;使用AltShiftF11 快捷键切换&#xff09;被限制的Word 文档的HTML&#xff0d;Code。当Word 文档在Microsoft Script Editor打开后&#xff0c;搜索关…

CSS3透明背景表单

在线演示 本地下载

r-studio扫描后各种颜色_iPhone手机备忘录,原来还隐藏着扫描仪,你不会还不知道吧?...

大家好&#xff0c;今天就来给大家讲一讲&#xff0c;iPhone手机备忘录里面的一个隐藏功能&#xff0c;大家对手机备忘录应该都不陌生吧&#xff0c;iPhone手机的备忘录里有一个扫描仪的功能&#xff0c;可以将纸质文档变成电子档&#xff0c;不知道的小伙伴就和我一起来看看吧…

今早新闻的翻译

踏切で人身事故 東上線乱れ&#xff14;万人に影響  &#xff11;&#xff15;日午前&#xff17;時&#xff12;&#xff10;分ごろ、東京都板橋区常盤台&#xff13;丁目の東武東上線ときわ台―上板橋間の踏切で遮断機の下をくぐった女性が成増発池袋行き普通電車にはねられ…

MySQL保留2位小数

1、round(x,d)&#xff0c;四舍五入。round(x) ,其实就是round(x,0),也就是默认d为0 select round(110.35,1); # 110.4 2、TRUNCATE(x,d)&#xff0c;直接截取需要保留的小数位 select TRUNCATE(110.35,1); # 110.3 3、FORMAT&#xff08;x,d&#xff09;&#xff0c;四舍五入…

TiDB 在小米的应用实践

作者&#xff1a;张良&#xff0c;小米 DBA 负责人&#xff1b;潘友飞&#xff0c;小米 DBA&#xff1b;王必文&#xff0c;小米开发工程师。一、应用场景介绍 MIUI 是小米公司旗下基于 Android 系统深度优化、定制、开发的第三方手机操作系统&#xff0c;也是小米的第一个产品…

java图片识别查看器模拟_[转载]windows照片查看器无法显示图片内存不足

问题描述最近在使用Windows照片查看器打开一个jpg文件的时候异常Windows照片查看器无法显示此图片&#xff0c;因为计算机上的可用内存可能不足。请关闭一些目前没有使用的程序或者释放部分硬盘空间(如果硬盘几乎已满)&#xff0c;然后重试问题分析这时我们按F11或者图片下方中…

等宽字体

摘抄了一个编程用字体选择标准&#xff0c;供各位参考&#xff1a; 1. 所有字符等宽&#xff1b; 2. 简洁、清晰、规范的字符形体&#xff1b; 3. 支持ASCII码为128以上的扩展字符集&#xff1b; 4. 空白字符(ASCII: 0x20)与其他字符等宽&#xff1b; 5. 1、l和i等三个字符易于…

海量数据索引与近似最近邻随记

最近邻问题(NN) 将次数看成向量&#xff0c;然后我们就可以比对向量的距离(欧式距离&#xff0c;余弦距离)。数据中会有一些异常点&#xff0c;这些异常点会导致结果的不稳定。这种思想非常的不稳定&#xff0c;因为他只基于一个样本来做最后类别的判定。K最近邻算法(NN > K…

MySQL时间格式TIMESTAMP和DATETIME的区别

时区&#xff0c;timestamp会跟随设置的时区变化而变化&#xff0c;而datetime保存的是绝对值不会变化 自动更新&#xff0c;insert、update数据时&#xff0c;可以设置timestamp列自动以当前时间(CURRENT_TIMESTAMP)填充/更新 占用存储空间不同&#xff0c;timestamp储存占用…

python c 选择_C和Python,小白应该选择学习哪门语言?

首先&#xff0c;需要对两门语言进行初步认识&#xff0c;C语言是一门通用性的编程原因&#xff0c;为什么说通用呢?是因为它能够做很多低级、底层的处理&#xff0c;同时具有良好的跨平台性&#xff0c;C语言可以按照一定的标准在多种计算机平台上进行编译&#xff0c;包含嵌…

WaitForSingleObject的用法

WaitForSingleObject的用法 1.WaitForSingleObject 的用法 DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds ); 参数 hHandle 是一个事件的句柄&#xff0c;第二个参数 dwMilliseconds 是时间间隔。如果时间是有信…

pom.xml里发布和下载包

1.下载包 在<project>标签中 <repositories><repository><id>nexus</id><url>http://10.39.93.105:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots>&l…

智能云改-docker云迁移实战

本次安装的linux版本是centos7.4&#xff0c;docker安装不依赖任何环境&#xff0c;但是必须要连接网络&#xff0c;满足这一点就可以进行docker安装了。 一、安装&#xff1a; 1.删除就版本的docker输入命令&#xff1a;yum -y remove docker \docker-common \docker-selinux …

python词频统计代码_python统计词频

一、程序分析 &#xff08;1&#xff09;将文件读入缓冲区&#xff08;dst指文本文件存放路径&#xff0c;设置成形参&#xff0c;也可以不设&#xff0c;具体到函数里设置&#xff09; def process_file(dst): # 读文件到缓冲区try: # 打开文件 txtopen(dst,"r") ex…

关于wpf,datagrid,双向数据绑定用法解决方案

参考&#xff1a;http://www.myexception.cn/c-sharp/1446457.html 核心内容&#xff0c;在绑定数据的地方添加双向绑定&#xff1a; {Binding BB, ModeTwoWay,UpdateSourceTriggerPropertyChanged} 转载于:https://www.cnblogs.com/Mindy-hym/p/11431069.html

部署zookeeper分布式节点

用2台服务器&#xff0c;低资源&#xff0c;部署3个zookeeper分布式节点&#xff1a; 1.准备环境系统已经配置好了JAVA环境&#xff1b;下载某个版本的zookeeper压缩包&#xff0c;下载链接&#xff1a;http://apache.claz.org/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3…