1. A method implemented at least partially by a processor, the method comprising: receiving, by the processor, an input image that includes a salient object; identifying, by the processor, the salient object, the identifying comprising: segmenting the input image into multiple regions, wherein the multiple regions are distinguished from each other based at least on saliency values; calculating a saliency value for each of the segmented regions based on scale image levels; constructing saliency maps based at least in part on the calculated saliency value for each of the segmented regions, the saliency maps to be constructed for the scale image levels; constructing a total saliency map by combining the saliency maps constructed for the scale image levels; and connecting a set of line segments that are computed from the input image and utilizing the total saliency map to define a shape prior that has a defined boundary; extracting, by the processor, the salient object from the total saliency map and the shape prior; and determining, by the processor, an optimal contour of the salient object by rejecting contours that have self-intersections and rejecting contours whose average saliency value is less than a total saliency value.