Data access based on human-produced images

Abstract: An item of data, such as data defining an image of a document (10), and identifying image data are stored in memory. The identifying image data define a human-produced identifying image (18) for the item of data. In response to query image data defining a human-produced query image (24) similar to the identifying image (18), the query image data and the identifying image data are used to access the item of data. The identifying image and query image can be produced making marks by hand, by controlling a machine to make marks, or by interactively using a machine to produce data defining an image. The identifying image (18) can be in a field (16) on a form requesting a store operation, and the form can be part of an image set that includes images of a document that the identifying image identifies. Similarly, the query image (24) can be in a field (22) on an access form (20) requesting an access operation. In response to the access form, a machine can automatically create a retrieval request form listing identifying images that are sufficiently similar to the query image to meet a criterion. In response to the marked retrieval request form, the machine can access and retrieve each requested document.

Description: The present invention relates to data filing techniques. Using PaperWorks™ on a PC ., Xerox Corporation, 1992, pp. 1-4 and 71-86, describes document handling features of PaperWorks™ software, a product of Xerox Corporation Page 2 indicates that the software stores a document as an electronic image and that a document from a personal computer (PC) can be delivered to a fax machine, whether a document faxed to the PC or a version of a document created on the PC. Page 73, near the bottom, shows an image of a window entitled "Marketing Reports" within which an image of a name that had been writen on a form is shown for a document sent to a PC from a fax machine. Page 79 indicates that such a document can be renamed. Pages 82-83 show how a DOS document is included. Using PaperWorks™ from a Fax Machine ., Xerox Corporation, 1992, also describes document handling features of the PaperWorks™ software. Page 1 indicates that a user can retrieve documents from a personal computer from a fax machine, whether a document faxed to the PC or a version of a document created on the PC. Pages 9-11 illustrate forms used to retrieve documents, and explain how to mark the forms to retrieve a document. Pages 20-23 illustrate forms used to file a document on a PC from a fax machine, and page 21 shows a form in which a user can write a name for a document. The PaperWorks™ software manages documents using a database. Each document is assigned an identifier within the database, and this identifier can be used to access the document. In addition, the document can have an identifying image in the database, stored so that the document identifier can be used to access the identifying image and vice versa. In automatically creating a retrieval form, the software can use the document identifier to access the identifying image and can then include the identifying image in the form with a check box. If an image of the form is subsequently received with the check box marked, the software can use a description of the form to access the document identifier, and can then use the document identifier to access the document and perform the requested retrieval operation. A system that performs data storing and retrieval operations must have a way of selecting a stored item of data for access. Conventionally, an item of data can be stored in such a way that it can be accessed based on an identifier that includes ASCII codes or other character codes. Conventional techniques for providing ASCII codes or other character codes to a filing system can be problematic in certain situations. If the codes are obtained directly, such as by pressing keys of a keyboard, the filing system must have user input circuitry for receiving such codes; in this case, a remote user able to communicate only through a facsimile machine, for example, would have difficulty retrieving items of data. On the other hand, if the codes are obtained indirectly through handprint recognition or other recognition techniques, errors in recognition may make it difficult to access a desired item of data. Some conventional techniques use file identifiers that are automatically generated by a filing system, such as strings of ASCII codes or other character codes. In addition to the problems noted above, these techniques are problematic because an automatically generated identifier may not include information that suggests the content of an item of data to a user. One object of the present invention is to alleviate these problems by enabling a user to access a stored item of data by providing a human-produced query image. Accordingly, the present invention provides a method, machine and article of manufacture as defined in any one of the appended claims. The query image could be produced, for example, by hand printing, hand writing, drawing, typewriting, machine printing, or interactive image creation or editing. Therefore, the query image can have an appearance that suggests the content of a desired item of data to the user. Because the stored item of data can be accessed using the human-produced query image, it is unnecessary to obtain ASCII codes or other character codes. This technique can be implemented, for example, by storing data, referred to herein as "identifying image data," defining an identifying image for a stored item of data. Then, in response to query image data defining a query image similar to the identifying image, the query image data and the identifying image data can be used to access the stored item of data. The query image data and the identifying image data can be used, for example, to determine that the query image and the identifying image are similar. The identifying image data and the stored item of data can be stored so that the item of data can be accessed from the identifying image data. One way to do so is to register the identifying image data and the item of data in a filing system, in a database, or in a data structure such as a lookup table such that when data is used to access identifying image data, data is also available to access the identified item of data. The identifying image data can include data defining each pixel of the identifying image, such as a bitmap. In this case, the identifying image and the query image could be compared by a correlation operation, such as by obtaining a Hausdorff distance. The identifying image data can include a less detailed descriptor of the identifying image in a form that facilitates comparison. For example, the descriptor can be a one-dimensional signal descriptor of the identifying image. A descriptor of the query image can similarly be obtained from the query image data, and a comparison can then be performed using the two descriptors. The comparison could be performed to obtain the item of data whose identifying image is most similar to the query image. Or the comparison could be performed to obtain any item of data whose identifying image is sufficiently similar to the query image to meet a criterion. If more than one stored identifying image is sufficiently similar to the query image to meet a criterion, the identifying images can be used to permit a user to select between the items of data they identify. For example, a form can be created automatically, showing each identifying image next to a check box. Each check box can then be marked to request retrieval of the item of data identified by the adjacent identifying image. A machine implementing the invention can include image input circuitry and memory. Data defining an item of data and defining an identifying image for the item of data can be stored in the memory. Data defining a query image can be received from the image input circuitry. The data defining the query image and the identifying image can then be used to access the item of data. A software product implementing the invention can include a storage medium and data stored by the storage medium. The software product can be used in a machine that includes an item of data and its identifying image data stored in memory. The stored data can include instructions that can be executed by the machine's processor. In executing the instructions, the processor receives data defining a query image from image input circuitry and uses the data defining the query image and the identifying image to access the item of data. The techniques described above are advantageous because they make it unnecessary to employ ASCII codes or other character codes in data access. Instead, human-produced query images can be used, such as handprinted images. The techniques are also advantageous because they make it possible for the user to provide an identifying image that suggests the content of an item of data it identifies; as a result, the user can more easily remember the identifying image. Prior art document US-A-5010500 (Xerox corp.) defines how user gesture input can be used to retrieve image data or video data. There is, however, no additional identifying image data, seen in this prior art. Prior art document IEEE WORKSHOP ON LANGUAGES FOR AUTOMATION, 31 August 1988, UNIVERSITY OF MARYLAND, US, T. HAMANO: "A similarity retrieval method for image databases using simple graphics". This document describes a way to retrieve image data is presented. It is based on storing key-images in an index. Through interactive user interaction a basic layout for the desired object to be retrieved is produced. This basic layout is based on a semantic component called by inputting its name. Subsequently, a search using comparison between the basic layout and the indexed key-images is performed and retrieval of the actual image can be done upon a successful match. In the current application there is no interaction starting from a keyword to get a basic object to be modified as in this prior art. The present invention will be described further, by way of examples, with reference to the accompanying drawings, in which:- Fig. 1 is a schematic diagram illustrating how human-produced images can be used to access an item of data, Fig. 2 is a flow chart showing general steps in using a human-produced query image to access an item of data, Fig. 3 is a schematic block diagram showing general components of a software product and a machine in which the software product can be used to implement the general steps in Fig. 2, Fig. 4 is a schematic block diagram showing ways in which a human can produce a query image by a marking operation, Fig. 5 is a schematic block diagram showing how a human can produce a query image by interacting with a machine, Fig. 6 is a schematic block diagram showing an item and its identifying image stored in a database, Fig. 7 is a schematic block diagram showing an item and its identifying image stored in a filing system, Fig. 8 is a flow chart showing acts in obtaining a measure of similarity using pixel data defining an identifying image and a query image, Fig. 9 is a flow chart showing acts in obtaining a measure of similarity using descriptors for an identifying image and a query image, Fig. 10 is a flow chart showing acts in accessing an item of data with an identifying image that is sufficiently similar to a query image to meet a criterion, Fig. 11 is a schematic view of a form for requesting access to a document, Fig. 12 is a schematic view of an automatically created form listing items with identifying images similar to a query image, Fig. 13 is a flow chart showing user interface acts in response to forms like those in Figs. 11 and 12, Fig. 14 is a schematic block diagram of a personal computer system in which the invention can be applied and Fig. 15 is a schematic block diagram of a copier in which the invention can be applied. A. General Features Figs. 1-3 illustrate general features of the invention. Fig. 1 shows graphically how an identifying image and a query image can be used to access an item of data. Fig. 2 shows general steps in using a query image to access an item of data. Fig. 3 shows general components of a software product and of a machine in which it can be used. Fig. 1 shows image set 10, including form 12 and document 14, which includes N pages as shown. Form 12 requests storage of document 14 and also includes field 16 for a human-produced identifying image. As shown, field 16 includes marks 18 made by a human by hand. A machine receiving data defining image set 10 can respond to form 12 by automatically storing an item of data defining document 14 and identifying image data defining an image of field 16. Form 20 requests access of an item of data and also includes field 22 for a human-produced query image. As shown, field 22 includes marks 24 made by a human by hand which are similar to marks 18 in field 16. Therefore, the machine receiving data defining an image of form 20 can respond by determining whether the identifying image from field 16 is similar to the query image from field 22. If so, the machine can access item of data 30 defining document 14. The general acts in Fig. 2 begin in box 50 by storing an item of data and by also storing data defining a human-produced identifying image for the item of data. At some later time, as indicated by the dashed line, the act in box 52 receives data defining a human-produced query image that is similar to the identifying image. In response, the act in box 54 uses the data defining the identifying image and the query image to access the item of data stored in box 50. Fig. 3 shows software product 60, an article of manufacture that can be used in a system that includes components like those shown in Fig. 3. Software product 60 includes data storage medium 62 that can be accessed by storage medium access device 64. Data storage medium 62 could, for example, be a magnetic medium such as a set of one or more tapes, diskettes, or floppy disks; an optical medium such as a set of one or more CD-ROMs; or any other appropriate medium for storing data. Data storage medium 62 stores data that storage medium access device 64 can provide to processor 66. Processor 66 is also connected for accessing data stored in memory 68. Processor 66 is also connected for receiving data defining images from image input circuitry 70. The data could be obtained from facsimile (fax) machine 72; from scanner 74; from editor 76, which could be a forms editor or other interactive image editor controlled by user input devices such as a keyboard and mouse or a pen- or stylus-based input device; or from network 78, which could be a local area network or other network capable of transmitting data defining an image. Processor 66 is also connected for providing data defining images to image output circuitry 80. The data could in turn be provided to fax machine 82, to printer 84, to display 86, or to network 88. In addition to data storage medium 62, software product 60 includes data stored by storage medium 62. The stored data include data indicating instructions 90, which processor 66 can execute to perform the acts in boxes 52 and 54 in Fig. 2. In performing the act in box 52, processor 66 receives data defining a query image from image input circuitry 70. In performing the act in box 54, processor 66 uses the data defining the query image and identifying image data 92 to access item of data 94. Identifying image data 92 defines an identifying image for item of data 94. B. Possible Implementations The general features described above could be implemented in numerous ways on various machines to provide access to stored items of data. 1. Human-Produced Images A user can provide data defining a human-produced image in many ways. Fig. 4 illustrates ways in which a user can provide a human-produced image by a marking operation. Fig. 5 illustrates ways in which a user can provide a human-produced image by interacting with a machine without a marking operation. In Fig. 4, several examples of human-produced images are shown at left. Image 100 was produced by hand printing, image 102 by hand writing, image 104 by drawing circle 106 around text or graphics, and image 108 by hand drawing graphics. Image 110 was produced by typing or by machine printing text or graphics. Scanner 120 can receive a sheet holding any of the human-produced images in Fig. 4. In response, scanner 120 provides data defining a human-produced image to be used in a data storage or access operation. For image 104, techniques as described in Bloomberg et al., U.S. Patent 5,201,011, could be used to detect the marks and extract the region within the circle. Fig. 5 shows machine 130, which could be a personal computer, a workstation, or another data processing system. Machine 130 includes processor 132, display 134, keyboard 136, and pointing device 138, illustratively a mouse. A user can operate keyboard 136 and pointing device 138 to provide signals to processor 132. In response, processor 132 presents and modifies image 140 on display 134, so that the user can continue to provide signals until image 140 is satisfactory. Then the user can provide a signal requesting that processor 132 provide data defining human-produced image 140 to be used in a data storage or access operation. Processor 132 could execute a number of types of software to permit a user to produce an image in the manner described above. Processor 132 could execute document editing software or image editing software. Further, processor 132 could have stored images of characters printed by a human by hand, so that, in response to keystrokes on keyboard 136, processor 132 could include hand printed characters in image 140. In practicing the invention, an identifying image could be produced in one of the ways shown in Figs. 4 and 5, while a query image could be produced in another one of the ways. For example, a first human could hand print an identifying image and a second human could operate keyboard 136 to include characters printed by the first human in image 140 to provide a query image similar to the identifying image. 2. Storing Identifying Image An item of data and data defining its identifying image could be stored in various ways. Fig. 6 shows how items and identifying images could be stored in a database. Fig. 7 shows how items and identifying images could be stored in a filing system. Fig. 6 shows entries in database 160 beginning with zeroth entry 162 and including m th entry 164. Fig. 6 also shows stored data to which m th entry 164 is linked. As shown, m th entry 164 includes several fields. Document ID field 170 includes a pointer to item of data 172, document m . Identifying image ID field 180 includes a pointer to item of data 182, data defining Identifying image m , which identifies document m . As a result, when data, such as from field 180, is used to access identifying image data, such as item of data 182, data, such as from field 170, is also available to access the identified item of data, such as item of data 172. Fig. 7 shows directory 200 listing ascii file names in a file system such as Unix, illustratively showing the zeroth name "ascii0" and the n th name "asciin". The suffix "doc" can be annexed to the n th file name in directory 200 to access item of data 202, document n . Similarly, the suffix "name" can be annexed to the n th file name to access item of data 204, data defining identifying image n , which identifies document n . As a result, when a file name from directory 200 is used to access identifying image data, such as item of data 204, the file name is also available to access the identified item of data, such as item of data 202. 3. Access Operations Identifying image data and query image data could be used in various ways to access an item of data. Fig. 8 shows acts in an implementation in which pixel data defining an identifying image and a query image are used to obtain a measure of similarity. Fig. 9 shows acts in an implementation in which pixel data are used to obtain descriptors for the identifying image and for the query image and the descriptors are used to obtain a measure of similarity. Fig. 10 shows acts in a routine that can access an item of data based on operations like those in Figs. 8 and 9. The act in box 220 in Fig. 8 obtains data indicating a value for each pixel of the identifying image. This act can be performed using data defining an image that includes the identifying image within a field, for example, in which case the pixel data indicate the values of pixels within the field. As suggested by the dashed line in Fig. 8, this act can be performed when the identifying image data is stored, and the pixel data can be included in the identifying image data. This act can also include normalization or any other operations necessary so that the same similarity measurement can be performed on the identifying images of a number of items of data. The act in box 222 is performed when data defining the query image is received. This act obtains data indicating a value for each pixel of the query image. This act can be performed using data defining an image that includes the query image within a field, for example, in which case the pixel data indicate the values of pixels within the field. This act can also include normalization or any other operations necessary to facilitate measurement of similarity to identifying images. The act in box 224 then uses the pixel data from boxes 220 and 222 to obtain data indicating a measure of similarity between the identifying image and the query image. For example, a Hausdorff distance or other fuzzy correlation could be obtained between the two images. The use of a Hausdorff distance to compare images is described in Huttenlocher, D.P., Klanderman, G.A., and Rucklidge, W.J., "Comparing Images Using the Hausdorff Distance," Cornell University Department of Computer Science, CUCS TR 91-1211(revised), 1991, pp. 1-35. As in box 220, the act in box 230 in Fig. 9 obtains data indicating a value for each pixel of the identifying image. This act can also include normalization or any other operations necessary so that useful descriptors can be obtained for the identifying images of a number of items of data. The act in box 232 then uses the pixel data from box 230 to obtain a descriptor of the identifying image. For example, if identifying images are constrained to be words, the descriptor could be a word shape signal such as a one-dimensional signal. As suggested by the dashed line in Fig. 9, this act can be performed when the identifying image data is stored, and the descriptor can be included in the identifying image data. In any event, the pixel data can be included in the identifying image data, so that the descriptor could also be obtained later, such as at the time the query image is received. The act in box 240 is performed when data defining the query image is received. This act obtains data indicating a value for each pixel of the query image, as in box 222. This act can also include normalization or any other operations necessary a useful descriptor can be obtained. The act in box 242 then uses the pixel data from box 240 to obtain a descriptor of the query image. For example, if query images are constrained to be words, the descriptor could be a one-dimensional signal. The act in box 244 then uses the descriptors from boxes 232 and 242 to obtain data indicating a measure of similarity between the identifying image and the query image. For example, word shape signals could be compared. The act in box 260 in Fig. 10 begins by receiving a query image. The act in box 262 begins a loop that goes through a number of items of data, determining which item or items to access in response to a query image. If items remain, the act in box 264 obtains data indicating a measure of similarity for the next item's identifying image and the query image. This act can include acts like those described above in relation to Figs. 8 and 9, or any other appropriate acts. The act in box 270 then determines whether the measure of similarity from box 264 meets a criterion. For example, if the most similar identifying image is sought, the act in box 270 can determine whether the measure of similarity from box 264 is better than the previous best; if so, the measure of similarity from box 264 becomes the new best and the act in box 272 saves the data needed to access the item of data identified by the identifying image. Similarly, if the N most similar identifying images are sought, the act in box 270 can determine whether the measure of similarity from box 264 is better than the previous Nth best; if so, it is added to the list of N best, pushing off the Nth best. Or, if it is desired to find all identifying images that meet or exceed a fixed measure of similarity, the act in box 270 can compare the measure of similarity from box 264 with the fixed measure. After the loop has been performed for each of the items of data, the act in box 274 uses data saved in box 272 to access one or more items of data. 4. User Interface Many user interface techniques could be used to allow access of an item of data using data defining a query image and an identifying image. Fig. 11 shows a form that could be used to request an access operation. Fig. 12 shows an automatically created form that could be used to select among a number of data items whose identifying images meet a criterion of similarity. Fig. 13 shows acts a machine could perform in response to the forms in Figs. 11 and 12. The PaperWorks™ Software described above provides a paper user interface. In other words, a user can provide input signals on paper and can receive output signals on paper. A document and an image domain document label can be stored using a form and a stored document can be retrieved using a form with a list of documents. Similarly, paper user interface techniques can be used to allow access of an item of data using a query image and an identifying image. Form 300 in Fig. 11 can be used to request access of a stored document. Form identification information 302 can be used by a machine to obtain a description of form 300. The description can indicate that form 300 is requesting access of documents with identifying images similar to a query image within field 304. As shown, field 304 illustratively contains marks 306 made by a user by hand. Form 310 in Fig. 12 can be automatically created and transmitted to a destination indicated in data defining a form such as form 300 using techniques like those described in U.S.-A-5,267,303. Form identification information 312 can be used by a machine to obtain a description of form 310. The description can indicate that form 310 is requesting access of any document that is checked by a mark in the check box adjacent its identifying image. As shown, identifying image 314 has adjacent check box 316 and identifying image 320 has adjacent check box 322. The act in box 340 in Fig. 13 begins by receiving an access request form such as form 300. Using form identification 302, the act in box 342 obtains data defining a query image, the contents of field 304. The act in box 344 then finds identifying images similar to the query image from box 342. The similar identifying images from box 344 are listed on an automatically created form and provided to a user by the act in box 346. The form created in box 346 can be similar to form 310. As suggested by the dashed line, the act in box 350 may occur at a later time, when a user has marked the form provided in box 346 to request access of one or more stored documents. The act in box 350 receives the marked form, and the act in box 352 uses form identification information 312 to obtain data indicating which check boxes have been marked. The act in box 354 begins a loop that accesses each checked document in box 356 until all have been accessed. C. Possible Applications The invention could be applied in many ways in a wide variety of machines. Fig. 14 illustrates how the invention could be applied in a personal computer in a manner similar to the PaperWorks™ software product described above. Fig. 15 illustrates how the invention could be applied in a copier. System 380 in Fig. 14 includes CPU 382, which can be the CPU of a personal computer such as an IBM PC compatible machine. CPU 382 is connected to receive user input signals from keyboard 384 and mouse 386, and can present images to a user through display 388. CPU 382 is also connected to a number of other peripheral devices, illustratively including disk drive 390, modem 392, scanner 394, and printer 396. Program memory 400 stores operating system (OS) instructions 402, which can be a version of DOS; image editing instructions 404; database instructions 406; store instructions 408; access instructions 410; and retrieve instructions 412. All of these except OS instructions 402 could be obtained in the form of a software product stored on a floppy disk, diskette, or CD-ROM, and accessed for storage in program memory 400 by disk drive 390. Data memory 420 stores document data 422 defining documents; identifying image data 424 defining identifying images of documents; OS file names 426 for documents; and hand print character data 428 defining images of characters printed by hand. System 380 can obtain items for storage in document data 422 in many ways: Data defining a document could be produced interactively by executing image editing instructions 404 or other editing instructions, such as a conventional word processor. Data defining a previously produced document could be retrieved from a storage medium by disk drive 390. Data defining an image of a document could be obtained from scanner 394. Data defining a document in image form or in a page description language could be received from a remote location through modem 392. Similarly, system 380 can obtain data defining a human-produced identifying image for an item being stored in document data 422 in several ways. A user could produce an identifying image interactively by executing image editing instructions 404; the identifying image could include characters based on hand print character data 428, which could define characters actually produced by a human by hand. A user could use printer 396 to print an identifying image created with an editor, then use scanner 394 to obtain data defining the identifying image. Or the user could use scanner 394 to obtain data defining an image in which a human has made marks that are an identifying image or that indicate a segment that is an identifying image. Or a user could produce data defining an identifying image elsewhere and provide it to system 380 through modem 392, such as by making a fax transmission to modem 392. The identifying image could be provided on a form requesting storage of data defining a document, and database instructions 406 and store instructions 408 could be executed to store data defining the document in document data 422 and data defining the identifying image in identifying image data 424. System 380 can also obtain data defining a human-produced query image in several ways: A user could produce a query image interactively by executing image editing instructions 404; the query image could include characters based on hand print character data 428. A user could use printer 396 to print a query image created with an editor, then use scanner 394 to obtain data defining the query image. Or the user could use scanner 394 to obtain data defining an image in which a human has made marks that are a query image or that indicate a segment that is a query image. Or a user could produce data defining a query image elsewhere and provide it to system 380 through modem 392, such as by making a fax transmission to modem 392. The query image could be provided on a form requesting access to documents with identifying images similar to the query image, such as form 300 in Fig. 11. Access instructions 410 could be executed to respond to the form and to automatically produce a retrieve form, such as form 310 in Fig. 12. The retrieve form could then be provided by fax transmission through modem 392 or by printer 396. After it is marked to indicate a request to retrieve one or more documents, the retrieve form can be received by fax transmission through modem 392 or by scanner 394. In response, retrieve instructions 412 could be executed to provide the requested documents, such as by fax transmission through modem 392 or by printer 396. Copier 450 in Fig. 15 includes an image path defined by scanner 452, image input circuitry 454, image memory 456, image output circuitry 458, and printer 460. The manner in which data defining images are transferred along this path is controlled to an extent by CPU 470, although bandwidth along the image path can be increase with appropriate techniques that do not require concurrent operations of CPU 470, such as wideband buses, direct virtual memory access (DVMA) and other direct memory access techniques, and techniques for compressing and decompressing data defining an image. CPU 470 can receive signals from user interface circuitry 472 indicating actions of a user and can provide signals to user interface circuitry 472 to provide information to a user. CPU 470 can execute instructions from program memory 480, including operating system (OS) instructions 482, which can be a version of DOS, database instructions 484, and identifying (ID) image instructions 486. In executing, CPU 470 can access data in data memory 490, including jobs data 492 defining a queue of jobs to be performed and OS file names 494 for accessing files in image memory 456. Fig. 15 also illustrates how human-produced identifying images could be used to control operations of copier 450. The illustrated operations include storing and retrieving data defining an image of a document to provide a copy of the document. First, scanner 452 scans form 500, a store request form that includes form identifier 502 and human-produced identifying image 504; scanner 452 also scans document 506. Data defining images of form 500 and document 506 are provided by image input circuitry 454 and stored in a job file in image memory 456, and CPU 470 executes database instructions 484 to set up a job in jobs data 492 and to add the job file's name to OS file names 494. When the job reaches the head of a jobs queue defined by jobs data 492, CPU 470 executes ID image instructions 486 to perform image processing on the first page of the image set defined by the job file to determine whether it is a form. CPU 470 then uses form identifier 502 to obtain a description of form 500, and uses the description to obtain data defining identifying image 504, which is stored in image memory 456. In performing the store operation requested by form 500, CPU 470 executes database instructions 484 to register identifying image 504 and data defining document 506 so that data defining document 506 can be accessed from identifying image 504. Second, scanner 452 scans form 510, a retrieve request form that includes form identifier 512 and human-produced query image 514. As above, CPU 470 sets up a job and, when the job reaches the head of the jobs queue, performs image processing to obtain data defining query image 514. Since query image 514 is similar to stored identifying image 504, CPU performs the retrieval operation requested by form 510 by causing transfer of data defining document 506 from image memory 456 to image output circuitry 458 so that printer 460 prints document 520, a copy of document 506. D. Miscellaneous The invention has been described in relation to possible implementations in which identifying image data and a stored item of data are both registered in a database, in a filing system, or in a data structure such as a lookup table so that when identifying image data is accessed, data is also available to access the identified item of data. The invention might also be implemented by including a pointer to the item of data in the identifying image data or by any other technique making it possible to access an item of data from its identifying image data. The invention has been described in relation to possible implementations with a user interface using forms. The invention might also be implemented with a user interface that does not use forms. Data defining items of data, identifying images, and query images could all be obtained independently of forms, either from operations such as scanning or from editing operations such as image editing. Human-produced identifying images and query images could be obtained in several additional ways, including a stylus-based user interface that obtains data defining an image from data indicating marking actions by a user and also including a touch panel user interface that presents a document within which a user can select a part as an identifying image or a query image by touching the panel in the area in which the part is presented. Similarly, the response to a query image could be presented on a touch panel user interface, such as by presenting a list of identifying images similar to the query image so that any of the identifying images can be touched to access its item of data. The invention has been described in relation to possible implementations in which a stored item of data defines an image, such as an image of the pages of a document. The stored items of data could instead be document descriptions or process descriptions. The invention has been described in relation to possible software implementations using conventional hardware, but the invention might be implemented with specialized hardware.

Claims: A method including: storing in memory an item of data and identifying image data, the identifying image data defining an identifying image for the item of data; the identifying image being a human-produced image; receiving query image data defining a query image that is similar to the identifying image; the query image being a human-produced image; and using the query image data and the identifying image data to access the item of data. A method as claimed in claim 1, in which the act of using the query image data and the identifying image data does not include obtaining character codes. A method as claimed in claim 1 or claim 2, in which the query image includes marks made by a human by hand, and/or includes marks made by a machine under control of a human. A method as claimed in any one of claims 1 to 3, in which the query image data is obtained by a machine that includes a user input device; the machine obtaining the query image data in response to signals from the user input device. A method as claimed in claim 4, in which the machine also includes, for each of a set of character types, character image data defining an image of a version of the character type made by a human by hand; the signals from the user input device indicating a sequence of characters each of which is an instance of a character type in the set; the query image showing the sequence of characters with each character being a version defined by the character image data of one of the set of character types. A method as claimed in any one of claims 1 to 5, being a method of operating a machine that includes: image input circuitry for obtaining data defining images as input; memory for storing data; and a processor connected for receiving data defining image from the image input circuitry and connected for accessing the memory; the method including: storing in the memory the item of data and the identifying image data defining the identifying image for the item of data, operating the processor to receive the query image data from the image input circuitry, and operating the processor to use the query image data and the identifying image data to access the item of data. A method as claimed in claim 6, in which the act of storing an item of data and identifying image data comprises: operating the processor to receive storage request image data from the image input circuitry; the storage request image data defining a first image set that shows the first image and the identifying image; and in response, operating the processor to automatically use the storage request image data to obtain and store first image data defining the first image and identifying image data defining the identifying image, the item of data including the first image data. A method as claimed in claim 7, in which the first image set shows a storage request form that includes the identifying image; the storage request image data including form image data defining an image of the storage request form; the form image data including information indicating a request to store the item of data and the identifying image data; the act of operating the processor to automatically use the storage request image data comprising: operating the processor to use the form image data to obtain the identifying image data; and operating the processor to use the form image data to obtain request identifying data indicating a request to store the item of data and the identifying image data, or in which the first image set shows a sheet that includes the identifying image; the storage request image data including sheet image data defining an image of the sheet; the act of operating the processor to automatically use the storage request image data comprising: operating the processor to use the sheet image data to obtain segment image data defining a segment of the image of the sheet that includes the identifying image; and operating the processor to use the segment image data to obtain the identifying image data. A method as claimed in claim 6, in which the machine further comprises image output circuitry for providing data defining images as output; the act of operating the processor to use the query image data and the identifying image data further comprising: using the identifying image data to create retrieval request form that includes the identifying image and a check box; providing form output data defining the retrieval request form to the image output circuitry; receiving rorm input data defining a marked version or the retrieval request form, the marked version including a mark in the kneck box; and in response to the form input data, accessing the item of data, and/or in which the system further includes a database system for associating data stored in the memory; the act of storing the item ot data and the identifying image data comprising operating the processor to associate the item of data and the identifying image data in the database system. A computer system including : image input circuitry for obtaining data defining images as input; memory storing data; and a processor connectea for receiving data defining images trom the image input circuitry; the processor further being connected for accessing data stored in memory; the data stored in the memory including: an item of data; identifying image data defining an identifying image for the item of data; the identifying image being a human-produced image; and instruction data indicating instructions the processor can execute; the processor, in executing the instructions; receiving query image data from the image input circuitry, the query image data defining a query image that is similar to the identifying image; the query image being a human-produced image; and using the query image data and the identifying image data to access the item of data. A computer program product for use in a computer system that includes: image input circuitry for obtaining data defining images as input; memory for storing data; the data stored in the memory including an item of data and identifying image data defining an identifying image for the item or data; the identifying image being a human-produced image; a storage medium access device for accessing a medium that stores data; and a processor connected for receiving data defining images from the image input circuitry; the processor further being connected for accessing data stored in the memory; the processor further being connected for receiving data from the storage medium access device; the article comprising: a storage medium that can be accessed by the storage medium access device when the article is used in the system; and data stored by the storage medium so that the storage medium access device can provide the stored data to the processor when the article is used in the system; the stored data comprising instruction data indicating instructions the processor can execute; the processor, in executing the instructions: receiving query image data from the image input circuitry, the query image data defining a query image that is similar to the identifying image; the query image being a human-produced image; using the query image data and the identifying image data to access the item of data.

Inventors: JOHNSON WALTER A L, JOHNSON, WALTER A.L.
Applicants: XEROX CORP, XEROX CORPORATION
Application year: 1994
Main classification: G06F17
IPC codes: G06K9, G06F17