Select Page

Welcome to the EAGLE students' webpage!


This is the offical EAGLE students’ webpage. Here you can find useful information on the EAGLE graduate program (M.Sc.) offered by the University of Würzburg and the German Aerospace Center (DLR), directly provided by its students.

Explore our news, peek at the students’ personal portraits, read FAQs and contact us directly.

The EAGLES on the road at DLR and in the Alps

The EAGLES on the road at DLR and in the Alps

Last week, on December 7, the latest EAGLE generation also made its way to Oberpfaffenhofen near Munich to visit DLR’s Earth Observation Center (DLR-EOC). This year there were again very exciting talks on the following topics:

  • Optical radar remote sensing for observing the coastal zone and river basins (Marco Ottinger)
  • Earth observation for vegetation monitoring (Dr. Sarah Asam)
  • Time series analysis of global snow cover (Dr. Andreas Dietz)
  • Sensing the pulse of urban development (Dr. Felix Bachofer)

The Partnach Gorge near Garmisch-Partenkirchen

We also had the opportunity to talk to PhD students and researchers about their work, which was very interesting and informative.
As a highlight of our trip we got a guided tour through the German Space Operation Center (GSOC) – unfortunately Alexander Gerst just had a lunch break, so there was no time for a greeting from space. A visit to the Center for Satellite Based Crisis Information (ZKI) rounded off this exciting day.

All in all, the EAGLEs gained a lot of new experiences and deeper insights into the work with remote sensing data. Surely for some of us this will not be the last time at DLR, one or the other will do an internship there or write his/her master thesis.

But that’s not all! The next day we drove together to the Partnachklamm (gorge) near Garmisch-Partenkirchen in the Alps. For many it was a completely new experience to be so close to the Alps and to touch snow for the first time. After a more or less long hike, some “Kaiserschmarrn” at a Bavarian Alm and the crossing of the gorge, we went back to Würzburg in the evening.

For all of us, these were two nice days in and around Munich with new experiences in remote sensing as well as within the EAGLE community.

The 2018 EAGLEs enjoying a hike in the Bavarian Alps

Written by Magdalena Halbgewachs

The 2018 EAGLEs are online!

The 2018 EAGLEs are online!

print(“Hello, World!”)

Today, the new EAGLE intake that pooled from all over the World has completed six academic weeks in the program – it’s about time to introduce ourselves!

Our diverse group of students spent their first week being drilled and thrilled by a series of introductory lectures by Dr. Claudia Künzer, Head of the Land Cover Department at DLR’s Earth Observation Centre. Along with teaching remote sensing, satellite systems and image analysis basics, she provided a personal insight into the sector in general and a multitude of applications. Then, ready for take-off, we started our regular courses ranging from theory and application of optical and radar remote sensing over relevant skills in programming, GIS and image analysis to vegetation biogeography, mineral exploration or scientific presentation. And as we settle into a naturally-busy schedule, jumping between lectures, we will try and keep you posted about what we are up to.

Finally, you are now able to sneak a peek at each of our individual backgrounds, motivation and what we intend to do for the next chapter of our lives. But for now…

Signing out,

The Third EAGLE Generation!

Written by Yomna Hamza Eid and Malin Fischer


Two 2016 EAGLE students win ESA Copernicus Hackaton 2018 in Darmstadt

Two 2016 EAGLE students win ESA Copernicus Hackaton 2018 in Darmstadt

Written by Karsten Wiertz

This year, two of our EAGLE students had the opportunity to participate at the Copernicus Hackathon 2018 in Darmstadt. In the Hackathon, participants formed small groups, chose a task and had 24 hours to work on it with the technical support of mentors. The theme of this years’ hackathon was to solve one of three questions in the context of smart cities/urban planning with focus on traffic.

The teams could choose one of the following challenges:

  • Help to prevent critical infrastructure like railway networks and highways from fire hotspots
  • Monitor and help to improve air quality for bicycle speedways in Hesse
  • Track changes in transport infrastructure (road and railway network) based on OpenSource data

Team RoadEO at work on the Hackathon. From left to right: Sebastian, Louis, Jan, Karsten

Our two EAGLEs teamed up with two other participants and chose the challenge of tracking infrastructure changes. With their team, they came up with the name “RoadEO” (temporary name during the hackathon) and focused on the detection of changes related to newly built roads at different locations around the globe. As part of their task, they had to use open-source data and chose to start working primarily with Sentinel-2 data. In their business idea, they developed two main products, urban development and progress tracking. This provides investment-or insurance companies, local governments, construction companies, and many more with valuable information on the progress of infrastructure and the influence on the value of property. After just 24 hours of intensive work the teams had to present their results as demo-pitches in front of the other teams and got feedback and questions from the audience.

RoadEO presenting at the demo-pitches

As part of the Hackathon, all participants had the chance to attend the INTERGEO 2018 in Frankfurt and pitch their business case live at the ESA booth on the trade fair. They were also invited to attend the “Open Day together with Bundesamt für Kartographie” with the topic of Open (geo-) data. Finally, on Wednesday, the 17.10.2018, all teams had to pitch in front of a jury and visitors of the trade fair. The jury evaluated the ideas based on different criteria and, after some time of waiting in excitement, presented their results. At last, we can proudly announce that the winning team of the Copernicus Hackathon 2018 is team RoadEO, which two of our EAGLE students, Karsten and Louis were part of.

Pitches live at INTERGEO 2018 Frankfurt

Winning Team RoadEO with part of the jury and two 2016 EAGLE students: Karsten (third from the right) and Louis (center)

Settling down in Würzburg – an International’s edition

Settling down in a foreign country can be a challenging process, especially if you do not speak their language well. Untangling the process can be daunting, complex, and usually lengthy.

Before you embark on this process, please make sure that you have enough money with you, so that you can survive until you have opened your bank account for your scholarship, blocked account or sponsors to deposit money for your use. Also, having someone who can help translate German is a boon to many of these steps. P/s: You also have the option to contact a student tutor for help.

Figure 1: Flowchart showing the basic process of settling down in Würzburg. Having a German phone line is highly useful, as communication will be easier. Arrows with unbroken lines denote that the process is sequential, while arrows with broken line mean that there are alternatives (read the article for more information).


Initial trip from the airport to Würzburg
The easiest option to travel to Würzburg is via train. You may purchase your tickets ahead of time via Deutsche Bahn website and search for a cheaper offer. Do provide ample time between your arrival and the train departure, as immigration clearance may take time if there’s a crowd and German trains are usually punctual.

Another option is by coach (locally known as bus). If you’re arriving at either Frankfurt or Munich International Airport, Flixbus provides cheap transport between the airport and Würzburg. However, coaches are definitely slower and less frequent than train.

German phone line (with data)
If you do not have any form of communication and want to avoid hefty overseas mobile charges, this is a very important milestone to clear. There are many options to choose – from phone shops with postpaid phone plans to the cheaper prepaid options from supermarkets.

In Germany, all SIM cards are sold locked. To unlock them for use, you have to complete a verification process, which require your passport, and a bit of time while they process your verification. If possible, complete the verification in the shop immediately after your SIM card purchase. This will save you the trouble of finding a WiFi source (especially if you do not have easy access to one) for the online verification. Do note that you’ll need a German address for this verification. It is possible to use an interim address (e.g. your temporary accommodation) for this.

For example, if you are purchasing the prepaid SIM cards from an ALDI supermarket, approach the cashier and ask for an in‑shop verification. While you might have to wait a while before the cashier is free to help you with the verification, it’s useful in the long run to get your communication channel up and running as soon as possible. Beware though, as some of us were unlucky and encountered service staffs that only spoke German.

Transport within Würzburg can be pricy. A bus ride will cost at least €2.70 per trip. Until you get your matriculation card (which also functions as a transport pass), it is recommended to get the day pass to cover your transport needs. The day pass can be easily obtained from any bus conductor or ticketing stations and costs €5.10.

In the unfortunate event which your matriculation card will take more than two weeks to issue, it will be more economical to purchase a monthly ticket that costs €45. This ticket allows you to travel within Würzburg and its surrounding areas without limitations for a month.

OpenStreetMap is the recommended map service for Würzburg, as Google Maps does not have information about the tram (locally known as street train, or Straßebahn) and bus services that ply in Würzburg. You may use also apps such as Bayern Fahrplan to help you with moving around Würzburg (Android and IOS).

Health insurance
Health insurance is required in Germany. You have a range of choices from both public and private health insurance companies. Do note that choosing between public or private health insurers will have short‑term and long‑term consequences, especially if you have plans to remain in Germany after your studies. You will not able to return to public insurance once you switch out to a private insurer. There is also an age‑restriction for entry into public health insurance (e.g. below 30 years of age). It is essential to do your due diligence before choosing.

If you choose a private health insurer, you would need to get an exemption letter from a public health insurer. One option is to visit the AOK Bayern Student Service Office in Sanderring. As long as your private health plan provides sufficient coverage and is valid for your whole school term (ie. at least 2 years coverage for the EAGLE programme), you may obtain the required exemption letter.

Bring along all necessary documents as instructed by the matriculation letter to the international office. Once you have matriculated, you will need to activate your online student account. The login information will be sent via email. As the activation is not immediate and will take a few days, do complete this online activation as soon as possible.

You will also need to wait for your matriculation card to be produced. The International Office will contact you once the card is ready. Take the card to a validation machine (available in the library and ground floor of building 82). Follow the instructions provided by the Office and your card is now valid for “free” transport.

This is a crucial milestone. Basically, a German address is required for matriculation, phone verification, health insurance, unlocking a blocked account (if you have one), and even opening a bank account. Not to mention, there will be less stress in your life with a secured roof over your head.

Unfortunately, the process of obtaining an accommodation is stuck in a loop with the bank account and residence permit. Simply put, a proof of residence (usually residence permit) is required to open a bank account, which may be required to pay for your accommodation, which then is required to apply for a residence permit.

Fortunately, alternatives are available to break this loop. Not all accommodations require a German bank account for payment. Bring sufficient cash to Germany so that you can use them to pay for an accommodation if needed. You may also wire or transfer money from an overseas account directly to your landlord to pay for your accommodation’s initial payment, if this option is available.

If you are fortunate enough to secure an accommodation before you arrive at Würzburg, give yourself a pat on the back. Demand for accommodation here is way more than supply – even the student apartments may have a waiting list of one semester or more! There is no easy way around finding an affordable accommodation here. You will need to use all possible avenues, such as Studentenwerk, WG-Gesucht and even word‑of‑mouth, until you find a suitable place. In the interim, you may try Babelfish or Jugendherberge for a cheap temporary accommodation.

Bank account
While opening a bank account can be annoying as part of the bank‑accommodation‑permit loop, there are possible bypasses (e.g. obtaining an official letter with your name and German address on it or opening an account with an online bank).

To open an account in the usual brick‑and‑mortar banks, you will require a residence permit or an official letter with your name and German address on it. As the contract for opening a bank account is only legally binding in German, you will need to either understand German or bring someone who can translate German to you. A fee is required in order to keep the current account operational. Some banks offer a student account which has zero fees, but these accounts are usually age‑restricted (e.g. below 27 years of age).

If you would prefer to avoid the traditional banks, online banks are available for your use, such as N26. As with all financial decisions, do take time to research and consider your options carefully.

Residence permit
In order to obtain a residence permit, you need an accommodation, period/full stop. When you secure one, you will be provided with a letter for registration at the town hall (local term: Rathaus). You will also need your passport, matriculation letter/matriculation card, and bank account statement. If you are married, a translated copy of your marriage certificate (in English or German) is required too.

After you have obtained a residence permit, you may receive a letter from the German broadcasting institution (Beitragsservice von ARD, ZDF und Deutschlandradio). The legal ruling is that each residence is required to pay the fee, regardless of whether you use their services. If you live alone, do register with them as instructed and pay the fees (€17.50 per month). If you have housemates, check if anyone is already paying, get their account number and inform the Beitragsservice that you’re covered under that account number.

Electronic residence card
The final milestone. You are only allowed to book an appointment with the Rathaus when you have less than three months remaining for your student visa. Depending on the length of your entry visa (e.g. some were given three months while others have six months), you might have to wait.

On your first visit, you will not be processing anything. Instead, you will be given a form to fill and a second appointment on another day. This means, please do not come to the Rathaus with less than a month of your visa remaining.

On your second visit, you will need to bring all the documents as instructed in the form and €107 (either in cash or by debit card). You will need to come half an hour before your given appointment time to provide your mugshots and biometrics (fingerprints, etc). That costs €7. Your application will then cost another €100. It’s then time to return home and wait for two letters (about a few weeks later).

When you get the two letters, bring them for your third visit to the Rathaus and get your card. Congratulations, you are now a third state citizen in Germany! Do check the validity date on your card. If you only have one year before it expires, then you will need to repeat the whole application process (including another set of mugshots and biometrics) in your second year here.

Other useful information
If you come from a country/place which businesses and shops open till late and on weekends, be prepared for a major change. Not only do shops and supermarkets in Bavaria close at 8pm or earlier, they are also non‑operational on Sundays and public holidays. While there are exceptions such as certain F&B outlets, this means that you will need to stock up with food (and party beers) beforehand to avoid nuisance during these periods.

Remember to bring your own bags for shopping. Shops in Germany do not provide free bags for your groceries and other shopping goods. You will need to purchase these bags at a small cost from the cashier if you require them.

You may refer to the University calendar here. That should help with your scheduling and time management.

Tips for convenience
Bring more money if possible. Until you get access to your funds (e.g. unblocking of blocked account), your funds will be mostly restricted to what you bring. For blocked account holders, you will need to undergo a verification process before your account can be unblocked. Verification may be delayed for many reasons. Do take that into consideration when planning your money.

Most entry visa do not come with an innate work permit for students, which is a pre‑requisite for a student job. If you wish to get a work permit, please visit the Rathaus.

Having someone to translate German for you will be highly helpful. In fact, it may even expedite the process considerably. While you can approach the student tutors available at the International Office, don’t shy away from asking your fellow coursemates and/or seniors who can speak German. This will double as an icebreaker, which will make a great start for your student life in EAGLE!

Settling down in Würzburg may seem complex and frustrating when you’re unprepared for how Germany conducts her administrative matters. For the well‑prepared, this can be a smooth process. If you are ever frustrated or depressed about this matter, remember that you can always approach your seniors – we’ve been through the process! Feel free to contact us through our contact form. We look forward to meeting you in Würzburg!

This article is written based on the experiences and mistakes by your EAGLE seniors when they first settled in Würzburg.

Many thanks to everyone for sharing your experiences and challenges, as well as providing feedback to improve the article.

This article was written in June 2018.

EAGLEs forming a football team at yesterday’s Geo summer party

EAGLEs forming a football team at yesterday’s Geo summer party

Yesterday, many Geography students and some lecturers of the University of Wuerzburg met at the center lawn of Campus Hubland for the annual Geography summer party, organized by the faculty’s Student Council. One highlight, as every year, was the football tournament, in which nine teams, all drafted explicitly for the event, competed against each other to win the Mohorovičić Cup”. The cup is named in honor to the Croatian meteorologist and seismologist Andrija Mohorovičić, who is considered as the founder of modern seismology and after whom the “Mohorovičić discontinuity”, the boundary between the Earth’s crust and the mantle, is named.

With “Team EAGLE”, the University’s EAGLE Master students also participated in the games, playing the important role of representing the Geography Institute’s remote sensing community at the cup. Following the model of Europe’s most successful football clubs, Team EAGLE was formed out of an international selection of players, being (by far) the team with the highest international diversity in the whole tournament: Team EAGLE represented five nationalities, including German (three players), Pakistani, Iranian, Afghan and Singaporean (each one player). Moreover, team EAGLE was one of the two only teams to be multi-gender, being supported on the field by a female striker, who always was dangerous in front of the opponent’s goal. A cheering crowd of EAGLE students, sitting directly next to the field, celebrated the team’s efforts to score enough goals to make it through the group stage, consisting of four games from which four teams remained to play in the semi-finals and final game.

While the individual class of each EAGLE player was clearly outstanding against many “hobby” players of the other teams, a little lack of practice playing in the chosen formation caused the team to be not as effective as needed, especially in front of the opponent’s goal. This, combined with some unlucky situations where the goal post was involved in saving the opponent from being played off by team EAGLE, forced the latter and its supporters to accept that they had been kicked out of the tournament after four hard fight games.

However, being aware of how loosing can make you even stronger, team EAGLE is prepared to fight back one year ahead and to bring the cup home to the Oswal-Külpe-Weg. With a lot of young and fresh talents, expected to arrive in October this year, team EAGLE will improve its skills, its tactics, its class and – its unprecedented, shining spirit!


EAGLE team fan

A fan of the big EAGLE team fan base photo-bombing the EAGLE team picture. Luckily, no security had to step in to secure our talents. Players (from upper left to lower right): Fowad, Silvan, Sebastian, Theresa, Navid, Salim. Missing Player: Benjamin.


Group stage game

A group stage game of two other teams at Mohorovičić Cup.


Summer Dialogue 2018

We will be holding our annual EAGLE Summer Dialogue and Barbeque on 22 June 2018. Here is a quick peek at our programme:

We will provide marinated steaks from pork and poultry, as well as sausages from pork and beef. Grilled vegetables, bread, some salads and desserts will also be available. If you are still missing something in particular, bring it along and we will be happy to barbecue it for you. Otherwise just come without bringing anything and have a great time with us. Cooled drinks like soda, water, beer and other non-alcoholic beverages will be provided as well.
Guests will be asked for reimbursement to cover the funding of foods and drinks. Suggested prices will be displayed.
Cutlery and glasses will also be provided.

If you want to come, register now at EAGLESummerDialogue2018.
Feel free to bring your family along!
Do let us know by 15 June 2018, so that we can better prepare and cater to your enjoyment.
All data collected will be used solely for the purpose of this event and deleted after the event.

If you have any questions, please do not hesitate to contact us at
We eagerly look forward to meeting you at our event.

The EAGLE Team

R Package “superClassAnalysis”

For our final project in the course “MB2 – Introduction to Programming and Geostatistics” held by
Dr. Martin Wegmann the students were encouraged to explore the possibilities for analyzing and
working with remote sensing data in R. In this context I created a package called “superClassAnalysis”
that includes several functions which add further methods for data analysis to the “superClass()”
command of the “RStoolbox” built by Benjamin Leutner. The aim of the package is to find the best
presets in form of resolution, number of sample pixels, polygons and number of bands in order to
achieve highest classification accuracies.

The package can be downloaded in installed via GitHub:


As of right now the package consists of seven functions, one of them being the “SampleSaturation()”
function. It enables a quick analysis of the minimum number of sample pixels required for each class
in order to receive best results in a supervised classification. The user has the ability to automatically
plot the result in form of a table or a ggplot which shows the overall accuracy, as well as either the
user’s or producer’s accuracy for each class depending on the user’s preference.

x1 <- SampleSaturation(img = img, model = 'rf', trainData = training_data,
 valData = validation_data, nSamples = c(10, 50, 100, 500),
 classes = training_data$class_name, 
 responseCol = "class_name", prodAcc = TRUE, 
 overall = TRUE, plot_graph = TRUE)


Another function included in the package is the “PolygonSaturation()” function. The purpose of this function is to analyze the impact of each polygon on the classification accuracy and aids for identifying potentially erroneous or generally bad polygons. In order to achieve that, a supervised classification loop will be executed starting with two polygons per class. After each run, one additional polygon per class is being added and the accuracy results for each classification is again displayed in form of a ggplot. In this example when looking at the class “no_forest” the producer’s accuracy increases with the fourth polygon, while the fifth polygon results in a decrease of the producer’s accuracy for that class.

x2 <- PolygonSaturation(img = img, model = 'rf', trainData = training_data, 
 valData = validation_data, nSamples = 100, 
 classes = training_data$class_name, 
 responseCol = "class_name", prodAcc = TRUE,
 overall = TRUE, plot_graph = TRUE)


Other functions included in the package are e.g. the “ResolutionSaturation()” function, which analyzes the impact of spatial resolution of remote sensing data on classification processes by resampling the raster file to different resolutions according to a given vector. Again a classification loop will run with the different resolutions and the result is automatically visualized.

All functions are written in a way so that they automatically adjust to the given dataset, independent of its size, number of classes or the class names.

Reporting from the Students’ Board

Marius Philipp

Field Measurements in Demmin 2018

In order to get some practical experience in terms of field work the EAGLE program offers an excursion to Demmin which is located in federal state of Mecklenburg-Western Pomerania in North-East Germany. The test site is an intensively used agricultural ecosystem that has been established in 1999 with a close cooperation between the local farmers and the German Aerospace Center (DLR). Furthermore, since 2011 it is part of the TERENO observatory ‘North-East German Lowlands’ that is managed by the GeoForschungsZentrum (GFZ) Potsdam. The young Pleistocene landscape which was formed approximately 10000 years ago by glaciers and melting waters is widely used for forestry and agriculture. Nowadays more than 65 soil moisture SPADE sensors and over 40 environmental measurement stations are managed by GFZ and DLR. Over the years a large number of data have been gathered and are now available (Truckenbrodt et al. 2018).

Students had the opportunity to collect different types of samples, e.g. measuring biophysical parameters like the Leaf Area Index using a LAI-2200 plant canopy analyzer (LI-COR). In addition to that the leaf chlorophyll content was measured through non-destructive absorbance measurements using a SPAD-502Plus chlorophyll meter. Other sampling tasks included measuring the soil moisture with a portable sensor, as well as taking actual soil and biomass samples which could be measured afterwards in the laboratory. Also, the surface roughness was estimated by using a pin profiler measurement. Students were provided with a field reader before the actual excursion so that they could prepare for the field work beforehand.

This field campaign offered EAGLE students an insight in the world of field work and the possibility to conduct measurements using various devices. Students learned to organize themselves and distribute the tasks in order to work efficiently. Furthermore, this excursion also strengthened the relationship of EAGLEs as a group which could be expressed through joint dinners and barbecue as well as other fun activities.

Reporting from the Student’s Board

Marius Philipp


Truckenbrodt, S. Hüttich, C., Borg, E., Ahmadian, N., Dahms, T., Heupel, K., Spengler, D., Conrad, C. (2018): “DEMMIN_2.0 – Combining in situ observations and remote sensing data – Field Reader”.

Land-Use Change Coded By Color (R Package)

The remote sensing R package LCquickVieweR makes land-use change visible by creating false color images. The methodical approach is a combination of Image Differencing and Multi Temporal Stacking using NDVI. This way change is coded by color. All processing steps are automatized.

LCquickVieweR was built for the final project of MB2 – Introduction to Programming and Geostatistics and was initially just a processing script that grew into an R package gradually. At this stage [0.0.1] some functions are customized for my latest project, but can be adjusted easily.

Animation 1: LCquickVieweR final product.


Install LCquickVieweR directly from github by using devtools.



LCquickVieweR provides a small set of functions:

Adjusting study area:

  • mergeThis() – [0.0.1] merges two tiles into a single image for every dataset in a committed directory. Including more tiles is possible by adjusting the referenced raster::mosaic() function.
  • subsetThis() – crops every raster image in a committed directory to the extend of any shapefile.

Image Differencing and Multi Temporal Stacking using NDVI:

  • getNDVI() – computes the NDVI for every Landsat5 and Landsat8 scene in a committed directory.
    • NDVI() – basic ratio computation using Red & NIR bands, see NDVI.
    • Landsat5_NDVI() – looks for the right Landsat5 bands for NDVI computation.
    • Landsat8_NDVI() – looks for the right Landsat8 bands for NDVI computation.
  • getDeltaNDVI() – creates image subtractions of every successive pair within a directory. The order of subtractions is the order of the committed directory.
    • deltaNDVI() – raster calculation: deltaNDVI() subtracts NDVI datasets from each other. The prior dataset is subtracted from the later.
  • stackTime() – creates the final product by stacking the prior, later, and delta datasets into their respective RGB channels.

Bonus functions that make RStudio life easier:

  • packageChecker() – takes a list of packageNames and checks it against the internal library. If a package is missing, it will download, install and activate it. If a package is already installed but old, it will be updated and activated. If a package is already installed, it will be activated.
  • set.wd()– setting a working directory by pasting a windows path directly, without changing any single \backslash.
    • backslashConverter() – converts \ into /.

Get Started

A quick demonstration of what LCquickVieweR can do:

Put all your downloaded satellite images into one folder. Up to this point the automatization works only for Landsat 5 and 8 scenes. Bands from other satellites need to be addressed manually.


# Load packages
packages <- c("raster", "sp", "RStoolbox", "rgdal")

# set your working directory to your sat-image folder

# create subfolders for temporal datasets and results
directories <- c("result_NDVIs", "result_mosaic", "result_subset", 
                 "result_deltaNDVIs", "result_falseColor")
for(i in 1:length(directories)){
# create the main list of your working directory
dirList <- list.files()

Main program:

# creating NDVIs for all downloaded data

Figure 1: Converting all datasets into NDVI datasets.


# filtering for needed tiles
imageTile1 <- list.files("result_NDVIs/", pattern = "177044")
imageTile2 <- list.files("result_NDVIs/", pattern = "177045")

# combining tiles for full study area
mergeThis(imageTile1, imageTile2)

# loading extent of study area -> shp-file
studyArea <- readOGR(dsn = "_vector_data", layer = "studyArea")
# addressing all merged images
allMosaics <- list.files("result_mosaic/")

# creating subset from all mosaics
subsetThis(allMosaics, studyArea)

Figure 2: Merged and cropped study area.


# getting all subsets into a list
allSubsets <- list.files("result_subset/")

# image differencing deltaNDVI()

# collecting preprocessed datasets for final product
delta <- list.files("result_deltaNDVIs/")
ndvi <- list.files("result_subset/")

# creating main land-use change product
stackTime(ndvi, delta)

Figure 3: Assembling the final product.



Once the processing is done, your results will look pretty much like the scenes in the GIFs. Regardless of where that scene is from, the colorCode will still be the same:

  • reddish colors: lost areas
  • cyan colors: gained areas
  • yellowish and purple areas: areas without change

In general color depends on NDVI intensity in both dates.

Animation 2: LCquickVieweR final product.

To Estimate Biomass Using Light Use Efficiency Model in R

Recently, I published “lue” package in R that is based on the light use efficiency model, which returns the biomass of any crop based on the simple physiological paradigm modelled by Shi et al. (2007). It contains LUE_BIOMASS () which calculates the absorbed photosynthetically active radiation (APAR) in the first step and the actual light use efficiency (LUEact) in the second. Many climatic parameters like clear sky photosynthetically active radiation (PAR), minimum, maximum and dewpoint temperature, which affect the biomass, has been also considered as an input variable. The thresholds of these climatic parameters play a significant role in calculating accurate biomass (Russel and Wilson 1994). Therefore, this function also considers the threshold values for example, the minimum values of minimum temperature signify the LUEact = 0 and maximum values of minimum temperatures define that LUEact equals to the optimal light use efficiency(LUEopt). Every crop has its own LUEopt, for instance the LUEopt for wheat is 3.0 (Djumaniyazova et al., 2010), in that case LUE_BIOMASS () multiplies this optimal value with minimum temperature. The output generated by this function looks similar as below:

Biomass_wheat <- LUE_BIOMASS(fpar_raster, par,tmin,-2,12,3) ,


Similarly, vapour pressure deficit (VPD) also alters the values of biomass. The LUE_BIOMASS_VPD () of this package calculates the biomass by considering the effect of VPD. The complete code with all functions of lue package is available on GitHub. If you have any more ideas or suggestions, please update us via GitHub (


Shi. Z., Ruecker, G. R., Mueller, M., Conrad, C., Lamers, J. P., Ibragimov, N., Martius, C., Strunz, G., Dech, S., & Vlek, P. L. (2007) – Modeling of Cotton Yields in the Amu Darya River Floodplains of Uzbekistan Integrating Multitemporal Remote Sensing and Minimum Field Data. Agronomy Journal 99, 1317-1326.

Russell, G., & Wilson, G. W. (1994) -An Agri-Pedo-Climatological Knowledge-Base of Wheat in Europe. Joint Research Centre, European Commission, Luxembourg, 158.

Djumaniyazova, Y., Sommer, R., Ibragimov, N., Ruzimov, J., Lamers, J., & Vlek, P. (2010) – Simulating water use and N response of winter wheat in the irrigated floodplains of Northwest Uzbekistan. Field Crops Research, 116, 239-251.

Number of currently enrolled EAGLE students

Methodology to delineate the critical regions for mitigation of carbon emissions due to groundwater pumping

After estimating the total carbon emissions from groundwater pumping (see the previous blog), I wanted to delineate the critical regions of the study region with high carbon emission rate. Therefore, this present study addressed the expansion of groundwater use that not only resulted in a speedy decline in the groundwater table but also added to the problem of carbon emissions (C-emissions) in Punjab. Estimates of C-emissions from groundwater pumping for irrigation in central Punjab indicated that during the last 15 years (1998 – 2013), the groundwater levels had fallen by 8.89 m; pump set density (per 1000 ha) increased by 45%; groundwater use increased by 140 Mm 3 ; energy requirements increased by 4845.1 MkWh (90%), all this resulted into an increase in C-emissions by 984.1 kilotons (30%). The relationship between carbon emissions and groundwater depth showed that for each meter fall of groundwater level in central Punjab, C emissions will increase by 2.67 g/m³. The present level of groundwater exploitation in Bhawanigarh, Dharmkot, Dhuri, Malerkotla I, Malerkotla II, Nabha, Nakodar, Sangrur, Samana, Sherpur, and Sunam is considered as a threat to the environment and should be targeted to reduce C-emissions.

For your views and consideration, visit Groundwater for Sustainable Development (ELSEVIER).


Figure: Map of the study area and canal network of central Punjab with critical regions

A methodology to estimate carbon emissions from groundwater pumping

Recently, I published a case report, which was based on a methodology to estimate carbon emissions from groundwater pumping in Punjab, India. The report was correlated with the fact of the green revolution momentum in the late 1960s and 1970s that resulted very negatively to some of the Indian states, especially Punjab. Due to this, the carbon emission patterns due to groundwater pumping in the state have changed enormously, and today the sector is one of the main contributors of C-emissions. Therefore, this study identified the critical blocks of central Punjab that should be aimed at reducing the carbon emissions of the groundwater economy. This study was thus based on the regional scale and highlights various factors that played a crucial role in contributing to these emissions. For the year 2013, the energy requirement for groundwater pumping computed as 7919.6 MkWh and the contribution to the overall C-emissions was 1349.6 (’000) ton. Along with that, an overlay analysis of the choropleth maps (tubewell density, groundwater draft, groundwater depth, and C-emissions) showed that SC-III zone was the most critical zone of central Punjab.

For your views and consideration, visit to Carbon Management (Taylor and Francis group).

Python Script for QGIS 3.0 Basemaps

The OpenLayer Plugin for QGIS provided all my basemap layers for quite some time now. But since the eagerly awaited launch of QGIS 3.0 earlier this year this plugin became incompatible, leaving you with two options:

  • you either gather and compile all XYZ Tiles manually,
  • OR run a Python Script.

Open the Python Console (Ctrl+Alt+P), take the script and hit “run command”. Done!
Thanks to Klas Karlsson, this will save you a lot of time!

Install every missing R package in one go

Before submitting a project or setting up R on a new system, this function might come in handy. You can put all your favourite or required packages into a single vector and check if they’re already installed.

If not, packageChecker() will take care of that.

Figure 1: Code Snippet (showcase).

copyable snippet

packageChecker <- function(requiredPacks){ check <- requiredPacks %in% installed.packages()[,”Package”] for(i in 1:length(check)){ if(check[i] == FALSE){ install.packages(requiredPacks[i]) } } } # execution requiredPacks <- c(“pwltools”, “sp”, “raster”, “ggplot2”, “RStoolbox”) packageChecker(requiredPacks)


Once I completed coding this, I realized that installing the packages might only be half the job. You’ll most likely want to load them into your R session before executing the rest of your code.

While researching how to operate vectors on library() I found a neat existing solution.
But adding this inside the loop will do the trick.

copyable snippet

sapply(requiredPacks, require, character.only = TRUE)


Thanks to Steven Worthington.


New 2017 EAGLE students welcomed

The new 2017 EAGLE students have been welcomed to Wuerzburg and recently started their studies. Our webpage will be updated as soon as reports and photos about the new students are available.

EAGLE and Department of Remote Sensing Summer BBQ

Since the first ever semester of the EAGLE program has come to an end, we think it is time to come together and enjoy a nice summer evening. On the 23d of June, the EAGLE students invite to a great BBQ at the University of Würzburg. We hope for a good mixture of students, lecturers and other EAGLE interested people. The party will be a great place to share the experiences and information with each other. If you are interested to join, please fill in the contact sheet. More information will be provided via email – stay tuned!