Robust and accurate lip segmentation is a significant and fundamental procedure for visual speech analysis. Compared with segmenting a closed mouth from the background, lip segmentation with open mouth is a more challenging task due to the complex components inside the mouth (i.e. teeth, oral cavity, etc.), and most of the current techniques fail to show all the inner mouth details clearly. To deal with this problem, a new fuzzy C-means (FCM) based lip segmentation algorithm is proposed. A competitive learning mechanism is incorporated into the spatial-constrained FCM clustering framework to describe various components inside the mouth region adaptively. Specifically, the number of clusters is first initialized to involve all the possible kinds of components that may appear in a lip image. Subsequently, the membership of each pixel and the cluster centroids can be optimized using the conventional Picard iterations. During each iteration, a competitive learning algorithm is employed to remove some nonexistent inner mouth clusters. If one certain kind of inner mouth cluster fails the competition, it will be directly eliminated and a fresh start of the fuzzy clustering procedure will take place with cluster number one smaller than the pervious. With the competitive learning mechanism, the correct number of components inside the mouth can be automatically determined, as well as the contour of inner mouth can be extracted more precisely.