import\u0020torch\nimport\u0020torch.nn.functional\u0020as\u0020F\n\nimport\u0020numpy\u0020as\u0020np\nimport\u0020pdb, os, argparse\n#\u0020from\u0020scipy\u0020import\u0020misc\nimport\u0020time\n\nfrom\u0020model.SeaNet_models\u0020import\u0020SeaNet\nfrom\u0020data\u0020import\u0020test_dataset\n\nimport\u0020imageio\u0020#\u0020添加的\n\ntorch.cuda.set_device(0)\nparser\u0020=\u0020argparse.ArgumentParser()\nparser.add_argument('--testsize', type=int, default=288, help='testing\u0020size')\nopt\u0020=\u0020parser.parse_args()\n\n#\u0020dataset_path\u0020=\u0020'./dataset/test_dataset/'\u0020#\u0020需要修改\ndataset_path\u0020=\u0020'./dataest/steel/'\n\nmodel\u0020=\u0020SeaNet()\nmodel.load_state_dict(torch.load('./models/SeaNet/SeaNet.pth.49'))\u0020#\u0020需要修改\u0020#\u0020原'./models/SeaNet/SeaNet.pth.50'\n\nmodel.cuda()\nmodel.eval()\n\n#\u0020test_datasets\u0020=\u0020['EORSSD']\u0020#\u0020修改\ntest_datasets\u0020=\u0020['steel']\n\nfor\u0020dataset\u0020in\u0020test_datasets:\n #\u0020save_path\u0020=\u0020'./models/SeaNet/'\u0020+\u0020dataset\u0020+\u0020'/'\u0020#\u0020修改\n save_path\u0020=\u0020'./models/SeaNet/'\u0020+\u0020'/'\n if\u0020not\u0020os.path.exists(save_path):\n os.makedirs(save_path)\n #\u0020image_root\u0020=\u0020dataset_path\u0020+\u0020dataset\u0020+\u0020'/image/'\u0020#\u0020修改\n image_root\u0020=\u0020dataset_path\u0020+\u0020'/RGB/'\n print(dataset)\n #\u0020gt_root\u0020=\u0020dataset_path\u0020+\u0020dataset\u0020+\u0020'/GT/'\n gt_root\u0020=\u0020dataset_path\u0020+\u0020'/GT/'\n test_loader\u0020=\u0020test_dataset(image_root, gt_root, opt.testsize)\n time_sum\u0020=\u00200\n for\u0020i\u0020in\u0020range(test_loader.size):\n image, gt, name\u0020=\u0020test_loader.load_data()\n gt\u0020=\u0020np.asarray(gt, np.float32)\n gt\u0020/=\u0020(gt.max()\u0020+\u00201e-8)\n image\u0020=\u0020image.cuda()\n time_start\u0020=\u0020time.time()\n res, s34, s5, s12_sig, s34_sig, s5_sig, edge1, edge2\u0020=\u0020model(image)\n time_end\u0020=\u0020time.time()\n time_sum\u0020=\u0020time_sum+(time_end-time_start)\n #\u0020res\u0020=\u0020F.upsample(res, size=gt.shape, mode='bilinear', align_corners=False)\u0020#\u0020nn.functional.upsample\u0020->\u0020nn.functional.interpolate\n res\u0020=\u0020F.interpolate(res, size=gt.shape, mode='bilinear', align_corners=False)\n res\u0020=\u0020res.sigmoid().data.cpu().numpy().squeeze()\n res\u0020=\u0020(res\u0020-\u0020res.min())\u0020/\u0020(res.max()\u0020-\u0020res.min()\u0020+\u00201e-8)\n #\u0020misc.imsave(save_path+name, res)\n imageio.imwrite(save_path\u0020+\u0020name, res)\n if\u0020i\u0020==\u0020test_loader.size-1:\n print('Running\u0020time\u0020{:.5f}'.format(time_sum/test_loader.size))\n print('FPS\u0020{:.5f}'.format(test_loader.size\u0020/\u0020time_sum))\n出现如下错误内容:Traceback (most recent call last):\n File "code.py", line 10, in \n from model.SeaNet_models import SeaNet\nModuleNotFoundError: No module named 'model.SeaNet_models'

SeaNet 模型测试代码:钢材缺陷检测

原文地址: https://www.cveoy.top/t/topic/pV7M 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录