This page provides a list of externally provided tutorial videos, i.e., material *not* created by our group. We tried to keep the core video material short so that the videos have an overall length of approx. 6.5h and should teach you the basics of Python. There are a lot of more detailed courses available online in case you want to dive deeper.

Python is a popular programming language that we are using in the Photogrammetry and Robotics Lab at the University of Bonn for the homework assignments in our courses. This starts with the Photogrammetry 1+2 course in the BSc program in the same way as for the Photogrammetry and RS and the Mobile Sensing and Robotics courses – basically for every course except the C++ course that we are offering. Thus, it is important to know Python and to be able to use it as a central tool for coding small projects. Most homework assignments will require some math tools (see NumPy), visualizations (see Matplotlib) and will be submitted as Jupyter notebooks (see Jupyter Notebooks).

We suggest using Jupyter-Lab (a slightly updated version of Jupyter-Notebook) as the coding environment. For installing all the required software (Python3, Jupyter-Lab, and the libraries) we recommend installing Anaconda with Python-3.7. Installation guides can be found here:

#### What are these videos about and why Learning Python?

We are using Python in basically all courses offered by the Photogrammetry and Robotics Lab for the homework assignments. Thus, you must be able to realize small projects in Python and the videos below should simplify your life learning it.

#### Introduction to Python

This video is 4.5h introduction to Python. If you have already programming experience or this video is too verbose for you, have a look to the 1.5h crash course alternative. Python will be the programming language for the homework assignments in the Photogrammetry and Robotics Lab (and in other labs as well).

#### Jupyter Notebook Tutorial

This video introduces Jupyter Notebook and explain what notebooks are, how to set them up and use them. Notebooks will be used for completing the homework assignments.

#### Python NumPy Tutorial

This video is a Python NumPy Tutorial and covers things like creating arrays, indexing, math, statistics, and reshaping. NumPy is a heavily used library and key for the mathematical operations needed to solve the homework assignments.

#### Python Matplotlib Tutorial

This video is a Python Matplotlib Tutorial. Matplotlib is the key library used to visualize results.

#### Exercises

You can download the exercise here.