计算机视觉二维/三维包围盒库

bbox的Python项目详细描述


bbox

Python库旨在通过提供一组灵活的图元和函数,直观且易于使用,从而简化了2D和3D包围盒在对象检测等领域中的使用。

Build Statuscodecov

PyPI versionPyPI format

Say Thanks!

功能

二维边界框

使用一个抽象和维护各种属性的简单类轻松处理边界框

frombboximportBBox2D,XYXY# x, y, w, hbox=BBox2D([0,0,32,32])# equivalently, in (x1, y1, x2, y2) (aka two point format), we can usebox=BBox2D([0,0,31,31],mode=XYXY)print(box.x1,box.y1)# -> 0 0print(box.x2,box.y2)# -> 31 31print(box.height,box.width)# -> 32 32# Syntatic sugar for height and widthprint(box.h,box.w)# -> 32 32

二维边界框序列

大多数任务涉及处理多个边界框。这也可以通过BBox2DList类方便地处理。

bbl=BBox2DList(np.random.randint(10,4),mode=XYWH)

上面的代码片段创建了一个包含10个边界框的列表,这些边界框整齐地抽象成一个方便的对象。

非最大抑制< EH3>

需要执行非最大抑制吗?它就像一个函数调用一样简单。

frombbox.utilsimportnms# bbl -> BBox2DList# scores -> list/ndarray of confidence scoresnew_boxes=nms(bbl,scores)

联合交叉口(Jaccard索引)

jaccard索引或iou是一个非常有用的度量标准,可用于查找边界框之间的相似性。bbox为此提供本机支持。

frombbox.metricsimportjaccard_index_2dbox1=BBox2D([0,0,32,32])box2=BBox2D([10,12,32,46])iou=jaccard_index_2d(box1,box2)

我们甚至可以使用Jaccard索引计算框之间的距离度量作为距离矩阵:

frombbox.metricsimportmulti_jaccard_index_2ddist=1-multi_jaccard_index_2d(bbl,bbl)

三维边界框

bbox还支持三维边界框,为使用它们提供了方便的方法和属性。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java字符串。替换(regex,string)以替换XML中的内容   java Spring SOAP Web服务请求日志中XML请求有效负载的元素   java在一个类中保存作业对象并在另一个类中使用(初学者)   java无法定位com。西蒙图夫斯。奥内贾尔。在web启动中启动   java可以将Spring DAO合并到服务层吗?   使用互相关的声音文件的java时间延迟   java理解C中声明的数组指针算法   regex如何在Java中找到第一个未替换的引号?   当存在插入Spring数据JPA时进行java数据库轮询   java Axis客户端调用引发classcast异常   JavaFX ControlFX对话框中的java动作按钮css样式   使用iText Java获取空页计数   返回随机文本字段输入的java   java从spring boot stomp连接到外部activemq   java控制台错误无法找到或加载主类   java NoClassDefFoundError在尝试使用JarSigner对apk文件进行签名时出错。exe   GuavaJava:对象列表到字符串列表的可能转换   java PropertyPlaceHolderConfiguration和ResourceBundleMessageSource   java无法在回调中赋值   用于旋转变换的java简洁类(减少冗余)