ilsvrc.py 文件源码

python
阅读 16 收藏 0 点赞 0 评论 0

项目:antgo 作者: jianzfb 项目源码 文件源码
def get_bbox(bbox_dir, imglist, train_or_test):
    ret = []
    ret_label = []
    def parse_bbox(fname):
      root = ET.parse(fname).getroot()
      size = root.find('size').getchildren()
      size = map(int, [size[0].text, size[1].text])

      box = root.find('object').find('bndbox').getchildren()
      box = map(lambda x: float(x.text), box)

      label = root.find('object').find('name').text
      return np.asarray(list(box), dtype='float32'),label

    with timed_operation('Loading Bounding Boxes ...'):
      cnt = 0
      import tqdm
      for k in tqdm.trange(len(imglist)):
        fname = imglist[k][0]
        fname = fname[:-4] + 'xml'
        fname = os.path.join(bbox_dir,train_or_test ,fname)
        try:
          box,label = parse_bbox(fname)
          ret.append(box)
          ret_label.append(label)
          cnt += 1
        except KeyboardInterrupt:
          raise
        except:
          ret.append(None)
          ret_label.append(-1)
      logger.info("{}/{} images have bounding box.".format(cnt, len(imglist)))
    return ret, ret_label
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号