{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# **IMPORT**","metadata":{}},{"cell_type":"code","source":"import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom torch.utils.data import DataLoader, Dataset\nimport albumentations as A\n\nfrom pathlib import Path\nimport pandas as pd\n%matplotlib inline\nimport matplotlib.pyplot as plt\nimport seaborn as sns\nfrom PIL import Image\nimport cv2\nimport numpy as np\n\nimport gc\nimport os\nimport glob\nimport json\n","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:23.900882Z","iopub.execute_input":"2023-03-17T07:55:23.901326Z","iopub.status.idle":"2023-03-17T07:55:23.911903Z","shell.execute_reply.started":"2023-03-17T07:55:23.901261Z","shell.execute_reply":"2023-03-17T07:55:23.910565Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"root_path = \"/kaggle/input/vesuvius-challenge-ink-detection\"\nroot_path = Path(root_path)\nsub_files = [file for file in root_path.iterdir()]\nsub_files","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:23.914464Z","iopub.execute_input":"2023-03-17T07:55:23.914937Z","iopub.status.idle":"2023-03-17T07:55:23.930144Z","shell.execute_reply.started":"2023-03-17T07:55:23.914884Z","shell.execute_reply":"2023-03-17T07:55:23.929113Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"submission_csv, test_files, train_files = sub_files[0], sub_files[1], sub_files[2]\nsubmission_csv = pd.read_csv(submission_csv)\ntest_path = [file for file in test_files.iterdir()]\ntrain_path = [file for file in train_files.iterdir()]\nprint(\"submission example:\")\nsubmission_csv\nprint(\"test:\")\nprint(test_path)\nprint(\"train:\")\nprint(train_path)","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:23.932041Z","iopub.execute_input":"2023-03-17T07:55:23.932972Z","iopub.status.idle":"2023-03-17T07:55:23.945276Z","shell.execute_reply.started":"2023-03-17T07:55:23.932935Z","shell.execute_reply":"2023-03-17T07:55:23.944214Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"b_test_path, a_test_path = test_path[0], test_path[1]\ntrain2_path, train3_path, train1_path = train_path[0], train_path[1], train_path[2]\na_test = list(iter(a_test_path.iterdir()))\nb_test = list(iter(b_test_path.iterdir()))\ntrain1 = list(iter(train1_path.iterdir()))\ntrain2 = list(iter(train2_path.iterdir()))\ntrain3 = list(iter(train3_path.iterdir()))\n\nprint(\"a_test\")\nprint(a_test)\n\nprint(\"b_test\")\nprint(b_test)\n\nprint(\"train1\")\nprint(train1)\n\nprint(\"train2\")\nprint(train2)\n\nprint(\"train3\")\nprint(train3)","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:23.947041Z","iopub.execute_input":"2023-03-17T07:55:23.948071Z","iopub.status.idle":"2023-03-17T07:55:23.959529Z","shell.execute_reply.started":"2023-03-17T07:55:23.948032Z","shell.execute_reply":"2023-03-17T07:55:23.958299Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"ir, inklabels_csv, inklabels, mask, surface_volume = train1[0], train1[1], train1[2], train1[3], train1[4]\ninklables_csv = pd.read_csv(inklabels_csv)\n\nplt.figure(figsize=(8,8))\nfig, (ax1, ax2, ax3) = plt.subplots(1,3)\n\nax1.imshow(Image.open(str(ir)), cmap=\"gray\")\nax1.set_title(\"ir\")\nax1.axis(\"off\")\n\nax2.imshow(Image.open(inklabels), cmap=\"gray\")\nax2.set_title(\"inklabels\")\nax2.axis(\"off\")\n\nax3.imshow(Image.open(mask), cmap=\"gray\")\nax3.set_title(\"mask\")\nax3.axis(\"off\")","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:23.962329Z","iopub.execute_input":"2023-03-17T07:55:23.963331Z","iopub.status.idle":"2023-03-17T07:55:36.953586Z","shell.execute_reply.started":"2023-03-17T07:55:23.963258Z","shell.execute_reply":"2023-03-17T07:55:36.952338Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"plt.figure(figsize=(8,8))\nsurface_volume = list(iter(surface_volume.iterdir()))\nfor i, img in enumerate(surface_volume[:9]):\n    plt.subplot(3,3,i+1)\n    plt.imshow(Image.open(img), cmap=\"gray\")\n    plt.title(img.name)\n    plt.axis(\"off\")","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:36.954802Z","iopub.execute_input":"2023-03-17T07:55:36.955915Z","iopub.status.idle":"2023-03-17T07:55:57.129517Z","shell.execute_reply.started":"2023-03-17T07:55:36.955862Z","shell.execute_reply":"2023-03-17T07:55:57.128476Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"class CFG:\n    device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")","metadata":{"execution":{"iopub.status.busy":"2023-03-17T07:55:57.130761Z","iopub.execute_input":"2023-03-17T07:55:57.131413Z","iopub.status.idle":"2023-03-17T07:55:57.136061Z","shell.execute_reply.started":"2023-03-17T07:55:57.131372Z","shell.execute_reply":"2023-03-17T07:55:57.135181Z"},"trusted":true},"execution_count":null,"outputs":[]}]}