{"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":"## 1. locate TMA","metadata":{}},{"cell_type":"code","source":"import os\n\ntrain_images_folder = '/kaggle/input/UBC-OCEAN/train_images'\ntrain_thumbnails_folder = '/kaggle/input/UBC-OCEAN/train_thumbnails'\n\nimages_files = set(os.listdir(train_images_folder))\nthumbnails_files = set(os.listdir(train_thumbnails_folder))\n\nimages_filenames = set([filename.split('.')[0] for filename in images_files])\n\nthumbnails_filenames = set([filename.split('_')[0] for filename in thumbnails_files])\n\nmissing_thumbnails = images_filenames - thumbnails_filenames\nmissing_thumbnails=[name+'.png' for name in missing_thumbnails]\n\nprint(\"TMA list:\")\nfor file_name in missing_thumbnails:\n    print(file_name)\n","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2023-10-23T08:33:31.704927Z","iopub.execute_input":"2023-10-23T08:33:31.705338Z","iopub.status.idle":"2023-10-23T08:33:31.718091Z","shell.execute_reply.started":"2023-10-23T08:33:31.705305Z","shell.execute_reply":"2023-10-23T08:33:31.71684Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# 2. Read train_csv","metadata":{}},{"cell_type":"code","source":"import pandas as pd\n\ndf=pd.read_csv('/kaggle/input/UBC-OCEAN/train.csv')\ndf","metadata":{"execution":{"iopub.status.busy":"2023-10-23T08:12:32.774014Z","iopub.execute_input":"2023-10-23T08:12:32.774863Z","iopub.status.idle":"2023-10-23T08:12:32.825601Z","shell.execute_reply.started":"2023-10-23T08:12:32.774814Z","shell.execute_reply":"2023-10-23T08:12:32.824407Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# 3. Visualize HGSC(TMA)","metadata":{}},{"cell_type":"code","source":"is_tma_df=df[df['is_tma']]\nis_tma_df","metadata":{"execution":{"iopub.status.busy":"2023-10-23T08:19:28.402943Z","iopub.execute_input":"2023-10-23T08:19:28.403345Z","iopub.status.idle":"2023-10-23T08:19:28.424015Z","shell.execute_reply.started":"2023-10-23T08:19:28.403315Z","shell.execute_reply":"2023-10-23T08:19:28.422827Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"from IPython.display import display, Image\n\nlabel = 'HGSC'\nlabel_tma_images = is_tma_df[is_tma_df['label'] == label]\n\nfor i, row in label_tma_images.iterrows():\n    name = str(row['image_id']) + '.png'\n    path = os.path.join(train_images_folder, name)\n    display(Image(filename=path))\n","metadata":{"execution":{"iopub.status.busy":"2023-10-23T08:24:45.54221Z","iopub.execute_input":"2023-10-23T08:24:45.542945Z","iopub.status.idle":"2023-10-23T08:24:47.609203Z","shell.execute_reply.started":"2023-10-23T08:24:45.542888Z","shell.execute_reply":"2023-10-23T08:24:47.607319Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# 4. Visualize HGSC(WSI thumbnail)","metadata":{}},{"cell_type":"code","source":"is_not_tma_df=df[df['is_tma']==False]\nis_not_tma_df","metadata":{"execution":{"iopub.status.busy":"2023-10-23T08:28:49.611936Z","iopub.execute_input":"2023-10-23T08:28:49.612377Z","iopub.status.idle":"2023-10-23T08:28:49.631406Z","shell.execute_reply.started":"2023-10-23T08:28:49.612343Z","shell.execute_reply":"2023-10-23T08:28:49.629883Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"from IPython.display import display, Image\n\nlabel = 'HGSC'\nlabel_not_tma_images = is_not_tma_df[is_not_tma_df['label'] == label]\nlabel_not_tma_images\nfor i, row in label_not_tma_images[:3].iterrows():\n    name = str(row['image_id']) + '_thumbnail.png'\n    path = os.path.join(train_thumbnails_folder, name)\n    display(Image(filename=path))","metadata":{"execution":{"iopub.status.busy":"2023-10-23T08:29:38.703962Z","iopub.execute_input":"2023-10-23T08:29:38.70462Z","iopub.status.idle":"2023-10-23T08:29:39.613107Z","shell.execute_reply.started":"2023-10-23T08:29:38.704405Z","shell.execute_reply":"2023-10-23T08:29:39.611497Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## Conclusion: There is a big difference between TMA and WSI(thumbnail)！","metadata":{}},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}