numpy的shape 和 gt的xy坐标之间容易引起误会

Posted ymjyqsx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy的shape 和 gt的xy坐标之间容易引起误会相关的知识,希望对你有一定的参考价值。

用numpy来看shape,比如np.shape(img_data),会得到这样的结果(600,790,3)

注意:600不是横坐标,而是表示多少列,790才是横坐标

用numpy测试就可以看出:

>>> import numpy as np
>>> a = [[1,2,3],[1,2,3]]                                                                   
>>> b = np.array(a)
>>> b
array([[1, 2, 3],
       [1, 2, 3]])
>>> np.shape(a)
(2, 3)

包括calculate.py 中的代码也看的出来:

image = data_dict[‘data‘]
original_height, original_width, _ = image.shape

 

但是坐标标注的时候是x、y坐标的,所以看着会以为两者出错误:  

技术分享图片

利用cv2可视化的时候,还是直接添加x、y坐标就好了

cv2.line(img_data,(int(bbox[0][0]),int(bbox[0][1])),(int(bbox[0][2]),int(bbox[0][3])),(255,0,0),)


以上是关于numpy的shape 和 gt的xy坐标之间容易引起误会的主要内容,如果未能解决你的问题,请参考以下文章

两个不同 Numpy 数组中的点之间的最小欧几里得距离,不在

numpy - 两点与形状向量之间的距离(n,2)

过滤 2D numpy 数组

len(arr)和arr.shape [0]之间的Numpy性能差距

从numpy.ndarray.shape到numpy.ndarray.transpose

将经纬度坐标转化为xy坐标有啥好处