The invention relates to a method and an apparatus for storing data, and more specifically to a method and an apparatus for storing data on a photographic medium in the form of a bit pattern.
It is commonly recognized that polyester based modern photochemical microfiches as well as films may carry information printed on their optical reactive emulsions for very long periods. Therefore, one possible solution for long-term archival of data, e.g. of movies, photographs, etc., is to print the analog data directly onto such microfiches or films.
As an alternative, the so-called Bits-on-Film technology has been developed, which allows to store data in digital form on photographic media. For example, the article c. Voges et al.: “Technology and Applications of Digital Data Storage on Microfilm”, J. Imag. Sci. Tech., Vol. 53 (2009), pp. 060505-1-060505-8, describes the technology of digital data storage on microfilm. The Bits-on-Film technology consists in printing tiny black-and-white, grey, or colored square pixels on a photographic medium, e.g. on a microfiche or a film. Each pixel represents stored information. Typically, blocks of pixels are printed. The blocks consist of pixels that are arranged as a regular sequence of lines, which in combination form a square or a rectangle. A block is thus printed as a checkered pattern. The stored data can be retrieved by scanning and subsequently analyzing the printed pattern.
Unfortunately, the printed pattern does not allow to easily determine what is actually stored in the pattern. Such a feature is, however, commonly demanded by archiving professionals, who would prefer to be able to obtain information about the stored data with the naked eye. For this purpose it has been proposed to archive an analog copy of an image together with a digitally encoded copy of the image on the same microfilm. See, for example, D. Fluck: “Ausbelichtung digitaler Daten auf Farbmikrofilm: Neue Möglichkeiten und Kostenperspektiven für die Langzeitarchivierung”, presentation at the Recom Symposion Stuttgart 2007 (“Print of digital data to color microfilm: New opportunities and cost prospects for long-term archival on color microfilm”; available at http://www.recom-art.de). Though this approach allows to easily gain an idea about what is stored in the pattern of pixel, it comes at the cost of a reduced storage capacity of the microfilm.
It is thus an object of the present invention to propose a solution for storing data as a pattern of pixels on a photographic medium, which allows to easily gain information about the stored data without reducing the storage capacity of the photographic medium.
According to the invention, a method for storing data as a coded two-dimensional pattern of pixels on a photographic medium comprises the steps of:
Accordingly, an apparatus configured to store data as a coded two-dimensional pattern of pixels on a photographic medium comprises:
Similarly, a computer readable storage medium has stored therein instructions enabling storing data as a coded two-dimensional pattern of pixels on a photographic medium, which when executed by a computer, cause the computer to:
The proposed solution allows to store digital images on common microfiches or films based on the bits on film technology. However, in contrast to known solutions the stored digital images are recognizable by the naked eye without any technical aids. The solution thus satisfies a need often formulated by professionals.
Advantageously, the representative image is one of an image to be stored, a selected image of a sequence of images to be stored, and an image describing the content of the data to be stored. Depending of the data to be stored, either of these images may be best suited for describing the stored content.
Preferably, the representative color value of a block is mean luminance value of the block. The mean luminance value of a block can easily be determined with limited computational effort. At the same time representing the blocks only by their mean luminance value allows to recognize the original image from the stored data. For this purpose the resulting coded two-dimensional pattern of pixels resembles the two-dimensional array of representative color values in the sense that areas of the coded two-dimensional pattern of pixels have similar luminance mean values as the representative color values corresponding to these areas.
Favorably, the coded two-dimensional pattern of pixels is one of a pattern of black and white pixels, a pattern of pixels with different grey values, and a pattern of pixels with different color values. While black and white pixels can most reliably be read and decoded, pixels with different grey values or different color values allow achieving a higher data density.
According to one aspect of the invention, during coding a two-dimensional pattern of pixels resulting from channel modulation and error correction coding is superimposed on the two-dimensional array of representative color values. This approach can easily be implemented, as no special coding scheme is required.
According to another aspect of the invention, a special coding scheme is employed, which is chosen such that the mean-value of all code words representing the stored data in an area of the two-dimensional pattern of pixels corresponding to a block equals or comes close to the representative color value of said block. This special coding scheme together with its corresponding error correction coding ensures that if an image is appropriately divided into blocks, the tiny squares representing the digital data samples generate the same visual impression as the mean values of the corresponding blocks of the original image.
For a better understanding the invention shall now be explained in more detail in the following description with reference to the figures. It is understood that the invention is not limited to this exemplary embodiment and that specified features can also expediently be combined and/or modified without departing from the scope of the present invention as defined in the appended claims.
The Bits-on-Film technology consists in printing tiny black-and-white, grey, or colored square pixels on a photographic medium, e.g. on a film or a microfiche. Each pixel represents stored information. Typically, blocks of pixels are printed. The blocks consist of pixels that are arranged as a regular sequence of lines, which in combination form a square or a rectangle. A block is thus printed as a checkered pattern. The stored data can be retrieved by scanning and subsequently analyzing the printed pattern.
Like every data storage technology, the Bits-on-Film technology is to a certain extent prone to errors. The error rate, or, in other words, the amount of incorrectly recovered data, increases mainly if the size of the information carrying pixels gets smaller than a certain extension, typically about 4 μm, and if the number of grey levels exceeds a certain value, in which case the different levels cannot always be reliably distinguished. When the printed films are getting older the above mentioned effects get worse. Unfortunately, the achievable storage density depends directly on these two characteristic parameters of the Bits-on-Film technology. If the pixel size decreases by a certain factor, then the resulting storage density increases with the power of two of the same factor. Likewise, if the number of the printed grey levels or color steps increases by a certain factor, then the storage density increases by the logarithmic value of the increasing factor. For example, let's assume that eight grey levels or color steps are used. If the levels or steps are increased by a factor of four, then the storage density per printed pixel increases as follows: The initial eight levels per pixel correspond to three bit of information (3=log2(8)). Increasing the levels by the factor of four means 32 levels per pixels, which corresponds to five bit of information (log2(8×4)=log2(8)+log2(4)=3+2=5).
Common analog film printers are optimized for printing high quality analog images on film. High image quality here means that a skilled observer will hardly discover any discrepancies between the original and the print on film, assuming that a suitable viewing device is used. Unfortunately, even though already today analog images are digitized with a color resolution of 256 colors per color component before printing, these modern laser film printers cannot readily be deployed to print digital data directly on film. The resulting error rates would simply be way too high. Also if a digital image represented by pulse coded modulation (PCM) samples is printed by such a laser printer, the error rate remains too high, even if the image resolution fits well to the printed film gauge or the film dimensions. A high error rate here means that a re-scanning of a printed image leads to a high number of faulty recovered pixels, though mainly just the least significant bits of the pixels are affected. In other words, the grey values or color values of the recovered pixels notably differentiate from the original pixels.
The main way to reduce the resulting error rate to an acceptable level is to ensure that the printed pixels are not too small and that only a moderate number of grey levels or color levels is used. In addition, however, a dedicated error correction code (ECC) is advantageously applied, which allows to correct errors to a certain extent. Unfortunately, a disadvantage of the signal processing steps that need to be applied to the data before printing is that the printed digital images can no longer be recognized by the naked eye.
In the following an enhanced solution for the Bits-on-Film technology shall be described with reference to the storage of digital or digitized images. However, the solution is likewise applicable to the storage of other digital data, for which a representative or meaningful image can be determined. For the sake of simplicity, the explanation will be limited to black-and-white images or multi grey tone images. However, the invention is likewise applicable to color images. As a remark, the term “black-and-white images” is often used to classify images which are rendered with pixels showing much more than just two levels of distinguishable grey tones. Here, however, “black-and-white images” refers to images having only bi-tonal pixels. Further, it is also assumed that the images have been regularly sampled, meaning that the samples are equidistantly located throughout the whole image. Both assumptions do not limit the generality of the following description.
In the following it is assumed that the blocks 4, 5 of the image 3 have just the right size so that the original image can just be correctly recognized.
As already mentioned the original digital data to be stored have to be adapted to the storage media and also have to be protected against errors. Due to the channel modulation and the unavoidable error correction codes the finally printed digital patterns formed out of black-and-white or grey tiny squares show a seemingly random pattern, as it has been illustrated in
The effect of an adapted channel modulation and a suitable error correction code is apparent from
In
A method according to the invention for storing data on a photographic medium is schematically shown in
In the following two exemplary solutions for realizing a channel modulation and error correction coding with the required characteristics shall be described.
A first solution consists in simply overlaying the checkered pattern resulting from channel modulation and error correction coding on the luminance mean-values of each block. In this case it is sufficient to ensure that the resulting minimal and maximal luminance values that need to be printed on the film do not exceed the linear printable range of the deployed film.
A second, more sophisticated and more effective solution in terms of coding efficiency, consists in choosing an adequate channel modulation together with a corresponding error correction coding. They need to be chosen such that they meet the constraint that the mean-value of all code words representing the stored data within a block of data equals or comes close to the perceivable luminance mean-value of the blocks of the image.
An example of such a coding scheme shall be discussed in the following with reference to
Information to be stored on the film is the image shown in
To deal with possible errors caused by scanning process, error correction is indispensable. On the other hand, to maintain the original image, a systematic ECC code is advantageous. As an example, a (171, 255) Reed-Solomon (RS) code defined over GF(2̂8) is used, where the info word length is 171 and the code word length is 255. The corresponding minimum distance of the code is 85, meaning that this RS code can correct 42 byte errors for sure.
In the original image, there are 512 bytes in each row, which is divided into three parts with 171, 171, and 170 bytes, respectively. Let [u1, u2, u3] denote one row in the original image, where u1 and u2 have 171 bytes, whereas u3 has 170 bytes.
Encoding u1 with the RS(171, 255) code generates a code word [u1, p1], where p1 denotes parity with 84 bytes. Similarly, encoding u2 results in [u2, p2]. Finally, appending a zero byte to u3 and encoding the result leads to [u3, 0, p3], where ‘0’ denotes a zero byte with 8 zero bits.
The resulting 255×3=765 bytes are rearranged as a new row, e.g. [u1, u2, u3, 0, p1, p2 p3]. In this way the original row stays together as before. The resulting channel encoded image is depicted in
Again, assuming that two bits per pixel, i.e. a four-level modulation, is used for printing on film, each byte in the channel encoded image is mapped to four pixels.
Let B=[b0, b1, b2, b3, b4, b5, b6, b7] denote a byte. One possible mapping from a byte to four pixels is to assign every two bits to a pixel, i.e. [b0, b1], [b2, b3], [b4, b5], and [b6, b7] are converted to four pixels. In this way four images are generated, which are shown in
Number | Date | Country | Kind |
---|---|---|---|
13306204.2 | Sep 2013 | EP | regional |