The invention relates to a coding apparatus for embedding second data into first data without deteriorating the first data and a decoding apparatus for decoding coded data into original first data and second data without deteriorating those data. The invention provides a coding apparatus which determines change subject data and change data based on a frequency distribution of at least partial data of the first data, and embeds second data into first data by causing a change from the change subject data to the change data according to the second data. The invention also provides a decoding apparatus which determines change subject data and change data based on a frequency distribution of at least partial data of coded data in which second data is embedded, and decodes the coded data into original first data and restores the second data that is embedded in the coded data by restoring the change subject data from the change data.
The invention concerns a method of inserting a message in an image, characterized in that it comprises the steps of: selecting a set of points in the image as a function of predetermined criteria, so as to form a coordinate system in the image, calculating (S21) an affine transformation between a predetermined coordinate system and the coordinate system formed in the image, generating (S24) a pseudo-random sequence for each symbol of the message to be inserted, in the predetermined coordinate system, projecting (E25) each pseudo-random sequence into the coordinate system formed in the image, by affine transformation, inserting (S27) each symbol of the message to be inserted, as a function of its respective projected pseudo-random sequence.
A coding apparatus for embedding second data into first data without deteriorating the first data includes a memory for storing at least partial data of the first data. An embedding coder embeds the second data into the first data by rearranging, according to the second data, at least partial data of the first data stored in the memory. A decoding apparatus for decoding coded data into the original first data and the original second data without deteriorating the quality of the data includes a relation calculating unit for calculating a relation between first partial data and second partial data of the coded data. A decoder decodes the coded data into the original first data by moving the first partial data and the second partial data of the coded data based on the relation calculated by the relation calculating unit, and decodes the second data that is embedded in the coded data according to the movement.