From c65aa10eea6918027951f6d71a349b8b12deb461 Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 10:05:43 +0100 Subject: [PATCH 1/7] Adding more clear dependencies list Adding a complete list of software dependencies for reproducibility. - closes #22 --- README.md | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d53c986..3c59fde 100644 --- a/README.md +++ b/README.md @@ -246,7 +246,6 @@ For students experienced in Python there are the binder Notebooks ### 31st May - Project Presentations - # Feedback (as much as possible) - Create an [issue](https://github.com/kmader/Quantitative-Big-Imaging-2016/issues) (on the group site that everyone can see and respond to, requires a Github account), [issues from last year](https://github.com/kmader/Quantitative-Big-Imaging-2015/issues) - Provide anonymous feedback on the course [here](https://docs.google.com/spreadsheet/embeddedform?formkey=dEtIX1ZXMzFacmdhRF9mQVpNaWtWTXc6MA) @@ -262,6 +261,34 @@ The final examination (as originally stated in the course material) will be a 30 - [Overview](Projects/Overview.md) of possible projects - [Here](https://docs.google.com/spreadsheets/d/1Xvf4I5t-QkgXFBoDJ8BrMA8RTtuZWILfFBRhMjqP8Z8/edit#gid=1920771685) you signup for your project with team members and a short title and description +# Software Dependencies + +The course, slides and exercises are primarily done using Python 3.6 and Jupyter Notebook 5.5. The binder/repo2docker-compatible environment can be found at [binder/environment.yml](https://github.com/kmader/Quantitative-Big-Imaging-2018/blob/master/binder/environment.yml). + +## All Lectures +The packages which are required for all lectures +- numpy +- matplotlib +- scipy +- scikit-image +- scikit-learn +- ipyvolume + +## Machine Learning Packages +For machine learning and big data lectures a few additional packages are required +- tensorflow +- pytorch +- opencv +- dask +- dask_ndmeasure +- dask_ndmorph +- dask_ndfilter + +## Image Registration / Medical Image Data +For the image registration lecture and medical image data +- itk +- SimpleITK +- itkwidgets # Other Material - Course Wiki (For Questions and Answers, discussions etc, we use the old one) From c1ffe2f38e48f2800a98b0d48bf8250b5985fd15 Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 10:10:05 +0100 Subject: [PATCH 2/7] Create full_package_list.txt a frozen version of the full package list --- binder/full_package_list.txt | 178 +++++++++++++++++++++++++++++++++++ 1 file changed, 178 insertions(+) create mode 100644 binder/full_package_list.txt diff --git a/binder/full_package_list.txt b/binder/full_package_list.txt new file mode 100644 index 0000000..c140d26 --- /dev/null +++ b/binder/full_package_list.txt @@ -0,0 +1,178 @@ +# packages in environment at /Users/kevinmader/miniconda3/envs/qbi2018: +# +# Name Version Build Channel +absl-py 0.1.10 py_0 conda-forge +appmode 0.3.0 +appnope 0.1.0 py36_0 conda-forge +asn1crypto 0.24.0 py36_0 conda-forge +astor 0.6.2 py_0 conda-forge +autopep8 1.3.5 +awscli 1.15.57 +backcall 0.1.0 py_0 conda-forge +beautifulsoup4 4.6.3 +blas 1.1 openblas conda-forge +bleach 1.5.0 py36_0 conda-forge +bokeh 0.12.16 py36_0 conda-forge +botocore 1.10.56 +bs4 0.0.1 +ca-certificates 2018.4.16 0 conda-forge +certifi 2018.4.16 py36_0 conda-forge +cffi 1.11.5 py36_0 conda-forge +chardet 3.0.4 py36_0 conda-forge +clangdev 6.0.0 default_0 conda-forge +click 6.7 +cloudpickle 0.5.3 +colorama 0.3.9 +cryptography 2.2.1 py36_0 conda-forge +cycler 0.10.0 py36_0 conda-forge +dask-core 0.17.5 py_0 conda-forge +dask-ndfilters 0.1.2 +dask-ndmeasure 0.1.1 +dask-ndmorph 0.1.1 +deap 1.2.2 +decorator 4.3.0 py_0 conda-forge +distributed 1.21.8 +docutils 0.14 +entrypoints 0.2.3 py36_1 conda-forge +ffmpeg 2.8.6 0 menpo +freetype 2.8.1 0 conda-forge +gast 0.2.0 py_0 conda-forge +graphviz 2.38.0 7 conda-forge +grpcio 1.11.0 py36hd9629dc_0 +h5py 2.7.1 py36_1 conda-forge +hdf5 1.8.18 3 conda-forge +HeapDict 1.0.0 +html5lib 0.9999999 py36_0 conda-forge +icu 58.2 0 conda-forge +idna 2.6 py36_1 conda-forge +imageio 2.3.0 py36_0 conda-forge +ipykernel 4.8.2 py36_0 conda-forge +ipython 6.4.0 py36_0 conda-forge +ipython_genutils 0.2.0 py36_0 conda-forge +ipyvolume 0.4.5 py36_0 conda-forge +ipywebrtc 0.3.0 py36_0 conda-forge +ipywidgets 7.2.1 py36_1 conda-forge +itk 4.13.0 py36_0 conda-forge +itkwidgets 0.9.0 +jedi 0.12.0 py36_0 conda-forge +jinja2 2.10 py36_0 conda-forge +jmespath 0.9.3 +jpeg 9b 2 conda-forge +jsonschema 2.6.0 py36_1 conda-forge +jupyter_client 5.2.3 py36_0 conda-forge +jupyter_contrib_core 0.3.3 py36_1 conda-forge +jupyter_contrib_nbextensions 0.5.0 py36_0 conda-forge +jupyter_core 4.4.0 py_0 conda-forge +jupyter_highlight_selected_word 0.2.0 py36_0 conda-forge +jupyter_latex_envs 1.4.4 py36_0 conda-forge +jupyter_nbextensions_configurator 0.4.0 py36_0 conda-forge +kaggle 1.3.8 +Keras 2.1.3 +keras-contrib 2.0.8 +kiwisolver 1.0.1 py36_1 conda-forge +libcxx 6.0.0 0 conda-forge +libffi 3.2.1 3 conda-forge +libgfortran 3.0.0 0 conda-forge +libiconv 1.15 0 conda-forge +libpng 1.6.34 0 conda-forge +libprotobuf 3.5.2 0 conda-forge +libsodium 1.0.16 0 conda-forge +libtiff 4.0.9 0 conda-forge +libxml2 2.9.8 0 conda-forge +libxslt 1.1.32 0 conda-forge +lime 0.1.1.29 +llvm-meta 6.0.0 0 conda-forge +llvmdev 6.0.0 default_2 conda-forge +lxml 4.2.1 py36_0 conda-forge +markdown 2.6.11 py_0 conda-forge +markupsafe 1.0 py36_0 conda-forge +matplotlib 2.2.2 py36_1 conda-forge +mistune 0.8.3 py36_1 conda-forge +msgpack 0.5.6 +nbconvert 5.3.1 py_1 conda-forge +nbformat 4.4.0 py36_0 conda-forge +ncurses 5.9 10 conda-forge +networkx 2.1 py36_0 conda-forge +notebook 5.5.0 py36_0 conda-forge +numpy 1.14.3 py36_blas_openblas_200 [blas_openblas] conda-forge +olefile 0.45.1 py36_0 conda-forge +openblas 0.2.20 8 conda-forge +opencv3 3.2.0 py36_0 pluraldatum +openssl 1.0.2o 0 conda-forge +packaging 17.1 py_0 conda-forge +pandas 0.23.0 py36_1 conda-forge +pandoc 2.2.1 hde52d81_0 conda-forge +pandocfilters 1.4.2 py36_0 conda-forge +parso 0.2.1 py_0 conda-forge +pexpect 4.5.0 py36_0 conda-forge +pickleshare 0.7.4 py36_0 conda-forge +pillow 5.1.0 py36_0 conda-forge +pip 9.0.3 py36_0 conda-forge +plotly 3.1.1 +prompt_toolkit 1.0.15 py36_0 conda-forge +protobuf 3.5.2 py36_0 conda-forge +psutil 5.4.5 +ptyprocess 0.5.2 py36_0 conda-forge +pyasn1 0.4.3 +pycodestyle 2.4.0 +pycparser 2.18 py36_0 conda-forge +pydot 1.2.4 py_0 conda-forge +pygments 2.2.0 py36_0 conda-forge +pyopenssl 18.0.0 py36_0 conda-forge +pyparsing 2.2.0 py36_0 conda-forge +pysocks 1.6.8 py36_1 conda-forge +python 3.6.5 1 conda-forge +python-dateutil 2.7.3 py_0 conda-forge +python-graphviz 0.8.3 py36_0 conda-forge +pytorch 0.2.0 py36_4cu75 soumith +pytz 2018.4 py_0 conda-forge +pywavelets 0.5.2 py36_1 conda-forge +pyyaml 3.12 py36_1 conda-forge +pyzmq 17.0.0 py36_4 conda-forge +readline 7.0 0 conda-forge +requests 2.18.4 py36_1 conda-forge +retrying 1.3.3 +rise 5.3.0 py36_0 damianavila82 +rsa 3.4.2 +s3transfer 0.1.13 +scikit-image 0.13.1 py36_0 conda-forge +scikit-learn 0.19.1 py36_blas_openblas_201 [blas_openblas] conda-forge +scipy 1.1.0 py36_blas_openblas_200 [blas_openblas] conda-forge +seaborn 0.7.1 +send2trash 1.5.0 py_0 conda-forge +setuptools 39.2.0 py36_0 conda-forge +simplegeneric 0.8.1 py36_0 conda-forge +simpleitk 1.1.0 py36h0a44026_0 simpleitk +six 1.11.0 py36_1 conda-forge +sortedcontainers 2.0.2 +sqlite 3.20.1 2 conda-forge +stopit 1.1.2 +tbb 4.3_20141023 0 menpo +tblib 1.3.2 +tensorboard 1.8.0 py36_1 conda-forge +tensorflow 1.8.0 py36_1 conda-forge +termcolor 1.1.0 py36_1 conda-forge +terminado 0.8.1 py36_0 conda-forge +testpath 0.3.1 py36_0 conda-forge +tk 8.6.7 0 conda-forge +toolz 0.9.0 py_0 conda-forge +torchvision 0.1.9 py36_1 soumith +tornado 5.0.2 py36_0 conda-forge +TPOT 0.9.0 +tqdm 4.23.4 +traitlets 4.3.2 py36_0 conda-forge +traittypes 0.2.0 py36_0 conda-forge +update-checker 0.16 +urllib3 1.22 py36_0 conda-forge +wcwidth 0.1.7 py36_0 conda-forge +webcolors 1.8.1 +webencodings 0.5.1 py36_0 conda-forge +werkzeug 0.14.1 py_0 conda-forge +wheel 0.31.0 py36_0 conda-forge +widgetsnbextension 3.2.1 py36_0 conda-forge +xz 5.2.3 0 conda-forge +yaml 0.1.7 0 conda-forge +zeromq 4.2.5 1 conda-forge +zict 0.1.3 +zlib 1.2.11 h470a237_2 conda-forge +zstandard 0.9.0 From 16ab4829e0a193e1e90251c116a75ca42edf8345 Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 10:18:25 +0100 Subject: [PATCH 3/7] Update README.md moving requirements to wiki page --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3c59fde..cd8fb6a 100644 --- a/README.md +++ b/README.md @@ -263,7 +263,7 @@ The final examination (as originally stated in the course material) will be a 30 # Software Dependencies -The course, slides and exercises are primarily done using Python 3.6 and Jupyter Notebook 5.5. The binder/repo2docker-compatible environment can be found at [binder/environment.yml](https://github.com/kmader/Quantitative-Big-Imaging-2018/blob/master/binder/environment.yml). +The course, slides and exercises are primarily done using Python 3.6 and Jupyter Notebook 5.5. The binder/repo2docker-compatible environment](https://github.com/jupyter/repo2docker) can be found at [binder/environment.yml](https://github.com/kmader/Quantitative-Big-Imaging-2018/blob/master/binder/environment.yml). A full copy of the environment at the time the class was given is available in the [wiki](https://github.com/kmader/Quantitative-Big-Imaging-2018/wiki/Full-Package-List) file. As many of these packages are frequently updated we have also made a copy of the docker image produced by repo2docker ## All Lectures The packages which are required for all lectures From 0501df64e2c45150e7e77a34d54fc872f27b1d20 Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 11:41:08 +0100 Subject: [PATCH 4/7] Update README.md adding dockerhub link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cd8fb6a..18d6baf 100644 --- a/README.md +++ b/README.md @@ -263,7 +263,7 @@ The final examination (as originally stated in the course material) will be a 30 # Software Dependencies -The course, slides and exercises are primarily done using Python 3.6 and Jupyter Notebook 5.5. The binder/repo2docker-compatible environment](https://github.com/jupyter/repo2docker) can be found at [binder/environment.yml](https://github.com/kmader/Quantitative-Big-Imaging-2018/blob/master/binder/environment.yml). A full copy of the environment at the time the class was given is available in the [wiki](https://github.com/kmader/Quantitative-Big-Imaging-2018/wiki/Full-Package-List) file. As many of these packages are frequently updated we have also made a copy of the docker image produced by repo2docker +The course, slides and exercises are primarily done using Python 3.6 and Jupyter Notebook 5.5. The binder/repo2docker-compatible environment](https://github.com/jupyter/repo2docker) can be found at [binder/environment.yml](https://github.com/kmader/Quantitative-Big-Imaging-2018/blob/master/binder/environment.yml). A full copy of the environment at the time the class was given is available in the [wiki](https://github.com/kmader/Quantitative-Big-Imaging-2018/wiki/Full-Package-List) file. As many of these packages are frequently updated we have also made a copy of the docker image produced by repo2docker uploaded to Docker Hub at https://hub.docker.com/r/kmader/qbi2018/ ## All Lectures The packages which are required for all lectures From 5c7fb61f095ca834c1c3bd90a232c578cbcdec2c Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 13:40:30 +0100 Subject: [PATCH 5/7] Delete full_package_list.txt moved to wiki --- binder/full_package_list.txt | 178 ----------------------------------- 1 file changed, 178 deletions(-) delete mode 100644 binder/full_package_list.txt diff --git a/binder/full_package_list.txt b/binder/full_package_list.txt deleted file mode 100644 index c140d26..0000000 --- a/binder/full_package_list.txt +++ /dev/null @@ -1,178 +0,0 @@ -# packages in environment at /Users/kevinmader/miniconda3/envs/qbi2018: -# -# Name Version Build Channel -absl-py 0.1.10 py_0 conda-forge -appmode 0.3.0 -appnope 0.1.0 py36_0 conda-forge -asn1crypto 0.24.0 py36_0 conda-forge -astor 0.6.2 py_0 conda-forge -autopep8 1.3.5 -awscli 1.15.57 -backcall 0.1.0 py_0 conda-forge -beautifulsoup4 4.6.3 -blas 1.1 openblas conda-forge -bleach 1.5.0 py36_0 conda-forge -bokeh 0.12.16 py36_0 conda-forge -botocore 1.10.56 -bs4 0.0.1 -ca-certificates 2018.4.16 0 conda-forge -certifi 2018.4.16 py36_0 conda-forge -cffi 1.11.5 py36_0 conda-forge -chardet 3.0.4 py36_0 conda-forge -clangdev 6.0.0 default_0 conda-forge -click 6.7 -cloudpickle 0.5.3 -colorama 0.3.9 -cryptography 2.2.1 py36_0 conda-forge -cycler 0.10.0 py36_0 conda-forge -dask-core 0.17.5 py_0 conda-forge -dask-ndfilters 0.1.2 -dask-ndmeasure 0.1.1 -dask-ndmorph 0.1.1 -deap 1.2.2 -decorator 4.3.0 py_0 conda-forge -distributed 1.21.8 -docutils 0.14 -entrypoints 0.2.3 py36_1 conda-forge -ffmpeg 2.8.6 0 menpo -freetype 2.8.1 0 conda-forge -gast 0.2.0 py_0 conda-forge -graphviz 2.38.0 7 conda-forge -grpcio 1.11.0 py36hd9629dc_0 -h5py 2.7.1 py36_1 conda-forge -hdf5 1.8.18 3 conda-forge -HeapDict 1.0.0 -html5lib 0.9999999 py36_0 conda-forge -icu 58.2 0 conda-forge -idna 2.6 py36_1 conda-forge -imageio 2.3.0 py36_0 conda-forge -ipykernel 4.8.2 py36_0 conda-forge -ipython 6.4.0 py36_0 conda-forge -ipython_genutils 0.2.0 py36_0 conda-forge -ipyvolume 0.4.5 py36_0 conda-forge -ipywebrtc 0.3.0 py36_0 conda-forge -ipywidgets 7.2.1 py36_1 conda-forge -itk 4.13.0 py36_0 conda-forge -itkwidgets 0.9.0 -jedi 0.12.0 py36_0 conda-forge -jinja2 2.10 py36_0 conda-forge -jmespath 0.9.3 -jpeg 9b 2 conda-forge -jsonschema 2.6.0 py36_1 conda-forge -jupyter_client 5.2.3 py36_0 conda-forge -jupyter_contrib_core 0.3.3 py36_1 conda-forge -jupyter_contrib_nbextensions 0.5.0 py36_0 conda-forge -jupyter_core 4.4.0 py_0 conda-forge -jupyter_highlight_selected_word 0.2.0 py36_0 conda-forge -jupyter_latex_envs 1.4.4 py36_0 conda-forge -jupyter_nbextensions_configurator 0.4.0 py36_0 conda-forge -kaggle 1.3.8 -Keras 2.1.3 -keras-contrib 2.0.8 -kiwisolver 1.0.1 py36_1 conda-forge -libcxx 6.0.0 0 conda-forge -libffi 3.2.1 3 conda-forge -libgfortran 3.0.0 0 conda-forge -libiconv 1.15 0 conda-forge -libpng 1.6.34 0 conda-forge -libprotobuf 3.5.2 0 conda-forge -libsodium 1.0.16 0 conda-forge -libtiff 4.0.9 0 conda-forge -libxml2 2.9.8 0 conda-forge -libxslt 1.1.32 0 conda-forge -lime 0.1.1.29 -llvm-meta 6.0.0 0 conda-forge -llvmdev 6.0.0 default_2 conda-forge -lxml 4.2.1 py36_0 conda-forge -markdown 2.6.11 py_0 conda-forge -markupsafe 1.0 py36_0 conda-forge -matplotlib 2.2.2 py36_1 conda-forge -mistune 0.8.3 py36_1 conda-forge -msgpack 0.5.6 -nbconvert 5.3.1 py_1 conda-forge -nbformat 4.4.0 py36_0 conda-forge -ncurses 5.9 10 conda-forge -networkx 2.1 py36_0 conda-forge -notebook 5.5.0 py36_0 conda-forge -numpy 1.14.3 py36_blas_openblas_200 [blas_openblas] conda-forge -olefile 0.45.1 py36_0 conda-forge -openblas 0.2.20 8 conda-forge -opencv3 3.2.0 py36_0 pluraldatum -openssl 1.0.2o 0 conda-forge -packaging 17.1 py_0 conda-forge -pandas 0.23.0 py36_1 conda-forge -pandoc 2.2.1 hde52d81_0 conda-forge -pandocfilters 1.4.2 py36_0 conda-forge -parso 0.2.1 py_0 conda-forge -pexpect 4.5.0 py36_0 conda-forge -pickleshare 0.7.4 py36_0 conda-forge -pillow 5.1.0 py36_0 conda-forge -pip 9.0.3 py36_0 conda-forge -plotly 3.1.1 -prompt_toolkit 1.0.15 py36_0 conda-forge -protobuf 3.5.2 py36_0 conda-forge -psutil 5.4.5 -ptyprocess 0.5.2 py36_0 conda-forge -pyasn1 0.4.3 -pycodestyle 2.4.0 -pycparser 2.18 py36_0 conda-forge -pydot 1.2.4 py_0 conda-forge -pygments 2.2.0 py36_0 conda-forge -pyopenssl 18.0.0 py36_0 conda-forge -pyparsing 2.2.0 py36_0 conda-forge -pysocks 1.6.8 py36_1 conda-forge -python 3.6.5 1 conda-forge -python-dateutil 2.7.3 py_0 conda-forge -python-graphviz 0.8.3 py36_0 conda-forge -pytorch 0.2.0 py36_4cu75 soumith -pytz 2018.4 py_0 conda-forge -pywavelets 0.5.2 py36_1 conda-forge -pyyaml 3.12 py36_1 conda-forge -pyzmq 17.0.0 py36_4 conda-forge -readline 7.0 0 conda-forge -requests 2.18.4 py36_1 conda-forge -retrying 1.3.3 -rise 5.3.0 py36_0 damianavila82 -rsa 3.4.2 -s3transfer 0.1.13 -scikit-image 0.13.1 py36_0 conda-forge -scikit-learn 0.19.1 py36_blas_openblas_201 [blas_openblas] conda-forge -scipy 1.1.0 py36_blas_openblas_200 [blas_openblas] conda-forge -seaborn 0.7.1 -send2trash 1.5.0 py_0 conda-forge -setuptools 39.2.0 py36_0 conda-forge -simplegeneric 0.8.1 py36_0 conda-forge -simpleitk 1.1.0 py36h0a44026_0 simpleitk -six 1.11.0 py36_1 conda-forge -sortedcontainers 2.0.2 -sqlite 3.20.1 2 conda-forge -stopit 1.1.2 -tbb 4.3_20141023 0 menpo -tblib 1.3.2 -tensorboard 1.8.0 py36_1 conda-forge -tensorflow 1.8.0 py36_1 conda-forge -termcolor 1.1.0 py36_1 conda-forge -terminado 0.8.1 py36_0 conda-forge -testpath 0.3.1 py36_0 conda-forge -tk 8.6.7 0 conda-forge -toolz 0.9.0 py_0 conda-forge -torchvision 0.1.9 py36_1 soumith -tornado 5.0.2 py36_0 conda-forge -TPOT 0.9.0 -tqdm 4.23.4 -traitlets 4.3.2 py36_0 conda-forge -traittypes 0.2.0 py36_0 conda-forge -update-checker 0.16 -urllib3 1.22 py36_0 conda-forge -wcwidth 0.1.7 py36_0 conda-forge -webcolors 1.8.1 -webencodings 0.5.1 py36_0 conda-forge -werkzeug 0.14.1 py_0 conda-forge -wheel 0.31.0 py36_0 conda-forge -widgetsnbextension 3.2.1 py36_0 conda-forge -xz 5.2.3 0 conda-forge -yaml 0.1.7 0 conda-forge -zeromq 4.2.5 1 conda-forge -zict 0.1.3 -zlib 1.2.11 h470a237_2 conda-forge -zstandard 0.9.0 From 6176d73c011cd0022a9ab37a60d5abe6d2c26add Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Mon, 10 Dec 2018 13:46:13 +0100 Subject: [PATCH 6/7] Update README.md adding target audience #20 and learning objectives #21. Added a very brief statement of need #19 --- README.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 18d6baf..83d7e13 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,28 @@ ## Quantitative Big Imaging Course 2018 -Here are the lectures, exercises, and additional course materials corresponding to the spring semester 2018 course at ETH Zurich, [227-0966-00L](http://www.vvz.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?lerneinheitId=120956&semkez=2018S&ansicht=KATALOGDATEN&lang=en): Quantitative Big Imaging. +Here are the lectures, exercises, and additional course materials corresponding to the spring semester 2018 course at ETH Zurich, [227-0966-00L](http://www.vvz.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?lerneinheitId=120956&semkez=2018S&ansicht=KATALOGDATEN&lang=en): Quantitative Big Imaging. The lectures have been prepared and given by Kevin Mader and associated guest lecturers. Please note the Lecture Slides and PDF do not contain source code, this is only available in the handout file. Some of the lectures will be recorded and placed on YouTube on the [QBI Playlist](https://www.youtube.com/playlist?list=PLTWuXgjdOrnnHVDj_xgpUfbnlPmvW_33M). + +# Overview + +The lecture focuses on the challenging task of extracting robust, quantitative metrics from imaging data and is intended to bridge the gap between pure signal processing and the experimental science of imaging. The course will focus on techniques, scalability, and science-driven analysis. + +## Learning Objectives + +1. Introduction of applied image processing for research science covering basic image processing, quantitative methods, and statistics. +2. Understanding of imaging as a means to accomplish a scientific goal. +3. Ability to apply quantitative methods to complex 3D data to determine the validity of a hypothesis + +## Target Audience + +Ideally students will have some familiarity with basic manipulation and programming in languages like Python (Matlab or R are also reasonable starting points). Much of the material is available as visual workflows in a tool called KNIME, although these are less up to date as the Python material. Interested students who are worried about their skill level in this regard are encouraged to contact Kevin Mader directly (mader@biomed.ee.ethz.ch). + +More advanced students who are familiar with Java, C++, and Python are also encouraged to take the course and will have to opportunity to develop more of their own tools or explore topics like machine learningn in more detail. + + # Slack For communicating, discussions, asking questions, and everything, we will be trying out Slack this year. You can sign up under the following [link](https://qbi2018.slack.com/shared_invite/MTQ1NDY1OTc1NDYzLTE0ODc3NTE3NDktMDBkOWQwZGUzZg). It isn't mandatory, but it seems to be an effective way to engage collaboratively [How scientists use slack](http://www.nature.com/news/how-scientists-use-slack-1.21228) From b9ce8872440929a9c6786517ffe22023eba63a06 Mon Sep 17 00:00:00 2001 From: Kevin Mader Date: Sun, 10 Feb 2019 23:15:11 +0100 Subject: [PATCH 7/7] Update README.md - completely rewriting learning objectives - adding more details to target audience --- README.md | 41 +++++++++++++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 83d7e13..d72b7f8 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Here are the lectures, exercises, and additional course materials corresponding to the spring semester 2018 course at ETH Zurich, [227-0966-00L](http://www.vvz.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?lerneinheitId=120956&semkez=2018S&ansicht=KATALOGDATEN&lang=en): Quantitative Big Imaging. -The lectures have been prepared and given by Kevin Mader and associated guest lecturers. Please note the Lecture Slides and PDF do not contain source code, this is only available in the handout file. Some of the lectures will be recorded and placed on YouTube on the [QBI Playlist](https://www.youtube.com/playlist?list=PLTWuXgjdOrnnHVDj_xgpUfbnlPmvW_33M). +The lectures have been prepared and given by Kevin Mader and associated guest lecturers. Please note the Lecture Slides and PDF do not contain source code, this is only available in the handout file. Some of the lectures will be recorded and placed on YouTube on the [QBI Playlist](https://www.youtube.com/playlist?list=PLTWuXgjdOrnnHVDj_xgpUfbnlPmvW_33M). The lectures are meant to be followed in chronological order and each lecture has a corresponding hands-on exercises in the exercises section. # Overview @@ -16,15 +16,43 @@ The lecture focuses on the challenging task of extracting robust, quantitative m ## Learning Objectives -1. Introduction of applied image processing for research science covering basic image processing, quantitative methods, and statistics. -2. Understanding of imaging as a means to accomplish a scientific goal. -3. Ability to apply quantitative methods to complex 3D data to determine the validity of a hypothesis +### General +1. Ability to compare qualitative and quantitative methods and name situations where each would be appropriate +1. Awareness of the standard process of image processing, the steps involved and the normal order in which they take place +1. Ability to create and evaluate quantitative metrics to compare the success of different approaches/processes/workflows +1. Appreciation of automation and which steps it is most appropriate for +1. The relationship between automation and reproducibility for analysis + +### Image Enhancement + +1. Awareness of the function enhancement serves and the most commonly used methods +1. Knowledge of limitations and new problems created when using/overusing these techniques + +### Segmentation +1. Awareness of different types of segmentation approaches and strengths of each +1. Understanding of when to use automatic methods and when they might fail + +### Shape Analysis +1. Knowledge of which types of metrics are easily calculated for shapes in 2D and 3D +1. Ability to describe a physical measurement problem in terms of shape metrics +1. Awareness of common metrics and how they are computed for arbitrary shapes + +### Statistics / Big Data +1. Awareness of common statistical techniques for hypothesis testing +1. Ability to design basic experiments to test a hypothesis +1. Ability to analyze and critique poorly designed imaging experiments +1. Familiarity with vocabulary, tools, and main concepts of big data +1. Awareness of the differences between normal and big data approaches +1. Ability to explain MapReduce and apply it to a simple problem + ## Target Audience -Ideally students will have some familiarity with basic manipulation and programming in languages like Python (Matlab or R are also reasonable starting points). Much of the material is available as visual workflows in a tool called KNIME, although these are less up to date as the Python material. Interested students who are worried about their skill level in this regard are encouraged to contact Kevin Mader directly (mader@biomed.ee.ethz.ch). +The course is designed with both advanced undergraduate and graduate level students in mind. Ideally students will have some familiarity with basic manipulation and programming in languages like Python (Matlab or R are also reasonable starting points). Much of the material is available as visual workflows in a tool called KNIME, although these are less up to date than the Python material. Interested students who are worried about their skill level in this regard are encouraged to contact Kevin Mader directly (mader@biomed.ee.ethz.ch). -More advanced students who are familiar with Java, C++, and Python are also encouraged to take the course and will have to opportunity to develop more of their own tools or explore topics like machine learningn in more detail. +- Students with very diverse academic backgrounds have done well in the course (Informatics to Art History to Agriculture). +- Successful students typically spent a few hours a week working on the exercises to really understand the material. +- More advanced students who are already very familiar with Python, C++, or Java are also encouraged to take the course and will have to opportunity to develop more of their own tools or explore topics like machine learning in more detail. # Slack @@ -138,6 +166,7 @@ Presented by Aurelien Lucchi in [Data Analytics Lab](http://www.da.inf.ethz.ch) # Exercises + ## General Information The exercises are based on the lectures and take place in the same room after the lecture completes. The exercises are designed to offer a tiered level of understanding based on the background of the student. We will (for most lectures) take advantage of an open-source tool called KNIME (www.knime.org), with example workflows here (https://www.knime.org/example-workflows). The basic exercises will require adding blocks in a workflow and adjusting parameters, while more advanced students will be able to write their own snippets, blocks or plugins to accomplish more complex tasks easily. The exercises from two years ago (available [here](http://kmader.github.io/Quantitative-Big-Imaging-2015/) are done entirely in ImageJ and Matlab for students who would prefer to stay in those environments (not recommended)