Full Spectrum coding is a method of providing a picture with a machine readable code image. The transparency and robustness of the code can be influenced by the embedding parameters, according to the intended application (e.g. robust or fragile marking). The code image contains hidden information, identifying the document in some way. In principle, it can be any binary pattern or grey-scale picture. Alternatively, it may be desirable to encode (binary) data, e.g. ID numbers or (biometric) templates. Such data should be transformed into a code image suitable for the proposed kind of embedding. In the presented implementation, the code image contains a binary block structure, similar to a 2-dimensional (bar) code. Even in the presence of noise, this code can be extracted from the magnitude spectrum of the captured image by iterated down-sampling. Full Spectrum is well-suited for application to printed documents. It survives graphical processes (halftone screening, printing, digitizing) and the reconstructed code image is invariant to shifting and robust to cropping. A technique is presented to perform registration for rotation and scaling of the captured image with respect to the original. The approach is to embed a marking signal based on perfect correlation sequences in the radial-polar representation of the code image. In this domain, the rotation angle and (under certain conditions) the scale factor, can be determined by linear cross-correlation. Additionally, techniques are proposed to obtain resistance to more general distortions.