In this paper we propose a precise and robust watermarking scheme based on the technique called amplitude modulation. A watermark is embedded in a color image by modifying the pixel values in the blue channel. At the receiver, the watermark bits are retrieved using a prediction system, by a linear combination of nearby pixel values around the embedded pixels, and without having the original image. Because amplitude modulation is a spatial-domain watermarking method, it may not be robust enough, i.e. incapable of exact watermark retrieval. In order to enhance the bit retrieval, we apply a Gaussian mask to equalize the luminance intensity; we employ the pixel value replacing technique to enhance the prediction performance; and we use two additional bits as a geometrical reference. In addition, we demonstrate that choosing an improper location (like singularities) for watermarking will lead the prediction system to malfunction. In order to increase the robustness, we propose using the Curvelet transform to detect singularities such as lines and curves and prevent the system from using these locations in an image for embedding the watermark bits. The experimental results indicate that our proposed method has a better performance in comparison with two other similar approaches and in addition it is robust against various geometrical and non-geometrical attacks as well as having a good imperceptibility.