Closed slasz closed 1 year ago
Please refer to the test.py
. To perform prediction on single image, you need replace the dataloader of test.py
with your image file and then preprocess image in the same manner as in Cropping_dataset.py
before sending to the network.
Please refer to the
test.py
. To perform prediction on single image, you need replace the dataloader oftest.py
with your image file and then preprocess image in the same manner as inCropping_dataset.py
before sending to the network.
Thank you :)
def test_pred(model):
print('Call test predict !!!')
img_test = 'img/mm.jpg'
im = cv2.imread(img_test)
image_transformer = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize(mean=IMAGE_NET_MEAN, std=IMAGE_NET_STD)])
im_ts = image_transformer(im)
logits, kcm, crop = model(im_ts, only_classify=False)
if __name__ == '__main__':
weight_file = "./pretrained_model/best-FLMS_iou.pth"
model = CACNet(loadweights=True)
model.load_state_dict(torch.load(weight_file,map_location=device))
model = model.to(device).eval()
test_pred(model)
I try to make the function and call from main and got error below
RuntimeError: Input type (torch.FloatTensor) and weight type (torch.cuda.FloatTensor) should be the same or input should be a MKLDNN tensor and weight is a dense tensor
Now I can run by making class SingleDataset that inherits from Dataset and I have more questions to ask about can I crop with specific image size
I can run with single image already
Do you have any sample code to use pre-trained model to crop a single image input, or any suggestion ?