diff --git a/hubconf.py b/hubconf.py index 08122eaca9dc..5bb629005597 100644 --- a/hubconf.py +++ b/hubconf.py @@ -55,6 +55,7 @@ def _create(name, pretrained=True, channels=3, classes=80, autoshape=True, verbo if len(ckpt['model'].names) == classes: model.names = ckpt['model'].names # set class names attribute if autoshape: + model.model.model[-1].inplace = False # Detect.inplace=False for safe multithread inference model = AutoShape(model) # for file/URI/PIL/cv2/np inputs and NMS if not verbose: LOGGER.setLevel(logging.INFO) # reset to default diff --git a/models/yolo.py b/models/yolo.py index 56846815e08a..bc1893ccbc48 100644 --- a/models/yolo.py +++ b/models/yolo.py @@ -50,7 +50,7 @@ def __init__(self, nc=80, anchors=(), ch=(), inplace=True): # detection layer self.anchor_grid = [torch.zeros(1)] * self.nl # init anchor grid self.register_buffer('anchors', torch.tensor(anchors).float().view(self.nl, -1, 2)) # shape(nl,na,2) self.m = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch) # output conv - self.inplace = inplace # use in-place ops (e.g. slice assignment) + self.inplace = inplace # use inplace ops (e.g. slice assignment) def forward(self, x): z = [] # inference output