Facticius Nebula

Global Nominee

Facticius Nebula received a Global Nomination.

THE CHALLENGE: Clouds or Contrails

On clear or partly sunny days, people might look up at the sky and see straight lines of what appear to be clouds or white smoke. These lines are not smoke or natural clouds; they are contrails produced by aircraft. Contrails form because water vapor from jet engine exhaust passes through a cold and humid part of the air at high altitudes. Sometimes the jet that created the contrails is not visible overhead because winds aloft have blown the vapor trail into the observed area after the jet has passed. Naturally occurring high thin cirrus clouds do not form straight lines, they are more diffuse and irregular in shape than a contrail. Can an app be developed to help a ground observer determine the probability that an aircraft made the thin lines of white 'clouds' overhead?



We have implemented an approach based on the physical model of light scattering to determine the possibility that a given cloud pattern is artificial or natural. The light scattering physics works on the two-dimensional image taken by the user and back-fills the third dimension in order to evaluate cloud mass properties, dispersion patterns and dispersion gradients. A performance table of typical commercial and military engines allows the algorithm to correlate the geometrical and physical properties of the contrail with the type of engines that may have created it. A probability of >90% is achieved for short-duration contrails.

This approach does not rely on known aircraft flight-path data and works especially well for long endurance contrails that drift long distances under strong winds and sometimes show up in areas where no local flight-path could exist. However, the signature of these contrails is detected by the current methodology within 80-90% probability for such scenarios.

User Interaction with the App

The Andriod app UI allows the user to take a picture of clouds in the sky via the phone's native camera. The user interaction with the app is fairly simple. As soon as the user launches the app, they are presented with a screen that asks the user to take a picture of the sky. Once the user takes the photo and taps the “Contrail or Not” button, the red-intensity scattering analysis algorithm is initiated, followed by the pattern recognition and mass properties analysis algorithms. The result is then displayed to the user in the form of a glyph

Analysis theory

Note to reader:

See our presentation slides in the GitHub repository for detailed mathematical arguments in support of the following descriptions.

Why is the sky blue? Why are the clouds white?

The answer to this basic question resides at the heart of our analysis and the subsequent app we created around it.

Rayleigh scattering serves as a useful phenomenon to quantify the amount of water present in a piece of the sky and is a function of the particle size that light interacts with as well as the wavelength of light. Particle size is often assumed as constant for air and the variability is fixed on the wavelength of light. This gives us the classical form of the famous Rayleigh scattering functions.

Rayleigh scattering gives the blue hue to the sky since “blue” wavelengths are smaller than the “red” wavelengths and therefore scatter more.

However, water particles in clouds are much bigger (around 10μm) and are much bigger than the typical 2μm particle sizes needed to scatter sunlight equally in all directions. So clouds are white.

For our purposes, can we restructure the Rayleigh function into a particle size variability?

We assume that the red wavelengths of light are what need to scatter to create white light from the existing blue scatter. We can also evaluate the projected area of water particles in a small area element of the image using numerical formulations. We then reformulate the Rayleigh scattering of red wavelengths as a function of this projected area.

The red scattering can be normalized between standard red scattering for the atmosphere with no water particles and a water-saturated white scattering intensity in contrails/clouds.

We evaluated the use of the following two methods to eliminate the blue scatter intensity from the image:

•Threshold using absolute gray-scale (ABS).

•Threshold using ratio of blue and red color values (RBRC).

For this effort, RBRC was found to be more effective.

Mass analysis from the red-scatter intensity plots

Once the pattern lines are recognized along the water density distributions, we evaluate the mass of water inside a thickness layer of the projected water area along the pattern line. The thickness of the projected water area is assumed to be one aircraft engine exhaust diameter for a variety of typical aircraft engines available for commercial airlines.

The algorithm works by checking if the mass of water contained in the predicted contrails matches any known aircraft configurations for the length scale of the image The image field of view allows us to determine the length and width size of projected water mass volumes and thereby convert them from image scale to real world scale.

If an aircraft were to pass through this known field of view at known cruise speeds (say, Mach 0.8), the length of the pattern line and the sonic velocity at this altitude will allow us to determine the mass of water that would be present in a given length of the pattern line.

This value from the image is compared with known data for various aircraft types to see if there is a rough correlation. If correlation exists for a given pattern line, the pattern line is potentially a contrail.

Contrail checks

In summary, we use the following three checks to determine the probability of a cloud pattern being a contrail:

1. Red-light scatter intensity pattern

2. Mass analysis from red-scatter intensity values

3. Dispersion patterns

Conclusions & Future Work

The strategy proposed here to determine clouds from contrails is capable of working with mixed images of contrails interspersed with dissipated and concentrated cirrus cloud patterns. A probability of >90% is achieved for short-duration contrails while a probability of 80-90% is achieved when interrogating a dispersion pattern over long duration contrails.

An app (or image analysis software) built around this approach could also incorporate more checks based on local weather data (such as wind vectors) to help the existing pattern recognition algorithm make more advanced decisions and further reduce possibility of erroneous predictions.

More work can be expended on improving the threshold algorithm in the pattern recognizer by using a moving threshold approach.

When isolating patterns from an image where patterns crisscross, information from one pattern was seen bleeding into the other. This can be eliminated/minimized by using the median width of the pattern lines. The theoretical underpinnings of the median width of a dispersion pattern is an area that needs more investigation.

Detailed project notes

The reader can access our detailed mathematical formulations and theoretical arguments in favor of the current approach within the presentation slides attached to our GitHub repository (see link below). The reader can also access our various source codes for the above discussion from the GitHub repository.

The Team

  • Vivek Ahuja
  • Abhshek Bichal
  • Ritesh Bafna
Resources Used

Intel Visual Fortran



Andriod Studio

Made inRound Rock, TX USA
from the minds of
How they did it