The CFMask algorithm populates cloud, cloud confidence, cloud shadow, and snow/ice pixels in the processing of Landsat Level-1 data products, with the results represented as bit-mapped values within the Landsat Collection 1 Level-1 Quality Assessment (QA) Band. CFMask derives from the Function of Mask (FMask), an algorithm written in MATLAB at Boston University and translated to C at USGS EROS to facilitate its implementation in a production environment.
CFMask is a multi-pass algorithm that uses decision trees to prospectively label pixels in the scene; it then validates or discards those labels according to scene-wide statistics. It also creates a cloud shadow mask by iteratively estimating cloud heights and projecting them onto the ground.
Visit the CFMask Algorithm web page for more information.