Extract Clouds from NAIP Imagery?

1009
5
08-10-2017 09:00 AM
JoanBiediger
New Contributor III

Has anyone tried or have ideas on the best way to extract clouds from NAIP imagery?  I would like to be able to figure out an automated way to create a polygon layer of cloud cover on this imagery.  If possible I would like to perform this operation from an image service.

0 Kudos
5 Replies
CodyBenkelman
Esri Regular Contributor

Joan

We could brainstorm a lot of creative ideas, but in the end my advice would be "don't try".

First, NAIP has very few clouds.  It took me quite a while to find this pair:

Second, NAIP is so heavily processed, it will be very hard to come up with a tool (even using state of the art machine learning or "deep learning" methods) that can recognize the shapes and pixel values of clouds.  The cloud above was on a seamline between 2 images, and got clipped such that it has a rectangular edge!   You can see them in this map  http://arcg.is/1KnO1K  and note that the two white buildings in this scene have brighter pixel values than the clouds.  If you try to highlight all the "white" pixels, I'm guessing you'll have 1000:1 false positives vs. actual clouds.  (Note you have to sign in to ArcGIS Online to see the NAIP image service in the map link)

With NAIP, you also don't have sensor location and image time metadata to attempt to correlate candidate clouds with corresponding shadows.  So, applying this sort of logic would be complicated but *possible* with satellite data (although not certain it would succeed), but you can't even attempt it in NAIP.  

On top of the challenge of reliably finding clouds and eliminating false positives, you'd have another significant challenge in creating a polygon.  In the above example, where would you draw your ideal polygon boundaries?

My key question is "why?". If you're performing some form of auto classification and concerned about errors, I think clouds are the least of your worries.  Again, there are very few in the NAIP imagery (at least everywhere I've looked), so statistically any cloud errors will be negligible compared to other error sources.  The geometric quality is great, but the radiometric quality of NAIP is not suitable for doing any but the simplest automated analysis - gross delineation of vegetation using NDVI can be somewhat successful, but clouds would be a very minor issue.  

NAIP is great for manual interpretation (and you can't beat the price), but if you're attempting to automate some analysis, I'd be very cautious about expectations.  If you can share information here about your higher objectives, we might have some useful advice.  


Cody B

JoanBiediger
New Contributor III

Hi Cody

Thanks for the detailed response!  As for why clouds; I know NAIP has very few clouds.  I work for APFO and as part of the QA process my agency works very hard to ensure the imagery meets or exceeds the contract specifications of 10% or less clouds.  It is a time consuming manual process which I have looked at trying to automate.  I know what you mean about the difficulties of classifying.  We do have time collection time stamp information on our public server in the seamline files.  Even if there was a way to direct the reviewer to most likely candidate areas would probably be good.  

I have looked at this for a long time and tried many things with limited success.  I was hoping maybe there might be something out there I had missed.

0 Kudos
CodyBenkelman
Esri Regular Contributor

Joan

Sorry my response wasn't more helpful.  I hadn't looked to realize you work @ APFO.  Presuming you have access to accurate frame-by-frame metadata (either with separate image frames, or a feature class overlay to show frame boundaries in a mosaic) then you *could* estimate cloud shadow locations to help validate or reject 'candidate clouds' that were identified by spectral and possibly spatial metrics.  (You'd need to estimate cloud altitude and reference a DEM).  It would be complicated and pretty sophisticated but might be possible.  


I think this answers my concern about generating a polygon, too - I expect a point feature would suffice to direct your QC personnel for where to look.  

I sent you a separate email 

Cody B

JoanBiediger
New Contributor III

Hi Cody

Thanks for the ideas they definitely are food for thought.

0 Kudos
JarlathONeil-Dunne
New Contributor III

We developed an automated process for cloud detection using object-based approaches. Happy to set up a demo if it would help.

Jarlath O'Neil-Dunne : University of Vermont 

0 Kudos