|
28 | 28 | }, |
29 | 29 | { |
30 | 30 | "cell_type": "code", |
31 | | - "execution_count": 2, |
| 31 | + "execution_count": null, |
32 | 32 | "metadata": {}, |
33 | | - "outputs": [ |
34 | | - { |
35 | | - "name": "stdout", |
36 | | - "output_type": "stream", |
37 | | - "text": [ |
38 | | - "Note: you may need to restart the kernel to use updated packages.\n" |
39 | | - ] |
40 | | - } |
41 | | - ], |
| 33 | + "outputs": [], |
42 | 34 | "source": [ |
43 | 35 | "!python -c \"import monai\" || pip install -q \"monai-weekly[nibabel, tqdm]\"\n", |
44 | 36 | "!python -c \"import matplotlib\" || pip install -q matplotlib\n", |
|
54 | 46 | }, |
55 | 47 | { |
56 | 48 | "cell_type": "code", |
57 | | - "execution_count": 1, |
| 49 | + "execution_count": null, |
58 | 50 | "metadata": {}, |
59 | | - "outputs": [ |
60 | | - { |
61 | | - "name": "stdout", |
62 | | - "output_type": "stream", |
63 | | - "text": [ |
64 | | - "MONAI version: 0.6.0rc1+15.gf3d436a0\n", |
65 | | - "Numpy version: 1.20.3\n", |
66 | | - "Pytorch version: 1.9.0a0+c3d40fd\n", |
67 | | - "MONAI flags: HAS_EXT = True, USE_COMPILED = False\n", |
68 | | - "MONAI rev id: f3d436a09deefcf905ece2faeec37f55ab030003\n", |
69 | | - "\n", |
70 | | - "Optional dependencies:\n", |
71 | | - "Pytorch Ignite version: 0.4.5\n", |
72 | | - "Nibabel version: 3.2.1\n", |
73 | | - "scikit-image version: 0.15.0\n", |
74 | | - "Pillow version: 8.2.0\n", |
75 | | - "Tensorboard version: 2.5.0\n", |
76 | | - "gdown version: 3.13.0\n", |
77 | | - "TorchVision version: 0.10.0a0\n", |
78 | | - "ITK version: 5.1.2\n", |
79 | | - "tqdm version: 4.53.0\n", |
80 | | - "lmdb version: 1.2.1\n", |
81 | | - "psutil version: 5.8.0\n", |
82 | | - "pandas version: 1.1.4\n", |
83 | | - "einops version: 0.3.0\n", |
84 | | - "\n", |
85 | | - "For details about installing the optional dependencies, please visit:\n", |
86 | | - " https://docs.monai.io/en/latest/installation.html#installing-the-recommended-dependencies\n", |
87 | | - "\n" |
88 | | - ] |
89 | | - } |
90 | | - ], |
| 51 | + "outputs": [], |
91 | 52 | "source": [ |
92 | 53 | "# Copyright 2020 MONAI Consortium\n", |
93 | 54 | "# Licensed under the Apache License, Version 2.0 (the \"License\");\n", |
|
110 | 71 | "import torch\n", |
111 | 72 | "from monai.apps import download_and_extract\n", |
112 | 73 | "from monai.config import print_config\n", |
113 | | - "from monai.data import CacheDataset, list_data_collate, decollate_batch\n", |
| 74 | + "from monai.data import CacheDataset, DataLoader, decollate_batch\n", |
114 | 75 | "from monai.inferers import sliding_window_inference\n", |
115 | 76 | "from monai.losses import DiceLoss\n", |
116 | 77 | "from monai.metrics import DiceMetric\n", |
|
127 | 88 | " RandCropByPosNegLabeld,\n", |
128 | 89 | " ScaleIntensityRanged,\n", |
129 | 90 | " Spacingd,\n", |
130 | | - " EnsureTyped,\n", |
131 | | - " EnsureType,\n", |
132 | 91 | ")\n", |
133 | 92 | "from monai.utils import get_torch_version_tuple, set_determinism\n", |
134 | | - "from torch.utils.data import DataLoader\n", |
135 | 93 | "\n", |
136 | 94 | "print_config()\n", |
137 | 95 | "\n", |
|
154 | 112 | }, |
155 | 113 | { |
156 | 114 | "cell_type": "code", |
157 | | - "execution_count": 2, |
158 | | - "metadata": {}, |
159 | | - "outputs": [ |
160 | | - { |
161 | | - "name": "stdout", |
162 | | - "output_type": "stream", |
163 | | - "text": [ |
164 | | - "root dir is: /workspace/data/medical\n" |
165 | | - ] |
166 | | - } |
167 | | - ], |
| 115 | + "execution_count": null, |
| 116 | + "metadata": { |
| 117 | + "scrolled": true |
| 118 | + }, |
| 119 | + "outputs": [], |
168 | 120 | "source": [ |
169 | 121 | "directory = os.environ.get(\"MONAI_DATA_DIRECTORY\")\n", |
170 | 122 | "root_dir = tempfile.mkdtemp() if directory is None else directory\n", |
|
182 | 134 | }, |
183 | 135 | { |
184 | 136 | "cell_type": "code", |
185 | | - "execution_count": 3, |
| 137 | + "execution_count": null, |
186 | 138 | "metadata": {}, |
187 | 139 | "outputs": [], |
188 | 140 | "source": [ |
|
204 | 156 | }, |
205 | 157 | { |
206 | 158 | "cell_type": "code", |
207 | | - "execution_count": 4, |
| 159 | + "execution_count": null, |
208 | 160 | "metadata": {}, |
209 | 161 | "outputs": [], |
210 | 162 | "source": [ |
|
230 | 182 | }, |
231 | 183 | { |
232 | 184 | "cell_type": "code", |
233 | | - "execution_count": 5, |
| 185 | + "execution_count": null, |
234 | 186 | "metadata": {}, |
235 | 187 | "outputs": [], |
236 | 188 | "source": [ |
|
275 | 227 | " fg_indices_key=\"label_fg\",\n", |
276 | 228 | " bg_indices_key=\"label_bg\",\n", |
277 | 229 | " ),\n", |
278 | | - " EnsureTyped(keys=[\"image\", \"label\"]),\n", |
279 | 230 | " ]\n", |
280 | 231 | " )\n", |
281 | 232 | " val_transforms = Compose(\n", |
|
297 | 248 | " clip=True,\n", |
298 | 249 | " ),\n", |
299 | 250 | " CropForegroundd(keys=[\"image\", \"label\"], source_key=\"image\"),\n", |
300 | | - " EnsureTyped(keys=[\"image\", \"label\"]),\n", |
301 | 251 | " ]\n", |
302 | 252 | " )\n", |
303 | 253 | " return train_transforms, val_transforms" |
|
313 | 263 | }, |
314 | 264 | { |
315 | 265 | "cell_type": "code", |
316 | | - "execution_count": 6, |
| 266 | + "execution_count": null, |
317 | 267 | "metadata": { |
318 | 268 | "scrolled": true |
319 | 269 | }, |
|
335 | 285 | " batch_size=2,\n", |
336 | 286 | " shuffle=True,\n", |
337 | 287 | " num_workers=1,\n", |
338 | | - " collate_fn=list_data_collate,\n", |
339 | 288 | " )\n", |
340 | 289 | " val_loader = DataLoader(val_ds, batch_size=1, num_workers=1)\n", |
341 | 290 | " device = torch.device(\"cuda:0\")\n", |
|
352 | 301 | " optimizer = torch.optim.Adam(model.parameters(), 1e-4)\n", |
353 | 302 | " scaler = torch.cuda.amp.GradScaler() if amp else None\n", |
354 | 303 | "\n", |
355 | | - " post_pred = Compose([EnsureType(), AsDiscrete(argmax=True, to_onehot=2)])\n", |
356 | | - " post_label = Compose([EnsureType(), AsDiscrete(to_onehot=2)])\n", |
| 304 | + " post_pred = Compose([AsDiscrete(argmax=True, to_onehot=2)])\n", |
| 305 | + " post_label = Compose([AsDiscrete(to_onehot=2)])\n", |
357 | 306 | "\n", |
358 | 307 | " dice_metric = DiceMetric(include_background=False, reduction=\"mean\", get_not_nans=False)\n", |
359 | 308 | "\n", |
|
474 | 423 | { |
475 | 424 | "cell_type": "code", |
476 | 425 | "execution_count": null, |
477 | | - "metadata": {}, |
| 426 | + "metadata": { |
| 427 | + "scrolled": true |
| 428 | + }, |
478 | 429 | "outputs": [], |
479 | 430 | "source": [ |
480 | 431 | "set_determinism(seed=0)\n", |
|
856 | 807 | ], |
857 | 808 | "metadata": { |
858 | 809 | "kernelspec": { |
859 | | - "display_name": "Python 3", |
| 810 | + "display_name": "Python 3 (ipykernel)", |
860 | 811 | "language": "python", |
861 | 812 | "name": "python3" |
862 | 813 | }, |
|
870 | 821 | "name": "python", |
871 | 822 | "nbconvert_exporter": "python", |
872 | 823 | "pygments_lexer": "ipython3", |
873 | | - "version": "3.7.10" |
| 824 | + "version": "3.8.13" |
874 | 825 | } |
875 | 826 | }, |
876 | 827 | "nbformat": 4, |
|
0 commit comments