Featured post

GUEST POST: A Very Brief History of Optical High Resolution Satellite Imaging

The history of the optical high resolution satellite images starts from classified military satellite systems of the United States of America that captured earth’s surface from 1960 to 1972. All these images were declassified by Executive Order 12951 in 1995 and made publically available (Now freely available through the USGS EarthExplorer data platform under the category of declassified data). From 1999 onward, commercial multispectral and panchromatic datasets have been available for public. Launch of Keyhole Earthviewer in 2001, later renamed as Google Earth in 2005, opened a new avenue for the layman to visualize earth features through optical high resolution satellite images.

A comparison of declassified Corona (1974) vs. GeoEye-1 (2014) image. Image credits: EarthExplorer (Corona) and Google Earth (GeoEye-1).

In the current era, most high resolution satellite images are commercially available, and are being used as a substitute to aerial photographs. The launch of SPOT, IKONOS, QuickBird, OrbView, GeoEye, WorldView, KOMPSAT etc. offer data at fine resolutions in digital format to produce maps in much simpler, cost effective and efficient manner in terms of mathematical modeling. A number of meaningful products are being derived from high resolution datasets, e.g., extraction of high resolution Digital Elevation Models (DEMs) with 3D building models, detailed change assessments of land cover and land use, habitat suitability, biophysical parameters of trees, detailed assessments of pre and post-disaster conditions, among others.

Both aerial photographs and high resolution images are subject to weather conditions but satellites offer the advantage of repeatedly capturing same areas on a reliable basis by considering the user demand without being restricted by considering borders and logistics, as compared to aerial survey.

Pansharpening / resolution merge provides improved visualization and is also used for detecting certain features in a better manner. Pansharpening / resolution merge is a fusion process of co-georegistered panchromatic (high resolution) and multispectral (comparatively lower resolution) satellite data to produce high-resolution color multispectral image. In high resolution satellite data, the spectral resolution is being increased and more such sensors with enhanced spectral sensitivity are being planned in the future.

List of the Spaceborne Sensors with <5 m Spatial Resolution

Sensors Agency/Country Launch Date Platform altitude (km) GSD Pan/MSS (m) Pointing capability (o) Swath width at nadir (km)
IKONOS-2 GeoEye Inc./USA 1999 681 0.82/3.2 Free View 11.3
EROS A1 ImageSat Int./Cyprus (Israel) 2000 480 1.8 Free View 12.6
QuickBird DigitalGlobe/USA 2001 450 0.61/2.44 Pan and MSS alternative Free View 16.5
HRS SPOT Image/France 2002 830 5X10 Forward/left +20/-20 120
HRG SPOT Image/France 2002 830 5(2.5)x10 sideways up to ±27 60
OrbViw-3 GeoEye Inc./USA 2003 470 1/4 Free View 8
FORMOSAT 2 NSPO/China, Taiwan 2004 890 2/8 Free View 24
PAN (Cartosat-1) ISRO/India 2005 613 2.5 Forward/aft 26/5 Free view to side up to 23 27
TopSat Telescope BNSC/UK 2005 686 2.8/5.6 Free View 15/10
PRISM JAXA/Japan 2005 699 2.5 Forward/Nadir/aft -24/0/+24 Free view to side 70 35 (Triplet stereo observations
PAN(BJ-1) NRSCC (CAST)/China 2005 686 4/32 Free View 24/640
EROS B ImageSat Int./Cyprus (Israel) 2006 508 0.7/- Free View 7
Geoton-L1Resurs-DK1 Roscosmos/Russia 2006 330-585 1/3 for h = 330km Free View 30 for h = 330km
KOMPSAT-2 KARI/South Korea 2006 685 1/4 sideways up to ±30 15 km
CBERS-2B CNSA/INPE China/Brazil 2007 778 2.4/20 Free View 27/113
WorldView-1 DigitalGlobe/USA 2007 494 0.45/- Free View 17.6
THEOS GISTDA/Thailand 2008 822 2/15 Free View 22/90
AlSat-2 Algeria 2008 680 2.5 up to 30 cross track Free view 17.5
GeoEye-1 GeoEye Inc./USA 2008 681 0.41/1.65 Free View 15.2
WorldView-2 DigitalGlobe/USA 2009 770 0.45/1.8 Free View 16.4
PAN (Cartosat-2, 2A, 2B) ISRO/India Cartosat 2-2007 Cartosat 2A-2008 Cartosat   2B-2010 631 0.82/- Free View 9.6
KOMPSAT-3 KARI/South Korea 2012 685 0.7/2.8 ±45º into any direction (cross-track or along-track) 15
WorldView-3 DigitalGlobe/USA 2014 617 0.3/1.24/3.7/30 13.1

 Conflicts of Interest: The findings reported stand as scientific study and observations of the author and do not necessarily reflect as the views of author’s organizations.

 About this post: This is a guest post by Hammad Gilani. Learn more about this blog’s authors here


Mapping and Visualization for Pakistan General Election 2018

Recently, the General Election 2018 was held in Pakistan. I was following with interest some of the mapping and visualization tools developed and used by different media outlets for communicating and consolidating the election results. Below I give a brief overview of the different visualizations used. Please note that these are just my personal views, and I am not a “GIS expert” per se to really comment on the technical tools and implementation. I am just giving my opinion from a user perspective and an EO scientist / professional.




Screenshot of DAWN Election Map

This was developed by DAWN GIS team and TPL Maps. I liked the layout and the map design; the map information is very detailed at different zoom levels. The idea of displaying election constituency labels by hovering over the areas was very nice. However, I feel that the map was not utilized to its full capacity. As a EO professional, I would have loved if DAWN would have used this map as a focus point for their election coverage, but instead it was relegated a bit to the side. Also, as you can see now, none of the election results are updated / available on this map, and it only shows the major candidates for each constituency. However, at the same time, they show the past election results in a nice graphical format, which was a good idea. The search functionality is also good.

Geo TV:



Screenshot of GEO election map

The Geo TV map-like output is good in that way it immediately lets the user see which party won which constituency through the color-coding. However, there is no color legend, not even in the table below showing the overall election results. Yes, there is a little bit color coding when we open the results from the top bar. But the effort needed a lot of contribution from a user-interface designer or someone similar. Also, I am not sure how much true “GIS” was used here. A good feature is when you click “details” it takes the user to another page with lot of details about the constituency.

BBC Urdu:


This map also uses the hover labeling as in the DAWN map; however the DAWN map hover is better as it also auto-highlights the constituency to give a better interactive response to the user. Furthermore, the map frame size is too small; would have been better to use the full page width. Both 2013 and 2018 election results are updated. The search functionality is useful. The color legend makes the map very user-friendly.



A unique and very interesting visualization by Plotree. I don’t know how much actual “GIS” is used here, for example there are no constituency boundaries, but perhaps this is a decision by the developers to not clutter with too much information. There are many unique and interesting visualisation features here, such as: the circle size shows vote margin for winner, just hovering over the circle shows succinct summary of voting details, using the filter can immediately show location-wise which parties have won more. None of the other maps have given a map for provincial elections, but Plotree maps give results of each province as well. There is also the District Wise Vote Share feature, which I invite the readers to explore themselves.

Difference in “date” function implementation in Mac OSX and Ubuntu bash

A few weeks ago, I had written some bash code in Max OSX terminal to identify the current date, and then defining the date a few days back in time. When I tried to run the same code in Ubuntu bash terminal, the code line for identifying the previous date fails. Some brief time spent on Google told me that there is some difference in how the “date” function is implemented in Mac OSX and Ubuntu bash. The correct usage is as follows:

curr_date=$(date +”%Y%m%d”)
echo ‘Current date: ‘$curr_date

# Find the date 3 days ago – For OSX bash:
prev_date_OSX=$(date -v-3d +”%Y%m%d”)
echo ‘Previous date: ‘$prev_date

# Find the date 3 days ago – For Linux Ubuntu bash:
prev_date=$(date -d “3 days ago” +”%Y%m%d”)
echo ‘Previous date: ‘$prev_date

Uninstalling User-Installed Python from macOS Sierra

macOS Sierra comes with a built-in default Python installation. On macOS Sierra 10.12.6, this default installation is on the /System/Library/Frameworks folder (which, by the way, is a critical system folder and should not be touched). macOS Sierra 10.12.6 comes with Python 2.7, which is getting outdated very fast, and also Apple itself recommends officially that to run a coding project, users should install their own updated version of Python with their own dependencies setup.

I had installed Python 2.7 myself last year when I was in a mood to start working on Python, and at that time I didn’t know that Python comes installed in macOS by default. Now I have to start working with Python in earnest for a project, and wanted to uninstall the custom Python 2.7 installation, so that I can start from scratch on a new installation of Python 3. This required some web-surfing, and some hours to figure out how to do it properly. After reading and deciphering some posts by others, I can now give an updated clean solution.

This assumes you have a good knowledge of shell / bash usage. This works for Python 2.7 installed by the user, but I am sure it works the same if you want to uninstall Python 3 from macOS Sierra too.

  • Step 1: Manually remove Python 2.7 folder from Applications (drag to Trash).
  • Step 2: Remove the Python 2.7 framework from /Library through the terminal:   sudo rm -rf /Library/Frameworks/Python.framework
  • Step 3: Clear python files from /usr/local/bin:      sudo rm -rf /usr/local/bin/python*
  • Step 4: Clear symbolic links to deleted Python files. If you have Homebrew installed already (highly recommended), then simply run brew doctor first, which will show you the broken symbolic links. Then just run brew prune to fix them (you can check it by running brew doctor again). If you don’t have Homebrew installed, then follow Step 3 here.

For more discussions, see this, this, and this.

Now we are ready for a fresh Python install from scratch!

NOTE: After uninstallation, I do need to fix the system to call the default python version installed in macOS Sierra. Probably need to revise some path specifications. But I am more concerned with the new Python3 installation at this point :). See here for more on this.

CAUTION: Under no circumstances should you try to delete or touch anything in the /System or /usr/bin/python folders. This can cause your macOS to malfunction, your Macbook could self-destruct, and there is a possibility of an alien invasion as well. If you don’t believe me, just do a web search on why not to touch anything in the macOS /System folder.

The SAR Journal Webpage and Community

I just discovered this amazing Synthetic Aperture Radar (SAR) website and magazine site, so aptly named as www.syntheticapertureradar.com. The website and content in it is quite amazing, and being a SAR aficionado, I have immediately signed up for their newsletter. I wish someone sends me an invite to the “Community” also, it seems to be only by invitation 🙂

In their own words, the website managers “represent the worldwide airborne and spaceborne SAR community worldwide. We are operated, moderated and maintained by members of the SAR community.”

So take a look at the SAR Journal website and sign up for the newsletter:



GLaSS and EOMORES Inland Water Remote Sensing Projects

_DSC0230 copy

Phander Lake in District Ghizer, Gilgit-Baltistan, Pakistan. Photo credits: Auhor

The EU collaborative project GlaSS (Global Lakes Sentinel Services) developed tools, algorithms and applications for the monitoring of global lakes and reservoirs using the Copernicus Sentinel-2 (S2) optical and Sentinel-3 (S3) satellite data, and also USGS Landsat 8 data. The great thing about this project is that the results and developed data processing methodology have been made available online as training material in a very detailed and systematic manner. I have gone through them briefly, and they are readily usable in undergraduate or graduate level courses in remote sensing, especially water & hydrology remote sensing focussed courses. There are 10 lessons in total. Take a look at the GlaSS training material here:


The GlaSS project has lead to various news reports and scientific publications. The project was finished few months ago, and in fact seems to have transitioned into the EU H2020 EOMORES (Earth Observation-Based Services For Monitoring And Reporting Of Ecological Status) project, which claims to be a project “aiming to develop commercial services for monitoring the quality of inland and coastal water bodies, using data from Earth Observation satellites and in situ sensors to measure, model and forecast water quality parameters.” The EOMORES project has just started few months ago, and we look forward to seeing what results it brings us in the future.


Suspected Sep. 2017 Oil Spill in Clifton, Karachi: A Follow-up Analysis with SAR Images

On the third day of Eid-ul-Azha, September 4, 2017, beachgoers in Karachi reported oil or oil-like substance washing ashore on the Clifton Beach. Geo News reported the incident here.

As a researcher in the field of radar remote sensing, it got me thinking whether we can spot it on satellite images, if incidentally acquired by a space-borne Synthetic Aperture Radar (SAR) sensor. Interestingly, I found some acquisitions acquired by the European Space Agency (ESA)’s Sentinel-1A sensor. Unfortunately there was no acquisition on the 4th of September. The closest acquisition before the suspected spill is on 01.09.2017 @ 01:26, and the latest is on 10.09.2017 @ 13:35. The good news is that the latest image shows no sign of ‘low brightness’ characteristic of oil slicks. However, in the image on 01.09, we do see some dark areas which are somewhat troubling.


Referring to the figure below, the dark areas immediately below the Clifton area made me nervous — if that is oil spill traveling towards the shoreline, it’s huge! But it’s probably not, since it’s just too huge to have gotten ignored! It’s likely a ‘look-alike’ [1], which may appear in the radar image indicating local calmness of the water. However, I’m no expert in oceanography, so I don’t make any claim about it. Nonetheless, it does cause to raise an eyebrow.


Sentinel-1 C-Band SAR images, projected in map coordinates, and overlaid in Google Earth. No clear evidence of oil slick close to Clifton Beach. Two patches of probable oil slick detected on 01.09.2017, 15-30 km southwards of the beach.

At the same time, there are two instances (marked in red) which do seem to be oil spills, perhaps in the wake of the very same vessels passing nearby. In each case, it extends more than 6 km. Since the image is now 12 days old, and we don’t observe the suspected spill in the latest image — it may have dispersed by now — the main lesson is that the “authorities should keep a closer look” in future!


A close-up of the suspected oil spill marked in red in the figure above.

I am open to feedback/comments from other fellow scientists/experts in the field of SAR/Remote-Sensing/Oceanography, especially if they fear I may have missed something.

Disclaimer: This is an analysis performed from “remote” sensing images. Authorities must confirm or reject the suspicions on the basis of local forensic evaluation.

About this post: This is a guest post by M. Adnan Siddique.