Discrimination between cloudy and clear-sky areas poses an important issue for satellite remote sensing because clouds have a large impact on radiance. It is necessary to distinguish cloudy areas from clear ones before further analysis of the images. Many algorithms have been proposed for cloud classification. Ackerman has developed an algorithm in 1998, referred to as MOD35, for operational cloud mask data of MODIS observation. MOD35 consists of many threshold tests with static threshold values. For the land cover types, it considered four possible surface-type processing paths: land, water, desert, or coast. If multiple surface-types are assigned to one pixel, the algorithm chooses the most important characteristic for the cloud masking process, and the precedence are coast, desert, land or water. In this study, we modify this algorithm in two aspects. First, we further classify the land into vegetated area, urban and bare soil area. Secondly, we consider each pixel as mixed pixel of different surface-types and perform spectral unmixing. The preference of surface-types will depend on their abundance in that pixel. The comparison of experimental results will be conducted with MODIS data.