1. A method of generating a readable matrix code image encoding a message based on an input image and a readable matrix coding specification: calculating function areas readable to comply with a function patterns specification; determining an extent of free cells and derived cells according to a code word specification; calculating decode input values for free cells such that the appearance of the free cells compared to respective areas of the input image complies with a visual perceptual similarity criterion and with the code word specification; and calculating decode input values for derived cells based on the free cells decode input values and in compliance with the code word specification.
1. A method of generating a readable matrix code image encoding a message based on an input image and a readable matrix coding specification: calculating function areas readable to comply with a function patterns specification; determining an extent of free cells and derived cells according to a code word specification; calculating decode input values for free cells such that the appearance of the free cells compared to respective areas of the input image complies with a visual perceptual similarity criterion and with the code word specification; and calculating decode input values for derived cells based on the free cells decode input values and in compliance with the code word specification. 13. The method according to claim 1 , wherein the free cells are data cells and the derived cells are error correction cells, and wherein the error correction decode input values encoded in the error correction cells are derived from the data in the data cells.