Apparatus for providing location information in a multidimensional address space
2 claims: 2 independent, 0 dependent
- 1知覚可能な印として媒体に設けられた 知覚表示(1732)と、 少なくとも前記知覚表示の周辺に配置された 2次元の埋め込みアドレスコード(2110)と、 前記2次元の埋め込みアドレスコードの 一部分 を読み取る読み取り装置(1710)と、 前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記 知覚表示 を指定する 個別のポインタに変換するトランスレータと、 を含み、 前記2次元 の 埋め込みアドレスコードは、 それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、 前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、 前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する 装置。
- 2コンピュータが、知覚可能な印として媒体に設けられた 知覚表示と 少なくとも前記知覚表示周辺に配置された 2次元埋め込みアドレスコードとを用いて、 前記知覚表示に関連づけられたポインタを発生することで ユーザインターフェース として機能する 方法であって、 2次元埋め込みアドレスコードの 一部分 を読み取るステップ(2210)と、 前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記 知覚表示 を指定する 個別のポインタに変換するステップ(2238)と、 を含み、 前記2次元埋め込みアドレスコードは、 それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、 前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、 前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する 、方法。
Independent claims2
1 paragraph, as filed
[0001] [Technical field to which the invention belongs] The present invention relates to the construction of a multidimensional address space, and more particularly to the embodiment of self-clocking address carpet glyphs in such an address space and the disambiguation technique in the address carpet. [0002] [Conventional technology] Glyphs are often encoded according to a given spatial format rule by elongated slash-like glyphs written in a two-dimensional, spatially periodic pattern of centers. At this time, the individual glyphs are tilted about +45 ° and -45 ° to the left and right of the vertical line to encode the logical "0" and "1", respectively. For these two logical states of a single-bit digital quantity, the glyph codes are orthogonal to each other, which is sufficiently fine to discriminate the code, even if the code pattern generally has a uniform grayscale appearance. The embedded information can be recovered even when it is written in the particle center pattern. [0003] Conventionally, proposals have been made to deal with the general subject of constructing an address space in an image domain. For example, the address space is a cyclical pseudo-noise digital bit sequences (sometimes called "PN sequences") and other types of maximal length-like digital bit sequences (sometimes called "PN sequences"). That is, it can be constructed by encoding a sequence of length L, in which the sequence for each N bits is unique, into a two-dimensional spatial periodic self-clocking glyph code pattern. As a unified theme in these conventional proposals, it is recommended to construct a two-dimensional address space by the following method. That is, by mapping at least two bit sequences of the type to a code pattern as described above such that these bit sequences are encoded and propagated in a predetermined direction along each non-parallel line of the glyph. is there. [0004] It has been shown that it is not necessary to map the bit sequence to a code pattern aligned to its principal axis, but the relative address of the glyph is expressed in standard Cartesian coordinates (ie, the "x" in glyph units and The use of such mappings is often desirable in order to reduce the computer operation required to make decisions in the "y" parameter). Moreover, since the codes of these bit sequences may span the glyph code pattern completely or partially, the addressing provided by them (bit sequences) is projected into both of their coding glyph code patterns. It should be understood that it is valid only in the part of. In addition, the bit sequences described above can be mapped to glyphs in these non-parallel lines in unitary or fractional duty ratios, but it is desirable to calculate the relative addresses of the glyphs in the address space. Applications have recognized that spatially cyclical mappings are preferred. [0005] Maximum bit length sequence Each bit of sequence) resides in a predetermined, uniquely determinable logical position in the sequence. Therefore, using ordered index of integers in general, these bits are distinguished from each other based on their respective ordered logical positions in the sequence. Of course, these position-dependent exponents can also be used to selectively address the glyphs that encode the bits of such a sequence. However, at least one additional dimension is required to uniquely identify the spatial location of these glyphs or any other glyph contained in the two-dimensional glyph code pattern. The unique identifiers of these individual glyphs are referred to as "absolute addresses" to identify the unique location of the individual glyphs in the glyph code pattern. [0006] As is already known, the spatial addresses (ie, absolute addresses) of almost all given glyphs in the above type of address space are identifiable up to at least the first approximation. It is identified by a metric that identifies the offset distance (if any) between the nominal center of a given glyph and the non-parallel lines that encode each maximum length bit sequence. These offsets are measured in parallel with the main axis of the code pattern and are expressed in units of glyphs. In applications where the maximum length sequence is encoded by glyphs on orthogonal lines aligned with the principal axis of a self-clocking glyph code pattern written in a regular square center grid, the above distances are in standard Cartesian coordinates. Substantial precision in the system reduces to x / y coordinate pairs that identify the spatial position of a given glyph. However, the intersections on the line where these maximum bit length sequences are encoded tend to limit design choice if any of these intersections has glyphs. [0007] A glyph is written to a grid of centers where at least one of the width and height is predetermined, so that a known or determinable fixation is made on each line of the code pattern along at least one of these dimensions. The presence of a number of glyphs avoids the above-mentioned undesired limitation on the explicit spatial addressing of glyphs in the self-clocking glyph code pattern. More specifically, as a solution to such a special classification of code patterns, a raster-like pattern of maximum-length bit sequences (or a combination of interleaved, relatively major maximum-length bit sequences). It has been proposed to code into glyphs. The raster pattern is chosen to generate bits in a logically ordered sequence, which allows the bit sequence to propagate spatially from end to end along known dimensions (eg, width) of the code pattern. In addition, it propagates more slowly, eg, from top to bottom, due to other dimensions (eg, length) of the cord pattern. Such raster coding of the maximum length bit sequence involves the bit sequence in a code pattern module, i.e., the number of glyphs that the code pattern contains along its known dimensions, that is, a known or computable number of glyphs. ), Effectively "combine". Therefore, the spatial address of any given glyph in the code pattern is in the x / y coordinate space from the sequence index of the bits encoded by the glyph by dividing the sequence index of the bits by the known glyph count / line module. Can be found at. [0008] [Problems to be Solved by the Invention] However, such a raster coding style, which is a solution to the problem of spatial addressing, not only restricts the classification of code patterns, but is also costly in terms of computer operation. The computer cost of this method increases because the bit length N of the subsequence, for which the maximum length bit sequence must be unique, is scaled as a function of the square root of the address space being treated. This scaling has a unique phase (or "bit exponential position") number of N in the maximum length bit sequence.<sup>2</sup>This is a result of the fact that it is sought by -1. [0009] Therefore, logically ordered address information is embedded in all or part of the self-clocking glyph code pattern, and the unique spatial position of each glyph in such code pattern is more efficient in computer operation. A more flexible technique for identification is clearly desired. It is desirable to parameterize these code patterns in N-dimensional space and use these address spaces or fragments thereof to hierarchically identify 2D and 3D objects. [0010] A human-readable textual representation, graphic representation, or mixed representation of text and graphics that is accessible through this user interface is for each address in this address space. It is spatially recorded on top of each other or side by side. These spatial addresses are logically recorded in a look-up table or the like, along with a description of each file name that can be recognized by a computer and, if necessary, a route to a directory of the named file. [0011] [Means for solving problems] The device according to the present invention<u style="single">Provided on the medium as a perceptible mark</u>Perceptual display (1732) and<u style="single">At least placed around the perceptual display</u>Two-dimensional embedded address code (2110) and the two-dimensional embedded address code<u style="single">Partially</u>With a reader (1710) that reads<u style="single">The position of the part on the medium is detected from the part read by the reading device, and the position is associated with the detected position.</u>Perceptual display<u style="single">To specify</u>Includes a translator that converts to individual pointers, said two-dimensional<u style="single">of</u>The embedded address code is<u style="single">Includes parallel first, second, third, and fourth lines of code, each of which is a one-dimensional array of address codes, the first line of code being the first. The second code line is adjacent to the first code line and includes a second one-dimensional address code sequence, the third code line is adjacent to the second code line, and the second code line is included. The sequence of one-dimensional address codes of 1 is included by shifting it to the right with respect to the first code line, the fourth code line is adjacent to the third code line, and the sequence of the second one-dimensional address codes is the first. It functions as a user interface by including the two lines of code shifted to the left and generating the pointer for reading the part.</u>[0012] In addition, the method according to the present invention<u style="single">A computer was placed on the medium as a perceptible mark</u>With perceptual display<u style="single">At least placed around the perceptual display</u>Using a 2D embedded address code<u style="single">By generating a pointer associated with the perceptual display</u>User interface<u style="single">Act as</u>The method of 2D embedded address code<u style="single">Partially</u>Step to read (2210),<u style="single">The position of the part on the medium is detected from the part read by the reading device, and the position is associated with the detected position.</u>Perceptual display<u style="single">To specify</u>The two-dimensional embedded address code comprises the step (2238) of converting to a separate pointer.<u style="single">Includes parallel first, second, third, and fourth lines of code, each of which is a one-dimensional array of address codes, the first line of code being the first. The second code line is adjacent to the first code line and includes a second one-dimensional address code sequence, the third code line is adjacent to the second code line, and the second code line is included. The sequence of one-dimensional address codes of 1 is included by shifting it to the right with respect to the first code line, the fourth code line is adjacent to the third code line, and the sequence of the second one-dimensional address codes is the first. It functions as a user interface by including the two lines of code shifted to the left and generating the pointer for reading the part.</u>[0013] BEST MODE FOR CARRYING OUT THE INVENTION Here, in the drawings, especially at this point in FIG. 1, the conventional self-clocking glyph code pattern 21 is shown. This code pattern 21 contains an extended slash-like mark, or "glyphs" 22 and 23, and is written in a generally regular rectangular grid in the center on a suitable recording medium 24. Appropriately, glyphs 22 and 23 are printed by a printer (not shown), which operates from 300d.pi to 600d.pi and regularly displays 4-pixel x 4-pixel to 7-pixel x 7-pixel glyphs. Print in the center of the space. This center is distributed in the horizontal direction and the vertical direction of the recording medium 24 to form a rectangular code pattern 21. Under standard lighting conditions, at normal reading distances, it is not easy to resolve these fine-grained glyph cord pattern glyphs with the unassisted human eye. For this reason, code patterns 21 typically have a generally uniform grayscale appearance, yet glyph codes are capable of effectively communicating machine-readable digital information. To perform this function, as shown in 25, the glyphs 22 and 23 are usually left and right, + 45 ° and -45 ° tilted from the longitudinal direction of the recording medium 24, respectively, in binary "1". And "0" are encoded. [0014] In practice, as shown in FIG. 14, address space fragments 85-91 are written directly to objects 105-111, respectively, and / or to other substrates that are substantially permanently or temporarily attached to the object, respectively. You may be asked. A two-dimensional address space can be used for this application, but a more fully parameterized address space, such as an address space labeled AL1, ... ALn, has a hierarchical organization. As shown, it can be used to hierarchically organize object identifiers 85-91 by subject type or other desired classification. [0015] FIG. 2 is a diagram showing an example of a graphical user interface configured with a glyph address carpet. This interface contains two components. (1) a sign of sensation, and (2) a background containing the glyph address carpet 1612. The sensory markings in FIG. 2 are preferably visual markings, especially graphic elements such as the icon 1610. Glyph Address Carpet 1612 is used as a background wallpaper for graphic elements. The glyph pattern that forms the background is called the "address carpet". This is because the glyphs can be decrypted to provide address information unique to each location. [0016] As shown in FIG. 2, the icon may be partially formed by glyphs that are part of the glyph address carpet. In the case of glyphtone (see, for example, U.S. Pat. No. 5,315,098 given to Tow) and in the case of serpentone (see U.S. Pat. No. 5,706,099 given to Curry). In the case of, the mark may substantially include the glyph itself. Since the glyph encodes the address information, a part of the glyph can be optically read and decoded to determine the address peculiar to the local position. [0017] A graphical user interface configured with a glyph address carpet can be configured on any medium that can display the components of that interface. Thus, the interface may be set on a hard copy such as paper, labels, physical objects, photographic media, or on a dynamic display such as a cathode ray tube (CRT) display or liquid crystal (LCD) display. Or it may be set on a display that projects from a fixed or dynamic medium, such as a slide projector or television. [0018] In the embodiments described herein, glyphs are used, but otherwise the glyphs may be replaced by any system, which includes visible and invisible systems and provides a data address code. .. In the embodiments described here, a visual mark is used, but otherwise the visual mark can be replaced with a sensory mark, which is a machine-readable data address code. , Of the address<u style="single">logic</u>While providing a reference, it can act to guide the user or machine to select a location. In the embodiments described herein, a paper substrate is used, but the paper substrate may be replaced by any medium, which can be embedded with a data address code and can be read by a machine. .. [0019] The sensory mark may be embedded in the same medium as the data address code, or may be embedded in another medium. Alternatively, the sensory mark may be projected onto the glyph, or the glyph may be projected onto the sensory mark. [0020] FIG. 3 is a block diagram of an image capture system that can be used to capture a user-selected portion of a graphical user interface such as glyph address carpet 1732 and decode the captured portion of the glyph. In one embodiment, the computer system 1712 is a general purpose computer system such as a conventional personal computer or laptop computer, which includes main memory 1716, read-only storage (ROM) 1718, storage 1720, processor 1722, communication interface. It has 1724, all of which are interconnected by bus 1726. Bus 1726 is also connected to Display 1730, Cursor Control 1714, and Frame Capture 1728. [0021] [0021] Image capture device 1710, in this case camera pen pen) is connected to frame capture 1728 and mouse 1731. Camera pen 1710 sends image information to frame capture 1728. In one embodiment, the button 1715 of the camera pen 1710 is wired to the mouse 1731 and when the user presses the button 1715, a signal is sent to the cursor control 1714 through the mouse circuit Frame Capture 1728. With this signal, processor 1722 initiates a program that directs frame capture 1728 to capture an image from camera pen 1710. In another embodiment, both the image line and the signal line from the camera pen 1710 are input directly to the frame capture card 1728. The line between the camera pen 1710 and the computer 1712 may be connected by any wired method that provides image capture from the camera pen 1710. [0022] The user makes a selection by placing the camera pen 1710 on or near the visual marking on the glyph address carpet 1732 and pressing button 1715. By pressing button 1715, the camera pen 1710 captures a portion of the address carpet beneath the tip of the camera pen 1710 and sends the image to the computer 1712 for analysis via frame capture 1728. The button or multiple buttons can be used for additional signals such as double clicks and maintenance actions. [0023] FIG. 4 shows an embodiment of a user interface that sets a hot zone. A hot zone is an area on or near a visual mark that, when selected, has the same effect as selecting the visual mark. In a preferred embodiment, the hot zone may surround the visual marking. For example, in FIG. 4, the icon "David's DOC2" has a hot zone indicated by a broken line. If the user selects in this hot zone, the icon "David's" DOC2 is selected. This allows the user to make a selection on or near the visual marking. This selection is treated by the system as if a visual mark had been selected. The hot zone may be manifested by visual markings, such as visually different shades on the address carpet, or may imply an appropriate approach. [0024] FIG. 4 also shows a preferred embodiment of the glyph address carpet coding structure. Each glyph is either a forward slash or a backward slash. The glyph row and column orientations and spacings are O, respectively.<sub>GX</sub>And O<sub>GY</sub>It is indicated by. As shown by A and B in the figure, the A code is on every other line, and the B code is mixed between them. Along the diagonal to the lower right, all A values are preferably the same. Similarly, along the diagonal to the lower left, all B values are preferably the same. [0025] FIG. 5 is a block diagram showing a selection process using the camera pen 1710. Each icon has the actual selection indicated by the dashed hot zone 1910. The tip of the camera pen 1710 covers the area indicated by 1914. The direction of the tip of the camera pen 1710 is Y<sub>c</sub>Axis and X<sub>c</sub>Indicated by the axis. To make a selection, the user places the tip of the camera pen 1710 above the selection range. When the user presses button 1715, images within range 1914 are captured. The computer 1712 analyzes the captured image and determines the position of the center 1912 of the selection 1914. After determining the position of the center 1912, use the position of the center 1912 to investigate the function corresponding to the center 1912. [0026] FIG. 6 is a diagram showing a second type of selection process, which may be used to perform a graphical user face based on the principles of the present invention. In this embodiment, the camera pen 1710 is provided with an indicator attached to the tip, thus shifting the image capture range of the camera pen from where the user points. For example, in Figure 6, the user has the icon "David's. Select by pointing to "DOC", but the image capture range 2014 of the camera pen 1710 deviates from the icon, and its center is in 2012. In this case, the computer 1712 determines the actual selection from the center 2012 based on (1) image range 2014 and (2) direction of the selected range and (3) distance and direction of deviation from the image capture range. There is a need. The deviation is calculated using the glyph grid parameters from the captured image decoding process described below. [0027] Returning to FIG. 3, in one embodiment, the main memory 1716 is a random access memory (RAM) or a dynamic storage device that stores instructions executed by the processor 1722. Main memory 1716 may also store information used to execute instructions. ROM 1718 is used to store static information and instructions used by processor 1722. The storage device 1720 is, for example, a magnetic or optical disk, which also stores instructions and data used to operate the computer system 1712. [0028] The display 1730 may be a CRT or other type of display device. Cursor control 1714 controls the movement of the cursor on the display 1730. The cursor control 1714 may be, for example, a mouse, trackball or cursor direction keys. [0029] The system shown in Figure 3 can be used to implement the glyph address carpet capture and conversion system shown below. The devices and methods described herein can be installed by the computer system 1712 by using hardware, software, or a combination of hardware and software. For example, the devices and methods described herein may be executed as a program in one or more of main memory 1716, ROM 1718, or storage device 1720. In one embodiment, the processor 1722 executes the program, analyzes the captured portion of the glyph address carpet, and determines the address information encoded in the glyph. [0030] Such a program may be read into main memory 1716 from another computer-readable medium, such as storage device 1720. By executing a series of instructions contained in the main memory 1716, the processor 1722 executes the processing steps according to the present invention described herein. In addition, the processor installs a device component for executing a processing step by executing a series of instructions contained in the main memory 1716. Wired circuits may be used in place of or in combination with software instructions to carry out the present invention. Therefore, the embodiments of the present invention are not limited to a specific combination of hardware circuits and software. [0031] As used herein, the term "computer-readable medium" means any medium that participates in the task of providing instructions to processor 1722 for execution. There are many forms of such media, but not limited to,<u style="single">Non-volatile</u>Includes storage media, volatile storage media, and transmission media.<u style="single">Non-volatile</u>The storage medium includes an optical or magnetic disk such as, for example, a storage device 1720. The volatile storage medium includes RAM such as main memory 1716. Transmission media include coaxial cables, copper wires, and optical fibers, including the wiring that forms the bus 1726. The transmitting medium may also take the form of acoustic or light waves that occur in the process of radio and infrared data communication. [0032] Common forms of computer-readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tape or other magnetic storage media, CD-ROMs, other optical media, perforated cards, paper tape, and hole patterns. Includes other physical media it has, RAM, PROM, EPROM, FLASH-EPROM, other memory chips or cartridges, carriers as described below, or other media that can be read and used by a computer. [0033] Various forms of computer-readable media may be associated with carrying one or more sets of instructions to processor 1722 for the execution of instructions. For example, the instructions may first be carried by a magnetic disk or a remote computer. A remote computer can load instructions into its dynamic memory and use a modem to send instructions over the telephone line. A modem limited to computer system 1712 can receive data over a telephone line and use an infrared transmitter to convert the data into an infrared signal. An infrared detector coupled to the appropriate circuit can receive the data carried within the infrared signal and place this data on bus 1726. Bus 1726 carries data to main memory 1716, from which processors 1722 pull and execute instructions. Instructions received in main memory 1716 may optionally be stored in storage 1720 before or after execution on processor 1722. [0034] The computer system 1712 also comprises a communication interface 1724 coupled to bus 1726. Communication interface 1724 provides two-way communication to other systems. For example, communication interface 1724 may be an integrated services digital network (ISDN) card or modem that provides a data communication connection to the corresponding type of telephone line. The communication may also be, for example, a local area network (LAN) card, which may provide communication to the LAN. The communication interface 1724 is also a wireless card and may set up wireless communication between the computer system 1712 and the wireless system. With any of these settings, the communication interface 1724 transmits and receives electronic, electromagnetic, or optical signals that carry data streams that represent various types of information. [0035] The link between the communication interface 1724 and an external device and system typically provides data communication through one or more networks or other devices. For example, the link may provide a connection to a private network (not shown) to a host computer or a data device operated by an Internet Service Provider (ISP). ISPs provide data communications services through a global packet data communications network, now commonly known as the "Internet." Both campus networks and the Internet use electronic, electromagnetic, or optical signals that carry digital data streams. Signals through various networks that carry digital data to or from computer system 1712 and signals between networks and communication interface 1724 are examples of carrier forms that carry information. [0036] The computer system 1712 can send messages and receive data, including program code, over a network via a link between communication interface 1724 and an external system or device. On the Internet, for example, a server may send the code requested for an application program through the Internet, an ISP, a private network, or communication interface 1724. [0037] The program code received from the network may be executed by the processor 1722 at the same time as it is received, may be stored in a memory such as a storage medium 1720 for later execution, or both. By this method, the computer system 1712 can obtain the application code in the form of a carrier wave. [0038] FIG. 7 shows an embodiment of an address code encoded on the glyph address carpet 1732. More specifically, FIG. 7 shows part 2110 of the glyph address carpet. The address is encoded by alternately arranging a sequence of "A" address codes and a sequence of "B" address codes on a line. The position of each row along each sequence should be clearly determinable from a subsequence of a given length. For example, a code with the maximum length of an N-bit shift register can be located from an N-bit subsequence. Each address code sequence is a 15-bit sequence, with the A sequence indexed from left to right and the B sequence indexed in the opposite direction from right to left. Each line of the A code sequence is shifted by two from the line immediately before or after the A address at the position of the glyph. Similarly, each line of the B code sequence is offset by two positions in the opposite direction. Therefore, the coding structure has two characteristics. One is a parallel line containing two sets of unique one-dimensional address codes, and the other is the composition of the two sets so that the deviation between each pair from the two sets is unique. It is a relative deviation within the staff. This establishes a unique two-dimensional address position. [0039] The computer 1712 analyzes the range of the captured image and decodes the glyph-encoded address information in two steps. Ideally, the user places the camera pen 1710 on a portion of the glyph address carpet 1732 and aligns the angles to capture the image as shown in the bit pattern as shown in FIG. However, in reality, the user points the camera pen 1710 in various directions over a range of interest, so the pattern may be oriented at any angle from 0 ° to 360 °. Therefore, the computer 1712 needs to determine the orientation of the image as the first step in decoding and interpreting the address information. [0040] The orientation of the image is determined by analyzing the captured image. This process is called clarification (see, eg, US Pat. No. 5,521,372 given to Hacht et al.). After determining the proper orientation of the image, the computer 1712 decodes the address of the selected location on the address carpet. The clarification and address decryption process performed by the computer 1712 will be described in more detail here. [0041] 8 and 9 are flowcharts showing disambiguation and address decryption processing performed by the computer 1712 with respect to the acquired image region. As the computer 1712 begins the clarification process, it images the acquired portion of the address carpet to find the glyph seed. The glyph seed is the first identified glyph, around which there are readable glyphs. Once the glyph seed is found, the glyph grid can be detected by processing its periphery (see Attachments A and B). The glyphs are then decoded, indicated by 1 or 0, and filled into a binary data matrix with columns and rows corresponding to the glyph grid columns. The orientation for 90 ° and 180 ° rotations may still be ambiguous. [0042] FIG. 10 shows a binary data matrix (BDM) created based on the glyph grid acquired by the camera pen 1710. The BDM has a location corresponding to the glyph grid. Therefore, the size of the BDM closely corresponds to the size of the glyph grid. [0043] Analyze each position in the glyph grid to determine which value to place at the corresponding position in the BDM. First, fill the BDM with a value such as Φ. This indicates that no attempt has been made to read the glyph. After analyzing the glyph corresponding to a specific position, Φ at that position is replaced with the glyph analysis result. [0044] In FIG. 10, B indicates the border position. X indicates that an untranslatable glyph was found in the corresponding location of the glyph grid. E indicates the glyph at the end of the acquired image part. 0 indicates a backslash glyph. 1 indicates a forward slash glyph. The matrix area corresponding to the acquired image is filled with 0s and 1s. There is an E at the end, and an X corresponds to a position where there are no readable glyphs. However, in reality, although BDMs generally come to have similar patterns, the values are often not evenly distributed as well. For example, an X may come to the glyph position in the acquired image. This happens when the glyph is erased. Some values, circled or squared, indicate two separate strings of code. These columns are staggered in the opposite direction. [0045] When the user makes a selection, the user points the camera pen in any direction on the user interface, so the acquired image may be oriented at any angle. Therefore, even if computer 1712 was able to extract 0s and 1s from the BDM based on the acquired image in step 2210, the BDM would be 0 for the original code pattern of the glyph address carpet from which the image was acquired. It is uncertain whether it is oriented in ° (ie exact orientation), 90 °, 180 ° or 270 °. The exact address code cannot be retrieved from the BDM until the orientation of the acquired image is determined. The orientation can be indicated using preliminary information such as physical system constraints, but it can also be determined independently directly from the address code. [0046] After converting the glyphs to 0 and 1, select the reference glyph grid (step 2211). This position may be selected in a variety of ways, but is generally a position that indicates a relevant selection. For example, the reference glyph grid may be the center of the BDM. [0047] After converting the image to BDM, it is processed by computer 1712 (step 2212). The original BDM created from the acquired image is called BDM1. Computer 1712 makes a copy of BDM1 and rotates the copy 90 ° clockwise to make a second binary data matrix BDM2 (step 2214). By rotating BDM1 90 °, the column of BDM1 becomes the row of BDM2 and the row of BDM1 becomes the column of BDM2. In addition, flip all bit values of BDM2 from 0 to 1 and from 1 to 0. This is because rotating a 45 ° slash glyph 90 ° reverses the non-rotated glyph. [0048] The computer 1712 then correlates the odd and even columns of BDM1 separately (step 2216) to detect which code sequence is staggered forward or backward. Correlation is also performed on the odd and even columns of BDM2 (step 2218). Correlate all columns of each BDM. As a result, a correlation value C1 is obtained for BDM1 and a correlation value C2 is obtained for BDM2. [0049] FIG. 11 is a flowchart showing an embodiment of correlation steps 2216 and 2218 of FIG. This process detects every other row of correlation values along the diagonal in each direction in the BDM and sums the column correlation values to form the final correlation value for odd or even columns. This process is performed on the odd column of BDM1 and the correlation value C1ODD of BDM1 is performed on the even column of BDM1 and the correlation value C1 of BDM1.<sub>EVEN</sub>To the odd column of BDM2 and the correlation value C2 of BDM2<sub>ODD</sub>To the even column of BDM2 and the correlation value C2 of BDM2<sub>EVEN</sub>Are formed respectively. If the BDM is oriented at 0 ° or 180 °, the C will be larger than the DBM with other orientations.<sub>ODD</sub>+ C<sub>EVEN</sub>Will have. [0050] The computer 1712 first inputs the BDM (step 2410) and then copies every other row into the temporary matrix (step 2412). The same process is performed for diagonal lines pointing to the right and to the left. In steps 2414, 2416, 2418, 2420, 2422 and 2424, processing is performed on the diagonal lines pointing to the right. For example, in FIG. 12, in these steps, the correlation is calculated along the diagonal line from the upper left to the lower right. First, the column count N and the correlation value C_RIGHT are initialized to zero (step 2414). Move column N two positions to the right and correlate it to the next column (step 2416). Then set C_N to this value (step 2418). Then set C_RIGHT to C_RIGHT + C_N (step 2420) and increase N (step 2422). If the column count N is greater than or equal to Nmax, the process proceeds to step 2426 after this process. At this time, N is the number of odd or even columns in the BDM. If N is less than Nmax, the process proceeds to step 2416 after this process. Therefore, after correlating each adjacent column by this process, the correlation value C_RIGHT indicates the strength of the correlation along the right-pointing diagonal line. [0051] The step shown on the left side of FIG. 11 is similar to steps 2414, 2416, 2418, 2420, 2422, 2424, and the diagonal lines from the upper right to the lower left are processed to obtain C_LEFT. After determining C_RIGHT and C_LEFT by correlating the left and right diagonal lines, the final correlation value D is determined. This is done by subtracting C_LEFT from C_RIGHT. For example, when processing an odd column of BDM1, the C value will be C1ODD of BDM1. [0052] The processing step of FIG. 11 is performed on the odd and even columns of BDM1 and the odd and even columns of BDM2. From this information, the correlation value C1 of BDM1 is C1<sub>EVEN</sub>+ C1<sub>ODD</sub>Is set to (as determined in Figure 11 for the column of BDM1), and the correlation value C2 of BDM2 is C2.<sub>EVEN</sub>+ C2<sub>ODD</sub>Is set to (as determined in Figure 11 for the BDM1 column). [0053] FIG. 12 shows the reason why the shift direction of the code for every other column can be determined from the correlation. For example, as shown by the circle A1 along the right-pointing slash, the code along the slash starting from A1 in the first position of the second column will have the same value every other row along this slash, unless erased or inaccurate. Should have. Similarly, as indicated by the squared B1, codes along the slash starting in the upper right corner should have the same value every other row along this slash, unless erased or inaccurate. This also applies to the values along the diagonal lines in the odd columns starting with B2, B3, and so on, respectively. Therefore, a strong correlation along the downward slash in the odd columns and a strong correlation along the downward slash in the even columns means that the code on the even columns is to the right and the code on the even columns is to the right. It is suggested that they are shifting to the left. [0054] Therefore, four correlation values are required for each BDM. Correlation values for 1) odd columns right to left, 2) odd columns left to right, 3) even columns right to left, and 4) even columns left to right. From these correlation values, select the strongest correlation value for each of the even and odd columns, and select the C of BDM.<sub>EVEN</sub>And C<sub>ODD</sub>(Steps 2216 and 2218). Then C<sub>EVEN</sub>And C<sub>ODD</sub>And are added to form the final C correlation value for that BDM. As previously described for step 2220, the BDM with the strongest correlation is the BDM oriented at 0 ° or 180 °. This is due to the relative orientation of the chords in the odd and even columns. In other words, we found two aspects to the selected BDM. In other words, the direction in which every other row of code is shifted and the BDM are horizontally oriented at 0 ° or 180 °. Perform another correlation step 2230 to detect the direction in which the code in each column extends (relative to the offset direction). [0055] Odd-column codes are offset in one direction, and even-column codes are offset in the other direction. If we know the respective codes that extend to the odd-numbered sequence and the sequence of numbers, we can detect the appropriate 0 ° orientation of the BDM from the deviation characteristics of this code in relation to this. [0056] In FIG. 8, if C1 is larger than C2 (step 2220), BDM1 is selected for further processing. The fact that C1 is larger than C2 indicates that the one-dimensional code of BDM1 is very strongly correlated and therefore oriented at 0 ° or 180 ° (step 2224). If C2 is larger than C1, then select BDM2 for further processing. This is because a high correlation indicates that BDM2 is oriented at 0 ° or 180 ° (step 2224). In this way, you will find the exact BDM. However, before determining the address position of the acquired image, the computer 1712 first detects whether the selected BDM is 0 ° (ie, exactly oriented) or rotated 180 °. [0057] FIG. 9 is a flowchart showing a step in which the computer 1712 determines the address of the glyph carpet acquisition area. When the BDM is oriented at 0 °, the bit positions along the diagonal lines of the BDM preferably have the same value every other row. However, image acquisition processing and obstruction by visible markings may cause errors and erasures in the BDM data. To reduce the effects of these errors and erasures, the computer 1712 takes a majority vote along the diagonal lines in the direction that the odd columns shift, and then into even rows along each diagonal line in the direction that the even columns shift. On the other hand, the majority vote processing is repeated (step 2225). As a result, the first code column for odd columns<u style="single">(sequence)</u>But also for even columns, the second code column<u style="single">(sequence)</u>However, each is obtained. First and second code strings to the extent that each bit position can be accurately determined by a majority vote<u style="single">(sequence)</u>Is the original pseudo-noise address sequence that corresponds to the odd or even column set, respectively.<u style="single">Subsequence</u>(subsequenc<u style="single">e)</u>Should match. [0058] [0058] The computer 1712 then pulls out the original pseudo-noise address code (get code 1) for the forward-shifted column (step 2226) and the original pseudo-noise address code (get code 2) for the backward-shifted column. Pull out (step 2228). Using the original pseudo-noise address code for each code set A and B and the code obtained by the majority vote, the computer 1712 performs four cross-correlations (step 2230) and glyphs for odd and even columns. Establish the best match between columns and PN column positions. [0059] In particular, the two adjacent columns closest to the reference element selected in step 2211 in the BDM are correlated with the respective complete PN sequences that make up the original address carpet. The PN columns can be the same. Forward and backward correlation is done for each column. From the four correlations, find the pair of four peak correlation values and the position value. [0060] 1) P1 and V1. The peak correlation value and the corresponding position for code 1 that correlates backward with the completed PN column are shown. [0061] 2) Q1 and U1. The peak correlation value and the corresponding position for the code 2 that is positively correlated with the completed PN column are shown. [0062] 3) P2 and V2. The peak correlation value and the corresponding position for code 1 that is positively correlated with the completed PN column are shown. [0063] 4) Q2 and U2. The peak correlation value and the corresponding position for code 2 that correlates backward with the completed PN column are shown, respectively. [0064] Ui and V corresponding to peak size<u style="single">i rank</u>The field value (i is 1 or 2) is used to determine the X and Y values that correspond to the reference element selected in step 2211. That is, if (P1 + Q1)> (P2 + Q2) (step 2232), then U1 and V1 are used to calculate the X and Y positions of the reference glyph position selected in step 2211 (step 2236). If (P1 + Q1) (P2 + Q2) (step 2232), then U2 and V2 are used to calculate the X and Y positions of the reference glyph position selected in step 2211 (step 2234). Find the address information according to the following formula. [0065] X = (V<sub>i</sub>-U<sub>i</sub>+ Total code length) / 2 Y = (V<sub>i</sub>+ U<sub>i</sub>-All code length) / 2 Return the calculated X and Y positions (step 2238). The diagonal lines correspond to the constant values of U and V, respectively, and the columns and rows correspond to X and Y, respectively. U and V can also be used directly as address parameters. [0066] In this way, the X and Y values associated with the reference point selected in step 2211 are determined. The computer 1712 uses this information to relate the X and Y coordinates that have a logical reference, that is, the combination of the logical reference and the control signal (eg, button click) to the specific action to be performed. For example, using the X and Y coordinates as an index, refer to a table of actions that can be performed by computer 1712 or another device under the supervision of computer 1712. The X and Y coordinates can be associated with the file open command. The file open command opens a file associated with an icon located near the X and Y coordinates in the address space. In fact, any action performed by the computer 1712 can be associated with a particular X and Y coordinate, a range of X and Y coordinates. [0067] FIG. 13 shows an embodiment of the user interface. In this user interface, the address carpet 12 is divided into multiple hot zones. Each hot zone has an address range. This address range corresponds to a graphic object, which corresponds to the purpose or function of the system. Computer 1712 uses the X and Y addresses determined by image acquisition to detect which area of address carpet 12 the user has selected. For example, if the addresses are X = 1052 and Y = 32, then this is in the upper left part of the address carpet 12, so the user has selected CloseWin.avi. The computer 1712 uses a table to associate the X and Y coordinates with one or more functions performed on the basis of these coordinates. For example, in the above example, X = 1052 and Y = 32 are associated with one or more functions that are performed when the user selects CloseWin.avi. Button 1715 (such as one or more clicks) signals the computer 1712 to start. Alternatively, image capture By holding steady) for a certain period of time, the start signal is transmitted to the computer 1712. The accuracy of regioselectivity is in units of one glyph, and the resolution of differentiated selection is as fine as in units of one glyph. If the acquisition selection device can query the address carpet to within a portion of the glyph spacing, the minimum identification distance can be reduced to the glyph unit portion. For example, camera pixels are typically part of the glyph spacing. [0068] Therefore, the methods, systems, and products of the present invention facilitate a graphical user interface using glyph address carpets. The above description of the practice of the present invention is given as an example. Therefore, the invention is not limited to the invention as described without any difference, and modifications and changes can be made without exceeding the above-mentioned purpose. [Simple explanation of drawings] FIG. 1 is a diagram showing a part of a self-clocking glyph code pattern and its binary interpretation. [Figure 2] It is a figure which shows the example of the user interface implemented using the glyph address carpet. FIG. 3 is a block diagram of an image capture system that captures a user-selected portion of a glyph address carpet and decodes the glyphs of this capture portion. FIG. 4 is a diagram showing an embodiment of a user interface that executes a hot zone. FIG. 5 is a diagram showing a selection process using the camera pen 1710. FIG. 6 illustrates a second type of selection process used to implement a graphic user interface that is consistent with the principles of the present invention. [Fig. 7] Glyph address carpet 1732<u style="single">Code</u>It is a figure which shows the embodiment of the address code which was made. FIG. 8 is a flow chart showing a clarification and address decoding process performed on a captured image area by computer 1712. FIG. 9 is a flow chart showing a clarification and address decoding process performed on a captured image area by computer 1712. FIG. 10 shows a binary data matrix formed from a glyph grid captured by camera pen 1710. FIG. 11 is a flowchart showing a process for performing correlation steps 2116 and 2118. FIG. 12 by glyphs in captured images<u style="single">Code</u>It is a figure which shows the analysis performed by the computer 1712 to determine the converted address. FIG. 13 is a diagram showing how the address carpet 1612 is divided into regions having their respective address ranges. FIG. 14 shows a readable fragment of an N-dimensional image address space. [Explanation of symbols] 1710 image capture device (camera pen), 1712 computer system, 1722 processor, 1728 frame capture, 1730 display, 1732 glyph address carpet, 2110 address code.
14 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| JP61262832A | Cites | Japan |
| JP61296421A | Cites | Japan |
| JP03037707A | Cites | Japan |
| JP06309084A | Cites | Japan |
| JP07141104A | Cites | Japan |
| JP04040562A | Cites | Japan |
| JP09163107A | Cites | Japan |
| JP09091301A | Cites | Japan |
| JP10187912A | Cites | Japan |
| JP04233683A | Cites | Japan |
18 members in 4 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 09144251 | United States of America | – | |
| 14425198 | United States of America | A | |
| 14425198 | United States of America | A | |
| 1998144251 | – | – | – |
| US19980144251 | – | – | – |
Members18
| Document | Office | Kind | |
|---|---|---|---|
| JPH10187911A | Japan | A | |
| US5937110A | United States of America | A | |
| EP0984390A2 | European Patent Office (EPO) | A2 | |
| JP2000099257A | Japan | A | |
| EP1016953A2 | European Patent Office (EPO) | A2 | |
| JP2000227833A | Japan | A | |
| EP0984390A3 | European Patent Office (EPO) | A3 | |
| US6208771B1 | United States of America | B1 | |
| EP1016953A3 | European Patent Office (EPO) | A3 | |
| US6310988B1 | United States of America | B1 | |
| US6327395B1 | United States of America | B1 | |
| US6594406B1 | United States of America | B1 | |
| JP4104195B2 | Japan | B2 | |
| EP0984390B1 | European Patent Office (EPO) | B1 | |
| DE69940454D1 | Germany | D1 | |
| JP4353591B2This record | Japan | B2 | |
| JP4611479B2 | Japan | B2 | |
| EP1016953B1 | European Patent Office (EPO) | B1 |
19 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 | |
| Notification of resignation of power of attorneyJAPANESE INTERMEDIATE CODE: A7424RD04 | RD04 |
Numbers
- Publication
- 4353591
- Publication, DOCDB
- 4353591
- Publication, EPODOC
- JP4353591B
- Application
- 24653399
- Application, DOCDB
- 24653399
- Application, EPODOC
- JP19990246533
Titles2
- Japanese
- グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置
- English
- A device that provides glyph address carpeting methods and location information in a multidimensional address space.
Classification
- CPC, 3
- G06K19/06037
- G06K7/14
- G06K7/1443
- IPC, 6
- G06F3 042
- G06K19 06
- G06F3 041
- G06K1 12
- G06K7 00
- G06K7 14
