我有一个名为grids()
的python函数,参数中有关键字self,还有一个名为build_targets()
的python函数。我想使用gridsize
和anchor_vec
从grids()
到另一个名为build_targets()
的python函数。这两项职能如下:
def grids(self, img_size=(608,608), gridsize=(19, 19), device='cpu', type=torch.float32):
nx, ny = gridsize # x and y grid size
self.nx = nx
self.ny = ny
if isinstance(img_size, int):
self.img_size = int(img_size)
else:
self.img_size = max(img_size)
self.stride = self.img_size / max(gridsize)
yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)])
self.register_buffer('grid_xy', torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).to(device))
self.anchor_vec = self.anchors.to(device) / self.stride
self.register_buffer('gridsize',torch.Tensor(gridsize).to(device))
def build_targets(model, targets):
for i in layers_list:
ng, anchor_vec = gridsize, anchor_vec # from grids()
有没有办法在build_targets()
中使用gridsize
和anchor_vec
或者如何在build_target()
函数中调用它
如有任何意见,将不胜感激
看起来
grids()
是类中的一个方法,那么您有两个选择:build_targets()
,通过在其参数中添加self
使其成为类内的方法:电话:
build_targets()
添加更多参数:电话:
通过这种方式,
build_targets()
与类“独立”。这样做相当于将build_targets()
移出类相关问题 更多 >
编程相关推荐