WO2006041149A1 - 物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法 - Google Patents

物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法 Download PDF

Info

Publication number
WO2006041149A1
WO2006041149A1 PCT/JP2005/018926 JP2005018926W WO2006041149A1 WO 2006041149 A1 WO2006041149 A1 WO 2006041149A1 JP 2005018926 W JP2005018926 W JP 2005018926W WO 2006041149 A1 WO2006041149 A1 WO 2006041149A1
Authority
WO
WIPO (PCT)
Prior art keywords
cell
corner
cells
data
image
Prior art date
Application number
PCT/JP2005/018926
Other languages
English (en)
French (fr)
Inventor
Masanori Takano
Hirofumi Okamoto
Original Assignee
Sony Computer Entertainment Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2004301310A external-priority patent/JP3827694B2/ja
Priority claimed from JP2005269295A external-priority patent/JP4364186B2/ja
Application filed by Sony Computer Entertainment Inc. filed Critical Sony Computer Entertainment Inc.
Priority to DE602005026145T priority Critical patent/DE602005026145D1/de
Priority to AT05793212T priority patent/ATE497219T1/de
Priority to EP05793212A priority patent/EP1801735B1/en
Priority to US10/590,759 priority patent/US7661601B2/en
Publication of WO2006041149A1 publication Critical patent/WO2006041149A1/ja
Priority to US12/534,979 priority patent/US8066195B2/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F1/00Card games
    • A63F1/02Cards; Special shapes of cards
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F1/00Card games
    • A63F1/06Card games appurtenances
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B42BOOKBINDING; ALBUMS; FILES; SPECIAL PRINTED MATTER
    • B42DBOOKS; BOOK COVERS; LOOSE LEAVES; PRINTED MATTER CHARACTERISED BY IDENTIFICATION OR SECURITY FEATURES; PRINTED MATTER OF SPECIAL FORMAT OR STYLE NOT OTHERWISE PROVIDED FOR; DEVICES FOR USE THEREWITH AND NOT OTHERWISE PROVIDED FOR; MOVABLE-STRIP WRITING OR READING APPARATUS
    • B42D25/00Information-bearing cards or sheet-like structures characterised by identification or security features; Manufacture thereof
    • B42D25/30Identification or security features, e.g. for preventing forgery
    • B42D25/305Associated digital information
    • 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
    • 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
    • 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
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F1/00Card games
    • A63F1/06Card games appurtenances
    • A63F1/067Tables or similar supporting structures
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • A63F9/24Electric games; Games using electronic circuits not otherwise provided for
    • A63F2009/2401Detail of input, input devices
    • A63F2009/2411Input form cards, tapes, discs
    • A63F2009/2419Optical
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/69Involving elements of the real world in the game world, e.g. measurement in live races, real video

Definitions

  • the present invention relates to a technique for expressing code data by two-dimensionally arranging a plurality of cells.
  • Patent Document 1 Japanese Unexamined Patent Publication No. 2000-82108
  • the resolution of image data is high, a large amount of two-dimensional code information can be acquired, and a high recognition rate of code data can be realized.
  • some cameras have low resolution, and even in such cases, it is preferable to increase the code data recognition rate.
  • the image data acquired by imaging includes the influence of external ambient light, etc., so when binarizing the acquired image data, the influence is taken into account and binarized. It is preferable to set the range of pixel values suitably.
  • An object of the present invention is to provide a technology capable of accurately recognizing an object such as a two-dimensional code or a card.
  • an aspect of the present invention provides a two-dimensional arrangement of a plurality of rectangular cells.
  • a code data portion constituting the code data and a plurality of corner cells arranged so as to surround the code data portion are provided, and the corner cell provides an object having an area larger than that of the square cell.
  • This object may be a two-dimensional object such as a card or a three-dimensional object.
  • the square cell and the corner cell may be printed on the object or may be stamped. These cells only need to exist in a state where they can be imaged by the imaging device.
  • Another aspect of the present invention includes a code data portion that configures code data by two-dimensionally arranging a plurality of rectangular cells, and a plurality of corner cells arranged so as to surround the code data portion.
  • the corner cell provides an object having a round shape. This object may be a two-dimensional object such as a force card or a three-dimensional object. Further, the square cell and the corner cell may be printed on the object or may be stamped. These cells only need to exist in a state where they can be imaged by the imaging device.
  • Yet another aspect of the present invention provides image data generated according to a data format for displaying a two-dimensional code on a display device, wherein a plurality of rectangular cells are placed at predetermined coordinate positions on the display device. Data for display and data for displaying a plurality of corner cells at coordinate positions surrounding a plurality of rectangular cells displayed at predetermined coordinate positions, and the corner cells are displayed larger than the square cells. As described above, image data is provided in which corner cell and square cell data are set.
  • Yet another aspect of the present invention is image data generated according to a data format for displaying a two-dimensional code on a display device, wherein a plurality of rectangular cells are placed at predetermined coordinate positions on the display device.
  • Yet another aspect of the present invention is a method for transmitting image data generated according to a data format for displaying a two-dimensional code on a display device, wherein the image data to be transmitted is a plurality of squares.
  • the image data to be transmitted is a plurality of squares.
  • Data and data for displaying a plurality of corner cells at coordinate positions surrounding a plurality of square cells displayed at predetermined coordinate positions, and the corner cells are displayed so that the corner cells are displayed larger than the square cells.
  • an image data transmission method characterized by the fact that the data of the rectangular cell is set.
  • Yet another aspect of the present invention is a method of transmitting image data generated according to a data format for displaying a two-dimensional code on a display device, wherein the image data to be transmitted is a plurality of squares.
  • an image data transmission method characterized in that data of a corner cell is set so that the cell is displayed in a round shape.
  • Yet another aspect of the present invention provides a reference cell having a predetermined shape, a plurality of polygonal cells that constitute code data by two-dimensionally arranging each, and a plurality of polygonal cells.
  • a plurality of corner cells arranged so as to surround the two-dimensionally arranged area, and at least one of the reference cell, the multi-sided cell, and the corner cell can be colored differently from other cells.
  • This object may be a 2D object such as a card or a 3D object.
  • the square cell and the corner cell may be printed on the object or may be stamped. These cells only need to exist in a state where they can be imaged by the imaging device.
  • Still another aspect of the present invention provides image data generated according to a data format for displaying a two-dimensional code on a display device, and a reference cell having a predetermined shape is provided on the display device.
  • Data for display at the position of, data for displaying multiple polygonal cells within the area defined for the reference cell, and display of multiple corner cells at the coordinate positions surrounding the area And providing image data in which the color of at least one of the reference cell, the multi-sided cell, and the corner cell is set to be different from the colors of the other cells.
  • Yet another aspect of the present invention provides a method for transmitting image data generated in accordance with a data format for displaying a two-dimensional code on a display device.
  • data for displaying a plurality of corner cells at coordinate positions surrounding the area, and the color of at least one of the reference cell, the polygonal cell, and the corner cell is different from the colors of the other cells. It provides image data transmission methods that can be set differently.
  • Yet another embodiment of the present invention relates to an image analysis apparatus that recognizes an object image included in a frame image.
  • the object image includes a reference cell having a predetermined shape and a plurality of corner cells colored differently from the reference cell.
  • the image analysis apparatus sets a range of RGB pixel values, detects a reference cell from a binarization processing unit that converts a frame image into a binary bit representation, and binary data of the frame image A first detection unit; and a second detection unit that detects a corner cell from the binarized data of the frame image.
  • the binarization processing unit sets a range of RGB pixel values for the reference cell, extracts pixels within the set pixel value range, and performs binarization processing of the frame image.
  • the first detector detects the reference cell based on the key data.
  • the binarization processing unit sets the RGB pixel value range for the corner cell, extracts pixels within the set pixel value range, performs the binary image processing of the frame image,
  • the second detector detects a corner cell based on the binary data.
  • Yet another embodiment of the present invention relates to a method for recognizing an object image included in a frame image.
  • the object image includes a reference cell having a predetermined shape and a plurality of corner cells colored differently from the reference cell.
  • the object recognition method according to this aspect includes a step of setting a range of RGB pixel values for a reference cell, extracting pixels within the set pixel value range, and detecting a reference cell also with respect to frame image power. Setting a range of RGB pixel values for the cell, extracting pixels within the set range of pixel values, and detecting the corner image of the frame image power.
  • An object according to yet another aspect of the present invention has the same shape as a reference cell having a predetermined shape, and a plurality of polygonal cells that constitute code data by two-dimensionally arranging the reference cells.
  • the corner cell is the reference cell and the polygonal cell.
  • This object may be a 2D object such as a card or a 3D object.
  • a game mat according to still another aspect of the present invention is a game mat for placing a game card, and is provided with a gradation region in which the brightness changes stepwise.
  • Yet another aspect of the present invention is a card game system.
  • This card game system is configured for a game card having a cell having a predetermined color, and a game having a gradation area in which the brightness is changed step by step with the same hue color as the cell of the game card.
  • An image capturing unit for capturing a frame image by capturing a mat, a game mat, and a game card placed on the game mat, and setting a range of RGB pixel values to represent the frame image in binary bits
  • a binarization processing unit that converts the data into a frame, an extraction unit that extracts the gradation area of the game mat in the binarized data of the frame image, and a binarization processing unit based on the binary key data of the gradation area
  • an adjustment unit is provided for adjusting the range of RGB pixel values when binarizing.
  • Yet another embodiment of the present invention is an image analysis apparatus.
  • This device images a game card having a cell of a predetermined color and a game mat having a gradation area that is composed of the same hue color as the cell of the game card and changes in brightness in stages.
  • An image analysis device for analyzing a frame image, which sets a range of RGB pixel values and converts the frame image into a binary bit representation, and a binary image of the frame image Based on the binary data of the gradation area, the binarization processing section also extracts the RGB data for binarization based on the binary data of the gradation area.
  • An adjustment unit for adjusting a range of pixel values.
  • Yet another embodiment of the present invention is an image analysis method.
  • This method takes an image of a game card having a cell having a predetermined color and a game mat having a gradation area in which the brightness changes in a stepwise manner with the same hue as the cell of the game card.
  • Image analysis method for analyzing a frame image a step of converting a frame image into a binary bit representation by setting a range of RGB pixel values, and a game image for binarized data of a frame image
  • Yet another embodiment of the present invention is a program.
  • This program images a game card having a cell with a predetermined color and a game mat having a gradation area that is composed of the same hue color as the cell of the game card and changes in brightness in stages.
  • a program for analyzing frame images which allows a computer to set a range of RGB pixel values and convert the frame image to a binary bit representation, and for the binary image data of the frame image for games Lets the computer execute a function that extracts the gradation area of the mat and a function that adjusts the range of RGB pixel values when binarizing based on the binarized data in the gradation area.
  • FIG. 1 is a diagram showing a configuration of a game system that is effective in an embodiment.
  • FIG. 2 is a diagram showing a two-dimensional code printed on the surface of a game card.
  • FIG. 3 is a diagram showing a configuration of an image analysis apparatus.
  • FIG. 4 is a flowchart showing a processing procedure for recognition processing of a two-dimensional code.
  • FIG. 5 is a flowchart showing reference cell detection processing.
  • FIG. 6 is a flowchart showing a code portion detection process.
  • FIG. 7 is a flowchart showing a code data verification process.
  • FIG. 8 is a diagram showing another example of the two-dimensional code printed on the surface of the game card.
  • FIG. 9 is a diagram showing still another example of the two-dimensional code printed on the surface of the game card.
  • FIG. 10 is a diagram showing still another example of the two-dimensional code printed on the surface of the game card.
  • FIG. 11] (a) to (c) are explanatory diagrams for explaining a method of determining whether or not the force is a corner cell.
  • FIG. 12 is a diagram showing still another example of the two-dimensional code printed on the surface of the game card.
  • FIG. 13 is a diagram showing a game mat for arranging game cards.
  • FIG. 14 is a diagram showing the appearance of a gradation area.
  • FIG. 15 is a diagram showing another configuration of the image analysis apparatus.
  • FIG. 16 (a) to (c) are diagrams showing a donut region specified as a gradation region.
  • FIG. 17 is a diagram showing an image data transmission system in an embodiment.
  • FIG. 1 shows a configuration of a game system 1 that can be used in an embodiment of the present invention.
  • the game system 1 includes an imaging device 2, an image processing device 10, and an output device 6.
  • the image processing device 10 includes an image analysis device 20 and a game device 30.
  • the image analysis device 20 and the game device 30 may be configured as separate devices, but may be configured as a single unit.
  • the imaging device 2 is a video camera configured with power such as a CCD imaging device or a MOS imaging device, and has a resolution of 320 pixels ⁇ 240 pixels, for example.
  • the imaging device 2 captures the real space at a predetermined cycle and generates a frame image for each cycle.
  • the imaging area 5 is an area that is imaged by the imaging apparatus 2, and the position and size of the imaging area 5 are adjusted by adjusting the height and orientation of the imaging apparatus 2.
  • the game player moves the game card 4 that is a real object with a finger.
  • the game card 4 has a two-dimensional code for uniquely identifying itself.
  • the output device 6 includes a display 7 which is a display device.
  • the output device 6 may further be configured to have a speaker force (not shown).
  • the image processing apparatus 10 displays the frame image captured by the imaging apparatus 2 on the display 7 and controls display so that a character that is a virtual object is superimposed on the game card 4 at that time.
  • the player can easily confirm whether or not the game card 4 has entered the imaging region 5 by looking at the display 7. If not, the player can shift the position of the game card 4 or the orientation of the imaging device 2. Is adjusted so that the imaging device 2 captures an image of the game card 4.
  • the player moves the character by performing a predetermined operation on the game card 4. Due to the nature of this game application, it is preferable for the player to recognize the unity between the game card 4 and the character, so that the character image is displayed superimposed on the game card 4. When the game card 4 is slowly moved within the imaging area 5, the character moves together following the movement of the game card 4 while maintaining the state of riding on the game card 4.
  • the movement of the above character is controlled by the image processing apparatus 10.
  • the image analysis device 20 extracts image information of the game card 4 from the frame image acquired by the imaging device 2. Further, the image analysis device 20 extracts the two-dimensional code printed on the game card 4 from the image information of the game card 4. At this time, the image analysis device 20 determines position information, direction information, distance information, and the like in the space of the game card 4 from the two-dimensional code of the game card 4.
  • the image analysis device 20 uses the reference cell and the four corner cells in the image of the game card 4 in the frame image to determine the distance between the imaging device 2 and the game card 4 and the game. Calculate the direction of card 4 and so on. As a result, the character is controlled to face forward on the game power mode 4. Also, the code data of the game card 4 is obtained from the array of a plurality of rectangular cells in the two-dimensional code.
  • the force indicating that the game card 4 is simply placed on the table 3 The game force card 4 is tilted with respect to the table 3, for example, or is higher than the table 3. It may be lifted up.
  • the image analysis device 20 has a function of recognizing a state where the game card 4 is tilted or a state where the height from the table 3 is changed by image analysis. Image analyzer 20
  • the result of the image analysis in step S is sent to the game apparatus 30.
  • the frame image power captured by the imaging device 2 may be sent to the game device 30 and image analysis may be performed on the game device 30 side.
  • the image processing apparatus 10 is composed of only the game apparatus 30.
  • the game device 30 Based on the image analysis result in the image analysis device 20, the game device 30 performs display control so that the character is positioned on the game card 4 on the display screen of the display 7.
  • the character may be associated with the code data extracted from the game card 4 and appropriately assigned for each game scene. In this case, when the game scene is switched, the displayed character is switched.
  • FIG. 2 shows a two-dimensional code printed on the surface of the game card.
  • polygon cells having a plurality of predetermined shapes are two-dimensionally arranged according to a predetermined arrangement rule.
  • the two-dimensional code of the game card 4 is a two-dimensional arrangement of a reference cell 1002 and a plurality of rectangular cells 106 that serve as a reference for performing the recognition process of the game card 4 with respect to the image data force captured by the imaging device 2.
  • Code data portion 102 constituting the code data, and a plurality of corner cells 104 4a, 104b, 104c, 104d arranged so as to surround the code data portion 102 (hereinafter collectively referred to as “corner cell 104”) Called).
  • the code data portion 102 and the corner cell 104 exist in the code portion 110 in the two-dimensional code.
  • the reference cell 100, the square cell 106, and the corner cell 104 are each configured to have a predetermined shape.
  • each cell is filled in black.
  • an area 108 is configured by connecting a plurality of rectangular cells 106, and constitutes code data together with other rectangular cells 106.
  • the square cells 106 have the same shape, here a square shape.
  • the arrangement and size of the reference cell 100 and the corner cell 104 are the same, and the game card 4 is uniquely identified by the arrangement of the rectangular cells 106 in the code data portion 102. can do.
  • the reference cell 100 has 7 horizontal long sides of 1.5 blocks. It is configured as a rectangular cell (element) formed by the short side of the block in the vertical direction. In the embodiment, a square area formed by one vertical block and one horizontal block is called a block area.
  • the code data portion 102 is formed in an area surrounded by 7 blocks ⁇ 7 blocks. One side of this region is parallel to the long side of the reference cell 100 and is arranged at a position one block away from the long side.
  • the code part 110 is an area surrounded by 8 blocks ⁇ 8 blocks, and the code data part 102 is included in the area where the code part 110 is formed.
  • the corner cell 104a is disposed in the upper left corner area of the code portion 110.
  • the area at the upper left corner may be within the range of the area of 2 blocks X 2 blocks at the upper left corner of the area surrounded by 7 blocks X 7 blocks as the code data portion 102, or may extend beyond the range.
  • the corner cell 104a is arranged to protrude 0.5 blocks vertically and 0.5 blocks horizontally from the area of 2 blocks X 2 blocks in the upper left corner of the code data portion 102. That is, the corner cell 104a is present in the upper left corner area surrounded by 2.5 blocks X 2.5 blocks in the code part 110.
  • each corner cell 104 is formed in a square shape, specifically, a square cell having a length of 1.5 blocks on one side.
  • the code data portion 102 if one block area is 1 bit, information of 33 bits in total can be encoded. Of these 33 bits, 9 bits constitute check data to confirm that the code data is correct. Therefore, the code data portion 102 is encoded with 24 bits of information.
  • the square cell 106 is an important element that expresses code data, and the image analysis apparatus 2 The image needs to be recognized correctly at 0. For that purpose, it is ideal to make all the square cells 106 large, but it is natural that the size of the game card 4 is limited. As a result, the number of rectangular cells 106 constituting 102 is reduced. This is equivalent to reducing the number of bits of information and is not preferable.
  • the corner cell 104 is configured to have a larger area than the rectangular cell 106.
  • the four corner cells 104 are used to detect the code data portion 102. In other words, if the corner cell 104 at the four corners cannot be detected, then the square cell 106 cannot be detected. Therefore, in this two-dimensional code, the corner cell 104 must first be recognized more reliably than the square cell 106. is there. By forming the four corner cell 104 larger than the square cell 106, the recognition rate of the four corner cell 104 can be increased.
  • the image analysis apparatus 20 extracts candidates for the reference cell 100 in the frame image, assumes a reference cell 100 that satisfies a predetermined criterion, and has four corner cells in the vicinity of the assumed reference cell 100. It is determined whether 104 exists! /. When the four corner cells 104 are recognized, the image analysis apparatus 20 reads the area surrounded by the four corner cells 104, that is, the arrangement of the rectangular cells 106 in the code data portion 102, and acquires code data. Thereby, it is determined that the assumed reference cell 100 is the true reference cell 100, and the game card 4 can be recognized. The image analysis device 20 calculates and obtains the position and direction of the game card 4 in the virtual three-dimensional coordinate system with the imaging device 2 as a reference (origin).
  • FIG. 3 shows a configuration of the image analysis apparatus.
  • the image analysis device 20 includes a frame image acquisition unit 40, a real object extraction unit 42, and a state determination unit 44.
  • the real object extraction unit 42 includes a binarization processing unit 50, a reference cell detection unit 52, a code unit detection unit 54, and a verification processing unit 56.
  • the processing function of the image analysis device 20 in the present embodiment is realized by a CPU, a memory, a program loaded in the memory, and the like, and here, a configuration realized by cooperation thereof is illustrated.
  • the program may be built in the image analysis device 20 or supplied externally in a form stored in a recording medium. So this is Those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.
  • the image analysis apparatus 20 functions as a CPU power frame image acquisition unit 40, a real object extraction unit 42, and a state determination unit 44.
  • the frame image acquisition unit 40 acquires a frame image of a real space imaged by the imaging device 2.
  • the imaging device 2 periodically acquires frame images, and preferably generates frame images at 1Z60 second intervals.
  • the real object extraction unit 42 extracts a frame image power real object image, that is, an image of the game card 4.
  • the binarization processing unit 50 converts the frame image into a binary bit representation, and expresses the frame image information by turning the bit on and off.
  • the reference cell detection unit 52 detects the reference cell 100 from the binarized data of the frame image.
  • the code part detecting unit 54 force detects the code part 110 based on the position of the reference cell 100, and the verification processing part 56 performs the verification process of the code data included in the code part 110.
  • the state determination unit 44 determines the state of the real object in the set coordinate system, and specifically determines the position and direction of the game card 4 and the distance from the imaging device 2.
  • the position information, the direction information, and the distance information determined by the state determination unit 44 are respectively associated with code data acquired from the two-dimensional code and sent to the game apparatus 30. If a plurality of game cards 4 exist in the imaging area 5, position information, direction information, distance information, and code data are associated with each game force 4 and sent to the game device 30. It is done.
  • the frame image itself is also sent to the game device 30 in order to display the frame image captured by the imaging device 2 on the display 7.
  • the game device 30 reads out the character associated with the code data, and displays the game card 4 and the character superimposed in the three-dimensional virtual space.
  • FIG. 4 is a flowchart showing a processing procedure for recognition processing of a two-dimensional code.
  • the two-dimensional code is picked up by the image pickup device 2 and acquired by the image data force frame image acquisition unit 40 for one frame obtained as a result.
  • the binarization processing unit 50 performs binarization processing on the image data (S10).
  • an image that has a brightness greater than a predetermined threshold is stored.
  • the pixel value of the prime is "0" and the pixel is white for display.
  • the pixel whose pixel value is "encoded” is referred to as a white pixel. .
  • the pixel value of the pixel holding the luminance value below the threshold value is encoded as “1 ⁇ , and the pixel is black on the display.
  • the binarized processing unit 50 collects the areas where the black pixels are continuously present as one connected area, and extracts the plurality of extracted black pixel connected areas.
  • the number is set (labeled) in ascending order from 1 (S 12), for example, the labeling number may be set in the order extracted as the connected region, that is, in the specified order.
  • RAM 2 (not shown) When the 2D code shown in Fig. 2 is used, since the corner cell 104 is displayed larger than the square cell 106, the probability that the corner cell 104 can be detected as a black pixel connection region and Coordinate position precision It can be increased.
  • the reference cell detection unit 52 displays the position on the display of the recognized two-dimensional code, for example, the center point of the reference cell 100 It is determined whether or not it is stored in the RAM (S14). When the center point of the reference cell 100 in the previous frame is stored in the RAM (Y in S14), the stored position is set as the start point of the reference cell detection process (S16). If V and the reference cell 100 are detected in the previous image frame !, then the position of the game power mode 4 has changed greatly in the current image frame! /! Therefore, by using the center point of the reference cell 100 of the previous frame, the reference cell 100 can be efficiently detected in the current frame.
  • the reference cell detection unit 52 sets the center point on the display of the display 7 as the start point of the reference cell detection process ( S18). After setting the starting point, the reference cell detection unit 52 executes the detection process of the reference cell 100 (S20).
  • FIG. 5 is a flowchart showing reference cell detection processing. Note that the number of pixels shown in this flow depends on the resolution of the imaging device 2, and the number of pixels is shown here as an example for easy understanding.
  • the reference cell detection unit 52 reads the total number M of black pixel connected regions labeled in S12 of FIG. 4, and initializes the counter value j to 1 (S100).
  • S100 the counter value j to 1
  • a black pixel connected region is searched along the trace of the counterclockwise spiral on the screen of FIG. 7 and the black pixel connected region detected first is selected as a reference cell candidate region (S102).
  • the reference cell detection unit 52 extracts the edge portion of the selected reference cell candidate region, and determines the short side and the long side (S104).
  • the reference cell detection unit 52 determines whether or not the short side includes a predetermined number of pixels, for example, 20 pixels or more (S106).
  • the short side is 1.5 blocks long, but if the short side is a reference cell 100 consisting of fewer than 20 pixels, the length of one block is even smaller. Pixel power will also be constructed. Therefore, one side of the rectangular cell 106, which is the smallest component in the two-dimensional code, is about 13 pixels or less, and the imaging device 2 cannot capture images appropriately. Therefore, if it is determined that the short side is composed of fewer than 20 pixels (N in S106), it is determined that the black pixel connected region selected in S102 is not the reference cell 100. And go to S116.
  • the reference cell detection unit 52 determines that the long side of the reference cell candidate region has a predetermined number of pixels, for example, 300 pixels It is determined whether the pixel is composed of the following pixels (S108). For example, if the reference cell 100 is composed of more than 300 pixels on the long side, the length of one block, which is calculated at a ratio of 1 to 7 on the long side, becomes large. The imaging device 2 cannot capture the lower right corner cell 104c and the lower left corner cell 104d located 8.5 blocks apart from the cell 100. Therefore, if it is determined that the long side is composed of more than 300 pixels (N in S108), the black pixel connected region selected in S102 is not the reference cell 100! / ⁇ And I will cut half IJ and proceed to S116.
  • the reference cell detection unit 52 determines that the total number of black pixels in the reference cell candidate region is 20 pixels or more and It is determined whether it is less than 1500 pixels (S110).
  • the total number of black pixels is less than 20 pixels (N in S110)
  • the same problem occurs as when the short side is composed of less than 20 pixels, and when the total number is 1500 pixels or more (S110 N)
  • S110 N the same problem occurs when the long side is composed of more than 300 pixels. Therefore, in these cases, it is determined that the possibility that the reference cell candidate area is the reference cell 100 is small, and the process proceeds to S116.
  • the reference cell detection unit 52 determines the squareness of the reference cell candidate region (S112) As described in Patent Document 1 described above, the zero squareness is obtained based on the moment of the reference cell candidate region. When it is determined that it is not a square (N in S112), it is determined that the reference cell candidate area is not the reference cell 100, and the process proceeds to S116. When it is determined that the pixel is a square (Y in S112), the reference cell detection unit 52 sets the reference cell candidate region as the reference cell 100 (S114), and the black pixel concatenated region set as the reference cell candidate region. Store the labeling number in RAM.
  • the reference cell 100 can be detected. If the image data includes one game card 4 and the power is not included, the reference cell detection process ends when the reference cell 100 is detected. On the other hand, if there is a possibility that a plurality of game cards 4 are included, the process proceeds to S116.
  • the reference cell detection unit 52 determines whether or not the count value j is equal to the total number M of reference cell candidate areas (S116). If the count value j has not reached the total number M (N in S116), the count value j is incremented by 1 (S118), and the process returns to the step of S102. On the other hand, when the count value j reaches the total number M (Y in S116), this reference cell detection process is terminated.
  • FIG. 6 is a flowchart showing the code portion detection process.
  • the code part detection unit 54 reads the total number N of reference cells 100 set in S114 of FIG. 5, and initializes the counter value k to 1 (S200). Note that the reference cells 100 set in S114 are numbered in the set order. Subsequently, the total number M of black pixel linked regions labeled in S12 of FIG. 4 is read, and the counter value j is initialized to 1 (S202).
  • the code part detection unit 54 detects the black pixel connected region having the number corresponding to the count value j, and selects it as the corner cell candidate region in the lower left corner (S204).
  • the code portion detection unit 54 selects the lower left corner cell candidate region force of S2 in FIG. It is determined whether or not the force exists within the search range preset for the reference cell 100 of the number corresponding to the count value k detected at 0 (S206). Since the positional relationship between the reference cell 100 and the corner cell 104d in the lower left corner is predetermined as shown in Fig. 2, it is possible to narrow down the search range for the lower left corner cell from the coordinate data of the reference cell 100 It is. Since reference cell 100 has a horizontally long rectangular shape, it is possible to set a search range at two positions facing each other across the long side.
  • the black pixel connection region is not the lower left corner cell 104d, and the process proceeds to S232. If it exists within the search range (Y in S206), the black pixel connection region is set as the lower left corner cell 104d (S208).
  • the code portion detection unit 54 After setting the lower left corner cell 104, the code portion detection unit 54 initializes the value 1 of another counter that counts the number of the black pixel connection region to 1 (S210). Code detector 5
  • the code portion detection unit 54 calculates the ratio of the number of pixels (area) of the lower left corner cell 104d set in S208 to the number of pixels (area) of the lower right corner cell candidate region selected in S212. Then, it is determined whether the ratio (area ratio) is, for example, 1Z6 or more or 6 times or less (S214).
  • the ratio (area ratio) is, for example, 1Z6 or more or 6 times or less (S214).
  • the ratio (area ratio) is, for example, 1Z6 or more or 6 times or less (S214).
  • the ratio area ratio
  • the ratio of the lower left corner cell to the lower right corner cell is smaller than 1Z6 or larger than 6 times (N in S214) cannot normally be assumed. Cannot be considered a corner cell in, go to S226.
  • the code part detection unit 54 calculates the center point of the lower left corner cell 104d and the lower right corner cell candidate area selected in S212. It is determined whether the distance between the center points satisfies a predetermined condition (S216).
  • the predetermined condition may be that the distance between the center points approximates the length of the long side of the reference cell 100, for example. If the prescribed conditions are not met (N in S216), proceed to S226, When the predetermined condition is satisfied (Y in S216), the code portion detection unit 54 sets the black pixel connection region as the lower right corner cell 104c (S218).
  • the code unit detection unit 54 force sets the reference cell 100, the lower left corner cell 104d, the lower right corner cell 104c, and the display 7 screen. Affine transformation is performed in the X-axis direction and Y-axis direction (S220). Note that the length of one block is calculated based on the length of the long side or the short side of the reference cell 100 set in S20.
  • the code part detection unit 54 maps the black pixel connection area included in the area of the code part 110 as a cell from the image obtained by the affine transformation, and generates a code map (S222).
  • the code part detection unit 54 detects the corner cells 104 at the four corners of the generated code map cells, and determines whether or not the surrounding three block regions are white pixels ( S2 24). If the three block areas around the corner cell 104 are composed of white pixels (Y in S224), the code map is set as the code part 110 of the two-dimensional code (S230), and the process proceeds to S236. If the three block areas around the corner cell 104 are not white pixels, the process proceeds to S226.
  • S236 it is determined whether or not the count value k is equal to the set total number N of reference cells 100. If the count value k is not equal to N (N in S236), the count value k is incremented by 1. (S238), return to S202. This makes it possible to search for a plurality of two-dimensional codes in image data. When the count value k becomes equal to N (Y in S236), the detection process of the code unit 110 is completed as described above.
  • FIG. 7 is a flowchart showing a code data verification process.
  • 9-bit check data generated by a predetermined algorithm and 24-bit information data exist in 33-bit code data.
  • the check data is used to generate code data.
  • the code data is verified by generating code data check data based on the check data generated by a predetermined algorithm and collating it.
  • the verification processing unit 56 initializes the reference value calculated in the subsequent steps S304 and S308 to 1 as a counter value p that counts the number of shifts to the right by 1 bit (S3). 00).
  • the verification processing unit 56 calculates code data and check data values from the code map of the code unit 110 (S302).
  • the verification processing unit 56 performs an exclusive OR operation between the calculated code data value (bitstream) and OxFFFFFF (S304), and uses the obtained value (bitstream) as a reference value ( Reference bit stream). It is determined whether or not “1” is set in the LSB (Least Significant Bit) of the reference bitstream (S306), and ⁇ 1 is set to be! /, N! / (N in S306) ), The verification processing unit 56 performs an exclusive OR operation on the reference value (reference bitstream) and 0x8408 (S308), and the obtained value (bitstream) is used as a new reference value (reference value). Bit stream), and go to S310, if “1” is applied to LSB! /, (Y in S306), go to S3 10 in the same way.
  • a logical product operation of the calculated bitstream and OxlFF is performed (S316).
  • the verification processing unit 56 determines whether or not the value obtained from the logical product operation is equal to the calculated check data value (S318), and if it is determined to be equal (Y in S3 18), it is detected in S24 in FIG.
  • Code part 110 force Putter suitable as a two-dimensional code The code part 110 of the two-dimensional code is determined (S320). If it is not equal to the check code (N in S318), it is determined that there is an error in reading the code part 110, and the code data verification process is terminated. Note that FIG. 7 shows only the verification process of one code part 110. When a plurality of code parts 110 are detected, this verification process is executed for each.
  • the angle of view of the imaging device 2 the screen resolution, the screen coordinate positions of the four corner cells 104, and the actual corner cells 104 Use the distance.
  • the screen is a screen of the display 7 that displays an image picked up by the image pickup device 2.
  • the viewpoint power is also determined as the distance to the screen projection surface.
  • the viewpoint power and the distance to the screen projection surface are obtained from the angle of view of the camera and the screen resolution.
  • Corner cell screen coordinate position SX, SY
  • V (SX, SY, P)
  • the screen coordinate position has the origin at the center of the screen.
  • Normal vector of the plane formed by the viewpoint and corner cells 104a and 104b S12 Normal vector of the plane formed by the viewpoint and corner cells 104b and 104c: S23 Normal vector of the plane formed by the viewpoint and corner cells 104c and 104d: S34 If the normal vector of the plane formed by the viewpoint and the corner cells 104d and 104a is S41, the following formula is established.
  • the direction (coordinate axis) of the game card 4 in the three dimensions is obtained. Based on the four normal vectors found in step 3, the card's coordinate axes are found.
  • VX S12 X S34
  • VZ S23 X S41
  • VY VZ XVX
  • the position of the game card 4 on the 3D is obtained.
  • step 4 if the distance between the corners of the actual reality cell is determined, the card position can be easily obtained. If the three-dimensional coordinate position of the corner cell 104a is expressed as a variable, the three-dimensional coordinate positions of the corner cells 104b, 104c, and 104d can be expressed using the variable. Since the screen coordinate positions of the four corner cells are known, the three-dimensional coordinate position of the game card 4 can be specified by solving the simultaneous equations of these calculations.
  • the recognition rate of the corner cell 104 in the code portion 110 can be increased, and the corner in the two-dimensional coordinate system can be increased.
  • the coordinate position of the cell 104 can be accurately obtained. Specifically, by forming the corner cell 104 large, the center position of the corner cell 104 can be accurately obtained, so that the position of the game card 4 can be accurately identified.
  • accurately determining the center positions of the plurality of corner cells 104 it is possible to accurately grasp the positional relationship between the reference cell 100 and the corner cell 104, and to improve the accuracy of the affine transformation. It is possible to accurately identify the position and the direction in which the game card 4 is facing.
  • FIG. 8 shows another example of the two-dimensional code printed on the surface of the game card.
  • a reference cell 100 and a code portion 110 having a predetermined shape are arranged on the surface of the game card 4.
  • a plurality of corner cells 104a, 104b, 104c, 104d surrounding the code data portion 102 are formed in a circle.
  • the two-dimensional coordinate position of the corner cell 104 is specified by the center point of the corner cell 104. Since the corner cell 104 has a round shape, the shape of the corner cell 104 imaged by the imaging device 2 does not change regardless of the orientation of the game card 4 with respect to the imaging device 2.
  • the center point of the corner cell 104 does not change depending on the orientation with respect to the imaging device 2, and therefore, the center point can be acquired stably.
  • the position information, direction information, and distance information of the game card 4 are It can be obtained accurately.
  • the square cell 106 may be formed in a round shape.
  • the corner cell 104 is simply circular, it is possible to determine the coordinate position of the corner cell 104 with higher accuracy by forming it larger than the rectangular cell 106. It becomes.
  • FIG. 9 shows still another example of the two-dimensional code printed on the surface of the game card.
  • a reference cell 100 and a code part 110 are arranged on the surface of the game card 4.
  • the reference cell 100 having a predetermined shape, a plurality of rectangular cells 106 constituting the code data by arranging each two-dimensionally, code data
  • At least one cell force of the plurality of corner cells 104 arranged so as to surround the region of the portion 102 can be colored differently from other cells. For example, red may be assigned to the reference cell 100, green may be assigned to the square cell 106, blue may be assigned to the corner cell 104, and different colors may be assigned to the respective cells.
  • the color assigned here is not necessarily required to be visible to the human eye as long as it is a color that can be captured by the imaging apparatus 2 and can be binary-coded with a predetermined luminance threshold as a reference. If the imaging characteristics of the imaging device 2 to be used are preliminarily divided, the cells may be colored according to the characteristics.
  • the two-dimensional code recognition process of the present embodiment it is necessary to detect the reference cell 100 first, as shown in S20 of FIG. Among the entire two-dimensional code recognition processes, the load of the reference cell detection process is high. Therefore, it is preferable that the reference cell 100 can be efficiently extracted from the image data. Therefore, it is preferable that at least the reference cell 100 among the plurality of types of cells is colored differently from the rectangular cell 106 and the corner cell 104.
  • RGB color filter is arranged in front of the light receiving surface of the image pickup apparatus 2, and for each frame image, each RGB pixel value is recorded as data expressed in 256 gradations.
  • the binarization processing unit 50 has a function of setting a range of RGB pixel values for binarization processing.
  • the binarization processing unit 50 sets the range of RGB pixel values for the reference cell.
  • the binarization processing unit 50 has a red (R) pixel value range of 200 to 255, a green (G) pixel value range of 0 to 100, and a blue (B) pixel value range of 0 to Set to 100.
  • the binarization processing unit 50 uses the RGB composite pixels within this range. Is extracted, and its pixel value is encoded by 1 bit. For example, the pixel value of a composite pixel having an R pixel value of 225, a G pixel value of 30, and a negative pixel value of 50 is set to 1 and the color as a binary image is set to black. On the other hand, the pixel value of a composite pixel that is not within these ranges is encoded with a value of “0”, and the color of the binary image is set to white.
  • the pixels to be extracted as black pixels are the specific color in the image data, here red. The number of extracted noises can be reduced, and the reference cell detection unit 52 can shorten the time for detecting the reference cell 100 from the binarized data of the frame image.
  • the reference cell Since the pixel value is affected by the color filter characteristics, in order to set the range of the pixel value in consideration of the color filter characteristics, the reference cell is placed with the game card 4 placed on the table 3. One hundred red pixel values may be examined. As a result, the RGB pixel value of the reference cell 100 acquired in the imaging device 2 can be specified, and detection is performed by performing binary key processing within a range in which a slight margin is given to the specified pixel value. It is possible to dramatically reduce the number of black pixel connection regions. In particular, in the game system 1, since it is preferable to perform processing in real time, there is a great merit that the reference cell 100 can be efficiently extracted.
  • the binarization processing unit 50 sets a range of RGB pixel values for the corner cell in S10 of FIG. For example, the binarization processing unit 50 sets the red (R) pixel value range from 0 to 100, the green (G) pixel value range from 0 to 100, and the blue (B) pixel value range from 200 to 200. Set to 255. Based on this setting, the binarization processing unit 50 extracts RGB composite pixels within this range, and encodes the pixel values as “one pixel.
  • the R pixel value is 20
  • the G pixel value is The pixel value of a composite pixel with a B of 30 and a B pixel value of 240 is signed as “1”, and the color of the binary image is set to black.
  • the pixel value of a composite pixel whose RGB pixel value is not within these ranges is encoded as “0 ⁇ ”, and the color as a binary image is set to white.
  • the connected area that becomes the black pixel in the binary image is labeled. Can be belled.
  • the code portion detection unit 54 performs the binary label processing for converting a strong blue image into a black image, and then labels the black pixel connection region in S12.
  • the number of noises to be extracted can be reduced by limiting the pixels to be extracted as black pixels to a specific color in the image data, in this case, blue, and the code part detector 54 can detect the binary image data of the frame image. Moreover, the time for detecting the corner cell 104 can be shortened. If the square cell 106 is green, the binary image processing that converts a strong green image into a black image is performed in S10 in FIG. 4 and then labeled as a black pixel connection region in S12. This is used for the code map generation process of S222. When three types of cells are colored differently, the number of times binary processing is performed increases, but the amount of processing to search for connected regions after binarization processing is greatly reduced, so the whole Efficient efficiency can be realized.
  • the two-dimensional code shown in FIG. 9 has colored cells, and the colored cells may be formed large or may be formed round as shown in FIG.
  • FIG. 10 shows still another example of the two-dimensional code printed on the surface of the game card.
  • a reference cell 100 and a cord part 110 are arranged on the surface of the game card 4.
  • the two-dimensional code shown in FIG. 10 is one embodiment of the two-dimensional code shown in FIG.
  • the two-dimensional code shown in FIG. 10 is arranged so as to surround a reference cell 100 having a predetermined shape, a plurality of rectangular cells 106 constituting the code data by arranging each two-dimensionally, and a code data portion 102.
  • a plurality of corner cells 104 are provided.
  • the four corner cells 104a, 104b, 104c, 104d are all colored in the same color as the force reference cell 100 and the square cell 106.
  • the corner cell 104 is provided up to the side edge of the game card 4. Since the corner cell 104 is arranged near the four corners of the game card 4 and is formed larger than the rectangular cell 106, the four corner cells 104 are conspicuous in the game card 4. Originally, the corner cell 104 is provided in order to specify the location of the square cell 106, but aesthetics are also important as long as it is used as the game card 4. Therefore, frame edge 107 that borders game card 4 is positioned at corner cell 104. Therefore, the corner cell 104 is designed to have a design by being bent inward so as to surround the corner cell 104 and changing the design.
  • the corner cell 104 When the corner cell 104 is provided on the side edge of the game card 4 as described above, it is preferable that the corner cell 104 be colored other than black. If black is assigned, the shadow generated on the edge of the game card 4 may be converted as black pixels when the game card 4 is picked up by the image pickup device 2 and subjected to binary key processing. It is assumed that the two corner cells 104 converted into are connected by the shadow of the edge of the game card 4. When two corner cells 104 are connected by binarization processing, it is difficult to separate the two corner cells 104 from the connected black pixels.
  • the edge of the game card 4 It is possible to avoid the situation where the corner cell 104 is connected by the shadow.
  • the corner cell 104 is provided up to the side edge of the game card 4, it is possible to appropriately extract the corner cell 104 by assigning a color other than the shadow color, that is, a color other than black. Become.
  • the corner cell 104 is configured in a triangular shape. This shape may be an equilateral triangle. By making the corner cell 104 an equilateral triangle, the recognition accuracy of the corner cell 104 can be improved.
  • FIG. 11A to FIG. 11C are explanatory diagrams for explaining a method of determining whether or not the acquired black pixel is the corner cell 104.
  • the corner cell 104 is discriminated based on the connected area of black pixels after binarizing the frame image. Since the binarized frame image is expressed on the two-dimensional XY coordinates, it is possible to determine whether or not the connected area is a corner cell 104 by using the coordinate value of the connected area.
  • FIG. 11 (a) shows an example of a connected region extracted from a frame image.
  • the width in the X-axis direction is H
  • the width in the Y-axis direction is V. This width is counted by the number of pixels on the two-dimensional coordinates. If the number of pixels in the connected area 109a is C, whether or not the connected area 109a is a candidate for the corner cell 104 is determined by the following equation. a X H X V ⁇ C ⁇ j8 ⁇ ⁇ X V ( ⁇ ⁇ ⁇ 1)
  • is 0.3 and j8 is 0.7. If the number of pixels in the connected area 109a satisfies the above equation, the connected area 109a may be determined as a candidate for the corner cell 104. Of course, the values of the constants a and j8 may be set to other values.
  • FIG. 11 (b) shows another example of the connected region extracted from the frame image. Whether or not this connected area 109b is a candidate for the corner cell 104 is similarly determined by the following equation.
  • the number of pixels in this connection area 109b is C
  • the width in the X-axis direction is H
  • the width in the Y-axis direction is V.
  • FIGS. 11A and 11B each satisfy the discriminant and are examples in which it is determined that the corner cell 104 is a candidate.
  • the game card 4 may be placed in the imaging region 5 at various angles. By using it, the triangular corner cell 104 can be properly recognized.
  • FIG. 11 (c) shows still another example of the connected region extracted from the frame image.
  • the number of pixels C in the connected area 109c is calculated from a X H (width in the X-axis direction) X V (width in the vertical axis direction).
  • connection region 109c shown in FIG.
  • the shape of the corner cell 104 by making the shape of the corner cell 104 a triangle, candidates for the corner cell 104 can be easily extracted using the coordinate values on the two-dimensional coordinates.
  • the corner cell 104 has an equilateral triangle shape, the direction dependency in the determination by the above discriminant can be reduced compared to other triangular shapes, so that the recognition accuracy of the corner cell 104 can be further increased. it can.
  • FIG. 12 shows still another example of the two-dimensional code printed on the surface of the game card.
  • the corner cell 104 is provided from the side edge of the game card 4 as in the case of the game card 4 shown in FIG.
  • the corner cell 104 is formed in a triangular shape and is colored differently from the reference cell 100 and the code data portions 102a and 102b.
  • the area where the rectangular cell 106 is provided is separated into two.
  • the two code data portions 102a and 102b are arranged at portions other than the region surrounded by the four corner cells 104a, 104b, 104c and 104d.
  • the code data portion 10 2a is formed between the reference cell 100 and the upper edge of the game card 4, and the code data portion 102b is between the line connecting the corner cells 104c and 104d and the lower edge of the game card 4. Formed.
  • the line connecting the corner cells 104c and 104d is a line connecting triangle vertices facing inward of the card.
  • Each of the code data portions 102a and 102b can record 12 bits of information, and thus can hold a total amount of information of 24 bits. It should be noted that the code data portion 102b arranged below the game card 4 is not continuously colored in a predetermined bit length, for example, 3 bits or more in order to prevent being mistakenly recognized as the reference cell 100. I want to do it!
  • the reference cell 100 and the lower left and lower right corner cells 104d and 104c have already been detected. Portions 102a and 102b can be easily detected. That is, the code data portion 102a exists on the opposite side of the corner cells 104c and 104d with respect to the reference cell 100, and the code data portion 102b exists on the opposite side of the reference cell 100 with respect to the corner cells 104c and 104d. .
  • the search efficiency of the code data portion 102 can be improved.
  • the code data portions 102a and 102b are The force code data portions 102a and 102b showing a two separate arrangement may be arranged adjacent to each other. That is, the code data portions 102a and 102b may be arranged between the reference cell 100 and the upper edge of the game card 4, or may be arranged between the corner cells 104d and 104c and the lower edge of the game card 4. .
  • a game mat may be placed on the power table 3 that moves the game card 4 on the table 3, and the game card 4 may be powered on the game mat.
  • FIG. 13 shows a game mat for placing game cards.
  • game mat 300 is placed on table 3 so as to enter imaging region 5 of imaging device 2. It is preferable that the game mat 300 is made of a soft material such as felt cloth and can be rolled up into a container and stored when not in use.
  • the game mat 300 is configured according to the game application, and each cell 302 forms a section in which the game card 4 is placed.
  • the image analysis device 20 identifies the square 302 placed and recognizes the two-dimensional code of the game card 4. 1S You may develop a game story according to the arranged squares.
  • the number of force cells 302 on which 3 ⁇ 3 cells 302 are formed is not limited to this.
  • a square area in which a square 302 is formed forms a play area 306.
  • the game mat 300 does not need to be arranged so that the entire game mat 300 enters the imaging region 5, but at least the play area 306 needs to enter the imaging region 5. Note that in the game application in which the game card 4 may be moved freely, the mass 302 may not be formed.
  • gradation area 310 whose brightness changes in stages at the four corners of the play area 306 (hereinafter collectively referred to as "gradation area 310")
  • a color has three attributes: Hue, Lightness, and Saturation.
  • the gradient area 310 is composed by changing the lightness of one hue. It is not necessary to change the saturation.
  • the outer edge of the gradation region 310 is circular, and the brightness changes in a concentric manner from high brightness to low brightness in a directional direction from the center of the gradation area 310 to the outer edge.
  • FIG 14 shows the appearance of the gradation area.
  • the gradation area 310 is composed of one hue, and the brightness is gradually changed in the hue.
  • Hue represents the difference in shades of red, green, and blue
  • lightness represents the difference in brightness.
  • the gradation region 310 has a hue, that is, is represented by a chromatic color. It should be noted that although there is no hue in achromatic colors such as white, black, and gray, the gradation region 310 can be configured by changing the brightness in steps of white to black.
  • the difference in brightness in the gradation area 310 is acquired as a difference in brightness when digitized through the RGB filter.
  • the brightness of the center 314 where the brightness of the outer edge 312 of the gradation area 310 is low is set high. That is, the gradation region 310 is configured to have a chromatic region where the outside is dark and the inside is white.
  • the four gradation areas 310 may be composed of all four colors, but can be used as an index for determining the orientation of the game mat 300 by changing at least one color.
  • the three gradation areas 310a, 310b, and 310c may be configured with the same hue, and one gradation area 310d may be configured with another hue.
  • the position of the gradation area 310d with respect to the gradation areas 310a, 310b, 310c is known, and therefore the orientation of the game mat 300 can be specified.
  • the position, direction, and direction of the game mat 300 are determined in the same manner as the method for obtaining the position and direction of the game card 4 in the virtual three-dimensional coordinate system described above. Geometric information such as distance can be calculated. By knowing the position and direction of the game mat 300 in advance, the game card 4 placed in the play area 306 can be recognized more efficiently.
  • FIG. 1 when using the power game mat 300 that explains that the frame image captured by the imaging device 2 is displayed on the display 7 and the character is superimposed on the game card 4.
  • the geometric information of the game mat 300 is acquired and displayed on the display 7. For example, a background image of a battle using the game card 4 may be superimposed on the game mat 300 in the frame image.
  • the game mat 300 used for efficiently recognizing the game card 4 can be displayed on the display 7 as it is, it is possible to superimpose a background image or the like so that it is possible to improve the production effect. .
  • the gradation area 310 further determines a threshold value of RGB pixel values when the image of the reference cell 100, the corner cell 104, and / or the rectangular cell 106 of the game card 4 is binarized and extracted. Used for example, it is assumed that the hue of the corner cell 104 is green and has a predetermined brightness. At this time, the hue of the gradation area 310 is set to green, and an area having the same brightness as the corner cell 104 is formed in a part of the gradation. Therefore, the cell brightness area 316 having the same brightness as the corner cell 104 is set at a predetermined position between the center 314 of the gradation area 310 and the outer edge 312.
  • the cell brightness region 316 is concentrically formed at a midpoint between the center 314 and the outer edge 312. Therefore, in the radial direction of the gradation area 310, an area having a higher brightness than the cell brightness area 316 is provided between the cell brightness area 316 and the center 314, and a cell between the cell brightness area 316 and the outer edge 312 is provided. A region having a lower lightness than the lightness region 316 is provided.
  • Corner cell 104 and cell brightness area 316 of gradation area 310 have the same hue
  • the binarization processing unit 50 sets a range of RGB pixel values for binarization processing. Ideally, if the pixel values of the corner cell 104 are previously divided, the binarization processing unit 50 It is preferable that the threshold value is set in the vicinity of the pixel value of the corner cell 104 and the range is set so as not to extract a pixel value lower than the corner cell 104 (that is, having a high brightness) as much as possible.
  • the binarization processing unit 50 can extract the corner cell 104 by setting the G pixel value range from 120 to 255, for example, by setting the threshold value to 120, and the G pixel value is 120. Images less than 5 can be converted to "0" by binary key processing. By narrowing the G pixel value range during binarization, other noise can be reduced. [0107] However, in an actual environment, the corner cell 104 acquired by the imaging apparatus 2 may be different from the theoretical value (127) due to lighting or sunlight. Many.
  • the “theoretical value” is a term used for convenience in describing the present embodiment, and means a pixel value that is extracted in an image data force under a reference environment.
  • the gradation value 310 is used to calibrate the pixel value range when binarizing, and the pixel value in an actual use environment that takes into account the influence of ambient light and the like. Set the range.
  • FIG. 15 shows another configuration of the image analysis apparatus.
  • the image analysis device 20 includes a frame image acquisition unit 40 and a real object extraction unit 42.
  • the real object extraction unit 42 includes a binary key processing unit 50, a region extraction unit 60, and an RGB adjustment unit 62.
  • FIG. 15 shows a configuration for calibrating a range of pixel values when binarizing.
  • the processing function of the image analysis device 20 is realized by a CPU, a memory, a program loaded in the memory, and the like, and here, a configuration realized by the cooperation thereof is depicted.
  • the program may be built in the image analysis device 20 or may be supplied with external force in a form stored in a recording medium. Therefore, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.
  • the image analysis device 20 has functions as a CPU power frame image acquisition unit 40 and a real object extraction unit 42.
  • the frame image acquisition unit 40 acquires a frame image of the real space imaged by the imaging device 2.
  • the imaging device 2 periodically acquires frame images, and preferably generates frame images at 1Z60 second intervals.
  • the frame image includes the game mat 300 and the game card 4.
  • the real object extraction unit 42 extracts the real object image with the frame image power.
  • the actual object image to be extracted is the gradation region 310 in the game mat 300.
  • the corner cell 104 is composed of green having a predetermined brightness
  • the gradation region 310 is formed as a green gradation including the predetermined brightness. .
  • the binarization processing unit 50 sets an RGB range to be binarized, and converts the frame image into a binary bit representation. Specifically, the binarization processing unit 50 extracts the G pixel value range from 120 to 255 and the R pixel value range to 0 in order to extract the gradation regions 310a, 310b, and 310c to which the green gradation is applied. Set the range of ⁇ 20, B pixel value to 0 ⁇ 20, and extract RGB composite pixels within this RGB pixel value range. The reason why the pixel value range for RB is not 0 is to consider the characteristics of the color filter. The binarization processing unit 50 extracts a composite pixel within the set RGB pixel value range, and sets the pixel value to “1”.
  • the area extraction unit 60 extracts the gradation area 310 of the game mat 300 from the binarized data of the frame image.
  • the gradation area 310 forms a gradation in which the G pixel value in the central portion is low and the G pixel value in the outer peripheral portion is high.
  • the gradation area 310 is converted to a bit representation in which the composite pixel value of the central portion is 0 and the composite pixel value of the outer peripheral portion is 1, and becomes a donut shape in which the central portion is blank. Therefore, the region extraction unit 60 detects the donut shape from the binarized data.
  • forming the gradation area 310 in a circular shape means narrowing the candidates for the gradation area 310. The benefits are high.
  • the four gradation areas 310 are arranged at the vertices of a square.
  • the ones that are related to the donut areas at the vertices of the square are extracted, and these are extracted.
  • the shape of the donut area identified as the green gradation areas 310a, 310b, 310c is sent to the RGB adjustment unit 62 for binary threshold calibration.
  • Fig. 16 (a) to Fig. 16 (c) show a donut region specified as a gradation region.
  • the G pixel value binary threshold is 120
  • the extraction range is 120-255.
  • the RGB adjustment unit 62 adjusts the range of RGB pixel values when performing binary keying in the binary key processing unit 50.
  • Figure 16 (a) shows a donut region in which the ratio of inner diameter to outer diameter is approximately 1: 2, more precisely 121: 256.
  • the gradation region 310 in which the influence of the ambient light is cut off is ideally binarized.
  • a cell brightness region 316 having the same gradation as the rectangular cell 106 exists at a point where the center and the outer edge are divided into 1: 1, and is included in the black portion of the donut region. Therefore, by setting the threshold value of the G pixel value to 120, the corner cell 104 can be preferably extracted.
  • FIG. 16 (b) shows a state where the inner diameter is very small with respect to the outer diameter of the donut region.
  • the cell brightness area 316 existing at the point where the center and the outer edge are divided into 1: 1 is included in the black part of the donut area, but even the low gradation area inside it is detected. It is.
  • the green light and the green color in the gradation region 310 may overlap, and the G component of the detection light may increase.
  • the pixel value of the donut area is detected by a value that is stronger than the theoretical value of the pixel value of the gradation area 310, and therefore, an area that is binary-coded and encoded as "1" is required. It will increase more than that.
  • the binarization processing unit 50 binarizes the image of the game power mode 4 by setting the G pixel value range to 120 to 255, the corner cell 104 can be extracted.
  • the green area lighter than the corner cell 104 is extracted in the same manner.
  • the range of pixel values for binarization should be set so that there are fewer candidates for corner cell 104. Is preferred.
  • the RGB adjustment unit 62 adjusts the gradation represented by the gradation in the gradation area 310.
  • the distribution and the position of the region where the same gradation as the corner cell 104 exists are held in advance. Therefore, when receiving the shape of the donut area shown in FIG. 16B, the RGB adjustment unit 62 determines that the set threshold value (120) is low, and determines that the threshold value needs to be increased.
  • the RGB adjustment unit 62 uses the gradation distribution in the gradation area 310 to determine the gradation area 310 at the point from the distance from the center to the inner diameter in the donut area (that is, the radius of the white area).
  • the theoretical value of G pixel value is obtained.
  • the theoretical value of the G pixel value at that point is essentially a force that takes a G pixel value lower than 120.
  • the RGB adjustment unit 62 may determine the amount of increase in the threshold value by using the difference between the theoretical value of the G pixel value on the gradation region 310 and the set threshold value 120 as an increase due to the ambient light.
  • the difference from the setting threshold 120 is 60.
  • the threshold value of the G pixel value in the binarization process is set to 180 and supplied to the binarization processing unit 50.
  • FIG. 16 (c) shows a state where the inner diameter of the donut region is larger than half of the outer diameter.
  • the cell brightness region 316 existing at the point where the center and the outer edge are divided by 1: 1 is included in the white portion of the donut region, and therefore, the cell brightness region 316 having the same gradation as the corner cell 104 is obtained. Is converted to "0" by binary key processing. For example, when the environment is very dark, the pixel value may be detected lower than the theoretical value of the gradation area 310.
  • the binarization processing unit 50 binarizes the game power mode 4 by setting the G pixel value range to 120 to 255, the corner cell 104 cannot be extracted. Therefore, it is necessary to reset the G pixel value range of the binarization process so that the cell brightness region 316 having the same pixel value as that of the corner cell 104 can be extracted by expanding the G pixel value extraction range.
  • the RGB adjustment unit 62 determines that the set threshold value (120) is strong and determines that the threshold needs to be lowered. To do. For example, the RGB adjustment unit 62 uses the gradation distribution in the gradation region 310 to determine the distance from the center to the inner diameter in the donut region (that is, the radius of the white region) at that point. The theoretical value of G pixel value in gradation area 310 is obtained. The theoretical value of the G pixel value at that point is essentially a force that takes a G pixel value higher than 120. In the donut region shown in Fig. 16 (c), the G pixel value at that point is detected as 120.
  • the RGB adjustment unit 62 may determine the difference between the theoretical value of the G pixel value on the Dara decision area 310 and the set threshold 120 as the threshold reduction amount. For example, if the theoretical value of G pixel value on the gradation area 310 at the boundary between the white area and the black area in the donut area is 180, the difference from the setting threshold 120 is 60.
  • the threshold value of the G pixel value in the binarization process is set to 60 and supplied to the binarization processing unit 50.
  • the binarization processing unit 50 receives the range of pixel values adjusted from the RGB adjustment unit 62, the binarization processing of the frame image is executed based on the range.
  • the region extraction unit 60 detects a donut region corresponding to the gradation region 310 from the binarized data, and supplies it to the RGB adjustment unit 62.
  • the RGB adjustment unit 62 adjusts the binarization processing threshold based on the donut area and feeds it back to the binarization processing unit 50.
  • the above calibration processing may be executed until the donut area is in a state as shown in FIG.
  • the gradation areas 310a, 310b, and 310c exist at three spatially different points, and due to the influence of ambient light, etc., the range of the optimum pixel value during the binary key process depending on the position thereof. May be different.
  • the threshold value for binarization may be set to a low value in accordance with the gradation area 310c. .
  • the corner cell 104 can be detected regardless of the arrangement position of the game card 4.
  • the binary threshold value is set low, so that the possibility of extracting various areas other than the corner cell 104 increases. Therefore, the optimum binary threshold value at the position of each gradation area 310 is obtained and From these three binary threshold values, a binary threshold value at an arbitrary position in the play area 306 may be derived. For example, if the binary threshold value in the gradation area 310b is Tl and the binarization threshold value in the gradation area 310c is ⁇ 2, the binary threshold value is changed from T1 on the line connecting the gradation areas 310b and 310c. It may be set to change linearly up to T2.
  • the binary threshold value at each position may be calculated according to the distance from the three binary threshold values. This makes it possible to recognize the code appropriately even when the lighting environment differs depending on the card position, such as when the lighting is close, and the code color to be photographed varies greatly.
  • the calibration process of the present embodiment is preferably performed periodically. If there is no change in the environment, the need for frequent calibration processing is not high.Therefore, a separate sensor is provided to detect the change in the environment, and the change in the environment is detected by that sensor. Calibration processing may be performed.
  • the environment changes include when the game mat 300 is powered and when the brightness of external lighting changes.
  • the binarization threshold value may be corrected based on the difference between the actual pixel value at a predetermined position in the gradation area 310 and the measurement value obtained as a result of shooting, or the gradation area 310 may be corrected.
  • the binarization threshold value may be corrected so that the shape of the donut region when the value is binarized becomes a specific shape.
  • the binary threshold may be incremented or decremented according to the size of the donut region, and adjusted so that the shape of the donut region approaches the theoretical value.
  • the binary value may be “0”, otherwise “1”.
  • the gradation area 310 is binarized based on the size of a certain binary threshold value, the outer diameter of the gradation area 310 is grasped, and then the intermediate donut area specified by the upper and lower thresholds The actual measurement result may be obtained, and the upper and lower limits may be corrected so that the shape approaches the theoretical value.
  • the binary process may be performed after the reversal process.
  • the imaging device 2 images the game mat 300 with an oblique upward force. Even if the shape of the gradation area 310 is a perfect circle, it may be recognized as an ellipse. Even in this case, as described above, the position and direction of the game mat 300 can be grasped in advance, so the shape of the donut area that is the recognition result of the gradation area 310 based on this information. Can be corrected by affine transformation or similarity transformation, and then the calibration process described above can be performed! ,.
  • the game mat 300 is fixedly installed and the force calibration process is performed, for example, the recognition process of the gradation region 310 is performed a plurality of times to confirm that the position does not change.
  • the calibration process may be started after confirming that the position does not change by performing the recognition process again after a predetermined time.
  • the game card 4 is transferred to the game mat 300 by calculating the distance between the game mat 300 and the card game 4.
  • FIG. 17 shows an image data transmission system in the embodiment.
  • the image data transmission system 200 includes an image data generation device 201 that generates image data, a transmission station 204 that transmits image data, and a terminal device 202 that receives the transmitted image data.
  • the terminal device 202 has a display device 203 for displaying the received image data.
  • the image data transmission system 200 transmits data by wireless communication. However, the image data transmission system 200 may transmit data by wired communication.
  • the image data generation device 201 converts the above-described two-dimensional code, that is, the image data of the two-dimensional code described with reference to FIGS. 2, 8, 9, 10, and 12 into the display device 203 of the terminal device 202. It is generated according to the data format to be displayed on the screen.
  • the image data generation device 201 displays, as the two-dimensional code image data shown in FIG. 2, data for displaying a plurality of rectangular cells at predetermined coordinate positions on the display device 203, and the predetermined coordinate positions. Data for displaying a plurality of corner cells at coordinate positions surrounding a plurality of rectangular cells may be generated.
  • the image data generation device 201 is displayed on the display device 203. Set the corner cell and square cell data so that the corner cell is displayed larger than the square cell.
  • the image data generation device 201 displays data for displaying a plurality of rectangular cells at predetermined coordinate positions on the display device 203 as image data of the two-dimensional code shown in FIG. Data for displaying a plurality of corner cells at coordinate positions surrounding a plurality of rectangular cells may be generated. The image data generation device 201 sets the corner cell data so that the corner cell is displayed in a round shape.
  • the image data generation device 201 uses, as the two-dimensional code image data shown in FIG. 9, data for displaying a reference cell having a predetermined shape at a predetermined position on the display device, and the reference cell.
  • the data for displaying a plurality of polygonal cells within the range of the area defined by the user and the data for displaying a plurality of corner cells at the coordinate positions surrounding the area may be generated.
  • the image data generation device 201 sets the color of at least one of the reference cell, the polygonal cell, and the corner cell to be different from the colors of the other cells.
  • the image data generation device 201 has the same shape as the data for displaying a reference cell having a predetermined shape at a predetermined position on the display device as the image data of the two-dimensional code shown in FIGS. Data for displaying a plurality of corner cells having data and data for displaying a plurality of corner cells in a predetermined area may be generated. The image data generation device 201 sets the color of the corner cell to a color different from that of the reference cell and the polygonal cell.
  • the transmitting station 204 transmits the image data generated by the image data generating device 201 to the terminal device 202.
  • the image data is preferably compressed in a format that can be decompressed by the terminal device 202, and needs to be created in a data format that is displayed by a browser function or the like in the terminal device 202.
  • the transmission station 204 can reduce the data transmission amount by transmitting image data for each cell in association with the display coordinate position, for example.
  • the terminal device 202 displays the two-dimensional code on the display device 203. In the game system 1 in FIG. 1, the user can use the two-dimensional code displayed on the display device 203 instead of the game card 4 to be read by the imaging device 2. Thereby, even if the user does not have the game card 4, the image data is transferred to the terminal device 202. You can participate in the game system 1 by downloading.
  • the present invention can be used for an object such as a card having a two-dimensional code, a device for recognizing the two-dimensional code, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Toxicology (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Credit Cards Or The Like (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Processing Or Creating Images (AREA)

Abstract

 精度よく認識することのできる2次元コードを提供する。  2次元コードは、複数の方形セル106を2次元配置することでコードデータを構成するコードデータ部分102と、コードデータ部分102を取り囲むように配置される複数のコーナーセル104とを備える。このコーナーセル104は、方形セル106よりも大きな面積を有して構成される。この2次元コードが撮像装置により撮像されると、コーナーセル104を大きく認識できるため、2次元コードの読み取り精度を向上できる。

Description

明 細 書
物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カード ゲームシステム、画像解析装置、画像解析方法
技術分野
[0001] 本発明は、複数のセルを 2次元配置することでコードデータを表現する技術に関す る。
背景技術
[0002] 近年、 2次元コードをカメラで撮像してコードデータを認識し、そのコードデータに対 応付けられた所定の処理を実行させる技術が普及している。 1次元バーコードと比較 すると、 2次元コードの方がコードィ匕できる情報量が多ぐ現在では様々な種類の 2次 元コードが登場するようになっている。 2次元コードのコードデータは、画像データか ら効率よく且つ正確に読み取られる必要がある。このような状況をふまえて、従来、 2 次元コードの画像認識に関する技術を提案するものがある(例えば、特許文献 1参照
) o
特許文献 1 :特開 2000— 82108号公報
発明の開示
発明が解決しょうとする課題
[0003] 画像データの解像度が高ければ、 2次元コードの情報量を多く取得でき、コードデ ータの高い認識率を実現することができる。し力しながら、カメラによっては解像度の 低いものもあり、そのような場合であっても、コードデータの認識率を高めることが好ま しい。また、撮像して取得された画像データには、外部の環境光などの影響が含まれ ているため、取得した画像データを 2値ィ匕する際にその影響を考慮して、 2値化する 画素値の範囲を好適に設定することが好ましい。
本発明は、 2次元コードや、カードなどの物体を、精度よく認識することのできる技 術を提供することを目的とする。
課題を解決するための手段
[0004] 上記課題を解決するために、本発明のある態様は、複数の方形セルを 2次元配置 することでコードデータを構成するコードデータ部分と、コードデータ部分を取り囲む ように配置される複数のコーナーセルとを備え、コーナーセルは方形セルよりも大き な面積を有する物体を提供する。この物体はカードなどの 2次元的なオブジェクトで あってもよぐまた 3次元オブジェクトであってもよい。また、方形セルおよびコーナー セルは、物体上に印刷されていてもよぐまた刻印されていてもよい。これらのセルは 、撮像装置により撮像されることが可能な状態で存在すればよい。
[0005] 本発明の別の態様は、複数の方形セルを 2次元配置することでコードデータを構成 するコードデータ部分と、コードデータ部分を取り囲むように配置された複数のコーナ 一セルとを備え、コーナーセルは丸い形状を有する物体を提供する。この物体は力 ードなどの 2次元的なオブジェクトであってもよぐまた 3次元オブジェクトであってもよ い。また、方形セルおよびコーナーセルは、物体上に印刷されていてもよぐまた刻 印されていてもよい。これらのセルは、撮像装置により撮像されることが可能な状態で 存在すればよい。
[0006] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データであって、複数の方形セルを表示装置 上の所定の座標位置に表示させるためのデータと、所定の座標位置に表示される複 数の方形セルを取り囲む座標位置に複数のコーナーセルを表示させるためのデータ とを備え、コーナーセルが方形セルよりも大きく表示されるように、コーナーセルと方 形セルのデータが設定されていることを特徴とする画像データを提供する。
[0007] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データであって、複数の方形セルを表示装置 上の所定の座標位置に表示させるためのデータと、所定の座標位置に表示される複 数の方形セルを取り囲む座標位置に複数のコーナーセルを表示させるためのデータ とを備え、コーナーセルが丸い形状に表示されるように、コーナーセルのデータが設 定されて!/ゝることを特徴とする画像データを提供する。
[0008] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データを伝送する方法であって、伝送する画 像データが、複数の方形セルを表示装置上の所定の座標位置に表示させるための データと、所定の座標位置に表示される複数の方形セルを取り囲む座標位置に複数 のコーナーセルを表示させるためのデータとを備え、コーナーセルが方形セルよりも 大きく表示されるように、コーナーセルと方形セルのデータが設定されて 、ることを特 徴とする画像データ伝送方法を提供する。
[0009] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データを伝送する方法であって、伝送する画 像データが、複数の方形セルを表示装置上の所定の座標位置に表示させるための データと、所定の座標位置に表示される複数の方形セルを取り囲む座標位置に複数 のコーナーセルを表示させるためのデータとを備え、コーナーセルが丸い形状に表 示されるように、コーナーセルのデータが設定されて 、ることを特徴とする画像データ 伝送方法を提供する。
[0010] 本発明のさらに別の態様は、所定の形状を有する基準セルと、それぞれを 2次元配 置することでコードデータを構成する複数の多辺形セルと、複数の多辺形セルが 2次 元配置される領域を取り囲むように配置される複数のコーナーセルとを備え、基準セ ル、多辺开セル、コーナーセルの少なくとも一つのセルは、他のセルと異なる色を付 けられる物体を提供する。この物体はカードなどの 2次元的なオブジェクトであっても よぐまた 3次元オブジェクトであってもよい。また、方形セルおよびコーナーセルは、 物体上に印刷されていてもよぐまた刻印されていてもよい。これらのセルは、撮像装 置により撮像されることが可能な状態で存在すればよい。
[0011] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データであって、所定の形状を有する基準セ ルを表示装置上の所定の位置に表示させるためのデータと、基準セルに対して定め られる領域の範囲内で複数の多辺形セルを表示させるためのデータと、領域を取り 囲む座標位置に複数のコーナーセルを表示させるためのデータとを備え、基準セル 、多辺开セル、コーナーセルの少なくとも一つのセルの色が、他のセルの色と異なる ように設定されて ヽる画像データを提供する。
[0012] 本発明のさらに別の態様は、 2次元コードを表示装置に表示させるためのデータフ ォーマットにしたがって生成された画像データを伝送する方法であって、伝送する画 像データが、所定の形状を有する基準セルを表示装置上の所定の位置に表示させ るためのデータと、基準セルに対して定められる領域の範囲内で複数の多辺形セル を表示させるためのデータと、領域を取り囲む座標位置に複数のコーナーセルを表 示させるためのデータとを備え、基準セル、多辺形セル、コーナーセルの少なくとも 一つのセルの色が、他のセルの色と異なるように設定されて ヽる画像データ伝送方 法を提供する。
[0013] 本発明のさらに別の態様は、フレーム画像に含まれるオブジェクト画像を認識する 画像解析装置に関する。当該オブジェクト画像は、所定の形状を有する基準セルと、 基準セルとは異なる色を付けられた複数のコーナーセルとを有して構成される。この 態様の画像解析装置は、 RGBの画素値の範囲を設定して、フレーム画像を 2進数の ビット表現に変換する 2値化処理部と、フレーム画像の 2値化データから基準セルを 検出する第 1検出部と、フレーム画像の 2値化データからコーナーセルを検出する第 2検出部とを備える。 2値化処理部は、基準セル用の RGBの画素値の範囲を設定し て、設定した画素値の範囲内にある画素を抽出してフレーム画像の 2値化処理を行 い、その 2値ィ匕データをもとに第 1検出部が基準セルを検出する。また 2値化処理部 は、コーナーセル用の RGBの画素値の範囲を設定して、設定した画素値の範囲内 にある画素を抽出してフレーム画像の 2値ィ匕処理を行 、、その 2値ィ匕データをもとに 第 2検出部がコーナーセルを検出する。
[0014] 本発明のさらに別の態様は、フレーム画像に含まれるオブジェクト画像を認識する 方法に関する。当該オブジェクト画像は、所定の形状を有する基準セルと、基準セル とは異なる色を付けられた複数のコーナーセルとを有して構成される。この態様のォ ブジェクト認識方法は、基準セル用の RGBの画素値の範囲を設定し、設定した画素 値の範囲内にある画素を抽出して、フレーム画像力も基準セルを検出するステップと 、コーナーセル用の RGBの画素値の範囲を設定し、設定した画素値の範囲内にあ る画素を抽出して、フレーム画像力もコーナーセルを検出するステップとを備える。
[0015] 本発明のさらに別の態様の物体は、所定の形状を有する基準セルと、それぞれを 2 次元配置することでコードデータを構成する複数の多辺形セルと、同一形状を有す る複数のコーナーセルと、を備える。コーナーセルは、基準セルおよび多辺形セルと は異なる色を付けられる。この物体はカードなどの 2次元的なオブジェクトであっても よぐまた 3次元オブジェクトであってもよい。
[0016] 本発明のさらに別の態様のゲーム用マットは、ゲーム用カードを配置するためのゲ ーム用マットであって、段階的に明度が変化するグラデーション領域が設けられる。
[0017] 本発明のさらに別の態様は、カードゲームシステムである。このカードゲームシステ ムは、所定の色をもつセルをもつゲーム用カードと、ゲーム用カードのセルと同一の 色相の色により構成され、段階的に明度が変化するグラデーション領域を有するゲ ーム用マットと、ゲーム用マットと、ゲーム用マット上に置かれるゲーム用カードを撮像 してフレーム画像を取得する撮像部と、 RGBの画素値の範囲を設定して、フレーム 画像を 2進数のビット表現に変換する 2値化処理部と、フレーム画像の 2値化データ におけるゲーム用マットのグラデーション領域を抽出する抽出部と、グラデーション領 域の 2値ィ匕データをもとに、 2値化処理部にお 、て 2値ィ匕する際の RGBの画素値の 範囲を調整する調整部とを備える。
[0018] 本発明のさらに別の態様は、画像解析装置である。この装置は、所定の色のセルを もつゲーム用カードと、ゲーム用カードのセルと同一の色相の色により構成され、段 階的に明度が変化するグラデーション領域を有するゲーム用マットとを撮像したフレ ーム画像を解析する画像解析装置であって、 RGBの画素値の範囲を設定して、フレ ーム画像を 2進数のビット表現に変換する 2値化処理部と、フレーム画像の 2値化デ 一タカもゲーム用マットのグラデーション領域を抽出する抽出部と、グラデーション領 域の 2値ィ匕データをもとに、 2値化処理部にお 、て 2値ィ匕する際の RGBの画素値の 範囲を調整する調整部とを備える。
[0019] 本発明のさらに別の態様は、画像解析方法である。この方法は、所定の色をもつセ ルをもつゲーム用カードと、ゲーム用カードのセルと同一の色相の色により構成され、 段階的に明度が変化するグラデーション領域を有するゲーム用マットとを撮像したフ レーム画像を解析する画像解析方法であって、 RGBの画素値の範囲を設定して、フ レーム画像を 2進数のビット表現に変換するステップと、フレーム画像の 2値化データ におけるゲーム用マットのグラデーション領域を抽出するステップと、グラデーション 領域の 2値化データをもとに、 2値ィ匕する際の RGBの画素値の範囲を調整するステツ プとを備える。
[0020] 本発明のさらに別の態様は、プログラムである。このプログラムは、所定の色をもつ セルをもつゲーム用カードと、ゲーム用カードのセルと同一の色相の色により構成さ れ段階的に明度が変化するグラデーション領域を有するゲーム用マットとを撮像した フレーム画像を解析させるプログラムであって、コンピュータに、 RGBの画素値の範 囲を設定して、フレーム画像を 2進数のビット表現に変換させる機能と、フレーム画像 の 2値ィ匕データにおけるゲーム用マットのグラデーション領域を抽出させる機能と、グ ラデーシヨン領域の 2値化データをもとに、 2値化する際の RGBの画素値の範囲を調 整させる機能とをコンピュータに実行させる。
[0021] なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、 記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様とし て有効である。
発明の効果
[0022] 本発明によると、精度よく認識することのできる 2次元コードを提供することができる
図面の簡単な説明
[0023] [図 1]実施例に力かるゲームシステムの構成を示す図である。
[図 2]ゲームカードの表面に印刷した 2次元コードを示す図である。
[図 3]画像解析装置の構成を示す図である。
[図 4]2次元コードの認識処理の処理手順を示すフローチャートである。
[図 5]基準セルの検出処理を示すフローチャートである。
[図 6]コード部の検出処理を示すフローチャートである。
[図 7]コードデータの検証処理を示すフローチャートである。
[図 8]ゲームカードの表面に印刷した 2次元コードの別の例を示す図である。
[図 9]ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す図である。
[図 10]ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す図である。
[図 11] (a)〜 (c)は、コーナーセルである力否かを判別する方法を説明するための説 明図である。 [図 12]ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す図である。
[図 13]ゲーム用カードを配置するためのゲーム用マットを示す図である。
[図 14]グラデーション領域の外観を示す図である。
[図 15]画像解析装置の別の構成を示す図である。
[図 16] (a)〜 (c)は、グラデーション領域として特定されたドーナツ領域を示す図であ る。
[図 17]実施例における画像データの伝送システムを示す図である。
符号の説明
[0024] 1 · · 'ゲームシステム、 2· · '撮像装置、 4· · 'ゲームカード、 6 · · '出力装置、 7· · ·ディ スプレイ、 10 · · '画像処理装置、 20· · '画像解析装置、 30· · 'ゲーム装置、 40· · ·フ レーム画像取得部、 42 · · ·実オブジェクト抽出部、 44· · '状態決定部、 50· · · 2値ィ匕 処理部、 52· · '基準セル検出部、 54· · 'コード部検出部、 56 · · '検証処理部、 60· · '領域抽出部、 62· · 'RGB調整部、 100· · '基準セル、 102· · 'コードデータ部分、 1 04 · · 'コーナーセル、 106 · · '方形セル、 108 · · '領域、 110· · 'コード部、 200· · '画 像データ伝送システム、 201 · · '画像データ生成装置、 202· · '端末装置、 203 · · · 表示装置、 204· · ·送信局。
発明を実施するための最良の形態
[0025] 図 1は、本発明の実施例にカゝかるゲームシステム 1の構成を示す。ゲームシステム 1 は、撮像装置 2、画像処理装置 10および出力装置 6を備える。画像処理装置 10は、 画像解析装置 20およびゲーム装置 30を備える。画像解析装置 20およびゲーム装 置 30は別装置として構成されてもよいが、一体として構成されてもよい。撮像装置 2 は、 CCD撮像素子または MOS撮像素子など力 構成されるビデオカメラであり、例 えば 320画素 X 240画素の解像度を有する。撮像装置 2は実空間を所定の周期で 撮像して、周期ごとのフレーム画像を生成する。撮像領域 5は撮像装置 2により撮像 される範囲であり、撮像装置 2の高さや向きを調整することで、撮像領域 5の位置や 大きさが調整される。ゲームプレイヤは、撮像領域 5において、実オブジェクトである ゲームカード 4を指で動かす。ゲームカード 4は、自身を一意に識別するための 2次 元コードを有して構成される。 [0026] 出力装置 6は、表示装置であるディスプレイ 7を有する。出力装置 6は、さらにスピー 力(図示せず)を有して構成されてもよい。基本的に画像処理装置 10は、撮像装置 2 により撮像されたフレーム画像をディスプレイ 7に表示させ、その際に、ゲームカード 4 上に仮想オブジェクトであるキャラクタを重畳するように表示制御する。プレイヤは、 ディスプレイ 7を見ることで、ゲームカード 4が撮像領域 5に入って 、るか容易に確認 でき、入っていない場合には、ゲームカード 4の位置をずらしたり、また撮像装置 2の 向きを調整して、撮像装置 2にゲームカード 4を撮像させるようにする。
[0027] 実施例のゲームアプリケーションでは、プレイヤがゲームカード 4に対して所定の操 作を施すことにより、キャラクタを動作させる。このゲームアプリケーションの性質上、 プレイヤにゲームカード 4とキャラクタとの一体性を認識させることが好ましぐそのた め、キャラクタの画像を、ゲームカード 4に重ね合わせて表示させている。撮像領域 5 内でゲームカード 4をゆっくりと移動させると、キャラクタは、ゲームカード 4の上に乗つ た状態を維持しながら、ゲームカード 4の動きに追従して一緒に移動する。
[0028] 以上のキャラクタの動きは、画像処理装置 10により制御される。まず、画像解析装 置 20は、撮像装置 2において取得されたフレーム画像から、ゲームカード 4の画像情 報を抽出する。さらに、画像解析装置 20は、ゲームカード 4の画像情報から、ゲーム カード 4に印刷された 2次元コードを抽出する。このとき、画像解析装置 20は、ゲーム カード 4の 2次元コードから、ゲームカード 4の空間における位置情報、方向情報、距 離情報などを決定する。
[0029] 後述するが、画像解析装置 20は、フレーム画像中のゲームカード 4の画像におけ る基準セルおよび 4隅のコーナーセルを用いて、撮像装置 2とゲームカード 4との距 離やゲームカード 4の向きなどを計算して求める。これにより、キャラクタは、ゲーム力 ード 4上にて前方を向くように表示制御される。また、 2次元コードにおける複数の方 形セルの配列から、ゲームカード 4のコードデータを取得する。
[0030] 図 1では、ゲームカード 4が台 3に単に置かれている状態を示している力 ゲーム力 ード 4は、例えば台 3に対して斜めに傾けられたり、また台 3よりも上に持ち上げられた りしてもよい。画像解析装置 20は、ゲームカード 4が傾斜された状態、または、台 3か らの高さを変化された状態を画像解析により認識する機能をもつ。画像解析装置 20 において画像解析された結果は、ゲーム装置 30に送られる。なお、撮像装置 2にお いて撮像されたフレーム画像力 ゲーム装置 30に送られて、ゲーム装置 30側で画像 解析を行ってもよい。この場合、画像処理装置 10は、ゲーム装置 30のみで構成され ることになる。
[0031] ゲーム装置 30は、画像解析装置 20における画像解析結果をもとに、ディスプレイ 7 の表示画面上で、キャラクタをゲームカード 4の上に位置するように表示制御する。キ ャラクタは、ゲームカード 4から抽出したコードデータに対応付けられて、ゲームシー ンごとに適宜割り当てられてもよい。この場合、ゲームシーンが切り替わると、表示さ れるキャラクタち切り替わること〖こなる。
[0032] 図 2は、ゲームカードの表面に印刷した 2次元コードを示す。ゲームカード 4の表面 には、複数の所定形状をもつ多角形セルが所定の配列規則にしたがって 2次元的に 配置されている。具体的に、ゲームカード 4の 2次元コードは、撮像装置 2により撮像 された画像データ力もゲームカード 4の認識処理を行うための基準となる基準セル 10 0、複数の方形セル 106を 2次元配置することでコードデータを構成するコードデータ 部分 102、コードデータ部分 102を取り囲むように配置される複数のコーナーセル 10 4a、 104b, 104c, 104d (以下、総称する場合は、「コーナーセル 104」と呼ぶ)を備 えている。コードデータ部分 102およびコーナーセル 104は、 2次元コードにおけるコ ード部 110に存在している。
[0033] 基準セル 100、方形セル 106およびコーナーセル 104は、それぞれ所定の形状を 有して構成される。図 2に示す 2次元コードでは、各セルが黒色に塗りつぶされて存 在している。図 2において、領域 108は、複数の方形セル 106が連結して構成された ものであり、他の方形セル 106とともにコードデータを構成している。方形セル 106は 、同一の形状、ここでは正方形の形状をもつ。実施例のゲームカード 4が複数存在す る場合に、基準セル 100およびコーナーセル 104の配置および大きさは共通とされ、 コードデータ部分 102における方形セル 106の配列により、ゲームカード 4を一意に 特定することができる。
[0034] 以下に、本実施例における 2次元コードの詳細を説明する。正方形状の方形セル 1 06の 1辺を 1ブロックとすると、基準セル 100は、 7ブロック分の横方向の長辺と 1. 5 ブロック分の縦方向の短辺で形成される長方形状のセル(エレメント)として構成され る。実施例において、縦 1ブロックと横 1ブロックで形成される正方形状の領域をプロ ック領域と呼ぶ。
[0035] コードデータ部分 102は、 7ブロック X 7ブロックで囲まれる領域に形成される。この 領域の一辺は、基準セル 100の長辺に平行であり且つ長辺から 1ブロック離れた位 置に配置される。図示のように、コード部 110は、 8ブロック X 8ブロックで囲まれる領 域であり、コードデータ部分 102は、コード部 110が形成される領域に含まれる。実際 に方形セル 106が配置される領域は、 7ブロック X 7ブロックで囲まれる領域の 4隅に おける 2ブロック X 2ブロックの領域を除いた部分とする。すなわち、 4隅の 2ブロック X 2ブロックの領域には方形セル 106を配置させないこととし、したがって、(7 X 7— 2 X 2 X 4) = 33のブロック領域に方形セル 106が配置されて、コードデータを構成す る。
[0036] コーナーセル 104aは、コード部 110の左上隅の領域に配置される。この左上隅の 領域は、コードデータ部分 102として 7ブロック X 7ブロックで囲まれる領域の左上隅 の 2ブロック X 2ブロックの領域の範囲内であってよぐまたその範囲内からはみ出し てもよい。図示の例では、コーナーセル 104aが、コードデータ部分 102における左 上隅の 2ブロック X 2ブロックの領域から縦に 0. 5ブロック分、横に 0. 5ブロック分だけ はみ出して配置されている。すなわち、コーナーセル 104aは、コード部 110におい て 2. 5ブロック X 2. 5ブロックで囲まれる左上隅の領域に存在している。同様に、コ ーナーセル 104bはコード部 110の右上隅の領域に配置され、コーナーセル 104cは コード部 110の右下隅の領域に配置され、コーナーセル 104dはコード部 110の左 下隅の領域に配置される。図示の例では、各コーナーセル 104は方形に形成され、 具体的には 1辺を 1. 5ブロック分の長さとする正方形のセルとして形成されている。
[0037] コードデータ部分 102は、 1ブロック領域を 1ビットとすると、合計で 33ビット分の情 報をコード化することができる。この 33ビット中、 9ビット分は、コードデータ力 正しい コードデータであることを確かめるためのチェックデータを構成する。従って、コード データ部分 102には、 24ビット分の情報がコード化されている。
[0038] 方形セル 106は、コードデータを表現する重要なエレメントであり、画像解析装置 2 0において正確に画像認識される必要がある。そのためには、全ての方形セル 106 を大きく形成することが理想的であるが、当然のことながらゲームカード 4の大きさに は制約があり、方形セル 106を大きくすることは、それだけコードデータ部分 102を構 成する方形セル 106の数を減じる結果となる。これは情報のビット数を減らすことに相 当し、好ましくない。
[0039] 以上のことから、本実施例において、コーナーセル 104は、方形セル 106よりも大き な面積を有して構成される。後述するが、本実施例の画像解析装置 20において、 4 隅のコーナーセル 104は、コードデータ部分 102を検出するために利用される。逆に 言えば、 4隅のコーナーセル 104を検出できなければ、方形セル 106を検出すること もできないため、この 2次元コードでは、方形セル 106よりもコーナーセル 104をまず 確実に認識する必要がある。 4隅のコーナーセル 104を方形セル 106よりも大きく形 成することで、 4隅のコーナーセル 104の認識率を高めることができる。
[0040] 画像解析装置 20は、フレーム画像中の基準セル 100の候補を抽出して所定の基 準を満たすものを基準セル 100として仮定し、その仮定した基準セル 100の近傍に 4 つのコーナーセル 104が存在して!/、るか否かを判定する。 4つのコーナーセル 104 を認識すると、画像解析装置 20は、 4つのコーナーセル 104により囲まれた領域、す なわちコードデータ部分 102における方形セル 106の配置を読み取り、コードデータ を取得する。これにより、仮定した基準セル 100が真の基準セル 100であったことが 判断され、ゲームカード 4を認識することができる。画像解析装置 20は、撮像装置 2 を基準 (原点)とするゲームカード 4の仮想 3次元座標系における位置と方向を計算し て求める。
[0041] 図 3は、画像解析装置の構成を示す。画像解析装置 20は、フレーム画像取得部 4 0、実オブジェクト抽出部 42および状態決定部 44を備える。実オブジェクト抽出部 42 は、 2値化処理部 50、基準セル検出部 52、コード部検出部 54、検証処理部 56を備 える。本実施例における画像解析装置 20の処理機能は、 CPU、メモリ、メモリにロー ドされたプログラムなどによって実現され、ここではそれらの連携によって実現される 構成を描いている。プログラムは、画像解析装置 20に内蔵されていてもよぐまた記 録媒体に格納された形態で外部力 供給されるものであってもよ 、。したがつてこれ らの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによ つていろいろな形で実現できることは、当業者に理解されるところである。図示の例で は、画像解析装置 20の CPU力 フレーム画像取得部 40、実オブジェクト抽出部 42 、状態決定部 44としての機能をもつ。
[0042] フレーム画像取得部 40が、撮像装置 2にて撮像された実空間のフレーム画像を取 得する。撮像装置 2は、周期的にフレーム画像を取得し、好適には 1Z60秒間隔で フレーム画像を生成する。
[0043] 実オブジェクト抽出部 42は、フレーム画像力 実オブジェクト画像、すなわちゲーム カード 4の画像を抽出する。具体的に、 2値化処理部 50がフレーム画像を 2進数のビ ット表現に変換して、フレーム画像の情報をビットのオンとオフで表現する。基準セル 検出部 52は、フレーム画像の 2値化データから、基準セル 100を検出する。基準セ ル 100を検出すると、コード部検出部 54力 基準セル 100の位置をもとにコード部 11 0を検出し、検証処理部 56が、コード部 110に含まれるコードデータの検証処理を行
[0044] 状態決定部 44は、設定した座標系における実オブジェクトの状態を決定し、具体 的には、ゲームカード 4の位置、方向および撮像装置 2からの距離を決定する。状態 決定部 44において決定された位置情報、方向情報、距離情報は、 2次元コードから 取得されたコードデータにそれぞれ関連付けされて、ゲーム装置 30に送られる。な お、複数のゲームカード 4が撮像領域 5に存在する場合には、それぞれのゲーム力 ード 4ごとに、位置情報、方向情報、距離情報、コードデータが関連付けされてゲー ム装置 30に送られる。また、ゲームシステム 1では、撮像装置 2により撮像されたフレ ーム画像をディスプレイ 7に表示させるため、フレーム画像自体もゲーム装置 30に送 られる。ゲーム装置 30は、コードデータに対応付けられたキャラクタを読み出し、 3次 元の仮想空間にお 、てゲームカード 4とキャラクタとを重畳させて表示させる。
[0045] 図 4は、 2次元コードの認識処理の処理手順を示すフローチャートである。 2次元コ 一ドが撮像装置 2により撮像され、その結果得られた 1フレーム分の画像データ力 フ レーム画像取得部 40により取得される。 2値化処理部 50は、画像データに対して 2 値化処理を行う(S10)。 2値化処理では、所定の閾値より大きい輝度を保持する画 素の画素値が" 0〃に符号ィ匕され、表示上、その画素は白色とされる。以下においては 、このように、画素値が" ΟΊこ符号化された画素を、白色画素と称する。一方、閾値以 下の輝度値を保持する画素の画素値は、 "1Ίこ符号化され、表示上、その画素は黒 色とされる。以下においては、このように、画素値力 'ΐΊこ符号ィ匕された画素を、黒色 画素と称する。 2値化処理部 50は、黒色画素が連続して存在する領域を 1つの連結 領域としてまとめ、抽出された複数の黒色画素連結領域に対して、番号を 1から順に 昇順で設定 (ラベリング)する(S 12)。例えば、ラベリングの番号は、連結領域として 抽出した順すなわち特定した順に設定されてもよい。番号は、その座標データととも に RAM (図示せず)に記憶させる。図 2に示す 2次元コードを利用すると、コーナー セル 104が方形セル 106よりも大きく表示されているため、コーナーセル 104を黒色 画素連結領域として検出できる確率および座標位置の精度を高くすることができる。
[0046] 基準セル検出部 52は、今回対象とする画像データより前に実行された 2次元コード 認識処理において、認識された 2次元コードの表示上の位置、例えば、基準セル 10 0の中央点力 RAMに記憶されているか否かを判定する(S 14)。前フレームにおけ る基準セル 100の中央点が RAMに記憶されている場合(S14の Y)、記憶されてい る位置を基準セル検出処理の開始点として設定する(S16)。前の画像フレームにお V、て基準セル 100が検出されて!、る場合、今回の画像フレームにお!/、てちゲーム力 ード 4の位置は大きく変化して!/、な!/、ことが多!、ため、前フレームの基準セル 100の 中央点を利用することで、今回のフレームにおいて効率的に基準セル 100を検出す ることが可能となる。一方、 2次元コードの位置が RAMに記憶されていない場合(S1 4の N)、基準セル検出部 52は、ディスプレイ 7の表示上の中心点を基準セル検出処 理の開始点に設定する(S18)。開始点を設定した後、基準セル検出部 52は、基準 セル 100の検出処理を実行する(S20)。
[0047] 図 5は、基準セルの検出処理を示すフローチャートである。なお、本フローにて示す 画素数は撮像装置 2の解像度などに依存し、ここでは理解を容易にするため、一例と しての画素数を示すこととする。まず、基準セル検出部 52は、図 4の S12においてラ ベリングした黒色画素連結領域の総数 Mを読み出し、カウンタの値 jを 1に初期設定 する(S 100)。次に、図 4の S 16または S 18において設定した開始点から、ディスプレ ィ 7の画面上を左回りの渦巻の軌跡に沿って、黒色画素連結領域を探索し、始めに 検出した黒色画素連結領域を基準セル候補領域として選択する(S102)。基準セル 検出部 52は、選択した基準セル候補領域の縁部分を抽出して、短辺および長辺を 決定する(S 104)。
[0048] 基準セル検出部 52は、短辺が所定画素数、例えば 20画素以上の画素で構成され ているか否かを判定する(S 106)。短辺は 1. 5ブロック分の長さで構成されているが 、短辺が 20画素より少ない画素で構成されている基準セル 100である場合、 1ブロッ クの長さは、さらに少ない数の画素力も構成されることとなる。そのため、 2次元コード における最小の構成要素である方形セル 106の一辺は約 13画素以下となり、撮像 装置 2で適切に撮像することはできない。このことより、短辺が 20画素より少ない画素 で構成されていると判定された場合 (S 106の N)、 S 102で選択された黒色画素連結 領域は、基準セル 100ではないと判断することとし、 S116に進む。
[0049] 短辺が 20画素以上の画素で構成されていると判定された場合(S 106の Y)、基準 セル検出部 52は、基準セル候補領域の長辺が所定画素数、例えば 300画素以下 の画素で構成されているか否かを判定する(S 108)。例えば、長辺が 300画素より多 い画素で構成されている基準セル 100であるとすると、長辺の長さが 7に対して 1の 割合で求められる 1ブロックの長さが大きくなり、基準セル 100から、 8. 5ブロック分離 れて位置する右下コーナーセル 104cおよび左下コーナーセル 104dが、撮像装置 2 にて撮像されなくなる。このことより、長辺が 300画素より多い画素で構成されていると 判定された場合 (S 108の N)、 S 102で選択された黒色画素連結領域は、基準セル 1 00ではな!/ヽと半 IJ断することとし、 S116に進む。
[0050] 長辺が 300画素以下の画素で構成されていると判定された場合(S108の Y)、基 準セル検出部 52は、基準セル候補領域の黒色画素の総数が、 20画素以上かつ 15 00画素未満であるか否かを判定する(S 110)。黒色画素の総数が 20画素未満の場 合 (S110の N)、短辺が 20画素より少ない画素で構成された場合と同様の問題が発 生し、また、 1500画素以上である場合(S110の N)、長辺が 300画素より多い画素 で構成された場合と同様の問題が発生する。したがって、これらの場合には、基準セ ル候補領域が基準セル 100である可能性が小さいと判断することとし、 S116に進む [0051] 基準セル候補領域の黒色画素の総数が 20画素以上かつ 1500画素未満である場 合 (S110の Y)、基準セル検出部 52が、基準セル候補領域の方形らしさを判定する (S112) 0方形らしさは、既述した特許文献 1に記載されるように、基準セル候補領域 のモーメントをもとに求められる。方形でないと判定する場合 (S 112の N)、基準セル 候補領域が基準セル 100でないと判断することとし、 S116に進む。方形であると判 定される場合 (S112の Y)、基準セル検出部 52は、基準セル候補領域を基準セル 1 00として設定し (S114)、基準セル候補領域とされた黒色画素連結領域のラベリング 番号を、 RAMに記憶させる。このようにして、基準セル 100を検出することができる。 画像データ中に 1枚のゲームカード 4し力含まれて 、な 、場合、基準セル 100を検出 した時点で、基準セルの検出処理を終了する。一方、ゲームカード 4が複数含まれて いる可能性がある場合には、 S116に進む。
[0052] 基準セル検出部 52は、カウント値 jが基準セル候補領域の総数 Mに等しいか否か を判定する(S116)。カウント値 jが総数 Mに達していない場合(S116の N)、カウント 値 jを 1インクリメントして(S118)、 S102のステップに戻る。一方、カウント値 jが総数 Mに達すると(S116の Y)、この基準セル検出処理を終了する。
[0053] 図 4に戻って、 S20の基準セル検出処理において基準セル 100が検出されない場 合(S22の N)、ゲームカード 4の存在を確認できないため、 2次元コードの認識処理 を終了する。一方、基準セル 100が検出されると(S22の Y)、コード部検出処理が実 行される(S24)。
[0054] 図 6は、コード部の検出処理を示すフローチャートである。まず、コード部検出部 54 は、図 5の S114において設定された基準セル 100の総数 Nを読み出し、カウンタの 値 kを 1に初期設定する(S200)。なお、 S114において設定した基準セル 100には、 設定した順に番号をふっているものとする。続いて、図 4の S12においてラベリングし た黒色画素連結領域の総数 Mを読み出し、カウンタの値 jを 1に初期設定する(S20 2)。コード部検出部 54は、カウント値 jに対応する番号の黒色画素連結領域を検出し 、それを左下隅のコーナーセル候補領域として選択する(S204)。
[0055] 次に、コード部検出部 54は、選択した左下隅コーナーセル候補領域力 図 4の S2 0において検出してカウント値 kに対応する番号の基準セル 100に対して予め設定さ れた探索範囲内に存在する力否かを判定する(S206)。基準セル 100と左下隅のコ ーナーセル 104dとの位置関係は図 2に示すように予め定められているため、基準セ ル 100の座標データから、左下隅コーナーセルを探索する範囲を絞ることが可能で ある。なお、基準セル 100は横長の矩形状を有するため、長辺側を挟んで対向する 2 つの位置に探索範囲を設定することが可能となる。探索範囲内に存在しない場合 (S 206の N)、その黒色画素連結領域は左下コーナーセル 104dではないと判断され、 S232に進む。探索範囲内に存在する場合 (S206の Y)、その黒色画素連結領域を 左下コーナーセル 104dとして設定する(S208)。
[0056] 左下コーナーセル 104を設定した後、コード部検出部 54は、黒色画素連結領域の 番号をカウントする他のカウンタの値 1を 1に初期設定する(S210)。コード部検出部 5
4は、カウント値 1に対応する番号の黒色画素連結領域を検出し、それを右下隅のコ ーナーセル候補領域として選択する(S 212)。
[0057] 次に、コード部検出部 54は、 S208で設定した左下コーナーセル 104dの画素数( 面積)と、 S212で選択した右下コーナーセル候補領域の画素数 (面積)の比を算出 し、その比(面積比)が例えば 1Z6以上または 6倍以下であるか否かを判定する(S2 14)。コーナーセル 104は撮像装置 2からの距離に応じて取得される画素数が変化 する。具体的に、撮像装置 2に近ければ大きい面積を有し、離れれば面積は小さくな る。そのため、コーナーセル同士であっても画像データ中の面積は異なるケースが想 定される。しかしながら、例えば左下コーナーセルと右下コーナーセルの比が 1Z6よ り小さく、または 6倍よりも大きくなるようなケース(S214の N)は通常想定しえないた め、これらは一つの 2次元コードにおけるコーナーセルであるとみなすことはできず、 S226に進む。
[0058] 面積比が例えば 1Z6以上、 6倍以下である場合 (S214の Y)、コード部検出部 54 は、左下コーナーセル 104dの中心点と、 S212で選択した右下コーナーセル候補領 域の中心点の距離が所定の条件を満たすか否かを判定する (S216)。ここで所定の 条件とは、中心点同士の距離が例えば基準セル 100の長辺の長さに近似しているこ とであってもよい。所定の条件が成立しなければ(S216の N)、 S226にすすみ、所 定の条件が成立すると(S216の Y)、 コード部検出部 54は、その黒色画素連結領域 を右下コーナーセル 104cとして設定する(S218)。
[0059] 以上のように左下コーナーセル 104d、右下コーナーセル 104cを設定すると、コー ド部検出部 54力 設定した基準セル 100、左下コーナーセル 104d、右下コーナー セル 104cを、ディスプレイ 7の画面上の X軸方向および Y軸方向にァフィン変換する (S220)。なお、 1ブロックの長さは、 S20で設定した基準セル 100の長辺または短辺 の長さに基づいて算出される。コード部検出部 54は、ァフィン変換して得られた画像 から、コード部 110の領域に含まれる黒色画素連結領域をセルとしてマッピングし、コ ードマップを生成する(S222)。
[0060] コード部検出部 54は、生成したコードマップのセルのうち、 4隅のコーナーセル 104 を検出し、その周りの 3ブロック領域が、白色画素とされている力否かを判定する(S2 24)。コーナーセル 104の周囲の 3ブロック領域が白色画素で構成されて!、る場合( S224の Y)、そのコードマップを 2次元コードのコード部 110と設定して(S230)、 S2 36に進む。コーナーセル 104の周囲の 3ブロック領域が白色画素でない場合、 S22 6に進む。
[0061] S226では、カウント値 1が黒色画素連結領域の総数 Mに等しいか否かを判定し、力 ゥント値 1が Mに等しければ(S226の Y)、 S232に進み、等しくなければ(S226の Ν) 、カウント値 1を 1インクリメントして(S228)、 S212に戻る。
[0062] S232では、カウント値 jが黒色画素連結領域の総数 Mに等しいか否かを判定し、力 ゥント値 jが Mに等しければ(S232の Y)、 S236に進み、等しくなければ(S232の Ν) 、カウント値 jを 1インクリメントして(S234)、 S204に戻る。
[0063] S236では、カウント値 kが設定した基準セル 100の総数 Nに等しいか否かを判定し 、カウント値 kが Nに等しくなければ(S236の N)、カウント値 kを 1インクリメントして(S 238)、 S202に戻る。これにより、画像データにおいて複数の 2次元コードを探索す ることが可能となる。カウント値 kが Nに等しくなると(S236の Y)、以上により、コード 部 110の検出処理が終了する。
[0064] 図 4に戻って、 S24のコード部検出処理においてコード部 110が検出されない場合
(S26の N)、 2次元コードの存在を確認できないため、 2次元コードの認識処理を終 了する。一方、コード部 110が検出されると(S26の Y)、コードデータの検証処理が 実行される(S28)。
[0065] 図 7は、コードデータの検証処理を示すフローチャートである。既述したように、 33 ビットのコードデータ中、所定のアルゴリズムで生成された 9ビットのチェックデータと、 24ビットの情報データとが存在し、この処理ではチェックデータを用いて、コードデー タを検証する。以下では、所定のアルゴリズムで生成したチェックデータを、そのアル ゴリズムに基づいてコードデータ力 チェックデータを生成して照合することで、コード データを検証する処理を行う。
[0066] まず、検証処理部 56は、後のステップである S304、 S308で算出される基準値を、 1ビット右方向にシフトする回数をカウントするカウンタの値 pを 1に初期設定する(S3 00)。次に、検証処理部 56は、コード部 110のコードマップから、コードデータおよび チェックデータの値を算出する(S302)。
[0067] 検証処理部 56は、算出したコードデータの値(ビットストリーム)と、 OxFFFFFFとの 排他的論理和演算を行 ヽ (S304)、その結果得られた値 (ビットストリーム)を基準値 ( 基準ビットストリーム)とする。基準ビットストリームの LSB(Least Significant Bit)に" 1 "が 立って 、るか否かを判定し(S306)、〃1"が立って!/、な!/、と判定した場合(S306の N )、検証処理部 56は、基準値 (基準ビットストリーム)と、 0x8408との排他的論理和演 算を行 、 (S308)、その結果得られた値 (ビットストリーム)を新たな基準値 (基準ビット ストリーム)とし、 S310に進む。 LSBに" 1"力たって!/、る場合(S306の Y)、同様に S3 10に進む。
[0068] 検証処理部 56は、 S304または S308において算出した基準値 (基準ビットストリー ム)を 1ビットだけ右にシフトさせ (S310)、カウント値 ρ力 予め定めたシフト回数であ る 24に等し!/、か否かを判定する(S312)。 p = 24ではな!/、と判定した場合(S312の N)、カウント値 pを 1だけインクリメントした後(S314)、 S306に戻る。
[0069] p = 24であると判定した場合(S312の Y)、算出されたビットストリームと、 OxlFFと の論理積演算を行う(S316)。検証処理部 56は、論理積演算より得られ値が、算出 したチヱックデータの値と等しいか否かを判定し (S318)、等しいと判定した場合 (S3 18の Y)、図 4の S24で検出されたコード部 110力 2次元コードとして適正なパター ンであるとし、 2次元コードのコード部 110を確定する(S320)。チェックコードと等しく なければ(S318の N)、コード部 110の読み取りに誤りがあったことを判定して、コー ドデータの検証処理を終了する。なお、図 7では 1つのコード部 110の検証処理のみ を示している力 複数のコード部 110が検出されている場合は、それぞれについてこ の検証処理を実行する。
[0070] 図 4に戻って、 S28のコードデータ検出処理においてコード部 110が確定されない 場合(S30の N)、 2次元コードの存在を確認できないため、 2次元コードの認識処理 を終了する。一方、コード部 110が確定されると(S30の Y)、コードデータの値、すな わち、 2次元コードの値を、例えば RAMに記憶させ、保持し(S32)、 2次元コードの 認識処理を終了する。
[0071] 以下に、 3次元座標系におけるゲームカード 4の位置および方向の求め方につい て説明する。ゲームカード 4の仮想 3次元座標系の位置および方向を求めるために、 本実施例では、撮像装置 2の画角、スクリーン解像度、 4つのコーナーセル 104のス クリーン座標位置、実際のコーナーセル 104間の距離を利用する。なお、スクリーンと は、撮像装置 2により撮像された画像を表示するディスプレイ 7の画面である。
[0072] (ステップ 1)
まず、視点力もスクリーン投影面までの距離を求める。ここでは、カメラの画角とスク リーン解像度により、視点力もスクリーン投影面までの距離を求める。
カメラの水平方向の画角: 0
スクリーンの水平方向の解像度: W
視点からスクリーン投影面までの距離: P
とすると、以下の計算式が成り立つ。
P= (WX 0. 5) /tan ( θ Χ Ο. 5)
[0073] (ステップ 2)
次に、視点から各コーナーセル 104に伸びる 3次元ベクトルを求める。
コーナーセルのスクリーン座標位置: SX、 SY
視点からスクリーン投影面までの距離: P
コーナーセルへ伸びる 3次元ベクトル: V とすると、以下の計算式が成り立つ。
V= (SX, SY, P)
なお、スクリーン座標位置は、スクリーンの中央を原点としている。
[0074] (ステップ 3)
視点と、隣り合う 2つのコーナーセルの 3点が形成する平面の法線ベクトルを求める 。この法線ベクトルは、合計で 4つ生成される。
視点からコーナーセル 104aへ伸びる 3次元ベクトル: VI
視点からコーナーセル 104bへ伸びる 3次元ベクトル: V2
視点からコーナーセル 104cへ伸びる 3次元ベクトル: V3
視点からコーナーセル 104dへ伸びる 3次元ベクトル: V4
視点とコーナーセル 104a、 104bが形成する平面の法線ベクトル: S12 視点とコーナーセル 104b、 104cが形成する平面の法線ベクトル: S23 視点とコーナーセル 104c、 104dが形成する平面の法線ベクトル: S34 視点とコーナーセル 104d、 104aが形成する平面の法線ベクトル: S41 とすると、以下の計算式が成り立つ。
S12=V1 XV2
S23=V2 XV3
S34=V3 XV4
S41 =V4 XV1
なお、「X」は、外積を指す。
[0075] (ステップ 4)
続いて、ゲームカード 4の 3次元上での方向(座標軸)を求める。ステップ 3で求めた 4つの法線ベクトルをもとに、カードの座標軸が求まる。
カードのローカル座標 X軸 (カード表面に対して左右方向): VX
カードのローカル座標 γ軸 (カード表面に対して貫く方向): VY
カードのローカル座標 Z軸 (カード表面に対して上下方向): VZ
とすると、以下の計算式が成り立つ。
VX=S12 X S34 VZ = S23 X S41
VY=VZ XVX
[0076] (ステップ 5)
最後に、ゲームカード 4の 3次元上での位置を求める。ステップ 4では、ゲームカー ド 4のローカル座標変換マトリクスを求めた力 現実のコーナーセル間の距離が分か れば、カードの位置は容易に求められる。コーナーセル 104aの 3次元座標位置を変 数として表現すると、その変数を使ってコーナーセル 104b、 104c, 104dの 3次元座 標位置を表すことができる。 4つのコーナーセルのスクリーン座標位置は判明してい るため、これらの計算式の連立方程式を解くことで、ゲームカード 4の 3次元座標位置 を特定できる。
[0077] 以上の実施例に示したように、図 2に示す 2次元コードを利用することで、コード部 1 10におけるコーナーセル 104の認識率を高めることができるとともに、 2次元座標系 におけるコーナーセル 104の座標位置を正確に求めることが可能となる。具体的に は、コーナーセル 104を大きく形成することで、コーナーセル 104の中心位置を正確 に求めることができるため、ゲームカード 4の位置を正確に特定できる。また、複数の コーナーセル 104の中心位置を正確に求めることで、基準セル 100とコーナーセル 1 04との位置関係を正確に把握して、ァフィン変換の精度を高めることができ、ゲーム カード 4の位置やゲームカード 4が向いている方向などを正確に特定できる。
[0078] 図 8は、ゲームカードの表面に印刷した 2次元コードの別の例を示す。ゲームカード 4の表面には、所定の形状を有する基準セル 100およびコード部 110が配置されて いる。図 2の 2次元コードと比較すると、図 8に示す 2次元コードでは、コードデータ部 分 102を取り囲む複数のコーナーセル 104a、 104b, 104c, 104dが円形に形成さ れている。既述したように、コーナーセル 104の 2次元座標位置は、コーナーセル 10 4の中心点により特定される。コーナーセル 104が丸い形状を有することで、撮像装 置 2に対するゲームカード 4の向きによらず、撮像装置 2により撮像されるコーナーセ ル 104の形状は変化しない。そのため、撮像装置 2に対する向きによって、コーナー セル 104の中心点が変わらず、したがって安定して中心点を取得することが可能とな る。これにより、既述したように、ゲームカード 4の位置情報、方向情報、距離情報を 正確に求めることが可能となる。なお、方形セル 106を丸く形成してもよい。また、コ ーナーセル 104を円形にするだけでなぐ図 2に関して説明したように、方形セル 10 6に対して大きく形成することで、コーナーセル 104の座標位置をさらに高精度に求 めることが可能となる。
[0079] 図 9は、ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す。ゲーム カード 4の表面には、基準セル 100およびコード部 110が配置されている。図 2の 2次 元コードと比較すると、図 9に示す 2次元コードでは、所定の形状を有する基準セル 1 00、それぞれ 2次元配置することでコードデータを構成する複数の方形セル 106、コ ードデータ部分 102の領域を取り囲むように配置される複数のコーナーセル 104の 少なくとも 1つのセル力 他のセルと異なる色を付けられる。例えば、基準セル 100に 赤色、方形セル 106に緑色、コーナーセル 104に青色とそれぞれのセルに異なる色 を割り当ててもよい。なお、ここで割り当てる色は、撮像装置 2において取り込んで、 所定の輝度閾値を基準として 2値ィ匕できる色であればよぐ必ずしも人間の目に可視 であることは要求されない。使用する撮像装置 2の撮像特性が予め分力つている場 合は、その特性に合わせてセルを色づけしてもよ 、。
[0080] 本実施例の 2次元コードの認識処理では、図 4の S20〖こ示すよう〖こ、まず基準セル 100を検出することが条件となる。 2次元コードの認識処理全体のなかでも、この基準 セル検出処理の負荷は高ぐしたがって、画像データ中から基準セル 100を効率的 に抽出できることが好ましい。そこで、複数種類のセルのうち、少なくとも基準セル 10 0には、方形セル 106およびコーナーセル 104とは異なる色をつけることが好ましい。
[0081] 撮像装置 2の受光面の前面には RGBのカラーフィルタが配置されており、フレーム 画像ごとに、 RGBのそれぞれの画素値が 256階調で表現されたデータとして記録さ れる。この例において、 2値化処理部 50が、 2値化処理するための RGBの画素値の 範囲を設定する機能をもつ。基準セル 100が赤色で塗りつぶされている場合、図 4の S 10の 2値化処理において、 2値化処理部 50が、基準セル用の RGBの画素値の範 囲を設定する。例えば、 2値化処理部 50は、赤色 (R)の画素値の範囲を 200〜255 、緑色(G)の画素値の範囲を 0〜100、青色(B)の画素値の範囲を 0〜100と設定 する。この設定に基づいて、 2値化処理部 50は、この範囲内にある RGBの複合画素 を抽出して、その画素値を〃 1Ίこ符号ィ匕する。例えば、 R画素値が 225、 G画素値が 30、 Β画素値が 50となる複合画素の画素値は〃 1Ίこ符号ィ匕され、 2値画像としての 色が黒色に設定される。一方、 RGBの画素値力これらの範囲内にない複合画素の 画素値は" 0〃に符号ィ匕され、 2値画像としての色が白色に設定される。このように、赤 色の画素を画像データ力も抽出することで、図 4の S12において、 2値画像において 黒色画素となる連結領域をラベリングすることができる。黒色画素として抽出する画素 を画像データにおいて特定の色、ここでは赤色のものに限定することで、抽出するノ ィズの数を少なくでき、基準セル検出部 52は、フレーム画像の 2値化データから基準 セル 100を検出する時間を短縮できる。
[0082] なお、画素値はカラーフィルタ特性の影響を受けるため、カラーフィルタの特性も加 味した画素値の範囲設定を行うために、ゲームカード 4を台 3に配置した状態で、基 準セル 100の赤色の画素値を調査してもよい。これにより、撮像装置 2において取得 される基準セル 100の RGBの画素値を特定することができ、特定した画素値に若干 のマージンを与えた範囲で 2値ィ匕処理を行うことで、検出する黒色画素連結領域の 数を飛躍的に少なくすることが可能となる。特に、ゲームシステム 1においては、リア ルタイムで処理することが好ましいため、基準セル 100を効率的に抽出できることに は、大きなメリットがある。
[0083] なお、他の種類のセル、例えばコーナーセル 104、方形セル 106に色づけを施し た場合も同様である。コーナーセル 104を青色とする場合、図 4の S10において、 2 値化処理部 50が、コーナーセル用の RGBの画素値の範囲を設定する。例えば、 2 値化処理部 50は、赤色(R)の画素値の範囲を 0〜100、緑色(G)の画素値の範囲 を 0〜100、青色(B)の画素値の範囲を 200〜255と設定する。この設定に基づいて 、 2値化処理部 50は、この範囲内にある RGBの複合画素を抽出して、その画素値を "1Ίこ符号化する。例えば、 R画素値が 20、 G画素値が 30、 B画素値が 240となる複 合画素の画素値は〃1"に符号ィ匕され、 2値画像としての色が黒色に設定される。一方 、 RGBの画素値がこれらの範囲内にない複合画素の画素値は" 0〃に符号化され、 2 値画像としての色が白色に設定される。このように、青色の画素を画像データから抽 出することで、図 4の S12において、 2値画像において黒色画素となる連結領域をラ ベリングすることができる。
[0084] このように、青色の強い画像を黒色画像に変換する 2値ィ匕処理を行ってから、 S12 において黒色画素連結領域としてラベリングされたものを、コード部検出部 54が、図
6のフローに示すコーナーセル候補領域として選択するために利用する。黒色画素 として抽出する画素を画像データにおいて特定の色、ここでは青色のものに限定す ることで、抽出するノイズの数を少なくでき、コード部検出部 54は、フレーム画像の 2 値ィ匕データカゝらコーナーセル 104を検出する時間を短縮できる。方形セル 106を緑 色とした場合は、図 4の S10において緑色の強い画像を黒色画像に変換する 2値ィ匕 処理を行ってから、 S12において黒色画素連結領域としてラベリングされたものを、 図 6の S222のコードマップ生成処理に利用する。 3種類のセルに異なる色づけをし た場合、 2値ィ匕処理をする回数が増えることになるが、 2値化処理した後の連結領域 を探索する処理量が大幅に低減されるため、全体的な効率ィ匕を実現できる。
[0085] 図 9に示した 2次元コードは、色づけしたセルを有しており、色づけしたセルは、大き く形成されてもよぐまた図 8に示すように、丸く形成されてもよい。
[0086] 図 10は、ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す。ゲー ムカード 4の表面には、基準セル 100およびコード部 110が配置されている。図 10に 示す 2次元コードは、図 9に示した 2次元コードの一つの実施態様である。図 10に示 す 2次元コードは、所定の形状を有する基準セル 100、それぞれ 2次元配置すること でコードデータを構成する複数の方形セル 106、コードデータ部分 102の領域を取り 囲むように配置される複数のコーナーセル 104を備える。 4つのコーナーセル 104a、 104b, 104c, 104dには全て同一の配色がなされる力 基準セル 100および方形セ ル 106とは異なる色を付けられる。
[0087] ゲームカード 4の美観性を向上するために、コーナーセル 104は、ゲームカード 4の 側縁まで設けられる。コーナーセル 104はゲームカード 4の 4隅の近くに配置され、ま た方形セル 106よりも大きく形成されるため、ゲームカード 4の中で、 4つのコーナー セル 104は目立つ存在となる。本来、コーナーセル 104は、方形セル 106の存在位 置を特定するために設けられるが、ゲームカード 4として使用される以上は、美観性も 重要である。そのためゲームカード 4を縁取る枠縁 107を、コーナーセル 104の位置 でコーナーセル 104を取り囲むように内側に折れ曲げてデザイン的に変化をもたせ ることで、コーナーセル 104に意匠性をもたせることとしている。
[0088] このようにコーナーセル 104をゲームカード 4の側縁に設ける場合、コーナーセル 1 04は、黒色以外の色をつけられることが好ましい。仮に黒色を割り当てた場合、ゲー ムカード 4を撮像装置 2で撮像して 2値ィ匕処理を施すと、ゲームカード 4の縁部に生じ る影も黒色画素として変換されることがあり、黒色画素に変換された 2つのコーナーセ ル 104が、ゲームカード 4の縁部の影で連結される状況が想定される。 2値化処理に より 2つのコーナーセル 104が連結されると、連結した黒色画素から 2つのコーナー セル 104を分離することは難しくなる。そのため、コーナーセル 104に黒色以外の色 を割り当て、 2値ィ匕する際の RGBの閾値、すなわち RGBの範囲を適切に設定して 2 値ィ匕処理することで、ゲームカード 4の縁部の影によりコーナーセル 104が連結され る事態を回避することが可能となる。このように、コーナーセル 104をゲームカード 4 の側縁まで設けた場合には、影の色以外の色、すなわち黒色以外の色を割り当てる ことで、コーナーセル 104を適切に抽出することが可能となる。
[0089] また、図 10に示すゲームカード 4においては、コーナーセル 104が三角形状に構 成される。この形状は、正三角形であってもよい。コーナーセル 104を正三角形とす ることで、コーナーセル 104の認識精度を高めることができる。
[0090] 図 11 (a)〜図 11 (c)は、取得した黒色画素がコーナーセル 104であるか否かを判 別する方法を説明するための説明図である。既述したように、コーナーセル 104は、 フレーム画像を 2値化したあと、黒色画素の連結領域をもとに判別される。 2値化され たフレーム画像は、 2次元の XY座標上に表現されるため、この連結領域の座標値を 利用して、連結領域がコーナーセル 104である力否かを判別することができる。
[0091] 図 11 (a)は、フレーム画像から抽出された連結領域の一例を示す。この連結領域 1 09aは、 X軸方向の幅を H、 Y軸方向の幅を Vとする。なお、この幅は、 2次元座標 上の画素数でカウントする。この連結領域 109aの画素数を Cとした場合、この連結 領域 109aがコーナーセル 104の候補であるか否かは、以下の式で判別される。 a X H X V ≤ C ≤ j8 Χ Η X V ( α < β < 1)
例えば αは 0. 3、 j8は 0. 7である。 連結領域 109aの画素数じェが、上式を満たす場合、この連結領域 109aをコーナー セル 104の候補であると判別してもよい。当然のことながら、定数 a、 j8の値は、他の 値に設定してもよい。
[0092] 図 11 (b)は、フレーム画像から抽出された連結領域の別の例を示す。この連結領 域 109bがコーナーセル 104の候補であるか否かは、同様に以下の式で判別される 。この連結領域 109bの画素数を C、 X軸方向の幅を H、 Y軸方向の幅を Vとする。
2 2 2 a X H X V≤ C ≤ j8 Χ Η X V ( α < β < 1)
2 2 2 2 2
図 11 (a)および図 11 (b)に示す連結領域は、それぞれ判別式を満たしており、コ ーナーセル 104の候補であると判別された例である。図 11 (a)および図 11 (b)に示 されるように、フレーム画像において、ゲームカード 4は様々な角度で撮像領域 5中に 配置されている可能性があるが、上記した判別式を利用することで、三角形状のコー ナーセル 104を適切に認識することが可能となる。
[0093] 図 11 (c)は、フレーム画像から抽出された連結領域のさらに別の例を示す。この場 合、連結領域 109cの画素数 Cは、 a X H (X軸方向の幅) X V (Υ軸方向の幅)より
3 3 3
も小さい。すなわち、
C < a X H X V
3 3 3
の関係が成立する。これは、判別式(a X H X V≤ C ≤ β X H X V
3 3 3 3 3 )を満足す るものではないため、図 11 (c)に示す連結領域 109cは、コーナーセル 104ではない ことが判別される。
[0094] 以上のように、コーナーセル 104の形状を三角形とすることで、 2次元座標上の座 標値を利用して、簡単にコーナーセル 104の候補を抽出することができる。またコー ナーセル 104の形状を正三角形とすると、他の三角形状と比較して、上記判別式で 判定する際の方向依存性を低減できるため、コーナーセル 104の認識精度をより高 めることができる。
なお、図 10に示すゲームカード 4においては、方形セル 106で構成されるコードデ ータ部分 102を、カード下方のコーナーセル 104c、 104dの間に配置する。これによ り、ゲームカード 4の中央部分にスペースを作ることができ、そこにキャラクタの絵など を印刷することが可能となる。 [0095] 図 12は、ゲームカードの表面に印刷した 2次元コードのさらに別の例を示す。図 12 に示すゲームカード 4では、図 10に示すゲームカード 4と同様に、コーナーセル 104 がゲームカード 4の側縁から設けられている。このコーナーセル 104は三角形状に形 成され、基準セル 100およびコードデータ部分 102a、 102bとは異なる色を付けられ る。
[0096] 図 12に示すゲームカード 4では、方形セル 106を設ける領域が 2つに分離される。
ここでは、 2つのコードデータ部分 102a、 102b力 4つのコーナーセル 104a、 104b 、 104c, 104dより取り囲まれる領域以外の部分に配置される。コードデータ部分 10 2aは、基準セル 100とゲームカード 4の上縁との間に形成され、コードデータ部分 10 2bは、コーナーセル 104cおよび 104dを結んだラインとゲームカード 4の下縁との間 に形成される。なお、コーナーセル 104cおよび 104dを結ぶラインとは、カード内向 きの三角形頂点同士を結んだラインである。コードデータ部分 102aおよびコードデ ータ部分 102bを、 4つのコーナーセル 104で囲まれる領域の外に配置することで、 ゲームカード 4の中央領域のスペースを広くとることができ、そこにキャラクタの絵など を印刷することが可能となる。コードデータ部分 102aおよび 102bは、それぞれ 12ビ ットの情報を記録することができ、したがって合計 24ビットの情報量を保持できる。な お、ゲームカード 4の下方に配置されたコードデータ部分 102bは、基準セル 100と 誤認識されることを防ぐために、所定のビット長、例えば 3ビット以上連続して着色さ れな 、ようにすることが望まし!/、。
[0097] 図 12の方形セル 106を認識する際には、既に基準セル 100と、左下および右下の コーナーセル 104d、 104cが検出されているため、これらの近傍を探索することで、 コードデータ部分 102aおよび 102bを容易に検出することができる。すなわち、コー ドデータ部分 102aは、基準セル 100に対してコーナーセル 104cおよび 104dの反 対側に存在し、コードデータ部分 102bは、コーナーセル 104cおよび 104dに対して 基準セル 100の反対側に存在する。基準セル 100とコードデータ部分 102aとを近傍 に設定し、またコーナーセル 104cおよび 104dとコードデータ部分 102bとを近傍に 設定することで、コードデータ部分 102の探索効率を高めることが可能となる。
[0098] なお、図 12のゲームカード 4においては、コードデータ部分 102aおよび 102bとが 2つに分離した配置を示した力 コードデータ部分 102aおよび 102bは、隣接して配 置されてもよい。すなわち、コードデータ部分 102aおよび 102bは、基準セル 100と ゲームカード 4の上縁の間に配置されてもよぐまたコーナーセル 104dおよび 104c とゲームカード 4の下縁の間に配置されてもよい。
[0099] なお以上は、ゲームカード 4を台 3上で動かしている力 台 3にゲーム用マットを置 いて、その上でゲームカード 4を動力してもよい。
図 13は、ゲーム用カードを配置するためのゲーム用マットを示す。図 1を参照して、 ゲーム用マット 300は、撮像装置 2の撮像領域 5に入るように台 3に置かれる。ゲーム 用マット 300は、フェルト生地などの柔らかい素材で作製されて、使用しない間はコン ノタトに丸めて収納できることが好ましい。
[0100] ゲーム用マツ卜 300【こ ίま、複数の仕切り線 304【こより、 9つのマス 302a、 302b, 30 2c、 302d、 302e、 302f、 302g、 302h、 302i (以下、総称する場合は、「マス 302」 と呼ぶ)が形成されている。ゲーム用マット 300は、ゲームアプリケーションに応じて構 成され、それぞれのマス 302は、ゲームカード 4を配置する区画を形成する。 1人以 上のユーザがゲームカード 4をいずれかのマス 302に置くと、画像解析装置 20が、配 置されたマス 302を特定してゲームカード 4の 2次元コードを認識し、ゲーム装置 30 1S 配置されたマスに応じたゲームストーリーを展開してもよい。図 13に示すゲーム 用マット 300では 3 X 3のマス 302が形成されている力 マス 302の数は、これに限る ものではない。ユーザがゲームカード 4を動力してよい領域を「プレイエリア」と呼ぶと 、図 13に示すゲーム用マット 300においては、マス 302が形成された正方形の領域 がプレイエリア 306を形成する。ゲーム用マット 300は、その全体が撮像領域 5に入る ように配置される必要はないが、少なくともプレイエリア 306は撮像領域 5に入ってい る必要がある。なお、ゲームカード 4を自由に動かしてもよいゲームアプリケーション においては、マス 302は形成されなくてもよい。
[0101] ゲーム用マット 300において、プレイエリア 306の 4隅に、段階的に明度が変化する グラデーション領域 310a、 310b, 310c, 310d (以下、総称する場合は、「グラデー シヨン領域 310」と呼ぶ)が設けられる。色には、色相、明度、彩度の 3つの属性があ る力 グラデーション領域 310は、一つの色相の明度を変化させることで構成され、 彩度については変化させなくてもよい。グラデーション領域 310の外縁は円形であり 、グラデーション領域 310の中心から外縁に向力 方向に、高明度から低明度に明 度が同心円状に段階的に変化している。
[0102] 図 14は、グラデーション領域の外観を示す。グラデーション領域 310は、一つの色 相で構成され、その色相において段階的に明度を変化させて構成される。色相は、 赤、緑、青といった色合いの違いを表し、明度は明るさの違いを表す。ここではグラデ ーシヨン領域 310が色相をもち、すなわち有彩色で表現される場合を想定している。 なお、白、黒、グレーなどの無彩色には色相は存在していないが、グラデーション領 域 310を、白力も黒に明度を段階的に変化して構成することも可能である。グラデー シヨン領域 310における明度の相違は、 RGBフィルタを介してデジタルィ匕される際、 輝度の相違として取得される。
[0103] このように、グラデーション領域 310の外縁 312の明度が低ぐ中心 314の明度は 高く設定される。すなわち、このグラデーション領域 310は、外側が濃い有彩色の領 域をもち、内側が白く構成される。 4つのグラデーション領域 310は、 4つ全てを同色 で構成してもよいが、少なくとも 1つの色を変えることでゲーム用マット 300の向きを定 めるための指標として利用することができる。例えば、 3つのグラデーション領域 310a 、 310b, 310cを同一の色相で構成し、 1つのグラデーション領域 310dを別の色相 で構成してもよい。このとき、 4つのグラデーション領域 310を検出することができれば 、グラデーション領域 310a、 310b, 310cに対するグラデーション領域 310dの位置 が既知であるため、ゲーム用マット 300の向きを特定することが可能となる。
[0104] また、グラデーション領域 310を検出することができれば、上述した、ゲームカード 4 の仮想 3次元座標系における位置及び方向を求める方法と同様の方法により、ゲー ム用マット 300の位置、方向、距離などの幾何情報を算出することができる。予めゲ ーム用マット 300の位置や方向などを把握しておくことにより、プレイエリア 306に配 置されているゲームカード 4を更に効率よく認識することができる。また、図 1において 、撮像装置 2により撮像されたフレーム画像をディスプレイ 7に表示させ、ゲームカー ド 4上にキャラクタを重畳表示させることを説明した力 ゲーム用マット 300を使用して いる場合には、ゲーム用マット 300の幾何情報を取得して、ディスプレイ 7に表示され るフレーム画像におけるゲーム用マット 300上に、例えばゲームカード 4を使った戦 闘の背景画像などを重畳表示させてもよい。これにより、ゲームカード 4を効率よく認 識するために用いられるゲーム用マット 300をそのままディスプレイ 7に表示するので はなぐ背景画像などを重畳表示させることができるので、演出効果を向上させること ができる。
[0105] グラデーション領域 310は、さらに、ゲームカード 4の基準セル 100、コーナーセル 104および/または方形セル 106の画像を 2値ィ匕して抽出する際の RGBの画素値 の閾値を決定するために利用される。例えば、コーナーセル 104の色相が緑であり、 所定の明度を有して構成されるものとする。このとき、グラデーション領域 310の色相 を緑に設定し、グラデーションの一部に、コーナーセル 104と同一の明度をもつ領域 を形成する。したがって、コーナーセル 104と同一の明度をもつセル明度領域 316が 、グラデーション領域 310の中心 314から外縁 312の間の所定位置に設定される。 好適には、セル明度領域 316は、中心 314と外縁 312の中間地点に同心円状に形 成される。したがって、グラデーション領域 310の半径方向において、セル明度領域 316と中心 314の間には、セル明度領域 316よりも明度の高い領域が設けられ、また セル明度領域 316と外縁 312の間には、セル明度領域 316よりも明度の低い領域が 設けられる。
[0106] コーナーセル 104と、グラデーション領域 310のセル明度領域 316とが、同一色相
(G)で同一の輝度 (階調)をもち、環境光などの影響がない場合には、 Gフィルタを介 して取得される G画素値力 例えば 127で表現されるものとする。 2値化処理部 50は 、 2値化処理するために RGBの画素値の範囲を設定するが、コーナーセル 104の画 素値が予め分力つている場合には、理想的には、 2値ィ匕閾値をコーナーセル 104の 画素値近傍で設定して、コーナーセル 104よりも画素値の低い (すなわち明度の高 い)ものを、できるだけ抽出しないように範囲設定することが好ましい。この場合、理論 的には、 2値化処理部 50が、例えば閾値を 120として、 G画素値の範囲を 120〜25 5に設定することで、コーナーセル 104を抽出でき、 G画素値が 120に満たない画像 を 2値ィ匕処理により" 0"に変換できる。 2値化処理の際の G画素値の範囲を狭くするこ とで、他のノイズを低減できる。 [0107] し力しながら、実際の環境下では、照明があったり、また太陽光が入るなどして、撮 像装置 2により取得されるコーナーセル 104は、理論値(127)から異なることが多い 。なお、「理論値」は、本実施例を説明するために便宜上使用する用語であって、基 準となる環境下で画像データ力 抽出される画素値を意味する。 2値化するために設 定する画素値の範囲は、狭ければ狭いほど、後処理の負荷を低減できるが、一方で 、環境光の影響により実際に取得される画素値が理論値とは異なってくるために、 2 値化する画素値の範囲が狭ければ、その範囲力 外れる可能性が生じる。そのため 、本実施例のゲームシステム 1では、グラデーション領域 310を利用して、 2値化する 際の画素値範囲にキャリブレーションを施し、環境光などの影響を加味した現実使用 環境下での画素値範囲を設定する。
[0108] 図 15は、画像解析装置の別の構成を示す。画像解析装置 20は、フレーム画像取 得部 40および実オブジェクト抽出部 42を備える。実オブジェクト抽出部 42は、 2値ィ匕 処理部 50、領域抽出部 60、 RGB調整部 62を備える。図 3に示したブロック図とは異 なり、図 15では、 2値ィ匕する際の画素値の範囲をキャリブレーションする構成が示さ れている。この画像解析装置 20の処理機能は、 CPU、メモリ、メモリにロードされたプ ログラムなどによって実現され、ここではそれらの連携によって実現される構成を描い ている。プログラムは、画像解析装置 20に内蔵されていてもよぐまた記録媒体に格 納された形態で外部力も供給されるものであってもよ 、。したがってこれらの機能プロ ックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろ な形で実現できることは、当業者に理解されるところである。図示の例では、画像解 析装置 20の CPU力 フレーム画像取得部 40、実オブジェクト抽出部 42としての機 能をもつ。
[0109] フレーム画像取得部 40が、撮像装置 2にて撮像された実空間のフレーム画像を取 得する。撮像装置 2は、周期的にフレーム画像を取得し、好適には 1Z60秒間隔で フレーム画像を生成する。撮像領域 5には、ゲーム用マット 300と、ゲーム用マット 30 0上に置かれたゲームカード 4が配置されており、したがってフレーム画像は、ゲーム 用マット 300とゲームカード 4を含んでいる。
[0110] 実オブジェクト抽出部 42は、フレーム画像力も実オブジェクト画像を抽出する。ここ では、コーナーセル 104を 2値化する際の RGBの画素値の範囲を調整することを目 的とするため、抽出する実オブジェクト画像は、ゲーム用マット 300におけるグラデー シヨン領域 310である。以下では、コーナーセル 104が所定の明度をもった緑色で構 成されており、グラデーション領域 310が、その所定の明度を含んだ緑色のグラデー シヨンとして形成されて 、る場合にっ 、て説明する。
[0111] 2値化処理部 50は、 2値化する RGBの範囲を設定して、フレーム画像を 2進数のビ ット表現に変換する。具体的に、 2値化処理部 50は、緑色のグラデーションが施され たグラデーション領域 310a、 310b, 310cを抽出するために、 G画素値の範囲を 12 0〜255、 R画素値の範囲を 0〜20、 B画素値の範囲を 0〜20に設定し、この RGBの 画素値の範囲内にある RGBの複合画素を抽出する。 RBについて画素値の範囲を 0 としないのは、カラーフィルタの特性などを考慮するためである。 2値化処理部 50は、 設定した RGBの画素値の範囲内にある複合画素を抽出して、その画素値を" 1"とす る。
[0112] 領域抽出部 60は、フレーム画像の 2値化データから、ゲーム用マット 300のグラデ ーシヨン領域 310を抽出する。グラデーション領域 310は、中心部分の G画素値が低 ぐ外周部分の G画素値が高いグラデーションを形成している。 2値化処理の結果、 グラデーション領域 310は、中心部分の複合画素値が 0、外周部分の複合画素値が 1のビット表現に変換され、中心部分が空白となるドーナツ形状となる。そこで、領域 抽出部 60は、 2値化されたデータの中からドーナツ形状を検出する。 2値化処理の 結果、グラデーション領域 310以外にドーナツ形状に変換される領域は少ないと考え られるため、グラデーション領域 310を円形に形成することは、グラデーション領域 31 0の候補を絞る意味にお 、てメリットが高 、。
[0113] ここで、 4つのグラデーション領域 310は、正方形の頂点に配置されている。緑色用 の 2値化処理および黒色用の 2値化処理の結果、複数のドーナツ領域が検出された 場合に、それらのドーナツ領域が正方形の頂点にくる関係となるものを抽出し、それ らをグラデーション領域 310として特定する。緑色のグラデーション領域 310a、 310b 、 310cとして特定されたドーナツ領域の形状は、 2値ィ匕閾値のキャリブレーションの ために RGB調整部 62に送られる。 [0114] 図 16 (a)〜図 16 (c)は、グラデーション領域として特定されたドーナツ領域を示す。 以下では、緑色のグラデーション領域 310a〜310cをもとに、 2値化して同一色のコ ーナーセル 104を検出する際の G画素値の範囲をキャリブレーションする方法につ いて説明する。 G画素値の 2値ィ匕閾値を 120とし、抽出範囲を 120〜255とする。 RG B調整部 62は、グラデーション領域 310の 2値ィ匕データをもとに、 2値ィ匕処理部 50に おいて 2値ィ匕する際の RGBの画素値の範囲を調整する。
[0115] 図 16 (a)は、内径と外径との比が約 1 : 2、正確には 121 : 256となるドーナツ領域を 示す。この場合は、撮像装置 2により取り込んだフレーム画像において環境光の影響 がー切なぐグラデーション領域 310が理想的に 2値ィ匕されている。このドーナツ領域 において、方形セル 106と同一階調をもつセル明度領域 316は、中心と外縁とを 1 : 1に分割した地点に存在し、ドーナツ領域の黒色部分に含まれている。したがって、 G画素値の閾値を 120に設定することで、コーナーセル 104を好適に抽出することが 可能となる。
[0116] 図 16 (b)は、ドーナツ領域の外径に対して内径が非常に小さくなつた状態を示す。
この場合、中心と外縁とを 1 : 1に分割した地点に存在するセル明度領域 316は、ドー ナツ領域の黒色部分に含まれているが、その内側の階調の低い領域までもが検出さ れている。例えば、環境光に緑色光が含まれている場合に、緑色光とグラデーション 領域 310の緑色とが重なり合って、検出光の G成分が強くなることがある。このとき、ド 一ナツ領域の画素値は、グラデーション領域 310の画素値の理論値よりも強 、値で 検出され、そのため、 2値ィ匕されて" 1"に符号ィ匕される領域が必要以上に増えること になる。
[0117] したがって、 2値化処理部 50が、 G画素値の範囲を 120〜255に設定してゲーム力 ード 4の画像を 2値化すると、コーナーセル 104を抽出することはできるが、コーナー セル 104よりも薄い緑色の領域も同様に抽出することになる。コーナーセル 104の候 補が増えると、それだけコーナーセル 104の特定処理に時間が力かるため、コーナ 一セル 104の候補が少なくなるように、 2値化する際の画素値の範囲を設定すること が好ましい。
[0118] RGB調整部 62は、グラデーション領域 310のグラデーションで表現される階調の 分布と、コーナーセル 104と同一の階調が存在する領域の位置を予め保持している 。したがって、 RGB調整部 62は、図 16 (b)に示すドーナツ領域の形状を受け取ると 、設定した閾値(120)が低力つたことを判定し、閾値を高くする必要があることを決定 する。
[0119] 例えば RGB調整部 62は、グラデーション領域 310の階調分布をもとに、ドーナツ領 域における中心から内径までの距離 (すなわち、白色領域の半径)から、その地点に おけるグラデーション領域 310の G画素値の理論値を求める。その地点の G画素値 の理論値は、本来、 120よりも低い G画素値をとる力 図 16 (b)に示すドーナツ領域 では、その地点の G画素値が 120として検出されている。したがって、 RGB調整部 6 2は、グラデーション領域 310上の G画素値の理論値と、設定された閾値 120との差 を、環境光による上昇分として、閾値の上げ量を定めてもよい。例えば、ドーナツ領 域における白色領域と黒色領域の境界のグラデーション領域 310上の G画素値の理 論値を 60とした場合、設定閾値 120との差は 60となるため、 RGB調整部 62は、 2値 化処理における G画素値の閾値を 180として、 2値化処理部 50に供給する。
[0120] 図 16 (c)は、ドーナツ領域の内径が外径の半分よりも大きくなつた状態を示す。この 場合、中心と外縁とを 1 : 1に分割した地点に存在するセル明度領域 316は、ドーナ ッ領域の白色部分に含まれており、したがって、コーナーセル 104と同一階調のセル 明度領域 316は、 2値ィ匕処理により" 0"に変換されていることになる。例えば、環境が 非常に暗いような場合に、グラデーション領域 310の理論値よりも画素値が低く検出 されることがある。
[0121] したがって、 2値化処理部 50が、 G画素値の範囲を 120〜255に設定してゲーム力 ード 4を 2値化すると、コーナーセル 104を抽出できないことになる。そのため、 G画素 値の抽出範囲を広げて、コーナーセル 104と同一の画素値をもつセル明度領域 316 を抽出できるように、 2値化処理の G画素値の範囲を再設定する必要がある。
[0122] RGB調整部 62は、図 16 (c)に示すドーナツ領域の形状を受け取ると、設定した閾 値(120)が高力つたことを判定し、閾値を低くする必要があることを決定する。例えば RGB調整部 62は、グラデーション領域 310の階調分布をもとに、ドーナツ領域にお ける中心から内径までの距離 (すなわち、白色領域の半径)から、その地点における グラデーション領域 310の G画素値の理論値を求める。その地点の G画素値の理論 値は、本来、 120よりも高い G画素値をとる力 図 16 (c)に示すドーナツ領域では、そ の地点の G画素値が 120として検出されている。したがって、 RGB調整部 62は、ダラ デーシヨン領域 310上の G画素値の理論値と、設定された閾値 120との差を、閾値の 下げ量に定めてもよい。例えば、ドーナツ領域における白色領域と黒色領域の境界 のグラデーション領域 310上の G画素値の理論値を 180とした場合、設定閾値 120と の差は 60となるため、 RGB調整部 62は、 2値化処理における G画素値の閾値を 60 として、 2値化処理部 50に供給する。
[0123] 2値化処理部 50は、 RGB調整部 62より調整された画素値の範囲を受け取ると、そ の範囲をもとにフレーム画像の 2値ィ匕処理を実行する。領域抽出部 60は、 2値化され たデータから、グラデーション領域 310に対応するドーナツ領域を検出して、 RGB調 整部 62に供給する。 RGB調整部 62は、ドーナツ領域をもとに、 2値化処理の閾値を 調整し、 2値化処理部 50にフィードバックする。以上のキャリブレーション処理は、ド 一ナツ領域が、図 16 (a)に示すような状態となるまで実行されてもよい。
[0124] なお、以上は、 2値化する際の G画素値の範囲(閾値)をキャリブレーションする場 合について説明した力 他の R、 B画素値についても同様である。緑色のグラデーシ ヨン領域 310a、 310b, 310cの 2値化処理時の RB画素値の閾値を 20にデフォルト 設定している力 RGB調整部 62は、必要に応じてこのデフォルト値を調整することが 好ましい。
[0125] なお、グラデーション領域 310a、 310b, 310cは、空間的に異なる 3点に存在して おり、環境光などの影響により、その位置によって 2値ィ匕処理時の最適な画素値の範 囲が異なることも考えられる。外部照明の向きにより、グラデーション領域 310a、 310 bの付近が明るぐグラデーション領域 310cの付近が暗いような場合、グラデーション 領域 310cにあわせて、 2値ィ匕する際の閾値を低く設定してもよい。これにより、ゲー ムカード 4の配置位置にかかわらず、コーナーセル 104を検出することが可能となる。
[0126] し力しながら、グラデーション領域 310a、 310b付近では、 2値ィ匕閾値が低く設定さ れることで、コーナーセル 104以外の様々な領域を抽出する可能性が高まる。そのた め、それぞれのグラデーション領域 310の位置における最適な 2値ィ匕閾値を求め、こ の 3点の 2値ィ匕閾値から、プレイエリア 306中の任意の位置における 2値ィ匕閾値を導 出してもよい。例えば、グラデーション領域 310bにおける 2値ィ匕閾値を Tl、グラデー シヨン領域 310cにおける 2値化閾値を Τ2とした場合、グラデーション領域 310bおよ び 310cを結ぶライン上では、 2値ィ匕閾値を T1から T2までリニアに変化させるように 設定してもよい。他の任意の位置についても同様であり、 3点の 2値ィ匕閾値からの距 離に応じて、それぞれの位置における 2値ィ匕閾値が算出されてもよい。これにより、照 明が近い場合など、カードの位置によって照明環境が異なり、撮影されるコード色が 大きく異なるような場合であっても、適切にコードを認識することが可能となる。
[0127] 本実施例のキャリブレーション処理は、定期的に行われることが好ましい。なお、環 境に変化がない場合には、頻繁にキャリブレーション処理が行われる必要性は高くな いため、環境の変化を検知するセンサを別途設け、そのセンサにより環境変化が検 知された場合に、キャリブレーション処理が行われるようにしてもよい。なお、環境変 ィ匕には、ゲーム用マット 300を動力した場合や、外部照明などの明るさが変わった場 合などがある。
[0128] キャリブレーション処理の方法として、グラデーション領域 310の所定位置における 実際の画素値と、撮影の結果得られる測定値との差分から、 2値化閾値を補正しても よいし、グラデーション領域 310を 2値ィ匕したときのドーナツ領域の形状が特定の形 状になるように、 2値化閾値を補正してもよい。後者の場合、例えば、ドーナツ領域の 大小に応じて、 2値ィ匕閾値をインクリメント又はデクリメントし、ドーナツ領域の形状が 理論値に近づくように調整してもよい。また、単に 1つの 2値ィ匕閾値をもとに 2値ィ匕す るだけでなぐ上限と下限の 2つの閾値を設け、その範囲に入るか否かによって 2値 化してもよい。例えば、画素値が 85以上 170以下であれば「0」、それ以外であれば「 1」として 2値ィ匕してもよい。この場合、ある 2値ィ匕閾値の大小によりグラデーション領域 310を 2値化して、グラデーション領域 310の外径を把握してから、上限と下限の 2つ の閾値により特定される中間領域のドーナツ領域の実測結果を取得し、その形状が 理論値に近づくように上限と下限を補正してもよい。また、上述した例と濃淡が逆転し ていてもよぐその場合、反転処理をしてから 2値ィ匕を行ってもよい。
[0129] 図 1に示したように、撮像装置 2は斜め上方力もゲーム用マット 300を撮像するので 、グラデーション領域 310の形状が真円であったとしても、楕円形として認識される可 能性がある。この場合であっても、上述したように、ゲーム用マット 300の位置や方向 などを予め把握することが可能であるから、この情報をもとにグラデーション領域 310 の認識結果であるドーナツ領域の形状を、ァフィン変換や相似変換などにより補正し てから、上述したキャリブレーション処理を行ってもよ!、。
[0130] また、ゲーム用マット 300が固定的に設置されて力もキャリブレーション処理を行うこ とが好ましいので、例えば、グラデーション領域 310の認識処理を複数回行って位置 が変わらないことを確認してから、または、所定時間をおいて再度認識処理を行って 位置が変わらないことを確認してから、キャリブレーション処理を開始してもよい。また 、上述したように、ゲーム用マット 300の幾何情報を取得している場合には、ゲーム用 マット 300とカードゲーム 4の間の距離を算出することにより、ゲームカード 4がゲーム 用マット 300に置かれている(ゲームカード 4とゲーム用マット 300との間の距離がほ ぼ 0であり、かつ、平行である場合)の力、ユーザの手に持たれた状態にある(ゲーム カード 4とゲーム用マット 300との間の距離が離れている力、又は、平行ではない場 合)のかを認識することができる。
[0131] 図 17は、実施例における画像データの伝送システムを示す。画像データ伝送シス テム 200は、画像データを生成する画像データ生成装置 201、画像データを送信す る送信局 204、送信された画像データを受信する端末装置 202を有して構成される 。端末装置 202は、受信した画像データを表示するための表示装置 203を有する。 画像データ伝送システム 200は、無線通信によりデータを伝送しているが、有線通信 によりデータを伝送するものであってもよ 、。
[0132] 画像データ生成装置 201は、上述した 2次元コード、すなわち図 2、図 8、図 9、図 1 0および図 12に関して説明した 2次元コードの画像データを、端末装置 202の表示 装置 203に表示させるためのデータフォーマットにしたがって生成する。画像データ 生成装置 201は、図 2に示す 2次元コードの画像データとして、複数の方形セルを表 示装置 203上の所定の座標位置に表示させるためのデータと、所定の座標位置に 表示される複数の方形セルを取り囲む座標位置に複数のコーナーセルを表示させる ためのデータを生成してもよい。画像データ生成装置 201は、表示装置 203上で、コ ーナーセルが方形セルよりも大きく表示されるように、コーナーセルと方形セルのデ ータを設定する。
[0133] 画像データ生成装置 201は、図 8に示す 2次元コードの画像データとして、複数の 方形セルを表示装置 203上の所定の座標位置に表示させるためのデータと、所定の 座標位置に表示される複数の方形セルを取り囲む座標位置に複数のコーナーセル を表示させるためのデータを生成してもよい。画像データ生成装置 201は、コーナー セルが丸 、形状に表示されるように、コーナーセルのデータを設定する。
[0134] 画像データ生成装置 201は、図 9に示す 2次元コードの画像データとして、所定の 形状を有する基準セルを表示装置上の所定の位置に表示させるためのデータと、基 準セルに対して定められる領域の範囲内で複数の多辺形セルを表示させるための データと、領域を取り囲む座標位置に複数のコーナーセルを表示させるためのデー タを生成してもよい。画像データ生成装置 201は、基準セル、多辺形セル、コーナー セルの少なくとも一つのセルの色が、他のセルの色と異なるように設定する。また画 像データ生成装置 201は、図 10、図 12に示す 2次元コードの画像データとして、所 定の形状を有する基準セルを表示装置上の所定の位置に表示させるためのデータ と、同一形状を有する複数のコーナーセルを表示させるためのデータと、所定の領域 に複数のコーナーセルを表示させるためのデータを生成してもよ 、。画像データ生 成装置 201は、コーナーセルの色を、基準セルおよび多辺形セルとは異なる色に設 定する。
[0135] 送信局 204は、画像データ生成装置 201により生成された画像データを、端末装 置 202に送信する。画像データは、端末装置 202において解凍可能な形式で圧縮さ れていることが好ましぐまた端末装置 202におけるブラウザ機能などにより表示され るデータフォーマットで作成されている必要がある。送信局 204は、例えばセルごとの 画像データを表示座標位置に対応付けて送信することで、データ送信量を削減する ことが可能となる。端末装置 202は、表示装置 203上に 2次元コードを表示する。図 1 のゲームシステム 1において、ユーザは、表示装置 203に表示された 2次元コードを、 ゲームカード 4の代わりに使用して、撮像装置 2により読み取らせることができる。これ により、ユーザは、ゲームカード 4を有していなくても、画像データを端末装置 202に ダウンロードすることで、ゲームシステム 1に参加することができる。
[0136] 以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構 成要素や各処理プロセスの組合せに 、ろ 、ろな変形例が可能なこと、またそうした変 形例も本発明の範囲にあることは当業者に理解されるところである。
産業上の利用可能性
[0137] 本発明は、 2次元コードを備えるカードなどの物体や、その 2次元コードを認識する 装置などに利用することができる。

Claims

請求の範囲
[1] 複数の方形セルを 2次元配置することでコードデータを構成するコードデータ部分 と、
コードデータ部分を取り囲むように配置される複数のコーナーセルと、を備え、 前記コーナーセルは前記方形セルよりも大きな面積を有することを特徴とする物体
[2] 前記コーナーセルは方形または円形であることを特徴とする請求項 1に記載の物体
[3] 複数の方形セルを 2次元配置することでコードデータを構成するコードデータ部分 と、
コードデータ部分を取り囲むように配置された複数のコーナーセルと、を備え、 前記コーナーセルは丸い形状を有することを特徴とする物体。
[4] 2次元コードを表示装置に表示させるためのデータフォーマットにしたがって生成さ れた画像データを伝送する方法であって、伝送する前記画像データが、
複数の方形セルを表示装置上の所定の座標位置に表示させるためのデータと、 所定の座標位置に表示される複数の方形セルを取り囲む座標位置に複数のコー ナーセルを表示させるためのデータとを備え、
前記コーナーセルが前記方形セルよりも大きく表示されるように、前記コーナーセ ルと前記方形セルのデータが設定されていることを特徴とする画像データ伝送方法。
[5] 2次元コードを表示装置に表示させるためのデータフォーマットにしたがって生成さ れた画像データを伝送する方法であって、伝送する前記画像データが、
複数の方形セルを表示装置上の所定の座標位置に表示させるためのデータと、 所定の座標位置に表示される複数の方形セルを取り囲む座標位置に複数のコー ナーセルを表示させるためのデータとを備え、
前記コーナーセルが丸い形状に表示されるように、前記コーナーセルのデータが 設定されて!ゝることを特徴とする画像データ伝送方法。
[6] 所定の形状を有する基準セルと、
それぞれを 2次元配置することでコードデータを構成する複数の多辺形セルと、 複数の多辺形セルが 2次元配置される領域を取り囲むように配置される複数のコー ナーセノレと、
を備え、
前記基準セル、前記多辺形セル、前記コーナーセルの少なくとも一つのセルは、他 のセルと異なる色を付けられることを特徴とする物体。
[7] 前記基準セルは、前記多辺形セルおよび前記コーナーセルとは異なる色をつけら れることを特徴とする請求項 6に記載の物体。
[8] 2次元コードを表示装置に表示させるためのデータフォーマットにしたがって生成さ れた画像データを伝送する方法であって、伝送する前記画像データが、
所定の形状を有する基準セルを表示装置上の所定の位置に表示させるためのデ ータと、
前記基準セルに対して定められる領域の範囲内で複数の多辺形セルを表示させる ためのデータと、
前記領域を取り囲む座標位置に複数のコーナーセルを表示させるためのデータと を備え、
前記基準セル、前記多辺形セル、前記コーナーセルの少なくとも一つのセルの色 力 他のセルの色と異なるように設定されて ヽることを特徴とする画像データ伝送方 法。
[9] フレーム画像に含まれるオブジェクト画像を認識する画像解析装置であって、当該 オブジェクト画像は、所定の形状を有する基準セルと、前記基準セルとは異なる色を 付けられた複数のコーナーセルとを有して構成されており、
RGBの画素値の範囲を設定して、フレーム画像を 2進数のビット表現に変換する 2 値化処理部と、
フレーム画像の 2値化データから基準セルを検出する第 1検出部と、
フレーム画像の 2値ィ匕データ力 コーナーセルを検出する第 2検出部とを備え、 前記 2値化処理部は、前記基準セル用の RGBの画素値の範囲を設定して、設定し た画素値の範囲内にある画素を抽出してフレーム画像の 2値化処理を行い、その 2 値ィ匕データをもとに第 1検出部が基準セルを検出し、 また前記 2値ィ匕処理部は、前記コーナーセル用の RGBの画素値の範囲を設定して 、設定した画素値の範囲内にある画素を抽出してフレーム画像の 2値化処理を行い 、その 2値ィ匕データをもとに第 2検出部がコーナーセルを検出することを特徴とする画 像解析装置。
[10] フレーム画像に含まれるオブジェクト画像を認識する方法であって、当該オブジェク ト画像は、所定の形状を有する基準セルと、前記基準セルとは異なる色を付けられた 複数のコーナーセルとを有して構成されており、
前記基準セル用の RGBの画素値の範囲を設定し、設定した画素値の範囲内にあ る画素を抽出して、前記フレーム画像力も前記基準セルを検出するステップと、 前記コーナーセル用の RGBの画素値の範囲を設定し、設定した画素値の範囲内 にある画素を抽出して、前記フレーム画像力も前記コーナーセルを検出するステップ と、
を備えることを特徴とするオブジェクト認識方法。
[11] コンピュータに、フレーム画像に含まれるオブジェクト画像を認識させるプログラムで あって、当該オブジェクトは、所定の形状を有する基準セルと、前記基準セルとは異 なる色を付けられた複数のコーナーセルとを有して構成されており、
前記基準セル用の RGBの画素値の範囲を設定させ、設定した画素値の範囲内に ある画素を抽出させて、前記フレーム画像力 前記基準セルを検出させる機能と、 前記コーナーセル用の RGBの画素値の範囲を設定させ、設定した画素値の範囲 内にある画素を抽出させて、前記フレーム画像から前記コーナーセルを検出させる 機能と、
を実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
[12] 所定の形状を有する基準セルと、
コードデータを構成する複数の多辺形セルと、
同一形状を有する複数のコーナーセルと、
を備え、
前記多辺形セルは、前記複数のコーナーセルより取り囲まれる領域以外の部分に 配置されることを特徴とするカード。
[13] 前記コーナーセルは、前記基準セルおよび前記多辺形セルとは異なる色を付けら れることを特徴とする請求項 12に記載のカード。
[14] 前記コーナーセルは三角形であることを特徴とする請求項 12または 13に記載の力 ード。
[15] 前記コーナーセルは、当該カードの縁部力 設けられ、黒色以外の色をつけられる ことを特徴とする請求項 12から 14のいずれかに記載のカード。
[16] 所定の形状を有する基準セルと、
コードデータを構成する複数の多辺形セルと、
同一形状を有する複数のコーナーセルと、
を備えた矩形状のカードであって、
前記複数のコーナーセルは、当該カードの相対向する第 1縁部および第 2縁部に おいて設けられ、
前記複数の多辺形セルの少なくとも一部は、前記第 1縁部および前記第 2縁部とは 異なる第 3縁部の近傍において、当該第 3縁部に沿って設けられることを特徴とする カード。
[17] 前記複数の多辺形セルの一部が、前記第 3縁部に対向する第 4縁部の近傍におい て、当該第 4縁部に沿って設けられており、前記第 3縁部と前記第 4縁部に設けられ た複数の多辺形セルが、 1つの 2次元コードを構成することを特徴とする請求項 16に 記載のカード。
[18] 前記複数のコーナーセルにより取り囲まれる領域には、前記多辺形セルおよび前 記基準セルが形成されないことを特徴とする請求項 16または 17に記載のカード。
[19] ゲーム用カードを配置するためのゲーム用マットであって、段階的に明度が変化す るグラデーション領域が設けられることを特徴とするゲーム用マット。
[20] 前記グラデーション領域は、当該ゲーム用マット上に複数設けられ、
それぞれのグラデーション領域は、同一の色相で構成されることを特徴とする請求 項 19に記載のゲーム用マット。
[21] 前記グラデーション領域の外縁は円形であり、グラデーション領域の中心から外縁 に向かう方向に、高明度力 低明度に明度が同心円状に段階的に変化することを特 徴とする請求項 19または 20に記載のゲーム用マット。
[22] 所定の色をもつセルをもつゲーム用カードと、
前記ゲーム用カードのセルと同一の色相の色により構成され、段階的に明度が変 化するグラデーション領域を有するゲーム用マットと、
前記ゲーム用マットと、前記ゲーム用マット上に置かれる前記ゲーム用カードを撮 像してフレーム画像を取得する撮像部と、
RGBの画素値の範囲を設定して、フレーム画像を 2進数のビット表現に変換する 2 値化処理部と、
フレーム画像の 2値ィ匕データにおける前記ゲーム用マットのグラデーション領域を 抽出する抽出部と、
グラデーション領域の 2値化データをもとに、前記 2値化処理部にお ヽて 2値化する 際の RGBの画素値の範囲を調整する調整部と、
を備えることを特徴とするカードゲームシステム。
[23] 前記グラデーション領域の外縁は円形であり、グラデーション領域の中心から外縁 に向かう方向に、高明度力 低明度に明度が同心円状に段階的に変化することを特 徴とする請求項 22に記載のカードゲームシステム。
[24] 前記グラデーション領域は、前記ゲーム用カードのセルの明度よりも高い明度をも つ領域と、低い明度をもつ領域とを少なくとも含むことを特徴とする請求項 22または 2 3に記載のカードゲームシステム。
[25] 所定の色のセルをもつゲーム用カードと、前記ゲーム用カードのセルと同一の色相 の色により構成され、段階的に明度が変化するグラデーション領域を有するゲーム用 マットとを撮像したフレーム画像を解析する画像解析装置であって、
RGBの画素値の範囲を設定して、フレーム画像を 2進数のビット表現に変換する 2 値化処理部と、
フレーム画像の 2値ィ匕データ力 前記ゲーム用マットのグラデーション領域を抽出 する抽出部と、
グラデーション領域の 2値化データをもとに、前記 2値化処理部にお ヽて 2値化する 際の RGBの画素値の範囲を調整する調整部と、 を備えることを特徴とする画像解析装置。
[26] 所定の色をもつセルをもつゲーム用カードと、前記ゲーム用カードのセルと同一の 色相の色により構成され、段階的に明度が変化するグラデーション領域を有するゲ ーム用マットとを撮像したフレーム画像を解析する画像解析方法であって、
RGBの画素値の範囲を設定して、フレーム画像を 2進数のビット表現に変換するス テツプと、
フレーム画像の 2値ィ匕データにおける前記ゲーム用マットのグラデーション領域を 抽出するステップと、
グラデーション領域の 2値化データをもとに、 2値ィ匕する際の RGBの画素値の範囲 を調整するステップと、
を備えることを特徴とする画像解析方法。
[27] コンピュータに、所定の色をもつセルをもつゲーム用カードと、前記ゲーム用カード のセルと同一の色相の色により構成され、段階的に明度が変化するグラデーション領 域を有するゲーム用マットとを撮像したフレーム画像を解析させるプログラムであって
RGBの画素値の範囲を設定して、フレーム画像を 2進数のビット表現に変換させる 機能と、
フレーム画像の 2値ィ匕データにおける前記ゲーム用マットのグラデーション領域を 抽出させる機能と、
グラデーション領域の 2値化データをもとに、 2値ィ匕する際の RGBの画素値の範囲 を調整させる機能と、
を実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2005/018926 2004-10-15 2005-10-14 物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法 WO2006041149A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE602005026145T DE602005026145D1 (de) 2004-10-15 2005-10-14 Karte und bilddatenübertragungsverfahren
AT05793212T ATE497219T1 (de) 2004-10-15 2005-10-14 Karte und bilddatenübertragungsverfahren
EP05793212A EP1801735B1 (en) 2004-10-15 2005-10-14 Card and image data transmission method
US10/590,759 US7661601B2 (en) 2004-10-15 2005-10-14 Object, image data, image data transmission method, card, game mat, card game system, image analysis device, and image analysis method
US12/534,979 US8066195B2 (en) 2004-10-15 2009-08-04 Object, image data, image data transmission method, card, game mat, card game system, image analysis apparatus, and image analysis method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2004301310A JP3827694B2 (ja) 2004-10-15 2004-10-15 物体、画像データおよび画像データ伝送方法
JP2004-301310 2004-10-15
JP2005-269295 2005-09-15
JP2005269295A JP4364186B2 (ja) 2005-09-15 2005-09-15 カード

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US10/590,759 A-371-Of-International US7661601B2 (en) 2004-10-15 2005-10-14 Object, image data, image data transmission method, card, game mat, card game system, image analysis device, and image analysis method
US12/534,979 Division US8066195B2 (en) 2004-10-15 2009-08-04 Object, image data, image data transmission method, card, game mat, card game system, image analysis apparatus, and image analysis method

Publications (1)

Publication Number Publication Date
WO2006041149A1 true WO2006041149A1 (ja) 2006-04-20

Family

ID=36148435

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/018926 WO2006041149A1 (ja) 2004-10-15 2005-10-14 物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法

Country Status (6)

Country Link
US (2) US7661601B2 (ja)
EP (2) EP1801735B1 (ja)
KR (1) KR100858399B1 (ja)
AT (1) ATE497219T1 (ja)
DE (1) DE602005026145D1 (ja)
WO (1) WO2006041149A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110049234A1 (en) * 2007-06-21 2011-03-03 Kenji Yoshida Card surface reading/instruction executing method
CN102125756A (zh) * 2009-12-01 2011-07-20 环球娱乐株式会社 能够跟踪游戏纸牌的游戏台
US10275626B2 (en) 2014-02-07 2019-04-30 Sony Interactive Entertainment Inc. Sheet body, steroscopic object, and information code reading system
US10412353B2 (en) 2016-04-18 2019-09-10 Sony Interactive Entertainment Inc. Processing apparatus and image projecting method

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020770B2 (en) * 2005-09-07 2011-09-20 International Business Machines Corporation Display method and display apparatus
JP4046754B1 (ja) * 2006-08-25 2008-02-13 株式会社コナミデジタルエンタテインメント ゲーム装置、報知方法、および、プログラム
KR100873321B1 (ko) 2006-12-13 2008-12-10 삼성전자주식회사 주변 상황을 인지하는 기기 및 방법
JP3998701B1 (ja) * 2006-12-28 2007-10-31 健治 吉田 ドットパターンが設けられたカード
JP4856585B2 (ja) * 2007-06-07 2012-01-18 株式会社ユニバーサルエンターテインメント 個人識別通信システム及び個人識別通信システムにおいて実行されるプログラム
JP2009124510A (ja) * 2007-11-15 2009-06-04 Canon Inc 表示制御装置及びその方法、プログラム、記録媒体
US7874496B2 (en) * 2008-01-04 2011-01-25 Microsoft Corporation Optically readable tag
EP2695147B1 (fr) * 2011-04-05 2019-03-06 Franck Guigan Code-barres de sécurité
JP5756322B2 (ja) * 2011-04-08 2015-07-29 任天堂株式会社 情報処理プログラム、情報処理方法、情報処理装置および情報処理システム
JP5531061B2 (ja) * 2012-07-09 2014-06-25 株式会社スクウェア・エニックス ゲーム装置
CN103839164A (zh) * 2012-11-27 2014-06-04 爱申德科技有限公司 平面媒体的交互式服务方法
CN103034945A (zh) * 2012-12-03 2013-04-10 黄敏 一种基于手机二维码服装防伪方法
KR101427715B1 (ko) * 2012-12-31 2014-08-07 아주대학교산학협력단 큐알 코드 인식 장치 및 방법
GB2533134A (en) * 2014-12-11 2016-06-15 Sony Computer Entertainment Inc Exercise mat, entertainment device and method of interaction between them
CN104657700B (zh) * 2015-03-25 2017-07-25 广州宽度信息技术有限公司 一种二维码抗损坏解码方法
WO2017082607A1 (en) * 2015-11-09 2017-05-18 Samsung Electronics Co., Ltd. Electronic device and operating method of the same
JP2017091140A (ja) * 2015-11-09 2017-05-25 三星電子株式会社Samsung Electronics Co.,Ltd. コード送受信システム、コード受信装置、コード送信装置、コード受信方法、コード送信方法、及びプログラム
KR20180040469A (ko) * 2016-10-12 2018-04-20 엘지이노텍 주식회사 이미지 정합 방법 및 장치
CN106548111B (zh) * 2016-10-26 2019-04-16 凌云光技术集团有限责任公司 一种二维码外观缺陷检测方法及装置
KR102086338B1 (ko) 2019-07-19 2020-03-09 오치현 선박 추진장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0338791A (ja) * 1989-06-30 1991-02-19 Veritel Inc 確認用シンボルとその確認装置
JPH08329172A (ja) * 1995-06-01 1996-12-13 Sharp Corp デジタル情報記録方法およびデジタル情報解読装置
JPH10503304A (ja) * 1994-04-29 1998-03-24 エレクトロニック・オートメーション・リミテッド 機械可読なバイナリ・コード
JPH10208001A (ja) * 1997-01-28 1998-08-07 Denso Corp 2次元コードおよび2次元コードの読取方法
JPH11353436A (ja) * 1998-06-04 1999-12-24 Toyota Central Res & Dev Lab Inc 表象コード及びそのコード化方法
JP2003256876A (ja) * 2002-03-04 2003-09-12 Sony Corp 複合現実感表示装置及び方法、記憶媒体、並びにコンピュータ・プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB479300A (en) * 1936-08-10 1938-02-03 Michael Freiman Game apparatus
US5726435A (en) * 1994-03-14 1998-03-10 Nippondenso Co., Ltd. Optically readable two-dimensional code and method and apparatus using the same
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JPH10320497A (ja) * 1997-05-16 1998-12-04 Olympus Optical Co Ltd コード読取記録装置
JP3207146B2 (ja) 1997-12-25 2001-09-10 ローム株式会社 半導体装置の製法
US6267296B1 (en) * 1998-05-12 2001-07-31 Denso Corporation Two-dimensional code and method of optically reading the same
JP3794463B2 (ja) 1998-06-30 2006-07-05 ソニー株式会社 多次元コード認識処理方法、多次元コード認識処理装置、および多次元コード認識処理プログラム
JP3010293B1 (ja) * 1999-01-28 2000-02-21 一男 佐藤 二次元コ―ドの形成方法
JP2001138583A (ja) 1999-11-11 2001-05-22 Seiko Epson Corp 印刷装置
JP3736440B2 (ja) * 2001-02-02 2006-01-18 株式会社セガ カード及びカードゲーム装置
JP4884591B2 (ja) * 2001-03-06 2012-02-29 株式会社ハル研究所 コード読取装置、娯楽システム及び記録媒体
US6631905B1 (en) * 2002-04-16 2003-10-14 Sandy Slade Game apparatus and method for teaching basketball skills
US20040002387A1 (en) * 2002-06-26 2004-01-01 Grady Daniel Patrick Card reader and scanner device and methods of using same
JP2004145475A (ja) 2002-10-22 2004-05-20 Patent One Kk 識別情報発行システム及び方法、識別情報認証システム及び方法、並びにプログラム
JP3996520B2 (ja) * 2003-01-30 2007-10-24 株式会社デンソーウェーブ 二次元情報コードおよびその生成方法
US20040160005A1 (en) * 2003-02-18 2004-08-19 Krise David A. Gaming table playing surface
JP3851907B2 (ja) * 2004-02-18 2006-11-29 株式会社ソニー・コンピュータエンタテインメント 画像表示システム及びビデオゲームシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0338791A (ja) * 1989-06-30 1991-02-19 Veritel Inc 確認用シンボルとその確認装置
JPH10503304A (ja) * 1994-04-29 1998-03-24 エレクトロニック・オートメーション・リミテッド 機械可読なバイナリ・コード
JPH08329172A (ja) * 1995-06-01 1996-12-13 Sharp Corp デジタル情報記録方法およびデジタル情報解読装置
JPH10208001A (ja) * 1997-01-28 1998-08-07 Denso Corp 2次元コードおよび2次元コードの読取方法
JPH11353436A (ja) * 1998-06-04 1999-12-24 Toyota Central Res & Dev Lab Inc 表象コード及びそのコード化方法
JP2003256876A (ja) * 2002-03-04 2003-09-12 Sony Corp 複合現実感表示装置及び方法、記憶媒体、並びにコンピュータ・プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110049234A1 (en) * 2007-06-21 2011-03-03 Kenji Yoshida Card surface reading/instruction executing method
CN102125756A (zh) * 2009-12-01 2011-07-20 环球娱乐株式会社 能够跟踪游戏纸牌的游戏台
US10275626B2 (en) 2014-02-07 2019-04-30 Sony Interactive Entertainment Inc. Sheet body, steroscopic object, and information code reading system
US10412353B2 (en) 2016-04-18 2019-09-10 Sony Interactive Entertainment Inc. Processing apparatus and image projecting method

Also Published As

Publication number Publication date
EP1801735B1 (en) 2011-01-26
US20090321521A1 (en) 2009-12-31
KR20060123625A (ko) 2006-12-01
EP2330536A3 (en) 2012-01-18
EP2330536A2 (en) 2011-06-08
EP2330536B1 (en) 2013-03-27
DE602005026145D1 (de) 2011-03-10
US7661601B2 (en) 2010-02-16
US8066195B2 (en) 2011-11-29
ATE497219T1 (de) 2011-02-15
KR100858399B1 (ko) 2008-09-11
EP1801735A1 (en) 2007-06-27
EP1801735A4 (en) 2009-09-16
US20070181684A1 (en) 2007-08-09

Similar Documents

Publication Publication Date Title
WO2006041149A1 (ja) 物体、画像データ、画像データ伝送方法、カード、ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法
CN110036258B (zh) 信息处理装置和信息处理方法
US8594376B2 (en) Computer-readable storage medium having information processing program stored therein, information processing method, information processing apparatus, and information processing system
US9858500B2 (en) Fast interest point extraction for augmented reality
US20130235078A1 (en) Image processing device, image processing method and computer-readable medium
US8649603B2 (en) Computer-readable storage medium having information processing program stored therein, information processing method, information processing apparatus, and information processing system
CN107567632A (zh) 具有可跟踪性测量结果的关键点检测
US20050129316A1 (en) Method for classifying a digital image
CN105009170A (zh) 物体识别设备、方法和存储介质
JP2007058634A (ja) 画像処理方法及び装置、デジタルカメラ装置、並びに画像処理プログラムを記録した記録媒体
CN102073974A (zh) 图像处理系统、图像处理设备、图像处理方法以及程序
US9501681B1 (en) Decoding visual codes
CN107018407B (zh) 信息处理装置、评价用图、评价系统、以及性能评价方法
US20200329220A1 (en) Image processing apparatus and method
JP6019114B2 (ja) ポータブル端末用の歩行者の足取り認識方法および装置
JP4312185B2 (ja) ゲーム用マット、カードゲームシステム、画像解析装置、画像解析方法
JP4364186B2 (ja) カード
EP3251091B1 (en) Hybrid visual tagging using customized colored tiles
US20140098991A1 (en) Game doll recognition system, recognition method and game system using the same
CN104982032A (zh) 3d图像数据分割的方法和装置
JP3827694B2 (ja) 物体、画像データおよび画像データ伝送方法
JP4252519B2 (ja) 画像解析装置、オブジェクト認識方法、カード、画像データ、画像データ伝送方法および画像解析システム
KR101836768B1 (ko) 물체 인식 기반의 자동 영상 컬러 밸런스 시스템 및 방법과 이에 관한 기록매체
Baroffio et al. Performance evaluation of object recognition tasks in visual sensor networks
JP5314521B2 (ja) 画像処理システム及び画像処理方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

WWE Wipo information: entry into national phase

Ref document number: 1020067018844

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1020067018844

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 10590759

Country of ref document: US

Ref document number: 2007181684

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2005793212

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2005793212

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10590759

Country of ref document: US