# Colab notebooks

This section contains various pointers that may be helpful when working with [Google Colab](https://colab.research.google.com/notebooks/intro.ipynb).

Google Colaboratory, or “Colab” for short, is a product from Google Research. Colab allows anybody to write and execute arbitrary python code through the browser, and is especially well suited to machine learning, data analysis and education. More technically, Colab is a hosted Jupyter notebook service that requires no setup to use, while providing free access to computing resources including GPUs.

{% hint style="info" %}
If you would like to share an interesting notebook that uses IDC/cloud for imaging research, please let us know and we would be happy to review and reference it here!
{% endhint %}

## IDC maintained notebooks

IDC Colab example notebooks are maintained in this repository: <https://github.com/ImagingDataCommons/IDC-Tutorials/tree/master/notebooks>

Notebook demonstrating deployment and application of abdominal structures segmentation tool to IDC data, developed for the [2021 RSNA Deep Learning Lab](https://github.com/RSNA/AI-Deep-Learning-Lab-2021) course: <https://tinyurl.com/RSNA21-IDC-TCIA>

## Community-contributed notebooks

* [Deep-learning Nodule Segmentation using LIDC dataset on Google Cloud Platform](https://github.com/Mayo-Radiology-Informatics-Lab/IDC_GoogleCloud_Notebook), contributed by [Kuan (Kevin) Zhang](https://www.mayo.edu/research/labs/radiology-informatics/faculty-staff), Mayo Clinic
* [3D Brain MRI Classification Using Imaging Data Commons, Google Cloud, and NIFTI files](https://github.com/Mayo-Radiology-Informatics-Lab/IDC_GoogleCloud_Notebook_3DClassification), contributed by [Pouria Rouzokh](https://www.mayo.edu/research/labs/radiology-informatics/faculty-staff), Mayo Clinic
* Notebooks contributed by [Fabian Seidl](https://www.linkedin.com/in/fabian-seidl-390147a4/), ISB-CGC, demonstrating the utility of BigQuery in correlative analysis of radiomics and genomics data:
  * [How to compare tumor features with gene expression data](https://github.com/isb-cgc/Community-Notebooks/blob/master/Notebooks/How_to_compare_tumor_features_with_gene_expression_data.ipynb)
  * [How to compare tumor features with mutation data](https://github.com/isb-cgc/Community-Notebooks/blob/master/Notebooks/How_to_compare_tumor_features_with_mutation_data.ipynb)

## Relevant resources

* Colab limitations: <https://research.google.com/colaboratory/faq.html>
* Transferring data between Colab and Google Drive: <https://gist.github.com/yt114/dc5d2fd4437f858bb73e38f0aba362c7>
* Potentially interesting sources of example notebooks:
  * [SimpleITK notebooks](https://github.com/InsightSoftwareConsortium/SimpleITK-Notebooks/tree/master/Python)
  * <https://github.com/mdai/ml-lessons/>
  * <http://uwmsk.org/jupyter/>
  * <https://github.com/JoaoSantinha/Medical_Image_Analysis_Workshop>
* Google Colab Tips for Power Users: <https://amitness.com/2020/06/google-colaboratory-tips/>
* Mounting GCS bucket using `gcsfuse`: <https://pub.towardsai.net/connect-colab-to-gcs-bucket-using-gcsfuse-29f4f844d074>
* Almost-free Jupyter Notebooks on Google Cloud: <https://www.tensorops.ai/post/almost-free-jupyter-notebooks-on-google-cloud>
