US20060023956A1 - Systems and methods for information storage - Google Patents

Systems and methods for information storage Download PDF

Info

Publication number
US20060023956A1
US20060023956A1 US11/193,445 US19344505A US2006023956A1 US 20060023956 A1 US20060023956 A1 US 20060023956A1 US 19344505 A US19344505 A US 19344505A US 2006023956 A1 US2006023956 A1 US 2006023956A1
Authority
US
United States
Prior art keywords
sequence
coding pattern
symbols
coding
data
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US11/193,445
Inventor
Ola Hugosson
Petter Ericson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anoto AB
Original Assignee
Ola Hugosson
Petter Ericson
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
Priority claimed from SE0000947A external-priority patent/SE518962C2/en
Application filed by Ola Hugosson, Petter Ericson filed Critical Ola Hugosson
Priority to US11/193,445 priority Critical patent/US20060023956A1/en
Publication of US20060023956A1 publication Critical patent/US20060023956A1/en
Assigned to ANOTO AKTIEBOLAG (ANOTO AB) reassignment ANOTO AKTIEBOLAG (ANOTO AB) ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ANOTO IP LIC HANDELSBOLAG (ANOTO IP LIC HB)
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Definitions

  • the present invention relates to a method for storage of information or data and a device adapted to read data stored by means of the method.
  • a method for the storage of non-sequential data consistent with the invention includes coding the data to a coding pattern, the coding pattern comprising at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence in the sequence, and reproducing the coding pattern on a product.
  • a system for the storage of non-sequential data consistent with the invention includes a component for coding the data to a coding pattern, the coding pattern comprising at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence, in the sequence, and a component for reproducing the coding pattern on a product.
  • an apparatus for optically recording information consistent with the invention includes an image sensor adapted to optically record an image from a surface, and a processor configured to convert the image into data, the image comprising a predetermined number of subsequences with symbols, each of the subsequences unambiguously corresponding to a position in a predetermined sequence which is arranged in such manner that an arbitrary subsequence of a predetermined magnitude unambiguously defines a position in the sequence.
  • FIG. 1 shows a document in the form of a page in a book with a coding pattern according to a preferred embodiment of the present invention.
  • FIG. 2 illustrates in more detail the coding pattern in FIG. 1 .
  • FIG. 3 illustrates a sequence which can be used to code data according to the present invention.
  • FIG. 4 shows an embodiment of symbols which can be used in the coding pattern in FIGS. 1 and 2 .
  • FIG. 5 a shows a sub-matrix of a coding pattern according to the present invention.
  • FIG. 5 b shows the matrix when the symbols have been converted into values.
  • FIG. 6 shows an apparatus according to a preferred embodiment of the invention.
  • FIG. 7 shows the conversion of a matrix into data values and a position value in accordance with the invention.
  • FIG. 8 shows the conversion of the coding pattern into sequence values in accordance with the invention.
  • FIG. 9 shows how part of an alternative embodiment of a coding pattern is converted into data values in accordance with the invention.
  • the invention may include a method and system for the storage of non-sequential data by means of a matrix of symbols which can be recorded optically and a device adapted to read the data stored by the method.
  • a method for storage of non-sequential data may be characterized in that it comprises the steps of coding the data to a coding pattern by at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence in the sequence, and reproducing the coding pattern on a product.
  • the term “product” relates to all possible articles on which a coding pattern can be applied.
  • sheets of paper in newspapers, books as well as loose sheets of paper are intended, but also other articles, such as bulletin boards, can be provided with a coding pattern.
  • the product can be an arbitrary product on which one wants to have coded information.
  • a code is made possible, which may be relatively insensitive to how it is read by an apparatus.
  • compact storage of the information may be permitted.
  • the product may consist of any product.
  • Data relates to information such as text or other information. Data also relates to, for example, a command to a computer. This type of information is usually non-periodic.
  • non-sequential defines that the data is arbitrary in the sense that it is not a sequence of numbers in one or more dimensions. Such a sequence may easily be stored as a mathematical expression.
  • FIG. 1 shows a document 1 with a coding pattern 2 comprising a matrix according to a preferred embodiment of the present invention.
  • FIG. 2 shows in more detail coding pattern 2 comprising a plurality of symbols 3 arranged in sequence portions 4 in columns in the matrix, each symbol 3 defining the value “0”, “1”, “2”, or “3”.
  • Each column of symbols may be a sequence portion of a sequence with 1024 symbols.
  • An arbitrary subsequence, consisting of five symbols may define unambiguously the position of the subsequence in the sequence.
  • the sequences in the different columns are displaced in relation to each other.
  • FIG. 2 also shows a marking 31 which indicates in which direction the matrix is to be recorded for the string of characters to be recorded. In FIG. 2 , all symbols are identical, however, the symbols will be different depending upon which value represented by the symbol.
  • FIG. 3 illustrates the appearance of a sequence 32 comprising 512 values 33 , each of which is either “0”, “1”, “2”, or “3”.
  • Arbitrary first and second subsequence 34 , 35 with 5 values defines unambiguously a sequence value which corresponds to the position of the subsequence in the sequence 32 .
  • Each subsequence appears only once in the sequence.
  • the first subsequence 34 corresponds to the value “0” and the second subsequence 35 to the value “1”.
  • the columns consist of sequence portions 4 of such sequences in which the values have been converted into symbols 3 . Sequences of this kind are described in “Pseudo-Random Sequences and Arrays” by F. Jessie MacWilliams and Neil J. A. Sloane in “Proceedings of the IEEE Vol. 64, No. 12, December 1976” the technical disclosure of which is hereby incorporated herein by reference.
  • FIG. 4 a through FIG. 4 d show an embodiment of a symbol which can be used in the matrix in FIG. 1 according to the present embodiment.
  • the symbol may include a virtual raster point 28 which is represented by the intersection between the raster lines 24 and 25 , and a marking 29 .
  • the value of the symbol may depend on where the marking is located. As shown in FIG. 4 a through FIG. 4 d , there are four possible locations for marking 29 on the raster lines extending from the raster points. For example, the symbol has in FIG. 4 a the value “0”, in FIG. 4 b the value “1”, in FIG. 4 c the value “2” and in FIG. 4 d the value “3”. In other words, there may be four different types of symbols representing four values “0-3” respectively.
  • the displacement from the raster points 28 to marking 29 may be the same for all values.
  • FIG. 5 a shows in greater detail a sub-matrix 5 of the coding pattern 2 comprising the matrix from FIG. 1 .
  • the sub-matrix 5 contains five subsequences 36 arranged in columns in sub-matrix 5 .
  • FIG. 5 a also shows the virtual raster 37 in relation to which the symbols are arranged.
  • FIG. 5 b shows the matrix when the symbols 3 have been converted into values respectively.
  • FIG. 6 shows an apparatus according to a preferred embodiment of the present invention.
  • the apparatus may include a reading pen 14 which is arranged for recording coding pattern 2 as shown in FIG. 2 .
  • the reading pen 14 is intended to be held by a user's hand to record images from a base.
  • the reading pen 14 may include a light-emitting diode 7 for illuminating a surface which is to be recorded, an image sensor 8 in the form of a CCD for recording of images, a processor 9 , and a memory 10 .
  • a lens system 38 may be arranged for imaging the coding pattern on the CCD.
  • the reading pen 14 may further include a battery 12 for power supply and button 13 for switching reading pen 14 on and off.
  • Reading pen 14 may be provided with a transmitter 16 for transmitting recorded information to a computer 15 , which in turn may be provided with a receiver 17 for receiving information from the reading pen 14 .
  • Transmitter 16 and the receiver 17 may communicate, for example, by wireless or wireline means.
  • wireless is defined as radio transmission via the airwaves.
  • the reading pen 14 can be provided with a display (not shown) for presentation of the information recorded by the reading pen 14 .
  • the reading pen 14 can also be provided with a loudspeaker 55 to transmit sounds corresponding to the data.
  • an area may be recorded.
  • This area may at least include a first area comprising sub-matrix 5 comprising a five by five matrix of symbols 3 .
  • the symbols may be one of the four different types shown in FIG. 4 .
  • the processor 9 may convert the recorded image from the symbol subsequences 36 in the matrix into value subsequences 39 with values 40 .
  • Each values subsequence 39 may correspond to a sequence value 27 which may correspond to the position in a sequence with 1024 values, each of which may be either “0”, “1”, “2” or “3”.
  • sequence values may be obtained, corresponding to the next position in the sequence.
  • the apparatus may convert the subsequences 39 into sequence values 27 .
  • the apparatus may calculate data values 26 as the difference modulo 1024 between the sequence values 27 for adjoining columns.
  • sequence values 27 increasing to the same extent for each column if the recorded image is displaced in the direction of the column, the data values 26 , which equal the difference between the sequence values 27 , may be independent of the height at which the image is recorded.
  • the data values 26 may then be converted into binary form and the eight least significant bits in each data value 26 may be converted into characters 6 which are stored in memory 10 , while the two most significant bits from four adjoining data values 26 may be converted into a position sequence part.
  • the position sequence part may constitute part of a position sequence similar to the sequence in FIG. 3 , to define unambiguously a position in the position sequence and to constitute a position value for the columns.
  • the characters 6 may be characters in a text. However, it may be preferable for the characters 6 to be characters in a compressed text so that the string of characters which consists of the characters 6 may be converted so as to obtain text en clair.
  • the position values for the columns may be used to determine whether a character from a subsequently recorded image has already been stored in the string of characters in the memory. This may be usable since the next image which is recorded may comprise, for example, a second area 22 which comprises parts of the first area comprising sub-matrix 5 . When the subsequences in the second area 22 are converted into characters, the characters may be partly the same as those recorded when the first area comprising sub-matrix 5 was recorded. By the position value being given by the difference values, the previously stored characters can be dropped.
  • a coding pattern codes, for example, the series [(0, 12), (1, 25), (2, 37), (3, 82), (4, 24), (5, 16)] in which the first value in each pair of values corresponds to a position value and the second value corresponds to a data value.
  • the series [(0, 12), (1, 25), (2, 37), (3, 82)] may be recorded.
  • the series [(2, 37), (3, 82) (4, 24), (5, 16)] may be recorded.
  • the values “37” and “82” may be recorded twice.
  • the position values may indicate, however, that they have been recorded even the first time, which makes it possible to produce the correct series once more.
  • FIG. 8 shows a small part 43 of coding pattern 2 in the form of a plurality of symbols 42 arranged in columns 45 in a matrix. It may be thus sufficient to record a subsequence consisting of five symbols of each column 45 .
  • a first image 39 and a second image 40 , recorded by reading pen 14 may be separated. Since some of the symbols 42 in the pattern have not been recorded in an image, some information is missing. It may then be possible to pass reading pen 14 across the coding pattern a second time to record a third image 46 which contains information from the columns that were missing in the first image 39 and in the second image 40 . By the subsequences containing position information, it may be possible to enter the information from the third image 46 in the correct position in relation to the information from the first image 39 and second image 40 .
  • a coding pattern codes, for example, the series [(0,12), (1,25), (2,37), (3,82), (4,24), (5,16), (6,32), (7,79), (8,31), (9,52), (10,59), (11,42)] where the first value in each pair of values indicates the position value and the second value indicated the data value.
  • the series [(0,12), (1,25), (2,37), (3,82), (4,24)] may be recorded.
  • the series [(7,79), (8,31), (9,52), (10,59), (11,42)] may be recorded.
  • a third recording 46 the series [(3,82), (4,24), (5,16), (6,32), (7,79)] may be recorded whereby positions (5,16) och (6,32) may be obtained from the third recording and the complete series can be produced once more.
  • each difference value may code only part of a position value. This is illustrated in FIG. 7 .
  • the matrix 53 with symbols 54 may be converted into sequence values S 1 -S 5 in the same manner as described above.
  • the difference between the sequence values forms a set of data values D 1 -D 4 and a set of sub-position values P 1 -P 4 which together form a sequence defining a position value which indicates the position of the matrix in the coding pattern.
  • FIG. 8 also illustrates how the information from images, which have been recorded at different heights in the matrix, may be processed.
  • the first image 40 contains a five by five matrix of symbols.
  • the symbols may be converted into values as described in connection with FIG. 5 b .
  • the values in the columns may then be converted into sequence values which correspond to the position of the subsequence in the sequence.
  • the five subsequences with symbols which correspond to the columns in the first image 40 may thus be converted into a first set of five sequence values 47 .
  • the first set of five sequence values 47 is then converted into a first set of difference values 48 , which in turn may be converted into characters in the same way as described in connection with FIG. 5 b .
  • the five subsequences consisting of five symbols may be converted into a second set of five sequence values 49 .
  • the second set of five sequence values 49 may then be converted into a second set of difference values 50 which in turn may be converted into characters in the same way as described in connection with FIG. 5 b .
  • Each of the sequence values 49 in the second set is four units greater than the sequence values 47 in the first set since they are fetched further down in the sequences of which the sequence parts consist a part.
  • each of the difference values 48 in the first set of difference values may be equal to the corresponding difference value in the second set of difference values.
  • the difference values may be independent of the height at which in small part 43 of coding pattern 2 the images have been recorded.
  • each character 6 in a string of characters may first be converted into data values by means of a reference table which is stored in memory 10 .
  • the data values may consist of eight bits.
  • Difference values 26 may then be produced by adding position information in the form of two binary bits to the data values.
  • the position information 30 may be selected in such manner that four successive difference values 26 , 48 , and 50 give a position subsequence which unambiguously defines a position value which gives a position subsequence which unambiguously determines a position in a position sequence. Parts of identical sequences may then be arranged in columns in the matrix.
  • the identical sequences may be such that a subsequence with five successive values from the sequence unambiguously determines a sequence value 27 which corresponds to the position of the subsequence in the sequence.
  • the parts of the sequences may be arranged in such manner that the set of differences between the sequence values for the sequence parts, which have been taken from the same rows in the matrix, corresponds to the difference values 27 . Subsequently the values 40 in the sequences may be converted into symbols 3 .
  • FIG. 9 another embodiment of a coding pattern is shown in which the entire coding pattern has a height 64 corresponding to the length of a subsequence, i.e., five symbols 60 in this case.
  • the coding pattern may be of a similar type as described in connection with FIGS. 5 a and 5 b , i.e., the value of a symbol depends on the position of a marking 60 in relation to a virtual raster with raster lines 65 .
  • the distance 61 between different raster lines 65 is 0.3 mm in this embodiment. With this distance between the raster points, the coding pattern may become considerably robust while at the same time being compact.
  • the symbols in the square 66 may be converted into subsequences 62 as described in connection with FIG. 5 .
  • the subsequences may in turn be converted into sequence values 63 .
  • each sequence value may correspond to a character and a position code.
  • the sequence value “96” may correspond, for example, to the character “ ” (space) and the position code “17”.
  • the reading pen 14 may thus have to record all symbols in the height of the coding pattern in order to be able to convert into text.
  • An advantage of this embodiment is that each character may be recorded by recording only one column of symbols.
  • 6 by 6 symbols may be used for coding the pattern.
  • a more detailed explanation of how the coding is done appears from Applicant's PCT patent applications Nos. WO 00/73983, PCT/SE00/01895 and WO 01/16691, the technical disclosures of which are incorporated herein by reference.
  • a display be arranged directly on the user unit.
  • sequence portions are arranged in columns in a matrix, this is not necessary for the invention.
  • the sequence portions can be arranged in an arbitrary manner.
  • sequences that are used to code the data need not be 1024 characters long.
  • the present invention provides methods, systems, and data structures for storage of non-sequential data and an apparatus adapted to read non-sequential data stored by the method. Still, it should be understood that the foregoing relates only to the exemplary embodiments of the present invention, and that numerous changes may be made thereto without departing from the spirit and scope of the invention as defined by the following claims.
  • 60/208,165 filed May 31, 2000; Online Graphical Message Service based on Swedish Application No. 0000944-9, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,881, filed May 30, 2000; Method and System for Digitizing Freehand Graphics With User-Selected Properties based on Swedish Application No. 0000945-6, filed Mar. 21, 2000, U.S. Provisional Application No. 60/207,882, filed May 30, 2000; Data Form Having a Position-Coding Pattern Detectable by an Optical Sensor based on Swedish Application No. 0001236-9, filed Apr. 5, 2000, and U.S. Provisional Application No. 60/208,167, filed May 31, 2000; Method and Apparatus for Managing Valuable Documents based on Swedish Application No.

Abstract

A product with stored non-sequential data may be provided using a method that codes the data to a coding pattern using at least one sequence with symbols. The coding pattern may be configured such that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence in the sequence. The coding pattern may be reproduced on a product. An apparatus may be adapted to record and decode the coding pattern.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a Divisional of co-pending application Ser. No. 09/812,885 filed on Mar. 21, 2001 and for which priority is claimed under 35 U.S.C. § 120; and this application claims priority of Application No. 0000947-2 filed in Sweden on Mar. 21, 2000 under 35 U.S.C. § 119(a) and U.S. Provisional Application No. 60/207,839 filed on May 30, 2000 under 35 U.S.C. § 119(e); the entire contents of all are hereby incorporated by reference.
  • FIELD OF THE INVENTION
  • The present invention relates to a method for storage of information or data and a device adapted to read data stored by means of the method.
  • BACKGROUND OF THE INVENTION
  • There are a plurality of known methods for storage of data. The traditional technique of storing written information is to store text in printed products such as books and newspapers. There are, however, several drawbacks of storing text in book form. One of the drawbacks is that books require much space. To achieve storage requiring less space, documents have for a long time been stored on microfiche. For a high degree of compaction, however, it is necessary to use photographic films for such storage since ordinary paper has a strictly limited packing density. The storage alternatives to books which are advancing most rapidly are those based on the use of computers. A plurality of storage media for digital information are available. Examples of such storage media are RAM, magnetic media and optical media, such as optical discs. Another technique of storing information that can be read optically is bar codes which are used to a great extent in the retailing of everyday commodities when prices are included.
  • It is in some cases desirable to distribute text stored in a compact fashion. With computers, a user may need to be electronically connected with the distributor of the stored information. Alternatively, microfiche or magnetic or optical data storage media may not be as widely available.
  • SUMMARY OF A FEW ASPECTS OF THE INVENTION
  • In one aspect, a method for the storage of non-sequential data consistent with the invention includes coding the data to a coding pattern, the coding pattern comprising at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence in the sequence, and reproducing the coding pattern on a product.
  • In another aspect, a system for the storage of non-sequential data consistent with the invention includes a component for coding the data to a coding pattern, the coding pattern comprising at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence, in the sequence, and a component for reproducing the coding pattern on a product.
  • In yet another aspect, an apparatus for optically recording information consistent with the invention includes an image sensor adapted to optically record an image from a surface, and a processor configured to convert the image into data, the image comprising a predetermined number of subsequences with symbols, each of the subsequences unambiguously corresponding to a position in a predetermined sequence which is arranged in such manner that an arbitrary subsequence of a predetermined magnitude unambiguously defines a position in the sequence.
  • The foregoing summarizes only a few aspects of the invention and is not intended to be reflective of the full scope of the invention as claimed. Additional features and advantages of the invention are set forth in the following description, apparent from the description, or may be learned by practicing the invention. Moreover, both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate several embodiments of the invention and together with the description, serve to explain the principles of the invention.
  • FIG. 1 shows a document in the form of a page in a book with a coding pattern according to a preferred embodiment of the present invention.
  • FIG. 2 illustrates in more detail the coding pattern in FIG. 1.
  • FIG. 3 illustrates a sequence which can be used to code data according to the present invention.
  • FIG. 4 shows an embodiment of symbols which can be used in the coding pattern in FIGS. 1 and 2.
  • FIG. 5 a shows a sub-matrix of a coding pattern according to the present invention.
  • FIG. 5 b shows the matrix when the symbols have been converted into values.
  • FIG. 6 shows an apparatus according to a preferred embodiment of the invention.
  • FIG. 7 shows the conversion of a matrix into data values and a position value in accordance with the invention.
  • FIG. 8 shows the conversion of the coding pattern into sequence values in accordance with the invention.
  • FIG. 9 shows how part of an alternative embodiment of a coding pattern is converted into data values in accordance with the invention.
  • DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
  • Reference will now be made to various embodiments according to this invention, examples of which are shown in the accompanying drawings and will be obvious from the description of the invention. In the drawings, the same reference numbers represent the same or similar elements in the different drawings whenever possible.
  • Broadly stated, the invention may include a method and system for the storage of non-sequential data by means of a matrix of symbols which can be recorded optically and a device adapted to read the data stored by the method.
  • A method for storage of non-sequential data according to the invention may be characterized in that it comprises the steps of coding the data to a coding pattern by at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines the position of the subsequence in the sequence, and reproducing the coding pattern on a product.
  • In this context, the term “product” relates to all possible articles on which a coding pattern can be applied. In the first place, sheets of paper in newspapers, books as well as loose sheets of paper are intended, but also other articles, such as bulletin boards, can be provided with a coding pattern. The product can be an arbitrary product on which one wants to have coded information. By coding the information by means of a sequence of the above type, a code is made possible, which may be relatively insensitive to how it is read by an apparatus. At the same time, compact storage of the information may be permitted. As mentioned above, the product may consist of any product. Data relates to information such as text or other information. Data also relates to, for example, a command to a computer. This type of information is usually non-periodic.
  • The term non-sequential defines that the data is arbitrary in the sense that it is not a sequence of numbers in one or more dimensions. Such a sequence may easily be stored as a mathematical expression.
  • FIG. 1 shows a document 1 with a coding pattern 2 comprising a matrix according to a preferred embodiment of the present invention. FIG. 2 shows in more detail coding pattern 2 comprising a plurality of symbols 3 arranged in sequence portions 4 in columns in the matrix, each symbol 3 defining the value “0”, “1”, “2”, or “3”. Each column of symbols may be a sequence portion of a sequence with 1024 symbols. Those skilled in the art will appreciate that a number of symbols other than 1024 may be used. An arbitrary subsequence, consisting of five symbols may define unambiguously the position of the subsequence in the sequence. The sequences in the different columns are displaced in relation to each other. FIG. 2 also shows a marking 31 which indicates in which direction the matrix is to be recorded for the string of characters to be recorded. In FIG. 2, all symbols are identical, however, the symbols will be different depending upon which value represented by the symbol.
  • FIG. 3 illustrates the appearance of a sequence 32 comprising 512 values 33, each of which is either “0”, “1”, “2”, or “3”. Arbitrary first and second subsequence 34, 35 with 5 values defines unambiguously a sequence value which corresponds to the position of the subsequence in the sequence 32. Each subsequence appears only once in the sequence. Thus, the first subsequence 34 corresponds to the value “0” and the second subsequence 35 to the value “1”. In FIG. 2, the columns consist of sequence portions 4 of such sequences in which the values have been converted into symbols 3. Sequences of this kind are described in “Pseudo-Random Sequences and Arrays” by F. Jessie MacWilliams and Neil J. A. Sloane in “Proceedings of the IEEE Vol. 64, No. 12, December 1976” the technical disclosure of which is hereby incorporated herein by reference.
  • FIG. 4 a through FIG. 4 d show an embodiment of a symbol which can be used in the matrix in FIG. 1 according to the present embodiment. The symbol may include a virtual raster point 28 which is represented by the intersection between the raster lines 24 and 25, and a marking 29. The value of the symbol may depend on where the marking is located. As shown in FIG. 4 a through FIG. 4 d, there are four possible locations for marking 29 on the raster lines extending from the raster points. For example, the symbol has in FIG. 4 a the value “0”, in FIG. 4 b the value “1”, in FIG. 4 c the value “2” and in FIG. 4 d the value “3”. In other words, there may be four different types of symbols representing four values “0-3” respectively. The displacement from the raster points 28 to marking 29 may be the same for all values.
  • FIG. 5 a shows in greater detail a sub-matrix 5 of the coding pattern 2 comprising the matrix from FIG. 1. The sub-matrix 5 contains five subsequences 36 arranged in columns in sub-matrix 5. FIG. 5 a also shows the virtual raster 37 in relation to which the symbols are arranged. FIG. 5 b shows the matrix when the symbols 3 have been converted into values respectively.
  • FIG. 6 shows an apparatus according to a preferred embodiment of the present invention. The apparatus may include a reading pen 14 which is arranged for recording coding pattern 2 as shown in FIG. 2. The reading pen 14 is intended to be held by a user's hand to record images from a base. Those skilled in the art will appreciate, however, that there are many ways other than a user's hand, to utilize the apparatus. The reading pen 14 may include a light-emitting diode 7 for illuminating a surface which is to be recorded, an image sensor 8 in the form of a CCD for recording of images, a processor 9, and a memory 10. In front of the CCD, a lens system 38 may be arranged for imaging the coding pattern on the CCD. The reading pen 14 may further include a battery 12 for power supply and button 13 for switching reading pen 14 on and off. Reading pen 14 may be provided with a transmitter 16 for transmitting recorded information to a computer 15, which in turn may be provided with a receiver 17 for receiving information from the reading pen 14. Transmitter 16 and the receiver 17 may communicate, for example, by wireless or wireline means. In the present invention, wireless is defined as radio transmission via the airwaves. Those skilled in the art, however, will appreciate that various other communication techniques can be used to provide wireless transmission including infrared line of sight, cellular, microwave, satellite, packet radio and spread spectrum radio. The information recorded by reading pen 14 can be transmitted to the computer for further processing. The reading pen 14 can be provided with a display (not shown) for presentation of the information recorded by the reading pen 14. The reading pen 14 can also be provided with a loudspeaker 55 to transmit sounds corresponding to the data.
  • With reference to FIGS. 2, 5 a, 5 b, and 6, the recording of a coding pattern will now be described. When reading pen 14 is passed across coding pattern 2 with symbols 3, an area may be recorded. This area may at least include a first area comprising sub-matrix 5 comprising a five by five matrix of symbols 3. The symbols may be one of the four different types shown in FIG. 4. The processor 9 may convert the recorded image from the symbol subsequences 36 in the matrix into value subsequences 39 with values 40. Each values subsequence 39 may correspond to a sequence value 27 which may correspond to the position in a sequence with 1024 values, each of which may be either “0”, “1”, “2” or “3”. If an image is recorded which is displaced one row in the matrix, sequence values may be obtained, corresponding to the next position in the sequence. The apparatus may convert the subsequences 39 into sequence values 27. Then the apparatus may calculate data values 26 as the difference modulo 1024 between the sequence values 27 for adjoining columns. By the sequence values 27 increasing to the same extent for each column if the recorded image is displaced in the direction of the column, the data values 26, which equal the difference between the sequence values 27, may be independent of the height at which the image is recorded. The data values 26 may then be converted into binary form and the eight least significant bits in each data value 26 may be converted into characters 6 which are stored in memory 10, while the two most significant bits from four adjoining data values 26 may be converted into a position sequence part. Thus it may be possible to code a total of 256 different characters. The position sequence part may constitute part of a position sequence similar to the sequence in FIG. 3, to define unambiguously a position in the position sequence and to constitute a position value for the columns.
  • In FIG. 5, the characters 6 may be characters in a text. However, it may be preferable for the characters 6 to be characters in a compressed text so that the string of characters which consists of the characters 6 may be converted so as to obtain text en clair.
  • The position values for the columns may be used to determine whether a character from a subsequently recorded image has already been stored in the string of characters in the memory. This may be usable since the next image which is recorded may comprise, for example, a second area 22 which comprises parts of the first area comprising sub-matrix 5. When the subsequences in the second area 22 are converted into characters, the characters may be partly the same as those recorded when the first area comprising sub-matrix 5 was recorded. By the position value being given by the difference values, the previously stored characters can be dropped. A coding pattern codes, for example, the series [(0, 12), (1, 25), (2, 37), (3, 82), (4, 24), (5, 16)] in which the first value in each pair of values corresponds to a position value and the second value corresponds to a data value. In a first image, the series [(0, 12), (1, 25), (2, 37), (3, 82)] may be recorded. In a second image, the series [(2, 37), (3, 82) (4, 24), (5, 16)] may be recorded. Thus, the values “37” and “82” may be recorded twice. The position values may indicate, however, that they have been recorded even the first time, which makes it possible to produce the correct series once more.
  • A further example of when the positions of the subsequences are important may be when reading pen 14 is quickly passed across coding pattern 2. In this case, there is a risk that some information is not recorded. By having a position code in the subsequences, it will be possible to pass reading pen 14 across coding pattern 2 once more, thereby recording the information that was not recorded the first time. This is illustrated in FIG. 8. FIG. 8 shows a small part 43 of coding pattern 2 in the form of a plurality of symbols 42 arranged in columns 45 in a matrix. It may be thus sufficient to record a subsequence consisting of five symbols of each column 45. When reading pen 14 is passed across the coding pattern, several images may be recorded. A first image 39 and a second image 40, recorded by reading pen 14, may be separated. Since some of the symbols 42 in the pattern have not been recorded in an image, some information is missing. It may then be possible to pass reading pen 14 across the coding pattern a second time to record a third image 46 which contains information from the columns that were missing in the first image 39 and in the second image 40. By the subsequences containing position information, it may be possible to enter the information from the third image 46 in the correct position in relation to the information from the first image 39 and second image 40. A coding pattern codes, for example, the series [(0,12), (1,25), (2,37), (3,82), (4,24), (5,16), (6,32), (7,79), (8,31), (9,52), (10,59), (11,42)] where the first value in each pair of values indicates the position value and the second value indicated the data value. In the first recording 39, the series [(0,12), (1,25), (2,37), (3,82), (4,24)] may be recorded. In a second recording 40 the series [(7,79), (8,31), (9,52), (10,59), (11,42)] may be recorded. In a third recording 46, the series [(3,82), (4,24), (5,16), (6,32), (7,79)] may be recorded whereby positions (5,16) och (6,32) may be obtained from the third recording and the complete series can be produced once more.
  • According to a preferred embodiment, each difference value may code only part of a position value. This is illustrated in FIG. 7. The matrix 53 with symbols 54 may be converted into sequence values S1-S5 in the same manner as described above. The difference between the sequence values forms a set of data values D1-D4 and a set of sub-position values P1-P4 which together form a sequence defining a position value which indicates the position of the matrix in the coding pattern.
  • FIG. 8 also illustrates how the information from images, which have been recorded at different heights in the matrix, may be processed. The first image 40 contains a five by five matrix of symbols. The symbols may be converted into values as described in connection with FIG. 5 b. The values in the columns may then be converted into sequence values which correspond to the position of the subsequence in the sequence. The five subsequences with symbols which correspond to the columns in the first image 40 may thus be converted into a first set of five sequence values 47. The first set of five sequence values 47 is then converted into a first set of difference values 48, which in turn may be converted into characters in the same way as described in connection with FIG. 5 b. When a third image 41 containing a five by five matrix of symbols is recorded, the five subsequences consisting of five symbols may be converted into a second set of five sequence values 49. The second set of five sequence values 49 may then be converted into a second set of difference values 50 which in turn may be converted into characters in the same way as described in connection with FIG. 5 b. Each of the sequence values 49 in the second set is four units greater than the sequence values 47 in the first set since they are fetched further down in the sequences of which the sequence parts consist a part. However, each of the difference values 48 in the first set of difference values may be equal to the corresponding difference value in the second set of difference values. Thus, the difference values may be independent of the height at which in small part 43 of coding pattern 2 the images have been recorded.
  • When producing the matrix in FIG. 5 b, each character 6 in a string of characters may first be converted into data values by means of a reference table which is stored in memory 10. The data values may consist of eight bits. Difference values 26 may then be produced by adding position information in the form of two binary bits to the data values. The position information 30 may be selected in such manner that four successive difference values 26, 48, and 50 give a position subsequence which unambiguously defines a position value which gives a position subsequence which unambiguously determines a position in a position sequence. Parts of identical sequences may then be arranged in columns in the matrix. The identical sequences may be such that a subsequence with five successive values from the sequence unambiguously determines a sequence value 27 which corresponds to the position of the subsequence in the sequence. The parts of the sequences may be arranged in such manner that the set of differences between the sequence values for the sequence parts, which have been taken from the same rows in the matrix, corresponds to the difference values 27. Subsequently the values 40 in the sequences may be converted into symbols 3.
  • In FIG. 9, another embodiment of a coding pattern is shown in which the entire coding pattern has a height 64 corresponding to the length of a subsequence, i.e., five symbols 60 in this case. The coding pattern may be of a similar type as described in connection with FIGS. 5 a and 5 b, i.e., the value of a symbol depends on the position of a marking 60 in relation to a virtual raster with raster lines 65. The distance 61 between different raster lines 65 is 0.3 mm in this embodiment. With this distance between the raster points, the coding pattern may become considerably robust while at the same time being compact. The symbols in the square 66 may be converted into subsequences 62 as described in connection with FIG. 5. The subsequences may in turn be converted into sequence values 63. According to this embodiment each sequence value may correspond to a character and a position code. The sequence value “96” may correspond, for example, to the character “ ” (space) and the position code “17”. According to this embodiment of the invention the reading pen 14 may thus have to record all symbols in the height of the coding pattern in order to be able to convert into text. An advantage of this embodiment is that each character may be recorded by recording only one column of symbols.
  • In a preferred embodiment, 6 by 6 symbols may be used for coding the pattern. A more detailed explanation of how the coding is done appears from Applicant's PCT patent applications Nos. WO 00/73983, PCT/SE00/01895 and WO 01/16691, the technical disclosures of which are incorporated herein by reference.
  • The above embodiments are to be considered examples only.
  • A person skilled in the art realizes that the above embodiments can be varied in a number of ways without departing from the inventive idea. For example, it is not necessary that the apparatus be a single integrated unit.
  • It is not necessary for the invention that a display be arranged directly on the user unit.
  • Although the examples above only illustrate that the sequence portions are arranged in columns in a matrix, this is not necessary for the invention. The sequence portions can be arranged in an arbitrary manner.
  • The sequences that are used to code the data need not be 1024 characters long.
  • In view of the foregoing, it will be appreciated that the present invention provides methods, systems, and data structures for storage of non-sequential data and an apparatus adapted to read non-sequential data stored by the method. Still, it should be understood that the foregoing relates only to the exemplary embodiments of the present invention, and that numerous changes may be made thereto without departing from the spirit and scope of the invention as defined by the following claims.
  • Concurrently filed with the application for this patent are applications entitled Systems and Methods for Information Storage based on Swedish Application No. 0000947-2, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,839, filed May 30, 2000; Secured Access Using a Coordinate System based on Swedish Application No. 0000942-3, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,850 filed on May 30, 2000; System and Method for Printing by Using a Position Coding Pattern based on Swedish Application No. 0001245-0, filed on Apr. 5, 2000, and U.S. Provisional Application No. 60/210,651, filed on Jun. 9, 2000; Apparatus and Methods Relating to Image Coding based on Swedish Application No. 0000950-6, filed on Mar. 21, 2000, and U.S. Provisional Application No. 60/207,838, filed on May 30, 2000; Apparatus and Methods for Determining Spatial Orientation based on Swedish Application No. 0000951-4, filed on Mar. 21, 2000, and U.S. Provisional Application No. 60/207,844, filed on May 30, 2000; System and Method for Determining Positional Information based on Swedish Application No. 0000949-8, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,885, filed on May 30, 2000; Method and System for Transferring and Displaying Graphical Objects based on Swedish Application No. 0000941-5, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/208,165, filed May 31, 2000; Online Graphical Message Service based on Swedish Application No. 0000944-9, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,881, filed May 30, 2000; Method and System for Digitizing Freehand Graphics With User-Selected Properties based on Swedish Application No. 0000945-6, filed Mar. 21, 2000, U.S. Provisional Application No. 60/207,882, filed May 30, 2000; Data Form Having a Position-Coding Pattern Detectable by an Optical Sensor based on Swedish Application No. 0001236-9, filed Apr. 5, 2000, and U.S. Provisional Application No. 60/208,167, filed May 31, 2000; Method and Apparatus for Managing Valuable Documents based on Swedish Application No. 0001252-6, filed Apr. 5, 2000, and U.S. Provisional Application No. 60/210,653 filed Jun. 9, 2000; Method and Apparatus for Information Management based on Swedish Application No. 0001253-4 filed Apr. 5, 2000, and U.S. Provisional Application No. 60/210,652, filed Jun. 9, 2000; Device and Method for Communication based on Swedish Application No. 0000940-7, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/208,166, filed May 31, 2000; Information-Related Devices and Methods based on Swedish Application No. 0001235-1, filed Apr. 5, 2000, and U.S. Provisional Application No. 60/210,647, filed Jun. 9, 2000; Processing of Documents based on Swedish Application No. 0000954-8, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,849, filed May 30, 2000; Secure Signature Checking System based on Swedish Application No. 0000943-1, filed Mar. 21, 2000, and U.S. Provisional Application No. 60/207,880, filed May 30, 2000; Identification of Virtual Raster Pattern, based on Swedish Application No. 0001235-1, filed Apr. 5, 2000, and U.S. Provisional Application No. 60/210,647, filed Jun. 9, 2000, and Swedish Application No. 0004132-7, filed Nov. 10, 2000, and U.S. Provisional Application No. ______, filed Jan. 12, 2001; and a new U.S. Provisional Application entitled Communications Services Methods and Systems.
  • The technical disclosures of each of the above-listed U.S. applications, U.S. provisional applications, and Swedish applications are hereby incorporated herein by reference. As used herein, the incorporation of a “technical disclosure” excludes incorporation of information characterizing the related art, or characterizing advantages or objects of this invention over the related art.
  • In the foregoing Description of Preferred Embodiments, various features of the invention are grouped together in a single embodiment for purposes of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the following claims are hereby incorporated into this Description of the Preferred Embodiments, with each claim standing on its own as a separate preferred embodiment of the invention.

Claims (22)

1-17. (canceled)
18. A system for storing non-sequential data, comprising:
a product; and
a coding pattern placed on an area of the product and coding non-sequential data, the coding pattern including sequence portions with symbols, each sequence portion including at least a subsequence of a sequence which is arranged so that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines a position of the subsequence in the sequence the coding pattern further coding a position sequence representing position within the area of the product.
19. The system of claim 18, wherein the coding pattern codes a set of data values, each of the data values coding a group of sequence portions consisting of at least two sequence portions.
20. The system of claim 18, wherein the symbols consist of markings, the size of the markings defining a value of the symbol.
21. The system of claim 18, wherein each of the symbols comprises a raster point and a marking, the value of each symbol being indicated by a position of said marking in relation to the raster point.
22. The system of claim 18, wherein the product comprises at least one of the following: a sheet of paper, a book cover, a page of a book, a magazine cover, a magazine page, a newspaper page, and a bulletin board.
23. The system of claim 18, wherein the coding pattern codes text.
24. The system of claim 18, wherein the coding pattern codes a command.
25-30. (canceled)
31. A coding pattern data structure for storage of non-sequential data, comprising:
a coding pattern including,
a plurality of symbols provided on a surface and forming a plurality of sequence portions on the surface;
each sequence portion comprising at least a subsequence of a symbol sequence arranged so that an arbitrary subsequence of a predetermined magnitude of the symbol sequence unambiguously defines the position of the subsequence in the symbol sequence.
32. The coding pattern data structure of claim 31, wherein each of the symbols includes a raster point and a marking, a value of each symbol being indicated by a position of said marking in relation to the raster point.
33-39. (canceled)
40. A method for storage of data, comprising:
coding the data to a coding pattern, the coding pattern including at least one sequence with symbols which have the characteristic that an arbitrary subsequence of a predetermined magnitude of the sequence unambiguously defines a position of the subsequence in the sequence; and
reproducing the coding pattern on a product with symbols readable with an symbol sensing wand.
41. The method of claim 40 wherein said step of reproducing the coding pattern imprints or otherwise affixes symbols on said product over a desired symbol bearing area, the coding pattern having coded therein a position sequence representing position within the area of the product.
42. The method of claim 41 wherein said coding pattern codes a position sequence representing position in said desired symbol bearing area in at least one dimension.
43. The system of claim 18 wherein said coding pattern covers the entirety of the area of the product.
44. The system of claim 18 wherein said coding pattern codes a position sequence representing position in said area in one dimension.
45. The system of claim 44 wherein said coding pattern covers the entirety of the area of the product.
46. The data structure of claim 31 wherein said non-sequential data is text data.
47. The coding pattern of claim 31 wherein said coding pattern is affixed to the surface and readable by a digital sensor.
48. The data structure of claim 31 wherein the data structure is imprinted on a desired area of the surface, the coding pattern further coding a position sequence representing position within the area.
49. The data structure of claim 47 wherein said coding pattern codes a position sequence representing position of said pattern within the area.
US11/193,445 2000-03-21 2005-08-01 Systems and methods for information storage Abandoned US20060023956A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/193,445 US20060023956A1 (en) 2000-03-21 2005-08-01 Systems and methods for information storage

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
SE0000947-2 2000-03-21
SE0000947A SE518962C2 (en) 2000-03-21 2000-03-21 Product and method for encoding data into a matrix-shaped coding pattern
US20783900P 2000-05-30 2000-05-30
US09/812,885 US7072529B2 (en) 2000-03-21 2001-03-21 Systems and methods for information storage
US11/193,445 US20060023956A1 (en) 2000-03-21 2005-08-01 Systems and methods for information storage

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/812,885 Division US7072529B2 (en) 2000-03-21 2001-03-21 Systems and methods for information storage

Publications (1)

Publication Number Publication Date
US20060023956A1 true US20060023956A1 (en) 2006-02-02

Family

ID=27354518

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/812,885 Expired - Fee Related US7072529B2 (en) 2000-03-21 2001-03-21 Systems and methods for information storage
US11/193,445 Abandoned US20060023956A1 (en) 2000-03-21 2005-08-01 Systems and methods for information storage

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/812,885 Expired - Fee Related US7072529B2 (en) 2000-03-21 2001-03-21 Systems and methods for information storage

Country Status (1)

Country Link
US (2) US7072529B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060176305A1 (en) * 2003-03-05 2006-08-10 Arcas Blaise A Y System and method for managing communication and/or storage of image data
US20080031527A1 (en) * 2004-10-08 2008-02-07 Arcas Blaise Aguera Y System and method for efficiently encoding data
US20100119331A1 (en) * 2008-11-11 2010-05-13 Xerox Corporation Automatic spine creation from book covers without spines
US20130153670A1 (en) * 2010-06-11 2013-06-20 Rnib Coded information systems

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4150923B2 (en) * 2003-12-09 2008-09-17 富士ゼロックス株式会社 Data output system and method
CN101256450B (en) * 2003-12-15 2011-11-02 阿诺托股份公司 Optical system and modullarization unit for electronic pen
SE0401647D0 (en) * 2004-06-28 2004-06-28 Anoto Ab Coding and decoding of data
US20080296074A1 (en) * 2004-06-30 2008-12-04 Anoto Ab Data Management in an Electric Pen
US20070246539A1 (en) * 2004-06-30 2007-10-25 Anoto Ab Data Processing in an Electric Pen
SE0401687D0 (en) 2004-06-30 2004-06-30 Anoto Ab Information management
KR20070085366A (en) * 2004-10-12 2007-08-27 아노토 아베 Method and a system for secure management of information from an electronic pen
WO2006049573A1 (en) * 2004-11-05 2006-05-11 Anoto Ab Method and device for data management in an electronic pen
US11627944B2 (en) 2004-11-30 2023-04-18 The Regents Of The University Of California Ultrasound case builder system and method
EP1899794A4 (en) * 2005-06-23 2012-12-05 Anoto Ab Methods and devices relating to transfer of non-pen stroke data
JP2007115201A (en) * 2005-10-24 2007-05-10 Fuji Xerox Co Ltd Electronic document management system, medical information system, printing method of chart form and chart form
WO2007117201A1 (en) * 2006-04-12 2007-10-18 Anoto Ab Data protection mechanism
US8416463B2 (en) * 2007-03-23 2013-04-09 Anoto Ab Printing of a position-coding pattern
US10620754B2 (en) 2010-11-22 2020-04-14 3M Innovative Properties Company Touch-sensitive device with electrodes having location pattern included therein
US20120193424A1 (en) * 2011-01-31 2012-08-02 King Abdul Aziz City For Science And Technology Method of encoding and decoding data on a matrix code symbol
US11631342B1 (en) 2012-05-25 2023-04-18 The Regents Of University Of California Embedded motion sensing technology for integration within commercial ultrasound probes
US10380920B2 (en) 2013-09-23 2019-08-13 SonoSim, Inc. System and method for augmented ultrasound simulation using flexible touch sensitive surfaces
US10380919B2 (en) 2013-11-21 2019-08-13 SonoSim, Inc. System and method for extended spectrum ultrasound training using animate and inanimate training objects
US11600201B1 (en) 2015-06-30 2023-03-07 The Regents Of The University Of California System and method for converting handheld diagnostic ultrasound systems into ultrasound training systems
US10896628B2 (en) 2017-01-26 2021-01-19 SonoSim, Inc. System and method for multisensory psychomotor skill training
US11810473B2 (en) 2019-01-29 2023-11-07 The Regents Of The University Of California Optical surface tracking for medical simulation
US11495142B2 (en) 2019-01-30 2022-11-08 The Regents Of The University Of California Ultrasound trainer with internal optical tracking

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303312A (en) * 1991-04-19 1994-04-12 International Business Machines Corporation Handwriting recognition by character template
US5329107A (en) * 1988-05-05 1994-07-12 International Data Matrix, Inc. Dynamically variable machine readable binary code and method for reading and producing thereof
US5343031A (en) * 1992-04-06 1994-08-30 Teiryo Sangyo Co., Ltd. Method of decoding a two-dimensional code symbol mark
US5434371A (en) * 1994-02-01 1995-07-18 A.T. Cross Company Hand-held electronic writing tool
US5477012A (en) * 1992-04-03 1995-12-19 Sekendur; Oral F. Optical position determination
US5629499A (en) * 1993-11-30 1997-05-13 Hewlett-Packard Company Electronic board to store and transfer information
US5652412A (en) * 1994-07-11 1997-07-29 Sia Technology Corp. Pen and paper information recording system
US5661506A (en) * 1994-11-10 1997-08-26 Sia Technology Corporation Pen and paper information recording system using an imaging pen
US5852434A (en) * 1992-04-03 1998-12-22 Sekendur; Oral F. Absolute optical position determination
US5912869A (en) * 1995-04-03 1999-06-15 Matsushita Electric Industrial Co., Ltd. Recording medium data transmission method and apparatus and data reproduction method and apparatus
US6000613A (en) * 1991-12-27 1999-12-14 Xerox Corporation Self-clocking glyph code having composite glyphs for distributively encoding multi-bit digital values
US6047892A (en) * 1996-12-09 2000-04-11 Symbol Technologies, Inc. Two-dimensional bar code symbology using implicit version information encoding
US6516037B1 (en) * 1997-06-13 2003-02-04 Lucent Technologies Inc. Multilevel coding with time diversity

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69202975T2 (en) 1991-04-03 1996-02-15 Hewlett Packard Co POSITIONING DEVICE.
DE60044458D1 (en) 1999-05-28 2010-07-08 Anoto Ab POSITIONING
MXPA02002247A (en) 1999-08-30 2002-09-30 Anoto Ab Notepad.
SE517445C2 (en) 1999-10-01 2002-06-04 Anoto Ab Position determination on a surface provided with a position coding pattern

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5329107A (en) * 1988-05-05 1994-07-12 International Data Matrix, Inc. Dynamically variable machine readable binary code and method for reading and producing thereof
US5303312A (en) * 1991-04-19 1994-04-12 International Business Machines Corporation Handwriting recognition by character template
US6000613A (en) * 1991-12-27 1999-12-14 Xerox Corporation Self-clocking glyph code having composite glyphs for distributively encoding multi-bit digital values
US5852434A (en) * 1992-04-03 1998-12-22 Sekendur; Oral F. Absolute optical position determination
US5477012A (en) * 1992-04-03 1995-12-19 Sekendur; Oral F. Optical position determination
US5343031A (en) * 1992-04-06 1994-08-30 Teiryo Sangyo Co., Ltd. Method of decoding a two-dimensional code symbol mark
US5629499A (en) * 1993-11-30 1997-05-13 Hewlett-Packard Company Electronic board to store and transfer information
US5434371A (en) * 1994-02-01 1995-07-18 A.T. Cross Company Hand-held electronic writing tool
US5652412A (en) * 1994-07-11 1997-07-29 Sia Technology Corp. Pen and paper information recording system
US5661506A (en) * 1994-11-10 1997-08-26 Sia Technology Corporation Pen and paper information recording system using an imaging pen
US5912869A (en) * 1995-04-03 1999-06-15 Matsushita Electric Industrial Co., Ltd. Recording medium data transmission method and apparatus and data reproduction method and apparatus
US6047892A (en) * 1996-12-09 2000-04-11 Symbol Technologies, Inc. Two-dimensional bar code symbology using implicit version information encoding
US6516037B1 (en) * 1997-06-13 2003-02-04 Lucent Technologies Inc. Multilevel coding with time diversity

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060176305A1 (en) * 2003-03-05 2006-08-10 Arcas Blaise A Y System and method for managing communication and/or storage of image data
US7930434B2 (en) 2003-03-05 2011-04-19 Microsoft Corporation System and method for managing communication and/or storage of image data
US20080031527A1 (en) * 2004-10-08 2008-02-07 Arcas Blaise Aguera Y System and method for efficiently encoding data
US7912299B2 (en) * 2004-10-08 2011-03-22 Microsoft Corporation System and method for efficiently encoding data
US20100119331A1 (en) * 2008-11-11 2010-05-13 Xerox Corporation Automatic spine creation from book covers without spines
US8131009B2 (en) * 2008-11-11 2012-03-06 Xerox Corporation Automatic spine creation from book covers without spines
US20120155701A1 (en) * 2008-11-11 2012-06-21 Xerox Corporation Automatic spine creation for book cover images that do not have spines
US8428302B2 (en) * 2008-11-11 2013-04-23 Xerox Corporation Automatic spine creation for book cover images that do not have spines
US20130153670A1 (en) * 2010-06-11 2013-06-20 Rnib Coded information systems
US9159010B2 (en) * 2010-06-11 2015-10-13 Rnib, Inc. Coded information systems

Also Published As

Publication number Publication date
US7072529B2 (en) 2006-07-04
US20010038349A1 (en) 2001-11-08

Similar Documents

Publication Publication Date Title
US20060023956A1 (en) Systems and methods for information storage
US6864880B2 (en) Device and method for communication
EP1269404B1 (en) Method and system for storing a coding pattern
JP4966464B2 (en) Centralized information management
US7710408B2 (en) Centralized information management based upon position information
US9304605B2 (en) General information management system
US7422154B2 (en) Apparatus and methods relating to image coding
US8074891B2 (en) Coding and decoding methods and apparatuses
TW492242B (en) Recording of information
CN1329860C (en) Method and system for printing a document.
US20030046256A1 (en) Distributed information management
CN100483313C (en) Method and device for processing of information
MXPA02006340A (en) General information management system.
KR101582218B1 (en) Printed Material on which Two-dimensional Code is Displayed
US20080235282A1 (en) Personal Computing Apparatus and a Method Therein
EP1244956A1 (en) Charge card purchase
AU2001244918A1 (en) Device and method for communication
US20020166895A1 (en) Charge card purchase

Legal Events

Date Code Title Description
AS Assignment

Owner name: ANOTO AKTIEBOLAG (ANOTO AB),SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ANOTO IP LIC HANDELSBOLAG (ANOTO IP LIC HB);REEL/FRAME:017964/0148

Effective date: 20060622

Owner name: ANOTO AKTIEBOLAG (ANOTO AB), SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ANOTO IP LIC HANDELSBOLAG (ANOTO IP LIC HB);REEL/FRAME:017964/0148

Effective date: 20060622

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION