WO2001061561A2 - Automated system for image archiving - Google Patents

Automated system for image archiving Download PDF

Info

Publication number
WO2001061561A2
WO2001061561A2 PCT/US2001/004189 US0104189W WO0161561A2 WO 2001061561 A2 WO2001061561 A2 WO 2001061561A2 US 0104189 W US0104189 W US 0104189W WO 0161561 A2 WO0161561 A2 WO 0161561A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
identifier
generated
manufacturer
parent
Prior art date
Application number
PCT/US2001/004189
Other languages
French (fr)
Other versions
WO2001061561A3 (en
Inventor
John Overton
Original Assignee
Overx, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Overx, Inc. filed Critical Overx, Inc.
Priority to AU2001236814A priority Critical patent/AU2001236814A1/en
Publication of WO2001061561A2 publication Critical patent/WO2001061561A2/en
Publication of WO2001061561A3 publication Critical patent/WO2001061561A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually

Definitions

  • This invention relates generally to archive, documentation and location of objects and data. More particularly this invention is a universal object tracking system wherein generations of objects which may be physical, electronic, digital, data and images can be related one to another and to original objects that contributed to a object without significant user intervention.
  • classificatory schemata are used to facilitate machine sorting of information about a subject ("subject information") according to categories into which certain subjects fit.
  • tracking information that is, information concerning where the image has been or how the image was processed, is also used together with classificatory schemata.
  • categorizing schemata that are limited in size (i.e. number of categories) are convenient to use but insufficiently comprehensive for large-scale applications, such as libraries and national archives.
  • classificatory schemata is sufficiently comprehensive for large-scale applications, it may well be far too complicated, and therefore inappropriate for small scale applications, such as individual or corporate collections of image data.
  • a particular type of image device such as a still camera, a video camera, a digital scanner, or other form of imaging means has its own scheme for imprinting or recording archival information relating to the image that is recorded.
  • This is compounded when an image is construed as a data object(s) such as a collection of records related to a given individual, distributed across machines and databases.
  • records represented as images may necessarily exist on multiple machines of the same type as well as multiple types of machines.
  • an .archive scheme may support conventional silver halide negatives but not video or digital media within the same archive.
  • Yet another archive approach may apply to a particular state of the image, as the initial or final format, but does not apply to the full life-cycle of all images. For example, some cameras time- and date-stamp negatives, while database software creates tracking information after processing. While possibly overlapping, the enumeration on the negatives differs from the enumeration created for archiving. In another example, one encoding may track images on negatives and another encoding may track images on prints. However, such a state-specific approach makes it difficult automatically to track image histories and lineages across all phases of an image's life-cycle, such as creation, processing, editing, production, and presentation. Similarly, when used to track data such as that occurring in distributed databases, such a system does not facilitate relating all associated records in a given individual's personal record archive.
  • tracking information that uses different encoding for different image states is not particularly effective since maintaining multiple enumeration strategies creates potential archival error, or at a minimum, will not translate well from one image form to another.
  • U.S. Patent No. 5,579,067 to Wakabayashi describes a "Camera Capable of Recording Information.”
  • This system provides a camera which records ir-formati ⁇ n into .an information recording .area .provided .on .the film .that is Leaded n .the camera. If information does not change from frame to frame, no information is recorded. However, this invention does not deal with recording information on subsequent processing.
  • U.S. Patent No. 5455648 to Kazami was granted for a "Film Holder or for Storing Processed Photographic Film.”
  • This invention relates to a film holder which also includes an information holding section on the film holder itself.
  • This information recording section holds electrical, magnetic, or optical representations of film information. However, once the information is recorded, it is to used for purposes other than to identify the original image.
  • This invention deals with a method for controlling automated photographic equipment such as printers, color analyzers, film cutters.
  • This patent allows for a variety of information to be recorded after the images are first made. It mainly teaches methods for production of pictures and for recording of information relating to that production. For example, if a photographer consistently creates a series of photographs which are off center, information can be recorded to offset the negative by a pre-determined amount during printing. Thus the information does not accompany the film being processed but it does relate to the film and is. stored in .a.separate database. The in.formatio.n stored is therefore not helpful for another laboratory that must deal with the image that is created.
  • Patent 5193185 to Lanter was issued for a "Method and Means for Lineage Tracing of a Spatial Information Processing and Database System.”
  • This Patent relates to geographic information systems. It provides for "parent” and “child” links that relate to the production of layers of information in a database system. Thus while the this patent relates to computer-generated data about maps, it does not deal with how best to transmit that information along a chain of image production.
  • U.S. Patent No. 4728978 was granted to Inoue for a "Photographic Camera.”
  • This patent describes a photographic camera which records information about exposure or development on an integrated circuit card which has a semiconductor memory.
  • This card records a great deal of different types of information and records that information onto film.
  • the information which is recorded includes color temperature information, exposure reference information, the date and time, shutter speed, aperture value, information concerning use of a flash, exposure information, type of camera, film type, filter type, and other similar information.
  • the present invention is a universal object tracking method and apparatus for tracking and documenting objects, entities, relationships, or data that is able to be described as images through their complete life-cycle, regardless of the device, media, size, resolution, etc., used in producing them.
  • ASIA automated system for image archiving
  • Encoding and decoding takes the form of a 3-number association: 1) location number (serial and chronological location), 2) image number (physical attributes), and 3) parent number (parent-child relations).
  • a key aspect of the present inventions is that any implementation of the system and method of the present invention is interoperable with any other implementation.
  • a given implementation may use the encoding described herein as complete database record describing a multitude of images.
  • Another implementation may use the encoding described herein for database keys describing medical records.
  • Another implementation may use the encoding described herein for private identification.
  • Still another may use ASIA encoding for automobile parts-tracking. Yet all such implementations will interoperate.
  • This design of the present invention permits a single encoding mechanism to be used in simple devices as easily as in industrial computer systems.
  • Parent-Child Relations The system and method of the present invention includes built-in "parent-child" encoding that is capable of tracking parent-child relations across disparate producing mechanisms. This native support of parent-child relations is included in the encoding structure, and facilitates tracking diverse relations, such as record transactions, locations of use, image derivations, database identifiers, etc. Thus, it is a function of the present invention that parent-child relations are used to track identification of records from simple mechanisms, such as cameras and TVs through diverse computer systems.
  • the system and method of the present invention possesses uniqueness that can be anchored to device production.
  • the encoding described herein can bypass the problems facing ' "root-registration" systems (such as facing DICOM in the medical X-ray field).
  • the encoding described herein can use a variety of ways to generate uniqueness. Thus it applies to small, individual devices (e.g. cameras), as well as to fully automated, global systems (e.g., universal medical records).
  • the encoding described herein applies equally well to "film” and “filmless” systems, or other such distinctions. This permits the same encoding mechanism for collections of records produced on any device, not just digital devices. Tracking systems can thus track tagged objects as well as digital objects. Similarly, since the encoding mechanism is anchored to device-production, supporting a new technology is as simple as adding a new device. This in turn permits the construction of comprehensive, automatically generated tracking mechanism to be created and maintained, which require no human effort aside from the routine usage of the devices.
  • Component A set of fields grouped according to general functionality.
  • Location component A component that identifies logical location.
  • Parent component A component that characterizes a relational status between an object and it's parent.
  • Image component A component that identifies physical attributes.
  • Schema A representation of which fields are present in length and encoding.
  • Length A representation of the lengths of fields that occur in encoding.
  • Encoding Data, described by length and encoding. Brief Description of the Figures
  • Figure 1 illustrates an overview of the present invention
  • Figure 1 A illustrates the overarching structure organizing the production of system numbers
  • Figure IB illustrates the operation of the system on an already existing image
  • Figure 2 illustrates the formal relationship governing encoding and decoding
  • FIG. 3 illustrates the encoding relationship of the present invention
  • Figure 4 illustrates the relationships that characterize the decoding of encoded information
  • Figure 5 illustrates the formal relations characterizing all implementations of the invention
  • Figure 6 illustrates the parent-child encoding of the present invention in example form
  • Figure 7 illustrates the processing flow of ASIA
  • the present invention is a method and apparatus for formally specifying relations for constructing image tracking mechanisms, and providing an implementation that includes an encoding schemata for images regardless of form or the equipment on which the image is produced.
  • system tag encoding refers to producing and associating system numbers with .objects.
  • Figure 1A illustrates the overarching structure organizing the production of system numbers.
  • the present invention is organized by three “components”: “Location,” “Image,” and “Parent.” These heuristically group 18 variables are called “fields.” Fields are records providing data, and any field (or combination of fields) can be encoded into an system number. The arrow ( ) labeled 'Abstraction' points in the direction of increasing abstraction.
  • the Data Structure stratum provides the most concrete representation of the system and method of the present invention
  • the Heuristics stratum provides the most abstract representation of the system of present invention.
  • system and method of the present invention comprises and organizational structure includes fields, components, and relations between fields and components.
  • fields, components, and relations between fields and components The following conventions apply and/or govern fields and components:
  • Base 16 schema Base 16 (hex) numbers are used, except that leading '0' characters are excluded in encoding implementations. Encoding implementations MUST strip leading '0' characters in base 16 numbers.
  • Decoding implementations MUST accept leading '0' characters in base 16 numbers.
  • a field is a record in an ASIA number. Using any field (or collection of fields) MAY (1) distinguish one from another ASIA number, and (2) provide uniqueness for a given tag in a given collection of tags.
  • ASIA compliance requires the presence of any field, rather than any component. Components heuristically organize fields.
  • a component is a set of fields grouped according to general functionality. Each component has one or more fields.
  • ASIA has three primary components: location, image, and parent.
  • a tag's location (see Table 1 ) component simply locates an ASIA number within a given logical space, determined by a given application. The characteristics of the location component are illustrated below in Table 2. Table 2: Location
  • Generation Family relation depth Uses any character Sequence Enumeration of group Uses any character Time Date/time made Uses any character Author Producing agent Uses any character Device Device used Uses any character Unit Enumeration in group Uses any character Random Nontemporal uniqueness Uses any character Custom Reserved for applications Uses any character
  • Table 2 Location (above) lists location fields, descriptions, and representation specifications.
  • generation - identifies depth in family relations, such as parent-child relations.
  • T could represent "first generation”
  • '2' could represent “second generation”
  • sequence - serially enumerates a group among groups.
  • sequence could be the number of a given roll of 35mm film in a photographer's collection.
  • Author - identifies the producing agent or agents. For example, a sales clerk, equipment operator, or manufacturer could be authors.
  • device - identifies a device within a group of devices. For example, cameras in a photographer's collection, or serial numbers in a manufacturer's equipment-line, could receive
  • unit - serially enumerates an item in a group. For example, a given page in a photocopy job, or a frame number in a roll of film, could be units.
  • random - resolves uniqueness. For example, in systems using time for uniqueness, clock resetting can theoretically produce duplicate time-stamping. Using random can prevent such duplicate date-stamping.
  • custom - is dedicated for application-specific functionality not natively provided by ASIA, but needed by a given application.
  • time - ASIA uses ISO 8601:1988 date-time marking, and optional fractional time. Date-stamping can distinguish tags within a generation. In such cases, time granularity MUST match or exceed device production speed or 2 tags can receive the same enumeration. For example, if a photocopy machine produces 10 photocopies per minute, time granularity MUST at least use 6 second time-units, rather than minute time-units. Otherwise, producing 2 or more photocopies could produce 2 or more of the same time-stamps, and therefore potentially also 2 or more of the same ASIA numbers.
  • random - ASIA uses random as one of three commonly used mechanisms to generate uniqueness (see uniqueness, above). It is particularly useful for systems using time which may be vulnerable to clock resetting. Strong cryptographic randomness is not required for all applications.
  • a tag's parent component characterizes an object's parent. This is an system number, subject to the restrictions of any system number as described herein. Commonly, this contains time, random, or unit. The following notes apply: representation constraints
  • the representation constraints for the parent field are those of the database appropriate to it. Representation constraints MAY differ between the parent field and the system number of which the field is a part.
  • a tag's image component describes the physical characteristics of an object.
  • an image component could describe the physical characteristics of a plastic negative, steel part, silicon wafer, etc.
  • Table 3 Image lists and illustrates image component fields and their general descriptions.
  • Bit Dynamic range (bit depth) Uses any character
  • category identifies characterizing domain. For example, in photography category could identify "single frame", to distinguish single frame from motion picture photography.
  • size describes object dimensionality. For example, size could describe an 8x11 inch page, or 100x100x60 micron chip, etc.
  • bit dynamic range ("bit depth"). For example, bit could describe a "24 bit” dynamic range for a digital image.
  • Push records push or pull. For example, push could describe a "1.3 stop over- exposure" for a photographic image.
  • Media describes the media used to represent an object. For example, media could be "steel” for a part, or""Kodachrome" for a photographic transparency.
  • Set identifies a software rendering and/or version. For example, set could be assigned to "HP: 1.3".
  • Resolution describes resolution of an object. For example, resolution could represent dots-per-inch in laser printer output.
  • Stain describes chromatic representation. For example, stain could represent "black and white” for a black and white negative.
  • Format describes object embodiment. For example, format could indicate a photocopy, negative, video, satellite, etc. representation.
  • Table 4 (below) assembles these into the formal organization from which the system data structure of the present invention is derived. This ordering provides the basis for the base 16 representation of the schema.
  • This Table 4 (above) assembles these data into the formal organization from which ASIA data structure is derived. This ordering provides the basis for the base 16 representation of the schema.
  • Table 5 illustrates the data structure used to encode fields into an ASIA tag.
  • An ASIA tag has five parts: schema, :, length, :, encoding.
  • Each "part” has one or more "elements,” and “elements” have 1-to-l correspondences across all “parts.” Consider the following definitions for Table 5.
  • Schema An arbitrarily long base 16 integer, whose bits represent the presence of component fields represented in length and encoding, and listed in Table 4. If the least significant bit is set the field 1 is encoded. : - The opening delimiter separating schema and length. length - Comma separated lengths for the fields represented in encoding, whose presence is indicated in schema.
  • schema is "1C"
  • a hex (base 16) integer (stripped of leading zeros) indicating the presence of three fields (see Table 4): time, author, device.
  • length is '15,2,1 ', indicating that the first field is 15 long, the second 2 long, and the third 1 long.
  • the encoding is ' 1998121 ITl 12259GE1 ', and includes the fields identified by schema and determined by length.
  • the encoding has 3 fields: '1998121 ITl 12259' (time), 'GE' (author), and ' 1 ' (device).
  • parent - uses the definition of the location component's time field (see Table 6 above.).
  • the category field has 2 defaults as noted in Table 8 (below).
  • Table 8 Categories
  • the size field has 2 syntax forms, indicated in Table 9 Size/res. Syntax (below).
  • Table 10 Measure (below) provides default measure values that are used in Table 9.
  • Table 11 Size examples provides illustrations of the legal use of size. Consider the following definitions. dimension - is a set of units using measure. measure - is a measurement format. n ⁇ + ⁇ - represents a regular expression, using 1 or more numbers (0-9). lc ⁇ * ⁇ - represents a regular expression beginning with any single letter (a-z; A-Z), and continuing with any number of any characters.
  • X-dimension - is the X-dimension in an X-Y coordinate system, subject to measure.
  • Y-dimension - is the Y-dimension in an X-Y coordinate system, subject to measure.
  • X - is a constant indicating an X-Y relationship.
  • Table 10 illustrates default values for measure. It does not preclude application-
  • Table L2 (below) lists legal values for the bitfield.
  • Table 1_3 (below) lists legal values for the push field.
  • Table 16 (below) illustrates the types of color negative film that can be
  • Table 17 illustrates a list of black and white film that can be accommodated by the present invention. Again this list is illustrative only and is not meant as a limitation.
  • Facsimile types and formats are illustrated. This listing is not meant as a limitation and is for illustrative purposes only.
  • Table 22 provides default software set root values. Implementations MAY add to, or
  • Table 23 (below) illustrates values for the "resolution "filed. The resolution field behaves the way that the size field behaves. Table 23 provides specific examples of resolution by way of illustration only. This table is not meant as a limitation. Table 23: Resolution examples
  • Table 24 lists legal values for the stain field as might be used in chemical testing.
  • Table 25 (below) lists legal values for the format field. Table 25 also identifies media
  • Figure 1 an overview of the present invention is illustrated. This figure provides the highest-level characterization of the invention. Figure 1 itself represents all components and relations of the ASIA.
  • each box is a hierarchically derived sub-component of the box above it.
  • 'ASIA' is a sub-component of 'Formal objects', which is a sub-component of 'Formal specification'.
  • ASIA is also hierarchically dependent upon 'Formal specification.'
  • Formal specification 1. This represents (a) the formal specification governing the creation of systems of automatic image enumeration, and (b) all derived components and relations of the invention's implementation.
  • FIG 1 A an overview of the original image input process according to the present invention is shown.
  • the user first inputs information to the system to provide information on location, author, and other record information.
  • the equipment that the user is using to input the required information.
  • data is entered with minimum user interaction. This information will typically be in the format of the equipment doing the imaging.
  • the system of the present invention simply converts the data via a configuration algorithm, to the form needed by the system for further processing.
  • the encoding/decoding engine 12 receives the user input information, processes into, and determines the appropriate classification and archive information to be in coded 14.
  • the system next creates the appropriate representation 16 of the input information and attaches the information to the image in question 18. Thereafter the ' final image is output 20, and comprises both the image data as well as the appropriate representation of the classification or archive information.
  • archive information could be in electronic form seamlessly embedded in a digital image or such information could be in the form of a barcode or other graphical code that is printed together with the image on some form of hard copy medium.
  • FIG IB the operation of the system on an already existing image is described.
  • the system first receives the image and reads the existing archival barcode information 30. This information is input to the encoding/decoding engine 32. New input information is provided 36 in order to update the classification and archival information concerning the image in question. This information will be provided in most cases without additional user intervention.
  • the encoding/decoding engine determines the contents of the original barcoded information and arrives at the appropriate encoded data and lineage information 34.
  • This data and lineage information is then used by the encoding/decoding engine to determine the new information that is to accompany the image 38 that is to be presented together with the image in question. Thereafter the system attaches the new information to the image 40 and outputs the new image together with the new image related information 42.
  • the new image contains new image related information concerning new input data as well as lineage information of the image in question.
  • archive information could be in electronic form as would be the case for a digital image or such information could be in the form of a barcode or other graphical code that is printed together with the image on some form of hard copy medium.
  • Encoding and decoding are the operations needed to create and interpret the information on which the present invention relies. These operations in conjunction with the implementation of the generation of the lineage information give rise to the present invention. These elements are more fully explained below.
  • Figure 3 uses an analog circuit diagram. Such a diagram implies the traversal of all paths, rather than discrete paths, which best describes the invention's, encoding relations.
  • Apparatus input 301 generates raw, unprocessed image data, such as from devices or software.
  • Apparatus input could be derived from image data, for example, the digital image from a scanner or the negative from a camera system.
  • Configuration input 303 specifies finite bounds that determine encoding processes, such as length definitions or syntax specifications.
  • the resolver 305 produces characterizations of images. It processes apparatus and configuration input, and produces values for variables required by the invention.
  • timer 307 uses configuration input to produce time stamps. Time-stamping occurs in 2 parts:
  • the clock 309 generates time units from a mechanism.
  • the filter 311 processes clock output according to specifications from the configuration input. Thus the filter creates the output of the clock in a particular format that can be used later in an automated fashion. Thus the output from the clock is passed through the filter to produce a time-stamp.
  • User data processing 313 processes user specified information such as author or device definitions, any other information that the user deems essential for identifying the image produced, or a set of features generally governing the production of images.
  • Output processing 315 is the aggregate processing that takes all of the information from the resolver, timer and user data and produces the final encoding that represents the image of interest.
  • the decoding scheme shown in Figure 4 specifies the highest level abstraction of the formal grammar characterizing encoding.
  • the set of possible numbers (the "language") is specified to provide the greatest freedom for expressing characteristics of the image in question, ease of decoding, and compactness of representation.
  • This set of numbers is a regular language (i.e., recognizable by a finite state machine) for maximal ease of implementations and computational speed. This language maximizes the invention's applicability for a variety of image forming, manipulation and production environments and hence its robustness.
  • Decoding has three parts: location, image, and parent.
  • location expresses an identity for an image through use of the following variables.
  • the "image” number expresses certain physical attributes of an image through the following variables.
  • bit-or-push Bit depth digital dynamic range
  • push status of representation bit-or-push Bit depth
  • stain Category of fixation-type onto media e.g. "color”.
  • the "parent" number expresses predecessor image identity through the following variables.
  • time-stamp Date and time recording for chronological sequencing.
  • parentRes Reserved storage for indeterminate future encoding.
  • Any person creating an image using "location,” “image,” and “parent” numbers automatically constructs a representational space in which any image-object is uniquely identified, related to, and distinguished from, any other image-object in the constructed representational space.
  • engine 53 refers to the procedure or procedures for processing data specified in a schemata.
  • interface 55 refers to the structured mechanism for interacting with an engine.
  • the engine and interface have interdependent relations, and combined are hierarchically subordinate to schemata.
  • the engine and interface are hierarchically dependent upon schemata.
  • the present invention supports the representation of (1) parent-child relations, (2) barcoding, and (3) encoding schemata. While these specific representations are supported, the description is not limited to these representations but may also be used broadly in other schemes of classification and means of graphically representing the classification data.
  • Parent-child relations implement the 'schemata' and 'engine' components noted above. The following terms are used in conjunction with the parent child implementation of the present invention:
  • ception date means the creation date/time of image.
  • originating image means an image having no preceding conception date.
  • tree refers to all of the parent-child relations descending from an originating image.
  • node refers to any item in a tree.
  • parent identifier means an abbreviation identifying the conception date of an image's parent.
  • Child means a descendent node, from a given node.
  • Lineage means all of the relationships ascending from a given node, through parents, back to the originating image.
  • family relations means any set of lineage relations, or any set of nodal relations.
  • a conventional tree structure describes image relations.
  • Encoding Database software can trace parent-child information, but does not provide convenient, universal transmission of these relationships across all devices, media, and technologies that might be used to produce images that rely on such information.
  • ASIA provides for transmission of parent-child information both (1) inside of electronic media, directly; and (2) across discrete media and devices, through barcoding.
  • This invention identifies serial order of children (and thus parents) through date- and time-stamping. Since device production speeds for various image forming devices vary across applications, e.g. from seconds to microseconds, time granularity that is to be recorded must at least match device production speed. For example, a process that takes merely tenths of a second must be time stamped in at least tenths of a second.
  • any component of an image forming system may read and use the time stamp of any other component.
  • applications implementing time-stamping granularities that are slower than device production speeds may create output collisions, that is, two devices may produce identical numbers for different images.
  • two devices may produce identical numbers for different images.
  • the present invention solves this problem by deferring decisions of time granularity to the implementation.
  • Implementation must use time granularity capable of capturing device output speed. Doing this eliminates all possible instances of the same number being generated to identify the image in question.
  • time intervals beginning at second granularity this is not meant to be a limitation but merely a starting point to assure definiteness to the encoding scheme. In certain operations, tenths of a second (or yet smaller units) may be more appropriate in order to match device production speed.
  • All images have parents, except for the originating image which has a null ('O') parent.
  • Parent information is recorded through (1) a generation depth identifier derivable from the generation field of the location number, and (2) a parent conception date, stored in the parent number.
  • Two equations describe parent processing. The first equation generates a parent identifier for a given image and is shown below.
  • Equation 1 Parent identifiers. A given image's parent identifier is calculated by decrementing the location number's generation value (i.e. the generation value of the given image), and concatenating that value with the parent number's parent value. Equation 1 summarizes this:
  • parent identifier prev(generation) • parent (1)
  • B0106-19960713T195913 JSA@1-19 S135F-OFCP@0100S:2T-0123 19960613T121133
  • the letter “B” refers to a second generation.
  • the letter “C” would mean a third generation and so forth.
  • the numbers “19960713” refers to the day and year of creation, in this case July 13, 1996.
  • the numbers following the "T” refers to the time of creation to a granularity of seconds, in this case 19:59:13 (using a 24 hour clock).
  • the date and time for the production of the parent image on which the example image relies is 19960613T121133, or June 13, 1996 at 12:11:33.
  • Equation 1 constructs the parent identifier:
  • parent identifier prev(generation) • parent
  • parent identifier prev(B) • (19960613T121133)
  • the location number identifies a B (or "2nd") generation image. Decrementing this value identifies the parent to be from the A (or "1st") generation.
  • the parent number identifies the parent conception date and time, (19960613T121133). Combimng these, yields the parent identifier A19960613T121133, which uniquely identifies the parent to be generation A, created on 13 June 1996 at 12:11 :13PM (T121133).
  • Equation 2 evaluates the number of characters needed to describe a given image lineage.
  • Providing a 26 generation depth requires a 1 character long definition for generation (i.e. A-Z).
  • Providing 1000 possible transformations for each image requires millisecond time encoding, which in turn requires a 16 character long parent definition (i.e. gen. 1 -digit, year-4 digit, month 2-digit, day 2-digit, hour 2-digit, min. 2-digit, milliseconds 3-digit).
  • a 1 character long generation and 16 character long parent yield a 17 character long parent identifier.
  • FIG. 6 the parent child encoding of the present invention is shown in an example form.
  • the figure describes each node in the tree, illustrating the present invention's parent-child support.
  • 601 is a 1 st generation original color transparency.
  • 603 is a 2 nd generation 3x5 inch color print, made from parent 601.
  • 605 is a 2 nd generation 4x6 inch color print, made from parent 601.
  • 607 is a 2 nd generation 8x10 inch color internegative, made from parent 601.
  • 609 is a 3 rd generation 16x2O inch color print, made from parent 607.
  • 611 is a 3 rd generation 16x20 inch color print, 1 second after 609, made from parent 607.
  • 613 is a 3 rd generation 8x10 inch color negative, made from parent 607.
  • 615 is a 4 th generation computer 32x32 pixel RGB "thumbnail" (digital), made from parent 611.
  • 617 is a 4 th generation computer 1280x1280 pixel RGB screen dump (digital), 1 millisecond after 615, made from parent 611.
  • 619 is a 4 th generation 8.5x11 inch CYMK print, from parent 611.
  • This tree shows how date- and time-stamping of different granularities (e.g., nodes 601,615, and 617) distinguish images and mark parents.
  • computer screen- dumps could use millisecond accuracy (e.g., 615,617), while a hand-held automatic camera might use second granularity (e.g., 601).
  • Such variable date,- and time-stamping guarantees (a) unique enumeration and (b) seamless operation of multiple devices within the same archive.
  • Command 701 is a function call that accesses the processing to be performed by ASIA Input format 703 is the data format arriving to ASIA.
  • ASIA Input format 703 is the data format arriving to ASIA.
  • data formats from Nikon, Hewlett Packard, Xerox, Kodak, etc. are input formats.
  • ILF (705,707, and 709) are the Input Language Filter libraries that process input formats into ASIA-specific format, for further processing. For example, an ILF might convert a Nikon file format into an ASIA processing format. ASIA supports an unlimited number of ILFs. Configuration 711 applies configuration to ILF results. Configuration represents specifications for an application, such as length parameters, syntax specifications, names of component tables, etc.
  • CPF (713,715, and 717) are Configuration Processing Filters which are libraries that specify finite bounds for processing, such pre-processing instructions applicable to implementations of specific devices.
  • ASIA supports an unlimited number of CPFs.
  • Processing 719 computes output, such as data converted into numbers.
  • Output format 721 is a structured output used to return processing results.
  • OLF (723, 725, 727) are Output Language Filters which are libraries that produce formatted output, such as barcode symbols, DBF, Excel, HTML, L A TEX, tab delimited text, WordPerfect, etc.
  • ASIA supports an unlimited number of OLFs.
  • Output format driver 729 produces and/or delivers data to an Output Format Filter.
  • Output Format Filters which are libraries that organize content and presentation of output, such as outputting camera shooting data, database key numbers, data and database key numbers, data dumps, device supported options, decoded number values, etc.
  • ASIA supports an unlimited number of OLFs.
  • parent-child encoding encompasses several specific applications. For example, such encoding can provide full lineage disclosure, and partial data disclosure.
  • Parent-child encoding compacts lineage information into parent identifiers disclose parent-child tracking data, but do hot disclose other location or image data.
  • Parent identifiers disclose parent-child tracking data, but do hot disclose other location or image data.
  • a given lineage is described by (1) a fully specified key (location, image, and parent association), and (2) parent identifiers for all previous parents of the given key. Examples illustrates this design feature.
  • Example 1 26 generations, 10 79 family relations.
  • factor generano "- ⁇ ) - 1 sum — (3) factor - 1 or, 1000 26 - ⁇ - l sum
  • the present invention uses 525 characters to encode the maximum lineage in an archive having 26 generations and 1000 possible transformations for each image, in a possible total of 10 79 family relations.
  • Example 2 216 generations, 10' 49 family relations.
  • the upper bound for cu ⁇ ent 2D symbologies e.g., PDF417, Data Matrix, etc.
  • the numbers used in this example illustrate, the density of information that can be encoded onto an internally sized 2D symbol.
  • Providing a 216 generation depth requires a 2 character long definition for generation.
  • Providing 1000 possible transformations for each image requires millisecond time encoding, which in turn requires a 16 character long parent definition.
  • a 2 character long generation and 16 character long parent yield an 18 character long parent identifier.
  • this invention uses 3970 characters to encode a maximal lineage, in an archive having 216 generations and 1000 possible transformations for each image, in a possible total of 10 649 family relations.
  • Full lineage disclosure partial data disclosure permits exact lineage tracking. Such tracking discloses full data for a given image, and parent identifier data for a given image's ascendent family. Such design protects proprietary information while providing full data recovery for any lineage by the proprietor.
  • a 216 generation depth is a practical maximum for 4000 character barcode symbols, and supports numbers large enough for most conceivable applications.
  • Generation depth beyond 216 requires compression and/or additional barcodes or the use of multidimensional barcodes.
  • site restrictions may be extended independently of the invention's apparati. Simple compression techniques, such as representing numbers with 128 characters rather than with 41 characters as currently done, will support 282 generation depth and 10 850 possible relations.
  • the encoding permits full transmission of all image information without restriction, of any archive size and generation depth.
  • the encoding design permits full lineage tracking to a 40 generation depth in a single symbol, based on a 100 character key and a theoretical upper bound of 4000 alphanumeric characters per 2D symbol. Additional barcode symbols can be used when additional generation depth is needed.
  • the encoding scheme of the present invention has extensibility to support non-tree- structured, arbitrary descent relations.
  • Such relations include images using multiple sources already present in the database, such as occurring in image overlays.
  • the invention's design supports degrees of data disclosure determined by the application requirements. In practicable measures the encoding supports:
  • ASIA supports parent-child tracking through time-stamped parent-child encoding.
  • the invention provides customizable degrees of data disclosure appropriate for application in commercial, industrial, scientific, medical, etc., domains.
  • the invention's encoding system supports archival and classifications schemes for all image-producing devices, some of which do not include direct electronic data transmission.
  • this invention's design is optimized to support 1D-3D+ barcode symbologies for data transmission across disparate media and technologies.
  • Consumer applications may desire tracking and retrieval based on 1 dimensional (ID) linear symbologies, such as Code 39.
  • ID 1 dimensional
  • Table 5 shows a configuration example which illustrates a plausible encoding configuration suitable for consumer applications.
  • the configuration characterized in Table 5 yields a maximal archive size of 989,901 images (or 19,798 images a year for 50 years), using a 4 digit sequence and 2 digit unit. This encoding creates 13 character eys and 15 character long, Code 39 compliant labels.
  • a database holds full location, image, and parent number associations, and prints convenient location number labels, for which database queries can be made.

Abstract

A method for producing universal object tracking implementations. This invention provides a functional implementation, from which any object-producing device can construct automatically generated archival enumerations. This implementation uses an encoding schemata based on location numbers, object numbers, and parent numbers. Location numbers encode information about logical sequence in the archive, object numbers encode information about the physical attributes of an object, and parent numbers record the conception date and time of a given object's parent. Parent-child relations are algorithmically derivable from location and parent number relationships, thus providing fully recoverable, cumulative object lineage information. Encoding schemata are optimized for use with all current 1, 2, and 3 dimensional barcode symbologies to facilitate data transportation across disparate technologies (e.g., imaging devices, card readers/producers, printers, medical devices). The implemented encoding schemata of this invention supports all manner of object forming devices such as image forming devices, medical devices and computer generated objects.

Description

Title: Automated -System for Image Archiving
Inventor: John Overton Reference to Related Application
This application is a continuation in part of co-pending application no.09/111,896 filed 07/08/98 entitled "System and Method for Establishing and Retrieving Data Based on Global Indices" and application no. 60/153,709 filed 09/13/99 entitled "Simple Data Transport Protocol Method and Apparatus"from which priority is claimed. Field of Invention
This invention relates generally to archive, documentation and location of objects and data. More particularly this invention is a universal object tracking system wherein generations of objects which may be physical, electronic, digital, data and images can be related one to another and to original objects that contributed to a object without significant user intervention. Background of the Invention
Increasingly, images of various types are being used in a wide variety of industrial, digital, medical, and consumer uses. In the medical field, telemedicine has made tremendous advances that now allow a digital image from some medical sensor to be transmitted to specialists who have the requisite expertise to diagnose injury and disease at locations remote from where the patient lies. However, it can be extremely important for a physician, or indeed any other person to understand how the image came to appear as it does. This involves a knowledge of how the image was processed in order to reach the rendition being examined. In certain scientific applications, it may be important to "back out" the effect of a particular type of processing in order to more precisely understand the .appearance .of the image when first made. -
Varieties of mechanisms facilitate storage and retrieval of archival information relating to images. However, these archival numbering and documentation schemes suffer from certain limitations. For example, classificatory schemata are used to facilitate machine sorting of information about a subject ("subject information") according to categories into which certain subjects fit. Additionally tracking information, that is, information concerning where the image has been or how the image was processed, is also used together with classificatory schemata.
However, relying on categorizing schemata is inefficient and ineffective. On the one hand, category schemata that are limited in size (i.e. number of categories) are convenient to use but insufficiently comprehensive for large-scale applications, such as libraries and national archives. Alternatively if the classificatory schemata is sufficiently comprehensive for large-scale applications, it may well be far too complicated, and therefore inappropriate for small scale applications, such as individual or corporate collections of image data.
It is also an approach to provide customizable enumeration strategies to narrow the complexity of large-scale systems and make them discipline specific. Various archiving schemes are developed to suit a particular niche or may be customizable for a niche. This is necessitated by the fact that no single solution universally applies to all disciplines, as noted above. However, the resulting customized archival implementation will differ from, for example, a medical image to a laboratory or botanical image archive. The resulting customized image archive strategy may be very easy to use for that application but will not easily translate to other application areas.
Thus, the utility provided by -market niche image .archiving software .simultaneously makes the resulting applications not useful to a wide spectrum of applications. For example, tracking schemata that describes art history categories might not apply to high-tech advertising.
Another type of archival mechanism suffering from some of the difficulties noted above is equipment-specific archiving. In this implementation a particular type of image device, such as a still camera, a video camera, a digital scanner, or other form of imaging means has its own scheme for imprinting or recording archival information relating to the image that is recorded. This is compounded when an image is construed as a data object(s) such as a collection of records related to a given individual, distributed across machines and databases. In the case with distributed data tracking, records (represented as images) may necessarily exist on multiple machines of the same type as well as multiple types of machines.
Thus, using different image-producing devices in the image production chain can cause major problems. For example, mixing traditional photography (with its archive notation) with digital touch-up processing (with its own different archive notation). Further, equipment-specific archive schemes do not automate well, since multiple devices within the same archive may use incompatible enumeration schemata.
Certain classification approaches assume single device input. Thus, multiple devices must be tracked in separate archives, or are tracked as archive exceptions. This makes archiving maintenance more time consuming and inefficient. For example, disciplines that use multiple cameras concurrently, such as sports photography and photo-journalism, confront this limitation.
Yet other archive approaches support particular media formats, but not multiple media formats simultaneously .occurring in the archive. For example, an .archive scheme may support conventional silver halide negatives but not video or digital media within the same archive.
Thus, this approach fails when tracking the same image across different media formats, such as tracking negative, transparency, digital, and print representation of the same image.
Yet another archive approach may apply to a particular state of the image, as the initial or final format, but does not apply to the full life-cycle of all images. For example, some cameras time- and date-stamp negatives, while database software creates tracking information after processing. While possibly overlapping, the enumeration on the negatives differs from the enumeration created for archiving. In another example, one encoding may track images on negatives and another encoding may track images on prints. However, such a state-specific approach makes it difficult automatically to track image histories and lineages across all phases of an image's life-cycle, such as creation, processing, editing, production, and presentation. Similarly, when used to track data such as that occurring in distributed databases, such a system does not facilitate relating all associated records in a given individual's personal record archive.
Thus, tracking information that uses different encoding for different image states is not particularly effective since maintaining multiple enumeration strategies creates potential archival error, or at a minimum, will not translate well from one image form to another.
Some inventions that deal with recording information about images have been the subject of U.S. patents in the past. U.S. Patent No. 5,579,067 to Wakabayashi describes a "Camera Capable of Recording Information." This system provides a camera which records ir-formatiøn into .an information recording .area .provided .on .the film .that is Leaded n .the camera. If information does not change from frame to frame, no information is recorded. However, this invention does not deal with recording information on subsequent processing.
U.S. Patent No. 5455648 to Kazami was granted for a "Film Holder or for Storing Processed Photographic Film." This invention relates to a film holder which also includes an information holding section on the film holder itself. This information recording section holds electrical, magnetic, or optical representations of film information. However, once the information is recorded, it is to used for purposes other than to identify the original image.
U.S. Patent No. 5649247 to Itoh was issued for an "Apparatus for Recording Information of Camera Capable of Optical Data Recording and Magnetic Data Recording." This patent provides for both optical recording and magnetic recording onto film. This invention is an electrical circuit that is resident in a camera system which records such information as aperture value, shutter time, photo metric value, exposure information, and other related information when an image is first photographed. This patent does not relate to recording of subsequent operations relating to the image.
U.S. Patent 5319401 to Hicks was granted for a "Control System for Photographic
Equipment." This invention deals with a method for controlling automated photographic equipment such as printers, color analyzers, film cutters. This patent allows for a variety of information to be recorded after the images are first made. It mainly teaches methods for production of pictures and for recording of information relating to that production. For example, if a photographer consistently creates a series of photographs which are off center, information can be recorded to offset the negative by a pre-determined amount during printing. Thus the information does not accompany the film being processed but it does relate to the film and is. stored in .a.separate database. The in.formatio.n stored is therefore not helpful for another laboratory that must deal with the image that is created. U.S. Patent 5193185 to Lanter was issued for a "Method and Means for Lineage Tracing of a Spatial Information Processing and Database System.". This Patent relates to geographic information systems. It provides for "parent" and "child" links that relate to the production of layers of information in a database system. Thus while the this patent relates to computer-generated data about maps, it does not deal with how best to transmit that information along a chain of image production.
U.S. Patent No. 5008700 to Okamoto was granted for a "Color Image Recording Apparatus using Intermediate Image Sheet." This patent describes a system, where a bar code is printed on the image production media which can then be read by an optical reader. This patent does not deal with subsequent processing of images which can take place or recording of information that relates to that subsequent processing.
U.S. Patent No. 4728978 was granted to Inoue for a "Photographic Camera." This patent describes a photographic camera which records information about exposure or development on an integrated circuit card which has a semiconductor memory. This card records a great deal of different types of information and records that information onto film. The information which is recorded includes color temperature information, exposure reference information, the date and time, shutter speed, aperture value, information concerning use of a flash, exposure information, type of camera, film type, filter type, and other similar information. The patent claims a camera that records such information with information being recorded on the integrated circuit court. There is no provision for changing the information or recording subsequent information about the processing of the image nor is there described a way to convey that information through many generations of images.
Thus a need exists to provide a uniform tracking mechanism for any type of image, using any type of image-producing device, which can describe the full life-cycle of an image and which can translate between one image state and another and between one image forming mechanism and another. Such a mechanism should apply to any type of object, relationship, or data that can be described as an image. Summary of the Invention
It is therefore an object of the present invention to create an archival tracking method that includes relations, descriptions, procedures, and implementations for universally tracking objects, entities, relationships, or data able to be described as images.
It is a further object of the present invention to create a tracking method capable of describing any object, entity, or relationship or data that can be described as an image of the object, entity, relationship or data.
It is a further object of the present invention to create an encoding schemata that can describe and catalogue any image produced on any media, by any image producing device, that can apply to all image producing disciplines and objects, entities, relationships, or data able to be described as images for corresponding disciplines.
It is a further object of the present invention to implement to archival scheme on automated data processing means that exist within image producing equipment.
It is a further object of the present invention to apply to all image-producing devices including devices producing objects, entities, relationships, or data that is able to be described as images.
It is a further object of the present invention to support simultaneous use of multiple types of producing devices including devices producing objects, entities, relationships, or data that is able to be described as images.
It is a further object of the present invention to support simultaneous use of multiple producing devices of the same type. It is a further object of the present invention to provide automatic parent-child encoding.
It is a further object of the present invention to track image lineages and family trees.
It is a further object of the present invention to provide a serial and chronological sequencing scheme that uniquely identifies all objects, entities, relationships, or data that is able to be described as images in an archive.
It is a further object of present invention to provide an identification schemata that describes physical attributes of all objects, entities, relationships, or data that is able to be described as images in an archive.
It is a further object of the present invention to separate classificatory information from tracking information.
It is a further object of the present invention to provide an enumeration schemata applicable to an unlimited set of media formats used in producing objects, entities, relationships, or data that is able to be described as images.
It is a further object of the present invention to apply the archival scheme to all stages of life-cycle, from initial formation to final form of objects, entities, relationships, or data that is able to be described as images.
It is a further object of the present invention to create self-generating archives, through easy assimilation into any device including devices producing objects, entities, relationships, or data that is able to be described as images.
It is a further object of the present invention to create variable levels of tracking that are easily represented by current and arriving barcode symbologies, to automate data transmission across different technologies (e.g., negative to digital to print). These and other objects of the present invention will become clear to those skilled in the art from the description that follows. Brief Description of the Invention
The present invention is a universal object tracking method and apparatus for tracking and documenting objects, entities, relationships, or data that is able to be described as images through their complete life-cycle, regardless of the device, media, size, resolution, etc., used in producing them.
Specifically, the automated system for image archiving ("ASIA") encodes, processes, and decodes numbers that characterize objects, entities, relationships, or data that is able to be described as images and related data. Encoding and decoding takes the form of a 3-number association: 1) location number (serial and chronological location), 2) image number (physical attributes), and 3) parent number (parent-child relations).
Flexibility of Encoding
A key aspect of the present inventions is that any implementation of the system and method of the present invention is interoperable with any other implementation. For example, a given implementation may use the encoding described herein as complete database record describing a multitude of images. Another implementation may use the encoding described herein for database keys describing medical records. Another implementation may use the encoding described herein for private identification. Still another may use ASIA encoding for automobile parts-tracking. Yet all such implementations will interoperate.
This design of the present invention permits a single encoding mechanism to be used in simple devices as easily as in industrial computer systems.
Parent-Child Relations The system and method of the present invention includes built-in "parent-child" encoding that is capable of tracking parent-child relations across disparate producing mechanisms. This native support of parent-child relations is included in the encoding structure, and facilitates tracking diverse relations, such as record transactions, locations of use, image derivations, database identifiers, etc. Thus, it is a function of the present invention that parent-child relations are used to track identification of records from simple mechanisms, such as cameras and TVs through diverse computer systems.
Uniqueness
The system and method of the present invention possesses uniqueness that can be anchored to device production. Thus the encoding described herein can bypass the problems facing ' "root-registration" systems (such as facing DICOM in the medical X-ray field). Additionally, the encoding described herein can use a variety of ways to generate uniqueness. Thus it applies to small, individual devices (e.g. cameras), as well as to fully automated, global systems (e.g., universal medical records).
In global systems, uniqueness resembles Open Software Foundation's DCE UUTDs (and Microsoft GUIDs), except that the encoding described herein includes a larger logical space. Such design facilitates interoperability across wide domains of application: e.g., from encoding labels for automatically generated photographic archival systems, to secure identification, to keys for distributed global database systems. This list is not meant as a limitation and is only illustrative in nature. Other applications will be apparent to those skilled in the art from a review of the specification herein.
Media Traversabilitv
The encoding described herein applies equally well to "film" and "filmless" systems, or other such distinctions. This permits the same encoding mechanism for collections of records produced on any device, not just digital devices. Tracking systems can thus track tagged objects as well as digital objects. Similarly, since the encoding mechanism is anchored to device-production, supporting a new technology is as simple as adding a new device. This in turn permits the construction of comprehensive, automatically generated tracking mechanism to be created and maintained, which require no human effort aside from the routine usage of the devices.
Using the encoding described herein, a simple implementation of the system requires less than 2K of code space. A more complex industrial implementation requires less than 200K of code space. Definitions
The following definitions apply throughout this specification:
Field: A record in an ASIA number.
Component: A set of fields grouped according to general functionality.
Location component: A component that identifies logical location.
Parent component: A component that characterizes a relational status between an object and it's parent.
Image component: A component that identifies physical attributes.
Schema: A representation of which fields are present in length and encoding.
Length: A representation of the lengths of fields that occur in encoding.
Encoding: Data, described by length and encoding. Brief Description of the Figures
Figure 1. illustrates an overview of the present invention Figure 1 A. illustrates the overarching structure organizing the production of system numbers
Figure IB. illustrates the operation of the system on an already existing image
Figure 2 illustrates the formal relationship governing encoding and decoding
Figure 3 illustrates the encoding relationship of the present invention
Figure 4 illustrates the relationships that characterize the decoding of encoded information Figure 5 illustrates the formal relations characterizing all implementations of the invention Figure 6 illustrates the parent-child encoding of the present invention in example form Figure 7 illustrates the processing flow of ASIA
Detailed Description of the Invention
The present invention is a method and apparatus for formally specifying relations for constructing image tracking mechanisms, and providing an implementation that includes an encoding schemata for images regardless of form or the equipment on which the image is produced.
The numbers assigned by the system and method of the present invention are automatically generated unique identifiers designed to uniquely identify objects within collections thereby avoiding ambiguity. When system numbers are associated with objects they are referred to herein as "tags." Thus, the expression "system tag encoding" refers to producing and associating system numbers with .objects. Figure 1A illustrates the overarching structure organizing the production of system numbers.
The present invention is organized by three "components": "Location," "Image," and "Parent." These heuristically group 18 variables are called "fields." Fields are records providing data, and any field (or combination of fields) can be encoded into an system number. The arrow ( ) labeled 'Abstraction' points in the direction of increasing abstraction. Thus, the Data Structure stratum provides the most concrete representation of the system and method of the present invention, and the Heuristics stratum provides the most abstract representation of the system of present invention.
As noted above, the system and method of the present invention comprises and organizational structure includes fields, components, and relations between fields and components. The following conventions apply and/or govern fields and components:
Base 16 schema. Base 16 (hex) numbers are used, except that leading '0' characters are excluded in encoding implementations. Encoding implementations MUST strip leading '0' characters in base 16 numbers.
Decoding implementations MUST accept leading '0' characters in base 16 numbers.
UTF-8 Character Set - The definition of "character" in this specification complies with RFC 2279. When 'character' is used, such as in the expression "uses any character", it means "uses any RFC 2279 compliant character".
Software Sets - ASIA implementations inherit core functionality unless otherwise specified through the image component's set field. See Section 2.2.3.3 Image for details about set. Representation Constraints - Certain constraints MAY be imposed on field representations, such as the use of integers for given fields in given global databases. This will be handled on a per domain basis, such as by the definition of a given global database. When needed, given applications MAY need to produce multiple ASIA numbers for the same item, to participate in multiple databases.
Fields:
A field is a record in an ASIA number. Using any field (or collection of fields) MAY (1) distinguish one from another ASIA number, and (2) provide uniqueness for a given tag in a given collection of tags.
ASIA compliance requires the presence of any field, rather than any component. Components heuristically organize fields.
Components:
A component is a set of fields grouped according to general functionality. Each component has one or more fields. ASIA has three primary components: location, image, and parent.
Table 1 : Components
Description
Component
Location Logical location
Parent Parent information
Image Physical attributes Referring to Table 1 (above) Components are illustrated. This table 1 lists components and their corresponding description. The following sections specifically describe components and their corresponding fields.
A tag's location (see Table 1 ) component simply locates an ASIA number within a given logical space, determined by a given application. The characteristics of the location component are illustrated below in Table 2. Table 2: Location
Field Description Representation
Generation Family relation depth Uses any character Sequence Enumeration of group Uses any character Time Date/time made Uses any character Author Producing agent Uses any character Device Device used Uses any character Unit Enumeration in group Uses any character Random Nontemporal uniqueness Uses any character Custom Reserved for applications Uses any character
Table 2 Location (above) lists location fields, descriptions, and representation specifications.
The following definitions apply to component fields. generation - identifies depth in family relations, such as parent-child relations. For example, T could represent "first generation", '2' could represent "second generation", and so forth. sequence - serially enumerates a group among groups. For example, sequence could be the number of a given roll of 35mm film in a photographer's collection. time - date-stamps a number. This is useful to distinguish objects of a given generation. For example, using second enumeration could ("horizontally") distinguish siblings of a given generation.
Author - identifies the producing agent or agents. For example, a sales clerk, equipment operator, or manufacturer could be authors. device - identifies a device within a group of devices. For example, cameras in a photographer's collection, or serial numbers in a manufacturer's equipment-line, could receive
device assignments. unit - serially enumerates an item in a group. For example, a given page in a photocopy job, or a frame number in a roll of film, could be units. random - resolves uniqueness. For example, in systems using time for uniqueness, clock resetting can theoretically produce duplicate time-stamping. Using random can prevent such duplicate date-stamping. custom - is dedicated for application-specific functionality not natively provided by ASIA, but needed by a given application.
The following notes apply to the system of the present invention. Uniqueness - ASIA often generates uniqueness through time, nit, and random.
Implementation needs will determine which field or combination of fields are used to guarantee uniqueness. time - ASIA uses ISO 8601:1988 date-time marking, and optional fractional time. Date-stamping can distinguish tags within a generation. In such cases, time granularity MUST match or exceed device production speed or 2 tags can receive the same enumeration. For example, if a photocopy machine produces 10 photocopies per minute, time granularity MUST at least use 6 second time-units, rather than minute time-units. Otherwise, producing 2 or more photocopies could produce 2 or more of the same time-stamps, and therefore potentially also 2 or more of the same ASIA numbers.
Author - Multiple agents MUST be separated with "," (comma). random - ASIA uses random as one of three commonly used mechanisms to generate uniqueness (see uniqueness, above). It is particularly useful for systems using time which may be vulnerable to clock resetting. Strong cryptographic randomness is not required for all applications.
The Parent
A tag's parent component characterizes an object's parent. This is an system number, subject to the restrictions of any system number as described herein. Commonly, this contains time, random, or unit. The following notes apply: representation constraints
The representation constraints for the parent field are those of the database appropriate to it. Representation constraints MAY differ between the parent field and the system number of which the field is a part. Image
A tag's image component describes the physical characteristics of an object. For example, an image component could describe the physical characteristics of a plastic negative, steel part, silicon wafer, etc. Table 3 Image lists and illustrates image component fields and their general descriptions.
Table 3: Image
Field Description Representation
Category Characterizing domain Uses any character
Size Dimensionality Uses any character
Bit Dynamic range ("bit depth") Uses any character
Push Exposure Uses any character
Media Media representation Uses any character
Set Software package Uses any character
Resolution Resolution Uses any character
Stain Chromatic representation Uses any character
Format Object embodiment Uses any character
The following definitions describes component fields. category: identifies characterizing domain. For example, in photography category could identify "single frame", to distinguish single frame from motion picture photography. size : describes object dimensionality. For example, size could describe an 8x11 inch page, or 100x100x60 micron chip, etc. bit: dynamic range ("bit depth"). For example, bit could describe a "24 bit" dynamic range for a digital image.
Push: records push or pull. For example, push could describe a "1.3 stop over- exposure" for a photographic image.
Media: describes the media used to represent an object. For example, media could be "steel" for a part, or""Kodachrome" for a photographic transparency. Set: identifies a software rendering and/or version. For example, set could be assigned to "HP: 1.3".
Resolution: describes resolution of an object. For example, resolution could represent dots-per-inch in laser printer output.
Stain: describes chromatic representation. For example, stain could represent "black and white" for a black and white negative.
Format: describes object embodiment. For example, format could indicate a photocopy, negative, video, satellite, etc. representation.
The following notes apply to the image data. set - when nonempty, permits the remapping of any field value. When empty, core functionality defaults are active. To add revisions, the delimiter ":" (colon) is added to a given root. For example, to add revision number "1.3" to root "HP", set would be "HP: 1.3".
While the functionality of components and fields. Have been illustrated above, Table 4 (below) assembles these into the formal organization from which the the system data structure of the present invention is derived. This ordering provides the basis for the base 16 representation of the schema.
Table 4: Fields
Component Field Location 1 2 3 4 5 6 7 8
Generation sequence time author device unit random custom
Parent 9 parent
Image 10 1 1 12 13 14 15 16 17 18
Category size bit push media set resolution stain format
This Table 4 (above) assembles these data into the formal organization from which ASIA data structure is derived. This ordering provides the basis for the base 16 representation of the schema.
Table 5 (below) illustrates the data structure used to encode fields into an ASIA tag. An ASIA tag has five parts: schema, :, length, :, encoding.
Table 5: Data Structure
Part1 Part2 Part3 Part4 Part5
Schema : length : encoding
Each "part" has one or more "elements," and "elements" have 1-to-l correspondences across all "parts." Consider the following definitions for Table 5.
Schema - An arbitrarily long base 16 integer, whose bits represent the presence of component fields represented in length and encoding, and listed in Table 4. If the least significant bit is set the field 1 is encoded. : - The opening delimiter separating schema and length. length - Comma separated lengths for the fields represented in encoding, whose presence is indicated in schema.
: - The closing delimiter separating length and encoding. encoding - A concatenated list of fields instantiating the elements indicated by schema and determined by length.
It is helpful to illustrate an ASIA number. Consider example (1) (below):
1C:15,2,1 :19981211T112259GE1
In this ASIA number, schema is "1C", a hex (base 16) integer (stripped of leading zeros) indicating the presence of three fields (see Table 4): time, author, device. In turn, length is '15,2,1 ', indicating that the first field is 15 long, the second 2 long, and the third 1 long. The encoding is ' 1998121 ITl 12259GE1 ', and includes the fields identified by schema and determined by length. The encoding has 3 fields: '1998121 ITl 12259' (time), 'GE' (author), and ' 1 ' (device).
Table 6 Location, (below) illustrates the fields and the description of the filed used to specify "location."
Table 6: Location
Field Description
Generation Uses any integer.
Sequence Uses any integer.
Time See "time" (above)
Author Uses any character.
Device Uses any character.
Unit Uses any integer.
Random Uses any integer.
Custom Uses any character.
parent - uses the definition of the location component's time field (see Table 6 above.).
Table 7: Image, (below) illustrates the fields and description associated with "image."
Table 7: Image
Field Description category See Table 8 Categories size See Table 9 Size/res. Syntax
See Table 10 Measure
See Table 11 Size examples bit See Table 12 Bit push See Table 13 Push media See Table 14 Reserved media slots
See Table 15 Color transparency film
See Table 16 Color negative film
See Table 17 Black & white film
See Table 18 Duplicating & internegative film
See Table 19 Facsimile
See Table 20 Prints
See Table 21 Digital set See Table 22 Software Sets resolution See Table 9 Size/res. Syntax
See Table 10 Measure
See Table 23 Resolution examples stain See Table 24 Stain format See Table 25 Format
The category field has 2 defaults as noted in Table 8 (below). Table 8: Categories
Figure imgf000024_0001
The size field has 2 syntax forms, indicated in Table 9 Size/res. Syntax (below). Table 10 Measure (below) provides default measure values that are used in Table 9. Table 11 Size examples provides illustrations of the legal use of size. Consider the following definitions. dimension - is a set of units using measure. measure - is a measurement format. n {+} - represents a regular expression, using 1 or more numbers (0-9). lc{*} - represents a regular expression beginning with any single letter (a-z; A-Z), and continuing with any number of any characters.
X-dimension - is the X-dimension in an X-Y coordinate system, subject to measure.
Y-dimension - is the Y-dimension in an X-Y coordinate system, subject to measure.
X - is a constant indicating an X-Y relationship.
Table 9: Size/res. syntax
Category Illustration
Names Dimension measure
Type 1 n{+] lc{*}
Names X-dimension X Y-dimension measure
Type 2 n{+} X n{+) lc{*}
Table 10 illustrates default values for measure. It does not preclude application-
specific extensions.
Table 10: Measure
Figure imgf000025_0001
Figure imgf000026_0001
Table 11 entitled "Size Examples " (below) illustrates the Syntax, literal, description
and measures associated with various sizes of images. This listing is not meant as a limitation but is illustrative only. As other sizes of images are created, these too will be able to be specified by the system of the present invention.
Table 11 : Size examples
Figure imgf000026_0002
Figure imgf000027_0001
Figure imgf000028_0001
Table L2 (below) lists legal values for the bitfield.
Table 12: Bit
Figure imgf000028_0002
Table 1_3 (below) lists legal values for the push field.
Table 13: Push
Figure imgf000028_0003
Values of media (illustrated in Table 14 below) are keyed to the format field, thus permitting reuse of given abbreviations for multiple contexts. The mapping of dependencies is illustrated in Table 25..
Table 14: Reserved media slots
Figure imgf000029_0001
Table 15 "Color Transparency Filem " (below) illustrates the company. Literal and description field available for existing transparency films. As new transparency films emerge, these too can be accommodated by the present invention.
Table 15: Color transparency film
Figure imgf000030_0001
Figure imgf000031_0001
Table 16 (below) illustrates the types of color negative film that can be
accommodated by the present invention. Again this list is not meant as a limitation but is illustrative only.
Table 16: Color negative film
Figure imgf000032_0001
Figure imgf000033_0001
Table 17 (below) illustrates a list of black and white film that can be accommodated by the present invention. Again this list is illustrative only and is not meant as a limitation.
Table 17: Black & white film
Figure imgf000033_0002
Figure imgf000034_0001
Figure imgf000035_0001
Referring to Table 18 (below) Duplicating and Internegative Films are illustrated. Again this list is for illustrative purposes only and is not meant as a limitation.
Table 18: Duplicating & internegative film
Figure imgf000035_0002
Figure imgf000036_0001
Referring to Table 19, Facsimile types and formats are illustrated. This listing is not meant as a limitation and is for illustrative purposes only.
7 b/e 19: Facsimile
Category Literal Description
Digital See Table 21
Facsimile DFAXH DigiBoard, DigiFAX Format, Hi-Res
DFAXL DigiBoard, DigiFAX Format, Normal-Res
Gl Group 1 Facsimile
G2 Group 2 Facsimile
G3 Group 3 Facsimile
G32D Group 3 Facsimile, 2D
G4 Group 4 Facsimile
G42D Group 4 Facsimile, 2D
G5 Group 4 Facsimile
G52D Group 4 Facsimile, 2D
TIFFG3 TIFF Group 3 Facsimile
TIFFG3C TIFF Group 3 Facsimile, CCITT RLE ID
TIFFG32D TIFF Group 3 Facsimile, 2D
TIFFG4 TIFF Group 4 Facsimile
TIFFG42D TIFF Group 4 Facsimile, 2D
TIFFG5 TIFF Group 5 Facsimile
TIFFG52 D TIFF Group 5 Facsimile, 2D
Reserved See Table 14
Referring to Table 20 (below) examples of the types of print paper that can be
classified by the present invention are illustrated. Again, this list is for illustrative purposes only and is not meant as a limitation.
Table 20: Prints
Figure imgf000038_0001
Figure imgf000039_0001
Figure imgf000040_0001
Figure imgf000041_0001
Figure imgf000042_0001
/61561
Figure imgf000043_0001
Figure imgf000044_0001
Figure imgf000045_0001
Referring to Table 21, the types of digital file formats that may be accommodated by the present invention are illustrated. This list is for illustrative purposes only and is not meant as a limitation.
Table 21: Digital
Figure imgf000045_0002
Figure imgf000046_0001
Figure imgf000047_0001
Figure imgf000048_0001
Table 22 provides default software set root values. Implementations MAY add to, or
extend values in Table 22.
Table 22: Software Sets
Figure imgf000048_0002
Figure imgf000049_0001
Figure imgf000050_0001
Table 23 (below) illustrates values for the "resolution "filed. The resolution field behaves the way that the size field behaves. Table 23 provides specific examples of resolution by way of illustration only. This table is not meant as a limitation. Table 23: Resolution examples
Figure imgf000051_0001
Table 24 lists legal values for the stain field as might be used in chemical testing.
Table 24: Stain
Figure imgf000051_0002
Table 25 (below) lists legal values for the format field. Table 25 also identifies media
dependencies. For example, when format is Ψ' the value of field media will be determined by Table 19.
Table 25: Format Literal Description Media
A Audio-visual unspecified
T Transparency Table 15
N Negative Tables 16-18
F Facsimile Table 19
P Print Table 20
C Photocopy Table 20
D Digital Table 21
V Video See Negative etc. etc.
Referring now to Figure 1 an overview of the present invention is illustrated. This figure provides the highest-level characterization of the invention. Figure 1 itself represents all components and relations of the ASIA.
Reference conventions. Since Figure 1 organizes all high-level discussion of the invention, this document introduces the following conventions of reference.
Whenever the text refers to "the invention" or to the "Automated System for Image Archiving", it refers to the aggregate components and relations identified in Figure 1.
Parenthesized numbers to the left of the image in Figure 1 Invention represents layers of the invention. For example, 'Formal specification' represents the "first layer" of the invention.
In Figure 1 Invention, each box is a hierarchically derived sub-component of the box above it. 'ASIA' is a sub-component of 'Formal objects', which is a sub-component of 'Formal specification'. By implication, thus, ASIA is also hierarchically dependent upon 'Formal specification.' The following descriptions apply. Formal specification 1. This represents (a) the formal specification governing the creation of systems of automatic image enumeration, and (b) all derived components and relations of the invention's implementation.
Formal objects 2. This represents implied or stated implementations of the invention.
ASIA 3. This is the invention's implementation software offering.
It is useful to discuss an overview of the present invention as a framework for the more detailed aspects of the invention that follow. Referring first to figure 1 A an overview of the original image input process according to the present invention is shown. The user first inputs information to the system to provide information on location, author, and other record information. Alternatively, it is considered to be within the scope of the present invention for the equipment that the user is using to input the required information. In this manner, data is entered with minimum user interaction. This information will typically be in the format of the equipment doing the imaging. The system of the present invention simply converts the data via a configuration algorithm, to the form needed by the system for further processing. The encoding/decoding engine 12 receives the user input information, processes into, and determines the appropriate classification and archive information to be in coded 14. The system next creates the appropriate representation 16 of the input information and attaches the information to the image in question 18. Thereafter the'final image is output 20, and comprises both the image data as well as the appropriate representation of the classification or archive information. Such archive information could be in electronic form seamlessly embedded in a digital image or such information could be in the form of a barcode or other graphical code that is printed together with the image on some form of hard copy medium. Referring to figure IB the operation of the system on an already existing image is described. The system first receives the image and reads the existing archival barcode information 30. This information is input to the encoding/decoding engine 32. New input information is provided 36 in order to update the classification and archival information concerning the image in question. This information will be provided in most cases without additional user intervention. Thereafter the encoding/decoding engine determines the contents of the original barcoded information and arrives at the appropriate encoded data and lineage information 34.
This data and lineage information is then used by the encoding/decoding engine to determine the new information that is to accompany the image 38 that is to be presented together with the image in question. Thereafter the system attaches the new information to the image 40 and outputs the new image together with the new image related information 42. In this fashion, the new image contains new image related information concerning new input data as well as lineage information of the image in question. Again, such archive information could be in electronic form as would be the case for a digital image or such information could be in the form of a barcode or other graphical code that is printed together with the image on some form of hard copy medium.
Referring to Figure 2 the formal relations governing encoding 4, decoding 5, and implementation of the relations 6 are shown. Encoding and decoding are the operations needed to create and interpret the information on which the present invention relies. These operations in conjunction with the implementation of the generation of the lineage information give rise to the present invention. These elements are more fully explained below. Encoding
Introduction. This section specifies the formal relations characterizing all encoding of the invention, as identified in Figure 2 Formal specification.
Rather than using a "decision tree" model (e.g., a flow chart), Figure 3 uses an analog circuit diagram. Such a diagram implies the traversal of all paths, rather than discrete paths, which best describes the invention's, encoding relations.
Component descriptions. Descriptions of each component in Figure 3 Encoding follow.
Apparatus input 301 generates raw, unprocessed image data, such as from devices or software. Apparatus input could be derived from image data, for example, the digital image from a scanner or the negative from a camera system.
Configuration input 303 specifies finite bounds that determine encoding processes, such as length definitions or syntax specifications.
The resolver 305 produces characterizations of images. It processes apparatus and configuration input, and produces values for variables required by the invention.
Using configuration input, the timer 307 produces time stamps. Time-stamping occurs in 2 parts:
The clock 309 generates time units from a mechanism. The filter 311 processes clock output according to specifications from the configuration input. Thus the filter creates the output of the clock in a particular format that can be used later in an automated fashion. Thus the output from the clock is passed through the filter to produce a time-stamp. User data processing 313 processes user specified information such as author or device definitions, any other information that the user deems essential for identifying the image produced, or a set of features generally governing the production of images.
Output processing 315 is the aggregate processing that takes all of the information from the resolver, timer and user data and produces the final encoding that represents the image of interest.
Decoding
Referring to Figure 4 the relationships that characterize all decoding of encoded information of the present invention are shown. The decoding scheme shown in Figure 4 specifies the highest level abstraction of the formal grammar characterizing encoding. The set of possible numbers (the "language") is specified to provide the greatest freedom for expressing characteristics of the image in question, ease of decoding, and compactness of representation. This set of numbers is a regular language (i.e., recognizable by a finite state machine) for maximal ease of implementations and computational speed. This language maximizes the invention's applicability for a variety of image forming, manipulation and production environments and hence its robustness.
Decoding has three parts: location, image, and parent. The "location" number expresses an identity for an image through use of the following variables.
generation Generation depth in tree structures.
sequence Serial sequencing of collections or lots of images.
time-stamp Date and time recording for chronological sequencing.
author Creating agent. device Device differentiation, to name, identify, and distinguish currently used devices within logical space.
locationRes Reserved storage for indeterminate future encoding.
locationCus Reserved storage for indeterminate user customization.
The "image" number expresses certain physical attributes of an image through the following variables.
category The manner of embodying or "fixing" a representation, e.g., "still" or
"motion".
size Representation dimensionality.
bit-or-push Bit depth (digital dynamic range) or push status of representation.
set Organization corresponding to a collection of tabular specifiers, e.g. a
"Hewlett Packard package of media tables".
media Physical media on which representation occurs.
resolution Resolution of embodiment on media.
stain Category of fixation-type onto media, e.g. "color".
format Physical form of image, e.g. facsimile, video, digital, etc.
imageRes Reserved storage for indeterminate future encoding.
imageCus Reserved storage for user customization.
The "parent" number expresses predecessor image identity through the following variables.
time-stamp Date, and time recording for chronological sequencing. parentRes Reserved storage, for indeterminate future encoding.
parentCus Reserved storage, for indeterminate user customization.
Any person creating an image using "location," "image," and "parent" numbers automatically constructs a representational space in which any image-object is uniquely identified, related to, and distinguished from, any other image-object in the constructed representational space.
Implementation
Referring to figure 5, the formal relations characterizing all implementations of the invention are shown. Three components and two primary relations characterize any implementation of the encoding and decoding components of the present invention. Several definitions of terms are apply.
"schemata" 51 are encoding rules and notations.
"engine " 53 refers to the procedure or procedures for processing data specified in a schemata.
"interface" 55 refers to the structured mechanism for interacting with an engine.
The engine and interface have interdependent relations, and combined are hierarchically subordinate to schemata. The engine and interface are hierarchically dependent upon schemata.
Formal objects
The present invention supports the representation of (1) parent-child relations, (2) barcoding, and (3) encoding schemata. While these specific representations are supported, the description is not limited to these representations but may also be used broadly in other schemes of classification and means of graphically representing the classification data.
Parent-child implementation
Parent-child relations implement the 'schemata' and 'engine' components noted above. The following terms are used in conjunction with the parent child implementation of the present invention:
"conception date" means the creation date/time of image.
"originating image" means an image having no preceding conception date.
"tree" refers to all of the parent-child relations descending from an originating image.
"node" refers to any item in a tree.
"parent" means any predecessor node, for a given node.
"parent identifier" means an abbreviation identifying the conception date of an image's parent.
"child" means a descendent node, from a given node.
"lineage" means all of the relationships ascending from a given node, through parents, back to the originating image.
"family relations" means any set of lineage relations, or any set of nodal relations.
A conventional tree structure describes image relations.
Encoding Database software can trace parent-child information, but does not provide convenient, universal transmission of these relationships across all devices, media, and technologies that might be used to produce images that rely on such information. ASIA provides for transmission of parent-child information both (1) inside of electronic media, directly; and (2) across discrete media and devices, through barcoding.
This flexibility implies important implementational decisions involving time granularity and device production speed.
Time granularity & number collision
This invention identifies serial order of children (and thus parents) through date- and time-stamping. Since device production speeds for various image forming devices vary across applications, e.g. from seconds to microseconds, time granularity that is to be recorded must at least match device production speed. For example, a process that takes merely tenths of a second must be time stamped in at least tenths of a second.
In the present invention any component of an image forming system may read and use the time stamp of any other component. However, applications implementing time-stamping granularities that are slower than device production speeds may create output collisions, that is, two devices may produce identical numbers for different images. Consider an example in which multiple devices would process and reprocess a given image during a given month. If all devices used year-month stamping, they could reproduce the same numbers over and over again.
The present invention solves this problem by deferring decisions of time granularity to the implementation. Implementation must use time granularity capable of capturing device output speed. Doing this eliminates all possible instances of the same number being generated to identify the image in question. In the present invention, it is recommended to use time intervals beginning at second granularity, however this is not meant to be a limitation but merely a starting point to assure definiteness to the encoding scheme. In certain operations, tenths of a second (or yet smaller units) may be more appropriate in order to match device production speed.
Specification
All images have parents, except for the originating image which has a null ('O') parent. Parent information is recorded through (1) a generation depth identifier derivable from the generation field of the location number, and (2) a parent conception date, stored in the parent number. Two equations describe parent processing. The first equation generates a parent identifier for a given image and is shown below.
Equation 1: Parent identifiers. A given image's parent identifier is calculated by decrementing the location number's generation value (i.e. the generation value of the given image), and concatenating that value with the parent number's parent value. Equation 1 summarizes this:
parent identifier = prev(generation) • parent (1)
To illustrate parent-child encoding, consider an image identified in a given archive by the following key:
B0106-19960713T195913=JSA@1-19 S135F-OFCP@0100S:2T-0123 19960613T121133 In this example the letter "B" refers to a second generation. The letter "C" would mean a third generation and so forth. The numbers "19960713" refers to the day and year of creation, in this case July 13, 1996. The numbers following the "T" refers to the time of creation to a granularity of seconds, in this case 19:59:13 (using a 24 hour clock). The date and time for the production of the parent image on which the example image relies is 19960613T121133, or June 13, 1996 at 12:11:33.
Equation 1 constructs the parent identifier:
parent identifier = prev(generation) • parent
or,
parent identifier = prev(B) • (19960613T121133)
= A * 19960613T121133
= A19960613T121133
The location number identifies a B (or "2nd") generation image. Decrementing this value identifies the parent to be from the A (or "1st") generation. The parent number identifies the parent conception date and time, (19960613T121133). Combimng these, yields the parent identifier A19960613T121133, which uniquely identifies the parent to be generation A, created on 13 June 1996 at 12:11 :13PM (T121133).
Equation 2 evaluates the number of characters needed to describe a given image lineage.
Equation 2: Lineage lengths. Equation 2 calculates the number of characters required to represent any given generation depth and is shown below: {generation - l) len parent) lineage length = len(key)+ j- — -τ *
[depth] (identifier)
Example: 26 generations, 1079 family relations. Providing a 26 generation depth requires a 1 character long definition for generation (i.e. A-Z). Providing 1000 possible transformations for each image requires millisecond time encoding, which in turn requires a 16 character long parent definition (i.e. gen. 1 -digit, year-4 digit, month 2-digit, day 2-digit, hour 2-digit, min. 2-digit, milliseconds 3-digit). A 1 character long generation and 16 character long parent yield a 17 character long parent identifier.
Referring to Figure 6, the parent child encoding of the present invention is shown in an example form. The figure describes each node in the tree, illustrating the present invention's parent-child support.
601 is a 1st generation original color transparency.
603 is a 2nd generation 3x5 inch color print, made from parent 601.
605 is a 2nd generation 4x6 inch color print, made from parent 601.
607 is a 2nd generation 8x10 inch color internegative, made from parent 601.
609 is a 3rd generation 16x2O inch color print, made from parent 607.
611 is a 3rd generation 16x20 inch color print, 1 second after 609, made from parent 607.
613 is a 3rd generation 8x10 inch color negative, made from parent 607. 615 is a 4th generation computer 32x32 pixel RGB "thumbnail" (digital), made from parent 611.
617 is a 4th generation computer 1280x1280 pixel RGB screen dump (digital), 1 millisecond after 615, made from parent 611.
619 is a 4th generation 8.5x11 inch CYMK print, from parent 611.
This tree (Figure 6) shows how date- and time-stamping of different granularities (e.g., nodes 601,615, and 617) distinguish images and mark parents. Thus, computer screen- dumps could use millisecond accuracy (e.g., 615,617), while a hand-held automatic camera might use second granularity (e.g., 601). Such variable date,- and time-stamping guarantees (a) unique enumeration and (b) seamless operation of multiple devices within the same archive.
Processing flow
Referring to Figure 7 the processing flow of ASIA is shown.
Command 701 is a function call that accesses the processing to be performed by ASIA Input format 703 is the data format arriving to ASIA. For example, data formats from Nikon, Hewlett Packard, Xerox, Kodak, etc., are input formats.
ILF (705,707, and 709) are the Input Language Filter libraries that process input formats into ASIA-specific format, for further processing. For example, an ILF might convert a Nikon file format into an ASIA processing format. ASIA supports an unlimited number of ILFs. Configuration 711 applies configuration to ILF results. Configuration represents specifications for an application, such as length parameters, syntax specifications, names of component tables, etc.
CPF (713,715, and 717) are Configuration Processing Filters which are libraries that specify finite bounds for processing, such pre-processing instructions applicable to implementations of specific devices. ASIA supports an unlimited number of CPFs.
Processing 719 computes output, such as data converted into numbers.
Output format 721 is a structured output used to return processing results.
OLF (723, 725, 727) are Output Language Filters which are libraries that produce formatted output, such as barcode symbols, DBF, Excel, HTML, LATEX, tab delimited text, WordPerfect, etc. ASIA supports an unlimited number of OLFs.
Output format driver 729 produces and/or delivers data to an Output Format Filter.
OFF (731, 733, 735) are Output Format Filters which are libraries that organize content and presentation of output, such as outputting camera shooting data, database key numbers, data and database key numbers, data dumps, device supported options, decoded number values, etc. ASIA supports an unlimited number of OLFs.
Applications
The design of parent-child encoding encompasses several specific applications. For example, such encoding can provide full lineage disclosure, and partial data disclosure.
Application 1: Full lineage disclosure, partial data disclosure
Parent-child encoding compacts lineage information into parent identifiers. Parent identifiers disclose parent-child tracking data, but do hot disclose other location or image data. In the following example a given lineage is described by (1) a fully specified key (location, image, and parent association), and (2) parent identifiers for all previous parents of the given key. Examples illustrates this design feature.
Example 1: 26 generations, 1079 family relations.
Providing a 26 generation depth requires a 1 character long definition for generation. Providing 1000 possible transformations for each image requires millisecond time encoding, which in turn requires a 16 character long parent definition. A 1 character long generation and 16 character long parent yield a 17 character long parent identifier (equation 1).
Documenting all possible family relations requires calculating the sum of all possible nodes. This is a geometric sum increasing by a factor of 1000 over 26 generations. The geometric sum is calculated by the following equation:
factor generano"-{) - 1 sum = — (3) factor - 1 or, 1000 26-υ - l sum
1000 - 1 1081 - 1
999 = 1.00 * 1079
For 26 generations, having 1000 transformations per image, the geometric sum yields 1079 possible family relations. To evaluate the number of characters needed to represent a maximum lineage encoded at millisecond accuracy across 26 generations, the following equation is used (noted earlier):
lineage length = len(key) +
Figure imgf000067_0001
or
lineage length = (100) + (26 - 1) • (17)
= 525
Thus, the present invention uses 525 characters to encode the maximum lineage in an archive having 26 generations and 1000 possible transformations for each image, in a possible total of 1079 family relations.
Example 2: 216 generations, 10'49 family relations. The upper bound for cuπent 2D symbologies (e.g., PDF417, Data Matrix, etc.) is approximately 4000 alphanumeric characters per symbol. The numbers used in this example illustrate, the density of information that can be encoded onto an internally sized 2D symbol. Providing a 216 generation depth requires a 2 character long definition for generation. Providing 1000 possible transformations for each image requires millisecond time encoding, which in turn requires a 16 character long parent definition. A 2 character long generation and 16 character long parent yield an 18 character long parent identifier.
To evaluate the number of characters needed to represent a maximal lineage encoded at millisecond accuracy across 216 generations, we recall equation 2:
(generation) - 1 lens(parent)(2) lineage length = len(key) + j- — -r • .. . —
(depth) (identifier)
or
lineage length = (100) + (216 - 1) (18) = 3970
In an archive having 216 generations and 1000 possible modifications for each image, a maximal lineage encoding requires 3970 characters.
Documenting all possible family relations requires calculating the sum of all possible nodes. This is a geometric sum increasing by a factor of 1000 over 216 generations. To calculate the geometric sum, we recall equation 3: 01/61561
factor^ geenneerraautioonn- \)) - 1 sum factor - 1 or, 1000 216_u - 1 sum
1000 - 1 10651 - 1 999 = 1.00- 10649
For 216 generations, having 1000 transformations per image, the geometric sum yields 10641 possible family relations. Thus, this invention uses 3970 characters to encode a maximal lineage, in an archive having 216 generations and 1000 possible transformations for each image, in a possible total of 10649 family relations.
Conclusion. The encoding design illustrated in Application 1 :
Full lineage disclosure, partial data disclosure permits exact lineage tracking. Such tracking discloses full data for a given image, and parent identifier data for a given image's ascendent family. Such design protects proprietary information while providing full data recovery for any lineage by the proprietor.
A 216 generation depth is a practical maximum for 4000 character barcode symbols, and supports numbers large enough for most conceivable applications. Generation depth beyond 216 requires compression and/or additional barcodes or the use of multidimensional barcodes. Furthermore, site restrictions may be extended independently of the invention's apparati. Simple compression techniques, such as representing numbers with 128 characters rather than with 41 characters as currently done, will support 282 generation depth and 10850 possible relations.
Application 2: Full lineage disclosure, full data disclosure
In direct electronic data transmission, the encoding permits full transmission of all image information without restriction, of any archive size and generation depth. Using 2D+ barcode symbologies, the encoding design permits full lineage tracking to a 40 generation depth in a single symbol, based on a 100 character key and a theoretical upper bound of 4000 alphanumeric characters per 2D symbol. Additional barcode symbols can be used when additional generation depth is needed.
Application 3: Non-tree-structured disclosure
The encoding scheme of the present invention has extensibility to support non-tree- structured, arbitrary descent relations. Such relations include images using multiple sources already present in the database, such as occurring in image overlays.
Conclusion
Degrees of data disclosure. The invention's design supports degrees of data disclosure determined by the application requirements. In practicable measures the encoding supports:
1. Full and partial disclosure of image data; 2. Lineage tracking to any generation depth, using direct electronic data transmission;
3. Lineage tracking to restricted generation depth, using barcode symbologies, limited only by symbology size restrictions.
Further, ASIA supports parent-child tracking through time-stamped parent-child encoding. No encoding restrictions exist for electronic space. Physical boundaries within 2D symbology space promote theoretical encoding guidelines, although the numbers are sufficiently large so as to have little bearing on application of the invention. In all cases, the invention provides customizable degrees of data disclosure appropriate for application in commercial, industrial, scientific, medical, etc., domains.
Barcoding implementation
Introduction. The invention's encoding system supports archival and classifications schemes for all image-producing devices, some of which do not include direct electronic data transmission. Thus, this invention's design is optimized to support 1D-3D+ barcode symbologies for data transmission across disparate media and technologies.
ID symbology
Consumer applications may desire tracking and retrieval based on 1 dimensional (ID) linear symbologies, such as Code 39. Table 5 shows a configuration example which illustrates a plausible encoding configuration suitable for consumer applications.
The configuration characterized in Table 5 yields a maximal archive size of 989,901 images (or 19,798 images a year for 50 years), using a 4 digit sequence and 2 digit unit. This encoding creates 13 character eys and 15 character long, Code 39 compliant labels. A database holds full location, image, and parent number associations, and prints convenient location number labels, for which database queries can be made.
<generation> — 1 character
<sequence> = 4 digits
<date> = 6 digits
<unit> = 2 digits
constants = 2 characters
Total 15 characters
Table 5: Configuration example
With such a configuration, a conventional 10 mil, Code 39 font, yields a 1.5 inch label. Such a label conveniently fits onto a 2x2 inch slide, 3x5 inch prints, etc. Note, that this encoding configuration supports records and parent-child relations through a conventional "database key" mechanism, not through barcode processing.
A system and method for automated coding of objects of different types has been disclosed. It will be appreciated by those skilled in the art that the present invention can find use in a wide variety of applications. The fact that various tables have been disclosed relating to images and image forming mechanisms should not be read as a limitation, but is presented by way of example only. Other objects such as software, databases, and other types of aggregations of information can equally take advantage of the present invention.

Claims

What is claimed is:
1. A method for generating a unique identifier for data, the method comprising:
(a) generating data with a device; and
(b) generating an identifier for the data, the identifier identifying a manufacturer and serial number of the device and comprising an indication of when the data was generated.
2. The invention of Claim 1, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and indication of when the data was generated as the first identifier.
3. The invention of Claim 2, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
4. The invention of Claim 2, wherein the field comprises a random number.
5. The invention of Claim 1, wherein indication of when the data was generated comprises at least one of a year, a month, a date, an hour, a minute, a second, and a fractional second.
6. The invention of Claim 1, wherein the data comprises image data.
7. The invention of Claim 1, wherein the data comprises non-image data.
8. The invention of Claim 1, wherein the identifier identifies related data.
9. The invention of Claim 8, wherein the first-mentioned data and the related data are related in a parent-child relationship.
10. The invention of Claim 1, wherein the identifier is in conformance with a formal specification.
11. The invention of Claim 1 , wherein the identifier is unique with respect to an identifier of any other data generated by the device or by a second device.
12. The invention of Claim 11 , wherein the manufacturer of the device is different from a manufacturer of the second device.
13. A method for determining information from an identifier of data, the method comprising:
(a) reading an identifier of data, the identifier identifying a manufacturer and serial number of a device that generated the data and comprising an indication of when the data was generated; and
(b) determining, from the identifier, at least one of the manufacturer of the device, the serial number of the device, and the indication of when the data was generated.
14. The invention of Claim 13, wherein indication of when the data was generated comprises at least one of a year, a month, a date, an hour, a minute, a second, and a fractional second.
15. The invention of Claim 13, wherein the data comprises image data.
16. The invention of Claim 13, wherein the data comprises non-image data.
17. The invention of Claim 13, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and indication of when the data was generated as the first identifier, and wherein (b) comprises determining, from the identifier, at least one of the manufacturer, the serial number, the indication of when the data was generated, and the field that distinguishes the identifier.
18. The invention of Claim 17, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
19. The invention of Claim 17, wherein the field comprises a random number.
20. The invention of Claim 13 further comprising:
(c) determining, from the identifier, data related to the first-mentioned data.
21. The invention of Claim 20, wherein the data and the first-mentioned data are related in a parent-child relationship.
22. The invention of Claim 13, wherein the identifier is in conformance with a formal specification.
23. The invention of Claim 13, wherein the identifier is unique with respect to an identifier of any other data generated by the device or by a second device.
24. The invention of Claim 23, wherein the manufacturer of the device is different from a manufacturer of the second device.
25. A method for generating a unique identifier for data, the method comprising:
(a) generating data with a device, wherein the data is related to previously- generated data; and
(b) generating an identifier for the data, the identifier identifying a manufacturer and serial number of the device and identifying the previously-generated data.
26. The invention of Claim 25, wherein the first-mentioned data and the related data are related in a parent-child relationship.
27. The invention of Claim 25, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and identification of the previously-generated data as the first identifier.
28. The invention of Claim 27, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
29. The invention of Claim 27, wherein the field comprises a random number.
30. The invention of Claim 25, wherein the data comprises image data.
31. The invention of Claim 25, wherein the data comprises non-image data.
32. The invention of Claim 25, wherein the identifier is in conformance with a formal specification.
33. The invention of Claim 25, wherein the identifier is unique with respect to an identifier of any other data generated by the device or by a second device.
34. The invention of Claim 33, wherein the manufacturer of the device is different from a manufacturer of the second device.
35. A method for determining information from an identifier of data, the method comprising:
(a) reading an identifier of data, the identifier identifying a manufacturer and serial number of a device that generated the data and identifying previously-generated data related to the data; and
(b) determining, from the identifier, at least one of the manufacturer of the device, the serial number of the device, and an identification of the previously-generated data.
36. The invention of Claim 35, wherein the first-mentioned data and the related data are related in a parent-child relationship.
37. The invention of Claim 35, wherein the data comprises image data.
38. The invention of Claim 35, wherein the data comprises non-image data.
39. The invention of Claim 35, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and identification of the previously-generated data, and wherein (b) comprises determining, from the identifier, at least one of the manufacturer, the serial number, the identification of the previously-generated data, and the field that distinguishes the identifier.
40. The invention of Claim 39, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
41. The invention of Claim 39, wherein the field comprises a random number.
42. The invention of Claim 35, wherein the identifier is in conformance with a formal specification.
43. The invention of Claim 35, wherein the identifier is unique with respect to an identifier of any other data generated by the device or by a second device.
44. The invention of Claim 35, wherein the manufacturer of the device is different from a manufacturer of the second device.
45. A method for generating a unique identifier for data, the method comprising:
(a) generating data with a software element; and
(b) generating an identifier for the data, the identifier identifying a manufacturer and serial number of the software element and comprising an indication of when the data was generated.
46. The invention of Claim 45, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and indication of when the data was generated as the first identifier.
47. The invention of Claim 46, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
48. The invention of Claim 46, wherein the field comprises a random number.
49. The invention of Claim 45, wherein indication of when the data was generated comprises at least one of a year, a month, a date, an hour, a minute, a second, and a fractional second.
50. The invention of Claim 45, wherein the data comprises image data.
51. The invention of Claim 45, wherein the data comprises non-image data.
52. The invention of Claim 45, wherein the identifier identifies related data.
53. The invention of Claim 52, wherein the first-mentioned data and the related data are related in a parent-child relationship.
54. The invention of Claim 45, wherein the identifier is in conformance with a formal specification.
55. The invention of Claim 45, wherein the identifier is unique with respect to an identifier of any other data generated by the software element or by a second software element.
56. The invention of Claim 55, wherein the manufacturer of the software element is different from a manufacturer of the second software element.
57. A method for determining information from an identifier of data, the method comprising:
(a) reading an identifier of data, the identifier identifying a manufacturer and serial number of a software element that generated the data and comprising an indication of when the data was generated; and
(b) determining, from the identifier, at least one of the manufacturer of the software element, the serial number of the software element, and the indication of when the data was generated.
58. The invention of Claim 57, wherein indication of when the data was generated comprises at least one of a year, a month, a date, an hour, a minute, a second, and a fractional second.
59. The invention of Claim 57, wherein the data comprises image data.
60. The invention of Claim 57, wherein the data comprises non-image data.
61. The invention of Claim 57, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and indication of when the data was generated as the first identifier, and wherein (b) comprises determining, from the identifier, at least one of the manufacturer, the serial number, the indication of when the data was generated, and the field that distinguishes the identifier.
62. The invention of Claim 61 , wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
63. The invention of Claim 61 , wherein the field comprises a random number.
64. The invention of Claim 57 further comprising:
(c) determining, from the identifier, data related to the first-mentioned data.
65. The invention of Claim 64, wherein the data and the first-mentioned data are related in a parent-child relationship.
66. The invention of Claim 57, wherein the identifier is in conformance with a formal specification.
67. The invention of Claim 57, wherein the identifier is unique with respect to an identifier of any other data generated by the software element or by a second software element.
68. The invention of Claim 67, wherein the manufacturer of the software element is different from a manufacturer of the second software element.
69. A method for generating a unique identifier for data, the method comprising:
(a) generating data with a software element, wherein the data is related to previously-generated data; and
(b) generating an identifier for the data, the identifier identifying a manufacturer and serial number of the software element and identifying the previously- generated data.
70. The invention of Claim 69, wherein the first-mentioned data and the related data are related in a parent-child relationship.
71. The invention of Claim 69, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and identification of the previously-generated data as the first identifier.
72. The invention of Claim 71, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
73. The invention of Claim 71 , wherein the field comprises a random number.
74. The invention of Claim 69, wherein the data comprises image data.
75. The invention of Claim 69, wherein the data comprises non-image data.
76. The invention of Claim 69, wherein the identifier is in conformance with a formal specification.
77. The invention of Claim 69, wherein the identifier is unique with respect to an identifier of any other data generated by the software element or by a second software element.
78. The invention of Claim 76, wherein the manufacturer of the software element is different from a manufacturer of the second software element.
79. A method for determining information from an identifier of data, the method comprising:
(a) reading an identifier of data, the identifier identifying a manufacturer and serial number of a software element that generated the data and identifying previously- generated data related to the data; and (b) determining, from the identifier, at least one of the manufacturer of the software element, the serial number of the software element, and an identification of the previously-generated data.
80. The invention of Claim 79, wherein the first-mentioned data and the related data are related in a parent-child relationship.
81. The invention of Claim 79, wherein the data comprises image data.
82. The invention of Claim 79, wherein the data comprises non-image data.
83. The invention of Claim 79, wherein the identifier further comprises a field that distinguishes the identifier from a second identifier comprising the same manufacturer, serial number, and identification of the previously-generated data, and wherein (b) comprises determining, from the identifier, at least one of the manufacturer, the serial number, the identification of the previously-generated data, and the field that distinguishes the identifier.
84. The invention of Claim 83, wherein the data is an item in a group, and wherein the field serially enumerates the data in the group.
85. The invention of Claim 83, wherein the field comprises a random number.
86. The invention of Claim 79, wherein the identifier is in conformance with a formal specification.
87. The invention of Claim 79, wherein the identifier is unique with respect to an identifier of any other data generated by the software element or by a second software element.
88. The invention of Claim 87, wherein the manufacturer of the software element is different from a manufacturer of the second software element.
PCT/US2001/004189 2000-02-14 2001-02-09 Automated system for image archiving WO2001061561A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001236814A AU2001236814A1 (en) 2000-02-14 2001-02-09 Automated system for image archiving

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US50344100A 2000-02-14 2000-02-14
US09/503,441 2000-02-14

Publications (2)

Publication Number Publication Date
WO2001061561A2 true WO2001061561A2 (en) 2001-08-23
WO2001061561A3 WO2001061561A3 (en) 2004-02-26

Family

ID=24002105

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/004189 WO2001061561A2 (en) 2000-02-14 2001-02-09 Automated system for image archiving

Country Status (2)

Country Link
AU (1) AU2001236814A1 (en)
WO (1) WO2001061561A2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572726A (en) * 1989-02-09 1996-11-05 Canon Kabushiki Kaisha Electronic filing apparatus
WO1998031138A1 (en) * 1997-01-13 1998-07-16 John Overton Automated system for image archiving
US5832502A (en) * 1996-07-02 1998-11-03 Microsoft Corporation Conversation index builder
US5911141A (en) * 1995-11-07 1999-06-08 International Business Machines Corporation On-line hierarchical form records identification
EP0952726A1 (en) * 1998-04-24 1999-10-27 Imation Corp. Method and system for associating exposed radiographic films with proper patient information
WO2000003526A1 (en) * 1998-07-08 2000-01-20 Overx, Inc. System and method for establishing and retrieving data based on global indices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572726A (en) * 1989-02-09 1996-11-05 Canon Kabushiki Kaisha Electronic filing apparatus
US5911141A (en) * 1995-11-07 1999-06-08 International Business Machines Corporation On-line hierarchical form records identification
US5832502A (en) * 1996-07-02 1998-11-03 Microsoft Corporation Conversation index builder
WO1998031138A1 (en) * 1997-01-13 1998-07-16 John Overton Automated system for image archiving
EP0952726A1 (en) * 1998-04-24 1999-10-27 Imation Corp. Method and system for associating exposed radiographic films with proper patient information
WO2000003526A1 (en) * 1998-07-08 2000-01-20 Overx, Inc. System and method for establishing and retrieving data based on global indices

Also Published As

Publication number Publication date
WO2001061561A3 (en) 2004-02-26
AU2001236814A1 (en) 2001-08-27

Similar Documents

Publication Publication Date Title
EP0951775A1 (en) Automated system for image archiving
US7191392B1 (en) System and method for the creation of virtual information packages
JP4744660B2 (en) Photo finishing system
US7787712B2 (en) Electronic document creating apparatus
CN1162804C (en) Computer-readable recording medium for recording photograph print ordering information
US6819449B2 (en) Image printing and filing system
JP4572136B2 (en) Document management method
US20050008264A1 (en) Image displaying method and apparatus, and program for the same
US20060078315A1 (en) Image display device, image display program, and computer-readable recording media storing image display program
US7580164B2 (en) Document separator pages
US8271489B2 (en) Photo book system and method having retrievable multimedia using an electronically readable code
US20030184811A1 (en) Automated system for image archiving
JP2008236468A (en) Image file management device and program
JP4227432B2 (en) Image processing method
Hurley The Making of America II Testbed Project: a digital library service model
JP2003319330A (en) Information recording method, information recording terminal, information recording system, and recording medium
WO2001061561A2 (en) Automated system for image archiving
JP2003110844A (en) Image processor, its control method, computer program and recording medium
CN100403298C (en) Apparatus and method of transmitting/storing print or display control information, and recording medium thereof
MXPA99006596A (en) Automated system for image archiving
Fornaro et al. Long-term Preservation and Archival File Formats: Concepts and solutions
JP2005109760A (en) Apparatus and method of storing image
JP2004318187A (en) Image generating device and image generating system
JP2004086294A (en) Document management method and device
Lynn Preservation and Access Technology. The Relationship between Digital and Other Media Conversion Processes: A Structured Glossary of Technical Terms.

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP