您好,欢迎来到画鸵萌宠网。
搜索
您的当前位置:首页pytorch目标检测图像预处理

pytorch目标检测图像预处理

来源:画鸵萌宠网
pytorch⽬标检测图像预处理

Faster RCNN 和Retinanet在将图像数据输送到⽹络之前,要对图像数据进⾏预处理。⼤致上与提到的相同。

事实上还可以采取第三步,将图⽚的宽和⾼扩展为32的整倍数,正如在Retinanet使⽤的。下⾯是⼀个简单的Pytorch数据预处理模块:

class Resizer():

def __call__(self, sample, targetSize=608, maxSize=1024, pad_N=32): image, anns = sample['img'], sample['ann'] rows, cols = image.shape[:2]

smaller_size, larger_size = min(rows, cols), max(rows, cols) scale = targetSize / smaller_size if larger_size * scale > maxSize: scale = maxSize / larger_size

image = skimage.transform.resize(image, (int(round(rows*scale)), int(round(cols*scale))), mode='constant') rows, cols, cns = image.shape[:3]

pad_w, pad_h = (pad_N - cols % pad_N), (pad_N - rows % pad_N)

new_image = np.zeros((rows + pad_h, cols + pad_w, cns)).astype(np.float32) new_image[:rows, :cols, :] = image.astype(np.float32)

anns[:, :4] *= scale

return {'img': torch.from_numpy(new_image), 'ann':torch.from_numpy(anns), 'scale':scale}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo8.com 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务