These two terms are often used interchangeably. Still, the term 'edge' is mostly used to denote image points where intensity difference between pixels are significant. On the other hand, the term contour is used to denote object boundary. Thus, in many cases contour detection is performed by processing the detected edges further.
To add some clarification, an edge detection algorithm could give several edges, depending on the threshold. It means that a gray scale object could have several contours depending on edge detection algorithm used and its threshold. However, this is not true for binary objects, where the outer boundary is its edge and also its contour.
I know that Contourlet captures a smooth contour of an image. Does it mean that capturing smooth contour also captures all edges of that image? I mean capturing contour is equal to capturing edge?
Assume an island. the contour is its border with sea. It can be an edge too. But you can build a fence with a 100 meter, 50 m, 10 m,... distance from the sea border. all these fences are edges you that separate an area (land) for other area. The edge detection algorithms depending on their nature and thresholding algorithm decide where to put these edges.
I concur in that an edge coincides with a contour only for binary images otherwise edges are determined by threshold value and not necessarily coincide with the contour