{ "cells": [ { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/ubuntu/anaconda3/envs/dassl/lib/python3.8/site-packages/tqdm/auto.py:22: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", " from .autonotebook import tqdm as notebook_tqdm\n" ] } ], "source": [ "from scipy import stats\n", "import numpy as np\n", "import os\n", "import matplotlib.pyplot as plt\n", "import monai\n", "import torch" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def compute_dices(preds, gt):\n", " intersection = np.sum(gt * preds,axis=(-1,-2))\n", " union = np.sum(gt, axis=(-1,-2)) + np.sum(preds, axis=(-1,-2))\n", " dice = ((2. * intersection + 1)/(union + 1))\n", " return dice\n", " " ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def t_test(dices_a, dices_b):\n", " differences = dices_a - dices_b\n", " t_statistic, p_value = stats.ttest_rel(dices_a, dices_b)\n", " print(p_value)\n", " alpha = 0.05\n", " if p_value < alpha:\n", " print(\"There is significant difference\")\n", " return p_value " ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def t_test_folder(pred_folder1, pred_folder2):\n", " dices_a = []\n", " dices_b = []\n", " try:\n", " for c in os.listdir(pred_folder1):\n", " for i in os.listdir(os.path.join(pred_folder1,c,'rescaled_preds')):\n", " p1 = plt.imread(os.path.join(pred_folder1, c, 'rescaled_preds', i))[80:400,150:500,0]\n", " # plt.imshow(p1, cmap='gray')\n", " # plt.show()\n", " p2 = plt.imread(os.path.join(pred_folder2, c, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(pred_folder2, c, 'rescaled_gt', i))[80:400,150:500,0]\n", " # print(p1.shape)\n", " # 1/0\n", " dice_a = compute_dices(p1, gt)\n", " dice_b = compute_dices(p2, gt)\n", " dices_a.append(dice_a)\n", " dices_b.append(dice_b)\n", " except:\n", " 1/0\n", " return dices_a, dices_b" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def t_test_lits2(pred_folder1, pred_folder2):\n", " dices_a = []\n", " dices_b = []\n", " try:\n", " for i in os.listdir(os.path.join(pred_folder1,'rescaled_preds')):\n", " p1 = plt.imread(os.path.join(pred_folder1, 'rescaled_preds', i))[80:400,150:500,0]\n", " # plt.imshow(p1, cmap='gray')\n", " # plt.show()\n", " p2 = plt.imread(os.path.join(pred_folder2, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(pred_folder2, 'rescaled_gt', i))[80:400,150:500,0]\n", " # print(p1.shape)\n", " # 1/0\n", " dice_a = compute_dices(p1, gt)\n", " dice_b = compute_dices(p2, gt)\n", " dices_a.append(dice_a)\n", " dices_b.append(dice_b)\n", " except:\n", " 1/0\n", " return dices_a, dices_b" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4.5704910462821235e-26\n", "There is significant difference\n", "4.5704910462821235e-26\n" ] } ], "source": [ "#CholecSeg8k\n", "folder1 = './cholec8k/svd_shiftscale_cholec_tal_focal075_1e-4'\n", "folder2 = './cholec8k/lora_cholec_tmp/'\n", "dices_a, dices_b = t_test_folder(folder1, folder2)\n", "print(t_test(np.array(dices_a), np.array(dices_b)))" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2.117079926030917e-06\n", "There is significant difference\n", "2.117079926030917e-06\n" ] } ], "source": [ "#Ultrasound\n", "folder1 = '/media/ubuntu/New Volume/jay/ultrasound/abdominal_US/abdominal_US/RUS/SVDSAM'\n", "folder2 = '/media/ubuntu/New Volume/jay/ultrasound/abdominal_US/abdominal_US/RUS/Lora_results'\n", "dices_a, dices_b = t_test_folder(folder1, folder2)\n", "print(t_test(np.array(dices_a), np.array(dices_b)))" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5.985398380396225e-14\n", "There is significant difference\n", "5.985398380396225e-14\n" ] } ], "source": [ "#ChestXDet\n", "folder1 = './chestXDet/SVDSAM'\n", "folder2 = './chestXDet/lora_chestxdet_tal_focal075_1e-3'\n", "dices_a, dices_b = t_test_folder(folder1, folder2)\n", "print(t_test(np.array(dices_a), np.array(dices_b)))" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.00015471901272947407\n", "There is significant difference\n", "0.00015471901272947407\n" ] } ], "source": [ "#LITS2\n", "folder1 = './lits2/svdsam'\n", "folder2 = './lits2/lora_lits2/'\n", "dices_a, dices_b = t_test_lits2(folder1, folder2)\n", "print(t_test(np.array(dices_a), np.array(dices_b)))" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2.5465986918502266e-23\n", "There is significant difference\n", "2.5465986918502266e-23\n" ] } ], "source": [ "#GLAS\n", "folder1 = './glas/svdshiftscale_glas_tal_CE_1e-4'\n", "folder2 = './glas/lorasam'\n", "dices_a, dices_b = t_test_lits2(folder1, folder2)\n", "print(t_test(np.array(dices_a), np.array(dices_b)))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def compute_surface_dice(preds, gt, threshold=[0]):\n", " preds = torch.Tensor(preds).unsqueeze(0).unsqueeze(0)\n", " gt = torch.Tensor(gt).unsqueeze(0).unsqueeze(0)\n", " cd = monai.metrics.compute_surface_dice(preds, gt, threshold, include_background=True)\n", " return cd.item()\n", "\n", "def compute_hd95(preds, gt):\n", " preds = torch.Tensor(preds).unsqueeze(0).unsqueeze(0)\n", " gt = torch.Tensor(gt).unsqueeze(0).unsqueeze(0)\n", " cd = monai.metrics.compute_hausdorff_distance(preds, gt, include_background=True, percentile=95)\n", " return cd.item()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def surface_dice_lits(pred_folder1, pred_folder2):\n", " dices_a = []\n", " dices_b = []\n", " try:\n", " for i in os.listdir(os.path.join(pred_folder1,'rescaled_preds')):\n", " p1 = plt.imread(os.path.join(pred_folder1, 'rescaled_preds', i))[80:400,150:500,0]\n", " # plt.imshow(p1, cmap='gray')\n", " # plt.show()\n", " p2 = plt.imread(os.path.join(pred_folder2, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(pred_folder2, 'rescaled_gt', i))[80:400,150:500,0]\n", " # print(p1.shape)\n", " # 1/0\n", " dice_a = compute_surface_dice(p1, gt)\n", " dice_b = compute_surface_dice(p2, gt)\n", " dices_a.append(dice_a)\n", " dices_b.append(dice_b)\n", " except:\n", " 1/0\n", " return np.mean(dices_a), np.mean(dices_b)\n", "\n", "def hd95_lits(pred_folder1, pred_folder2):\n", " dices_a = []\n", " dices_b = []\n", " try:\n", " for i in os.listdir(os.path.join(pred_folder1,'rescaled_preds')):\n", " p1 = plt.imread(os.path.join(pred_folder1, 'rescaled_preds', i))[80:400,150:500,0]\n", " # plt.imshow(p1, cmap='gray')\n", " # plt.show()\n", " p2 = plt.imread(os.path.join(pred_folder2, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(pred_folder2, 'rescaled_gt', i))[80:400,150:500,0]\n", " # print(p1.shape)\n", " # 1/0\n", " dice_a = compute_hd95(p1, gt)\n", " dice_b = compute_hd95(p2, gt)\n", " dices_a.append(dice_a)\n", " dices_b.append(dice_b)\n", " except:\n", " 1/0\n", " return np.mean(dices_a), np.mean(dices_b)\n", "\n", "\n", "def surface_dice(pred_folder1, pred_folder2):\n", " dices_a = []\n", " dices_b = []\n", " try:\n", " for c in os.listdir(pred_folder1):\n", " for i in os.listdir(os.path.join(pred_folder1,c,'rescaled_preds')):\n", " p1 = plt.imread(os.path.join(pred_folder1, c, 'rescaled_preds', i))[80:400,150:500,0]\n", " # plt.imshow(p1, cmap='gray')\n", " # plt.show()\n", " p2 = plt.imread(os.path.join(pred_folder2, c, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(pred_folder2, c, 'rescaled_gt', i))[80:400,150:500,0]\n", " if not gt.any():\n", " continue\n", " # print(p1.shape)\n", " # 1/0\n", " dice_a = compute_surface_dice(p1, gt)\n", " dice_b = compute_surface_dice(p2, gt)\n", " if not np.isnan(dice_a):\n", " dices_a.append(dice_a)\n", " if not np.isnan(dice_b):\n", " dices_b.append(dice_b)\n", " except:\n", " 1/0\n", " return np.mean(dices_a), np.mean(dices_b)" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Surface distance of S-SAM: 0.1306660174857825\n", "Surface distance of LoRA: 0.19686604533344507\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/ubuntu/anaconda3/envs/dassl/lib/python3.8/site-packages/monai/metrics/utils.py:338: UserWarning: the prediction of class 0 is all 0, this may result in nan/inf distance.\n", " warnings.warn(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Surface distance of adaptivesam: 0.21469646031036974\n", "Surface distance of sam point zs: 0.026642101479228585\n" ] } ], "source": [ "#GLAS\n", "folder1 = './glas/svdshiftscale_glas_tal_CE_1e-4'\n", "folder2 = './glas/lorasam'\n", "folder3 = './glas/adaptivesam'\n", "folder4 = './glas/sam_point_glas'\n", "dices_a, dices_b = surface_dice_lits(folder1, folder2)\n", "print('Surface distance of S-SAM: ', dices_a)\n", "print('Surface distance of LoRA: ', dices_b)\n", "dices_c, dices_d = surface_dice_lits(folder3, folder4)\n", "print('Surface distance of adaptivesam: ', dices_c)\n", "print('Surface distance of sam point zs: ', dices_d)" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of S-SAM: 49.37816700935364\n", "HD95 of LoRA: 44.13817956447601\n" ] } ], "source": [ "#GLAS\n", "folder1 = './glas/svdshiftscale_glas_tal_CE_1e-4'\n", "folder2 = './glas/lorasam'\n", "dices_a, dices_b = hd95_lits(folder1, folder2)\n", "print('HD95 of S-SAM: ', dices_a)\n", "print('HD95 of LoRA: ', dices_b)" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/ubuntu/anaconda3/envs/dassl/lib/python3.8/site-packages/monai/metrics/utils.py:333: UserWarning: the ground truth of class 0 is all 0, this may result in nan/inf distance.\n", " warnings.warn(\n", "/home/ubuntu/anaconda3/envs/dassl/lib/python3.8/site-packages/monai/metrics/utils.py:338: UserWarning: the prediction of class 0 is all 0, this may result in nan/inf distance.\n", " warnings.warn(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Surface distance of S-SAM: 0.1387163305927508\n", "Surface distance of LoRA: 0.11434185548909355\n" ] } ], "source": [ "#CholecSeg8k\n", "folder1 = './cholec8k/svd_shiftscale_cholec_tal_focal075_1e-4'\n", "folder2 = './cholec8k/lora_cholec_tmp/'\n", "dices_a, dices_b = surface_dice(folder1, folder2)\n", "print('Surface distance of S-SAM: ', dices_a)\n", "print('Surface distance of LoRA: ', dices_b)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def hd95(folder, trim=True):\n", " hd_a = []\n", " for i in os.listdir(os.path.join(folder,'rescaled_preds')):\n", " if trim:\n", " p1 = plt.imread(os.path.join(folder, 'rescaled_preds', i))[80:400,150:500,0]\n", " gt = plt.imread(os.path.join(folder, 'rescaled_gt', i))[80:400,150:500,0]\n", " else:\n", " p1 = plt.imread(os.path.join(folder, 'rescaled_preds', i))\n", " gt = plt.imread(os.path.join(folder, 'rescaled_gt', i))\n", " hd = compute_hd95(p1, gt)\n", " if np.isnan(hd):\n", " continue\n", " hd_a.append(hd)\n", "\n", " return np.mean(hd_a)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/ubuntu/anaconda3/envs/dassl/lib/python3.8/site-packages/monai/metrics/utils.py:333: UserWarning: the ground truth of class 0 is all 0, this may result in nan/inf distance.\n", " warnings.warn(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ISIC lora point: 30.952387651606422\n" ] } ], "source": [ "folder1 = './isic2018/point_lora'\n", "hds_a = hd95(folder1)\n", "print('HD95 of ISIC lora point: ', hds_a)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ISIC VP: 70.9658404827118\n" ] } ], "source": [ "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/vp'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC VP: ', hds_b)\n" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of Kvasir VP: 99.31089088042577\n" ] } ], "source": [ "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/vp'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir VP: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of refuge VP: 201.66749757289887\n" ] } ], "source": [ "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/refuge/vp'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of refuge VP: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ev17 VP: 83.76758135225008\n" ] } ], "source": [ "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/endovis17/vp'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of ev17 VP: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ISIC SAMZS: 85.98172161102295\n", "HD95 of Kvasir SAMZS: 99.28112110296885\n", "HD95 of refuge SAMZS: 214.98097531795503\n", "HD95 of ev17 SAMZS: 89.458785050192\n" ] } ], "source": [ "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/sam_zs'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC SAMZS: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/sam_zs'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir SAMZS: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/refuge/sam_zs'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of refuge SAMZS: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/endovis17/samzs'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of ev17 SAMZS: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ISIC blackbox: 70.33514058589935\n", "HD95 of Kvasir blackbox: 83.55525796731312\n", "HD95 of refuge blackbox: 176.66371806144716\n", "HD95 of ev17 blackbox: 81.5668385080266\n" ] } ], "source": [ "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_besttr'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/model26'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/refuge/model1'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of refuge blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/endovis17/model2_tr'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of ev17 blackbox: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of ev17 blackbox: 85.75525301522042\n" ] } ], "source": [ "#BlackVIP\n", "# folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model2_bestval'\n", "# hds_b = hd95(folder2, trim=False)\n", "# print('HD95 of ISIC blackbox: ', hds_b)\n", "\n", "# folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/model23'\n", "# hds_b = hd95(folder3, trim=False)\n", "# print('HD95 of Kvasir blackbox: ', hds_b)\n", "\n", "# folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/refuge/model1_tr2'\n", "# hds_b = hd95(folder3, trim=False)\n", "# print('HD95 of refuge blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/endovis17/model2_val'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of ev17 blackbox: ', hds_b)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "ename": "FileNotFoundError", "evalue": "[Errno 2] No such file or directory: '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr/rescaled_preds'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[10], line 3\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;66;03m#BlackMedSAM\u001b[39;00m\n\u001b[1;32m 2\u001b[0m folder2 \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m----> 3\u001b[0m hds_b \u001b[38;5;241m=\u001b[39m \u001b[43mhd95\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfolder2\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtrim\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m)\u001b[49m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mHD95 of ISIC model2: \u001b[39m\u001b[38;5;124m'\u001b[39m, hds_b)\n\u001b[1;32m 6\u001b[0m folder2 \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr\u001b[39m\u001b[38;5;124m'\u001b[39m\n", "Cell \u001b[0;32mIn[2], line 3\u001b[0m, in \u001b[0;36mhd95\u001b[0;34m(folder, trim)\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mhd95\u001b[39m(folder, trim\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m):\n\u001b[1;32m 2\u001b[0m hd_a \u001b[38;5;241m=\u001b[39m []\n\u001b[0;32m----> 3\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m i \u001b[38;5;129;01min\u001b[39;00m \u001b[43mos\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mlistdir\u001b[49m\u001b[43m(\u001b[49m\u001b[43mos\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mpath\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mjoin\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfolder\u001b[49m\u001b[43m,\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mrescaled_preds\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m:\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m trim:\n\u001b[1;32m 5\u001b[0m p1 \u001b[38;5;241m=\u001b[39m plt\u001b[38;5;241m.\u001b[39mimread(os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mjoin(folder, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mrescaled_preds\u001b[39m\u001b[38;5;124m'\u001b[39m, i))[\u001b[38;5;241m80\u001b[39m:\u001b[38;5;241m400\u001b[39m,\u001b[38;5;241m150\u001b[39m:\u001b[38;5;241m500\u001b[39m,\u001b[38;5;241m0\u001b[39m]\n", "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr/rescaled_preds'" ] } ], "source": [ "#BlackMedSAM\n", "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC model2: ', hds_b)\n", "\n", "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/model1_medsam_tr'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC model1: ', hds_b)\n", "\n", "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/vp_medsam'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC vp: ', hds_b)\n", "\n", "folder2 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/isic/medsam_zs'\n", "hds_b = hd95(folder2, trim=False)\n", "print('HD95 of ISIC medsam-zs: ', hds_b)\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "HD95 of Kvasir blackbox medsam model1: 97.05688610394796\n", "HD95 of Kvasir blackbox medsam model2: 80.01432559490203\n", "HD95 of Kvasir blackbox: 90.36405935287476\n", "HD95 of Kvasir blackbox medsam zs: 98.39987009366354\n" ] } ], "source": [ "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/model1_medsam_besttr'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir blackbox medsam model1: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/model2_medsam_besttr'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir blackbox medsam model2: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/vp_medsam'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/Kvasir-Seg/medsam_zs'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of Kvasir blackbox medsam zs: ', hds_b)\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/refuge/model1_tr2'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of refuge blackbox: ', hds_b)\n", "\n", "folder3 = '/home/ubuntu/Desktop/Domain_Adaptation_Project/repos/Blackbox/eval/endovis17/model2_val'\n", "hds_b = hd95(folder3, trim=False)\n", "print('HD95 of ev17 blackbox: ', hds_b)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3.8.16 ('dassl')", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.16" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "5b0d24c0401191df5ff06ef3cb04a21077c1fd7ca08d243336ea8a8a1206ff02" } } }, "nbformat": 4, "nbformat_minor": 2 }