matplotlib Bbox类
Bbox 类是一个可变的(相对于BboxBase)限位框, 继承自BboxBase
2020-04-07 22:54:57 --Edit by yangray
方法:
- __init__(points, **kwargs):
参数:[points]:2*2 numpy 数组(左下角,右下角)
初始化如果想通过其他形式的数据初始化bbox,可尝试from_bounds(),from_extents(),unit()
- unit():
返回新的单位bbox,Bbox([[0.0, 0.0], [1.0, 1.0]])
- null():
返回一个空的bbox,Bbox(np.array([[np.inf, np.inf], [-np.inf, -np.inf]], float)), 即以((无穷大,无穷大),(无穷小,无穷小))初始化
- from_bounds(x0, y0, width, height):
参数: [x0], [y0], [width], [height]: x0, y0,宽,高
以左下角坐标和宽高来初始化bbox并返回
- from_extends(*args):
参数[*args]:左下右上 四边形式为长度为4的1维数组
以左下右上(x0, x1, y0, y1)初始化bbox并返回
- ignore(value):
参数[value]: bool值
设置已存在的边框是否需要被无视,value=True(真)则无视,False(假)则不无视
- update_from_path(path, ignore=None, updatex=True, updatey=True):
参数 [path]: matplotlib.path.Path实例,意为线、路径 [ignore]: bool值,True为无视已存在边框
[updatex], [updatey]: 皆为bool值, True为更新x / y 相应的值
以给定的path初始化bbox(线作为对角线),初始化后的新的bbox具有正数的宽高,x0,y0指向左下角(不再无序)
update_from_data_xy(self, xy, ignore=None, updatex=True, updatey=True):
[xy]: 2*2 numpy 数组,线的两端点坐标, 其余参数同前一方法
该方法先将xy转化为Path, 再利用update_from_path()实现初始化bbox并返回。(功能类似update_from_path())
@property_name.setter 修饰器(用于修改property修饰器修饰的方法代表的属性值)修饰,以下方法皆是。property_name都是父类中设定的方法
- x0(v), y0(v), x1(v), y1(v), p0(v), p1(v):
设置对应的x0, y0, x1, y1,bbox对角线的其中一端点,对角线的另一端点。
- intervalx(interval), intervaly(interval):
参数[interval]: 长度为2的一维数组(x / y方向的两边)
设置自身bbox的(x0, x1) / (y0, y1)
- bounds(bounds):
参数[bounds]: 形如(x0, y0, 宽, 高)的序列
设置自身bbox的x0, y0, 宽, 高
@property_name.setter作用范围到此为止
@property 修饰(被修饰方法代表的属性为只读属性)
- minposx(), minposy(), minpos():
返回最小的 x方向坐标 / y方向上的坐标 / 点坐标
@property 修饰范围结束
- get_points():
此方法为父类BboxBase的抽象方法,返回[[x0, y0], [x1, y1]]
- set_points(points):
参数[points]: [[x0, y0], [x1, y1]](左,下,右,上边)
将自身bbox的_points参数以points替换之,(此方法多为函数内部使用,不会检查error)
- set(other):
参数[other]: 其他bbox实例
将其它bbox的限位参数(_points)设为自身的_points
mutatedx(), mutatedy(), mutated()
返回是否x_limits / y_limits / x_limits 或 y_limits 自初始化以来被更改过, 改过为True,没改为False
matplotlib Bbox类的更多相关文章
- matplotlib BboxBase类
2020-04-07 17:24:12 --Edit by yangray BboxBase 是 TransformNode 的子类, 同时它是所有 bounding box(平行四边形限位框) 的 ...
- matplotlib TransformNode类
TransformNode 是所有参与变换的类和所有需要无效自己或祖先的类的基类 方法: __init__(shorthand_name=None): 参数 [shorthand_name]: 别名 ...
- matplotlib的annotate用法小结
这个是matplotlib自定义的annotate方法的文本: 一. def annotate(self, s, xy, *args, **kwargs): a = mtext.Annotation( ...
- Matplotlib Tutorial(译)
Matplotlib Tutorial(译) 翻译自:Matplotlib tutorialNicolas P. Rougier - Euroscipy 2012 toc{: toc} 这个教程基于可 ...
- Java类的继承与多态特性-入门笔记
相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...
- windows7 安装TensorFlow
Win7 TensorFlow安装步骤: 1.安装python,参考http://www.zhimengzhe.com/windows/283058.html#0-tsina-1-12530-3972 ...
- 人脸跟踪开源项目HyperFT代码算法解析及改进
一.简介 人脸识别已经成为计算机视觉领域中最热门的应用之一,其中,人脸信息处理的第一个环节便是人脸检测和人脸跟踪.人脸检测是指在输入的图像中确定所有人脸的位置.大小和姿势的过程.人脸跟踪是指在图像序列 ...
- matplotlib 中其他基于Affine2DBase的类
2020-04-11 11:42:22 --Edit by yangray以下所有类(除了BboxTransformToMaxOnly )都直接继承于Affine2DBaseIdentityTrans ...
- matplotlib类
1.plt.subplot 在matplotlib下,一个Figure对象可以包含多个子图(Axes),可以使用subplot()快速绘制,其调用形式如下:subplot(numRows, numCo ...
随机推荐
- 2019.3.14解题报告&补题报告
A题 题意: 输入r, c,代表r*c的矩阵,接下来一行,是r个数,代表每一行里最大的数:接下来一行,是c个数,代表每一列中的最大数.求所给数据是否冲突. 思路:判断r个数中最大数maxr和c个数中最 ...
- Golang三种方式实现超时退出
问题 前段时间发现线上有个服务接口,总是间歇性告警,有时候一天两三次,有时候一天都没有. 告警的逻辑是在一个接口中异步调用了另一个HTTP接口,这个HTTP接口调用出现超时.但是我去问了负责这个HTT ...
- JDK_API关于时间的表达
判断日期是否是闰年 给定格式格式化 第二种表示时间的 Date java.util 类 Date 表示特定的瞬间,精确到毫秒. 构造方法 Date( ...
- 使用TensorFlow进行训练识别视频图像中物体
本教程针对Windows10实现谷歌公布的TensorFlow Object Detection API视频物体识别系统,其他平台也可借鉴. 本教程将网络上相关资料筛选整合(文末附上参考资料链接),旨 ...
- laravel的中间件创建思路
网上有很多解析laravel中间件的实现原理,但是不知道有没有读者在读的时候不明白,作者是怎么想到要用array_reduce函数的? 本文从自己的角度出发,模拟了如果我是作者,我是怎么实现这个中间件 ...
- [简单路径] Useful Decomposition
Ramesses knows a lot about problems involving trees (undirected connected graphs without cycles)! He ...
- WeChat 搭建过程
[被动回复消息] 1.创建项目(基于MyEclipse + Tomcat 7 编写):wechat 2.导入jar包(用于解析xml):dom4j-1.6.1.jar,xstream-1.3.jar ...
- JUC 中提供的限流利器-Semaphore(信号量)
在 JUC 包下,有一个 Semaphore 类,翻译成信号量,Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源.Semaphore 跟锁 ...
- 什么是CPU load
最近经常收到告警,CPU load大于阈值告警.查看系统的CPU是12核,告警阈值设置的是8.对于CPU load一直有个模糊的概念,具体是什么意思还真搞不明白,趁这个机会好好搞搞究竟. 1.查看CP ...
- Transformers 简介(上)
作者|huggingface 编译|VK 来源|Github Transformers是TensorFlow 2.0和PyTorch的最新自然语言处理库 Transformers(以前称为pytorc ...