A method called MACA (Modified Active Contour Algorithm) was suggested. In the standard snake model, there is no requirement on the matching between the orientation of the snake contour and the orientation of image edge. This way, the standard snake model usually fails to segment objects from images with complicate background. To avoid it, two energy functions are proposed to improve the snake model. To reduce the time cost in the iteration of MACA, a FGA (Fast Greedy Algorithm) was proposed. Also, the first-order and second-order derivatives, the domain of searching area, contour resampling, and conditions of corner locking were redefined. Experimental results show that the performance of the proposed method is much better than that of the standard snake model, particularly in extracting concave objects.