This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
Shadows in images have long been disruptive to computer vision algorithms. They appear as surface features, when in fact they are caused by the interaction between light and objects. This may lead to problems in scene understanding, object segmentation, tracking and recognition. Because of the undesirable effects of shadows on image analysis, much attention was paid to the area of shadow removal over the past decades and covered many specific applications such as traffic surveillance, face recognition, image segmentation and so on. In spite of these extensive studies, however, it is difficult to develop a fully automatic, general-purpose shadow removal system in that shadows and shadings vary from scene to scene and different kinds of shadows may have different physical properties.
In outdoor scenes, there are mainly two light sources: direct sunlight, which can be regarded as a point light source; diffuse skylight, which can be regarded as an area light source. Shadows will occur when direct light from a light source is partially or totally occluded. Shadow can be divided into two types: self shadow and cast shadow . The self shadow is the part of an object that is not illuminated by direct light; the cast shadow is the dark area projected by an object on the background. Cast shadow can be further divided into umbra and penumbra region. The umbra region is the part of a cast shadow where direct light is completely blocked; the penumbra region is the part of a cast shadow where direct light is only partially blocked. As shown in Fig. 1.1, the illumination on nonshadow region is daylight (direct sunlight and diffused skylight); that on penumbra is skylight and part of sunlight; that on umbra is only skylight. Since skylight is a component of daylight, pixel intensity in shadow must be lower than that in nonshadow background.
Fig 1 Shadow will occur when direct light is occluded
As detecting shadows from image sequences has made great progress, detecting them from a single image remains a difficult problem. In contrast to multi images, shadow detection in still image is more difficult due to less information available. In spite of different extensive studies, many proposed approaches are either designed for specific applications or need some assumptions about the environments. In addition, the majority of the proposed methods focus on detecting moving shadows in image sequences. Even if some methods can work on single still image, they have suffered from at least one of the following three problems.(1)Needing some prior knowledge, such as human's interaction.(2)Effective in specific application.(3)Failing on complex scenes. In contrast, the method proposed in this work is not designed for specific applications and can automatically extract shadows from single still images, even those with complex outdoor scenes.
Classification plays an important role in various fields such as pattern recognition, decision-making, data mining and modeling. There are three main types of fuzzy clustering - fuzzy clustering based on fuzzy relation, fuzzy clustering based on objective function, and fuzzy generalized k-nearest neighbor rule. The fuzzy clustering based on objective function is the most popular one, because it is quite facile, and allows the most precise formulation of the clustering criteria. However, these methods also have some weakness. For examples, the most known Fuzzy C-Means [17,18] (FCM) algorithm is generally less sensible with the local extremes due to its non-convex objective function, and the performance of them mostly rely on the initialization of parameters or the initial solution. Therefore many researchers introduce global optimization methods, such as Genetic algorithm (GA), and Tabu search (TS) to avoid the above problems.
Technically, shadow detection methods can be classiï¬ed into property-based and physics-based. Physics-based techniques need some prior knowledge, such as light and geometry, camera calibration, or indoor scenes. However, it is extremely difficult to obtain the accurate model for an arbitrary scene because the environments are complex and the light sources vary from time to time and from place to place. Hence, most of physics-based techniques are designed for speciï¬c applications, such as moving cast shadow detection and shadow detection in aerial images . Physics-based methods exploit some knowledge of the scene, which result in these methods being only used in speciï¬c applications they are designed for. When the application environments are different, the algorithms may fail. Property-based techniques identify shadows through shadow features. The most straightforward feature of a shadow is that it darkens the surface it cast on, and this feature is used by al-most all methods. Other features like edge, histograms, texture, geometry property, color ratios, and gradient are also widely adopted. Sometimes, only one feature is not enough. For example, shadows usually have lower pixel values, but pixels that have lower values may not be shadows. Computer vision cannot directly judge that a dark region is a shadow or is a black object. Therefore, most methods combine more than one feature. Property-based approaches are more ï¬‚exible than physics-based ones. They can be applied to a wider class of scenes.
Fuzzy C-Means (FCM)[17,18] algorithm has good clustering efficiency, for which it is widely used in the field of image segmentation. The fuzzy c-means algorithm can speed up the segmentation process for gray-level images. The traditional fuzzy c-means (FCM) clustering algorithm considers only the pixel attributes.
Clustering analysis is a generic term for statistical procedures designed to identify groups of observations that have similar attributes. The objective of cluster analysis is to group observed data in such a way that the entities within a cluster are more similar to each other than to those in other clusters. It is one of the most widely used procedures for exploratory data analysis in many disciplines, including crystallographic statistics and web searches. Evolving clustering method is a clustering algorithm of kind of evolution, on-line and bounding by a maximum distance. It increases the number of cluster or adjusts the centers and the radius real-time dynamically as the entered sample data increasing. In any one cluster, the maximum distance between the example of cluster points and the corresponding maximum distance are less than the threshold Dthr , Dthr selection will have a direct impact on the clustering numbers. Examples of clustering process from a data stream, the whole process start clustering from an empty set. Some of the created clusters to be updated through depend on the location of the current example in the input space as well as changing the location of the cluster centers and increasing the radius of the cluster with the new examples appearance, it will no longer to be updated when its radius meet the threshold.
There are many situations where the classes themselves are initially undefined. Given a set of feature vectors sampled for some population; we would like to know if the data set consists of a number or relatively distinct subset. If it does and we can determine these subsets, we can define them to be classes. This is sometimes called class discovery. The techniques can then be used to further analyze or model the data or to clarify new data if desired. Clustering refers to the process of grouping samples so that the samples are similar within each group. The groups are called clusters.
In some applications, the main goal may be to discover the subgroups rather than to model them statistically. Fortunately, clustering techniques allow the division into subgroups to be done automatically, without any pre conceptions about what kind of groupings should be found in the community being analyzed. Cluster analysis has been applied in many fields. In image analysis, clustering can be used to find groups of pixels with similar gray levels, colors, or local textures, in order to discover the various regions in the image.
In cases where there are only two features, clusters can be found through visual inspection by looking for dense regions in a scatter plot of the data if the subgroups or classes are well separated in the feature space. If, for example, there are two bivariate normally distributed classes and their means are separated by more than two standard deviation, two distances, peaks form if there is enough data. However, distinct clusters may exist in a high-dimensional features space bay a pair of the feature axes. One general way to find candidates for the centers of clusters is to for an n-dimensional histogram of the data and finds the peaks in the histogram.
Segmentation subdivides an image into it's constitute regions or objects. The level to which the subdivision is carried depends on the problem being solved. Segmentation means the process of partitioning or segregating a digital image into multiple segments (sets of pixels, also known as super pixels).That is, segmentation should stop when the objects of interests in an application have been isolated. Image segmentation algorithms generally are based on one of two basic properties of intensity values: discontinuity and similarity. Obviously; Image segmentation is very helpful to accurately judge the objects and its boundary structure by lines, curves, etc. Specifically it can be understood to be the process of pixel labeling, grouping and sharing of visual characteristics.
An image is made up of a set of pixels, and each pixel reï¬‚ects the light that has been received at a sensor in a digital camera or other optical sensor. The light that hits the sensor is made up of two main components, the illumination component that reï¬‚ects the color and intensity of the illuminant, and the reï¬‚ectance component which captures the surface reï¬‚ectance properties, namely the color of the object reï¬‚ecting the light. It is these two components that deï¬ne the properties of the light that hits the sensor. Further, the sensor converts the light into a digital signal, with a certain amount of noise. Color constancy is concerned with ï¬nding an intrinsic measurement of the color of the surface at a pixel in such a way that the measure will be the same for that same surface independent of any illumination effects, and is useful for recognizing speciï¬c colors across images, or even within the same image if the lighting conditions vary within the image. Simply put, we wish to ï¬nd a way of specifying that a red ball has a speciï¬c color value that it will retain in any image of the ball under any lighting condition. Color constancy then can be used for object recognition tasks, or for more specialized tasks such as shadow removal, which is what we will be concerning ourselves with. Color is often analyzed by considering three separate channels, red, green and blue, and for the purposes of this report we will use this RGB color model. The intensity, then, of each of these three color channels can be described by the following equation
This algorithm assigns each training vector to multiple clusters and belongingness of the vector to a certain cluster is specified by a membership value between zero and one. In this way this algorithm specifies degree of membership of each vector in each of the K clusters. Suppose that the objective is to segment objects of a specified color range in an RGB image. Given a set of sample color points representative of the colors of interest. We obtain an estimate of the average color that we wish to segment. The objective of segmentation is to classify each RGB pixel in a given image as having a color in the specified range or not [16, 20]. In order to perform this comparison, it is necessary to have a measure of similarity. One of the simplest measure is the Euclidean distance.. Because the distances are positive and monotonic, we can work with the distance squared instead, thus avoiding square root computation. To subdivide the data set into membership functions it needs some procedure to establish fuzzy thresholds between classes of data. We can determine a threshold line with an entropy minimization screening methods; they start the segmentation process first into two classes. By partitioning the first two classes one more time, we can have three different classes.
Therefore a repeated partitioning with threshold value calculations will allow us to partition the data set into a no of classes or fuzzy sets, depending on the shape used to describe the membership in each set. Membership function generation is based on a partitioning or analog screening concept, which draws a threshold line between two classes of sample data. The main idea behind drawing the threshold line is to classify the samples while minimizing the entropy for an optimum partitioning.
Clustering refers to identifying the number of subclasses of c clusters in a data universe X comprised of n data samples and partitioning X into C clusters (2 < c < n), c=1 denotes rejection of the hypothesis that there are clusters in the data, where c=n constitutes the trivial case where each sample is in a cluster by itself. There are two kinds of c partitions of data; hard (or crisp) and soft (or fuzzy). Two important issues to consider in this regard are how to measure the similarity between pairs of observations and how to evaluate the partitions once they are formed. One of the simplest similarity measures is distance between pairs of feature vectors in the feature space. If one can determine suitable distance measure and compute the distance between all pairs of observations, them one may expect that the distance between points in the same cluster will be considerably less than the distance between points the different clusters.
Considering all of these, the segmentation process is done. Then calculate the mean value of each region and they calculate the mean value of nonshadow region. Take pixels whose values are larger than the mean value of region i as the nonshadow background. Then subtract the minimum channel from the maximum channel. This value is denoted as Xi. Then this value is binarized based on the assumption that shadows are often darker than the mean value of Xi, which is denoted as T. Then mark all pixels less than T. indicate the pixel on the red, green and blue channel and integrate them. To obtain this select the suitable values for m and n. For obtaining more accurate values some coefficient are selected. By integrating the pixels values of red, green and blue the final shadow is obtained.
Image segmentation is an important research area including pattern recognition, image understanding, computer vision, and so on. the use of Fuzzy C-means and its improvement methods with a brief description, easy to implement, good partition effect in image segmentation. The algorithm proposed in this paper is not designed for specific applications. it can extract both self shadows and cast shadows . They share common property, lighted by sky light but sun light is excluded.
We did the project in still image. It can be applied to moving objects also. Moving shadow detection is critical in terms of accuracy in video streams since shadow points are often misclassified as object points. This Causes minor errors in segmentation and tracking. Many algorithms have been proposed by many authors, dealing with shadows. However, it is fair to say that there lacks a complete solution on this matter. It may be applied to both indoor and outdoor shadows.