在pytorch张量中过滤行

哈维

如果我有张量以以下形状保存有关检测到的图像的信息:

        [[595.00000, 179.62500, 628.00000, 283.00000,   0.89062,   0.00000],
        [142.87500, 167.62500, 201.62500, 324.00000,   0.88086,   0.00000],
        [311.75000, 170.50000, 368.75000, 320.50000,   0.87549,   0.00000],
        [555.50000, 173.75000, 593.50000, 280.50000,   0.85791,   0.00000],
        [398.50000, 179.00000, 425.50000, 265.00000,   0.84180,   0.00000],
        [445.75000, 177.75000, 479.25000, 270.75000,   0.82129,   0.00000]]

其中每一行代表具有以下参数的图像:

[   top,    bottom, left,   right, confidence, class    ]

删除尺寸小于某些用户定义的高度输入的图像(行)的最有效方法是top-bottom什么?

自然,我会遍历行,而不是top-bottom < someValue通过理解列表将每一行放到哪里,但是我怀疑这样做会有更好的方法。

安德鲁·纳吉布(Andrew Naguib)

我如何降低一些基准测试(如果这对您来说很有趣)?

基准测试

PyTorchic方式:

In[2]: import torch
  ...: a = torch.Tensor(
  ...:      [[595.00000, 179.62500, 628.00000, 283.00000,   0.89062,   0.00000],
  ...:         [142.87500, 167.62500, 201.62500, 324.00000,   0.88086,   0.00000],
  ...:         [311.75000, 170.50000, 368.75000, 320.50000,   0.87549,   0.00000],
  ...:         [555.50000, 173.75000, 593.50000, 280.50000,   0.85791,   0.00000],
  ...:         [398.50000, 179.00000, 425.50000, 265.00000,   0.84180,   0.00000],
  ...:         [445.75000, 177.75000, 479.25000, 270.75000,   0.82129,   0.00000]])
In[3]: %timeit a[a[:, 0] - a[:, 1] > 300]
Out[3]: 24.5 µs ± 904 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)

用数字表示:

In[4]: import numpy as np
In[5]: %timeit np_arr[np.where(np_arr[:, 0] - np_arr[:, 1] > 300)]
Out[5]: 4.75 µs ± 713 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
In[6]: np_arr[np.where(np_arr[:, 0] - np_arr[:, 1] > 300)]

公平

In[7]: torch.equal(torch.from_numpy(np_arr[np.where(np_arr[:, 0] - np_arr[:, 1] > 300)]), a[a[:, 0] - a[:, 1] > 300])
Out[7]: True

结论是,使用numpy进行比较将比PyTorch更快。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在pytorch中重复3d张量的行

来自分类Dev

pytorch中的张量变换?

来自分类Dev

PyTorch中的左移位张量

来自分类Dev

在 PyTorch/Numpy 中,如何将矩阵的行与 3-D 张量中的“矩阵”相乘?

来自分类Dev

如何在PyTorch的张量的每一行中随机设置固定数量的元素

来自分类Dev

Pytorch从张量文件中读取张量(来自磁盘的流训练)

来自分类Dev

在Pytorch中重复张量的特定列

来自分类Dev

在PyTorch中添加多个张量

来自分类Dev

如何理解在PyTorch中创建叶张量?

来自分类Dev

pytorch中的张量幂和乘法

来自分类Dev

如何在pytorch中动态索引张量?

来自分类Dev

PyTorch中参数与张量之间的差异

来自分类Dev

如何在 PyTorch 中获取张量的值?

来自分类Dev

根据TensorFlow中的python列表过滤张量

来自分类Dev

在PyTorch中特定位置的张量中添加值块

来自分类Dev

如何将张量插入到 pytorch 中的另一个张量中

来自分类Dev

如何在Pytorch中反转布尔值的张量?

来自分类Dev

如何匹配两个pytorch张量中的项目

来自分类Dev

PyTorch获取二维张量中的值的索引

来自分类Dev

如何使用PyTorch从3D张量中删除元素?

来自分类Dev

在Pytorch中的张量上应用一维卷积

来自分类Dev

根据其在pytorch中的位置向张量元素添加值

来自分类Dev

如何从Pytorch的2D张量列表中获取列

来自分类Dev

从PyTorch N维张量中滤除NaN值

来自分类Dev

如何将Pytorch张量中的元素映射到ID?

来自分类Dev

删除pytorch中张量字典列表中所有张量的某些元素

来自分类Dev

如何基于张量流中的某些谓词从队列中过滤张量?

来自分类Dev

Pytorch加权张量

来自分类Dev

如何展开PyTorch张量?

Related 相关文章

热门标签

归档