This work presents adaptive image steganography methods which locate suitable regions for embedding by contourlet transform, while embedded message bits are carried in discrete cosine transform coefficients. The first proposed method utilizes contourlet transform coefficients to select contour regions of the image. In the embedding procedure, some of the contourlet transform coefficients may change which may cause errors at the message extraction phase. We propose a novel iterative procedure to resolve such problems. In addition, we have proposed an improved version of the first method in which it uses an advanced embedding operation to boost its security. Experimental results show that the proposed base method is an imperceptible image steganography method with zero retrieval error rate. Comparisons with other steganography methods which utilize contourlet transform show that our proposed method is able to retrieve all messages perfectly, whereas the others fail. Moreover, the proposed method outperforms the ContSteg method in terms of PSNR and the higher-order statistics steganalysis method. Experimental evaluations of our methods with the well known DCT-based steganography algorithms have demonstrated that our improved method has superior performance in terms of PSNR and SSIM, and is more secure against the steganalysis attack.