GB2414101A - Trading card recognition utilizing colour coded data - Google Patents

Trading card recognition utilizing colour coded data Download PDF

Info

Publication number
GB2414101A
GB2414101A GB0410514A GB0410514A GB2414101A GB 2414101 A GB2414101 A GB 2414101A GB 0410514 A GB0410514 A GB 0410514A GB 0410514 A GB0410514 A GB 0410514A GB 2414101 A GB2414101 A GB 2414101A
Authority
GB
United Kingdom
Prior art keywords
data
camera
identify
trading card
segments
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB0410514A
Other versions
GB0410514D0 (en
Inventor
Patrick Buckland
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HAPPY SOCCER BOSS Co Ltd
Original Assignee
HAPPY SOCCER BOSS Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HAPPY SOCCER BOSS Co Ltd filed Critical HAPPY SOCCER BOSS Co Ltd
Priority to GB0410514A priority Critical patent/GB2414101A/en
Publication of GB0410514D0 publication Critical patent/GB0410514D0/en
Publication of GB2414101A publication Critical patent/GB2414101A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

A system for reading and processing colour coded information located on a substrate, in the form of a trading card, the system comprises a low quality camera with associated software means for scanning the coloured segments on the substrate. The coloured segments encode a unique ID. The software means is able to identify the unique ID from the scanned coloured segments. The coloured segments may be in the form of a ring with a central region for detection and/or orientation purposes. The camera maybe associated with a personal computer, video games console and/or arcade machine.

Description

TRADING CARD RECOGNITION
Description
The invention is a technique to allow low-quality video cameras connected to computers and video games consoles to read complicated information from printed materials, in a manner highly resilient to focus, light- levels, distance from camera, obscuration, foreshortening and perspective distortion, movement etc. From this point on the term computer shall mean Personal Computer, video gaming console, or arcade machine.
Initially intended to allow a computer equipped with a camera to be able to quickly and accurately recognise a trading card held up by a player, this method could be used whenever a video games console or computer needs to read a unique ID from a physical object.
Example
The game is a multi-player experience where the players have physical trading cards like Pokemon, Magic the Gathering, Yu-gi-oh! etc. The computer needs to know what cards the player has, and what he is doing with them. In order to achieve this, information is printed on the card of a nature that the player cannot read, and of a type that it is difficult for the player to even remember the association between a certain card and certain pattern.
The goal is for the player not to have to tell the computer that he's holding up a card for it to read, but for it to recognise the fact that he is doing so automatically.
Problems 1. The computer needs to recognize that the data is being presented to it at all.
2. The computer must be able to extract a number out of this data.
3. The reading must be resilient to a number of factors, including but not limited to: i. Fingers or other items obscuring part of the data ii. Dirt on the data or damaged materials iii. Orientation of the data iv. Specular reflections on the data Solutions Items i, ii, and iv, above are simply solved by the following: The data is repeated Our times - in the case of a playing card, the surface is split into four quadrants with an identical copy of the data in each. The data is orientated identically in each, which limits the chances of one part of the data being obscured in all four views. For instance, if the card is held between the thumb and fores nger of each hand at each side, all parts of the data are still visible, somewhere on the card: FIGURE ONE shows a possible layout and an example of obstruction.
In addition to this, the number that is extracted has a checksum in order to avoid false readings.
The data is expressed by segments of colour as shown in FIGURE TWO The amount of data that can be encoded is scalable according to how many segments are used. The more segments, the more data can be stored, but the smaller the areas will be, thus the harder it will be for the camera to read the data, particularly under difficult conditions. The amount of data can be easily doubled-up - and more - by splitting the images into multiple concentric rings: FIGURE THREE shows data doubling using concentric rings.
Each area of the data is filled with a solid colour. The colour is one of the following ROB values, red, green, or blue. Each of which has a base 3 number associated with it as follows 0: R=100% G=0 B=0 RED 1: R=0 G=100% B=0 GREEN 2: R=0 G=0 B=100% BLUE The solution is not limited to the use of these colours.
Therefore a base-3 number can be extracted from the colours around the segments. For instance: 121200113 would equate to 40540 in decimal, or 0x00000fd6 hex. The largest number that can be stored thus in 8 segments is 222222223, which is 6560o or 0x000019aO. With three concentric circles, this goes up to 2222222222222222222222223, which is 282429536480 or 0x41C21CB8E0.
This gives us a total of 34 bits of information, which has the potential of 24 bits (16 million unique combinations) with 10 bits of checksum, or anything in between.
That's how the data is stored, but three problems remain: i. Identifying the location of data anywhere in a general image ii. Identifying the orientation of this data iii. Reading the data We use a colour that appears rarely in the real world, and which has a clear mathematical signature. We then take a circle of this colour and surround it by two areas of other rare but easily identifiable colours. The ideal candidates are the complementary colours: R=100% G=100% B=0 YELLOW R=100% G=0 B=100% MAGENTA R=0 G=100% B=100% CYAN Of these, magenta appears most rarely in the 'real' world.
We end up with the pattern in FIGURE FOUR, 1) being Yellow, 2 being Magenta, and 3) Cyan.
The solution is not limited to the use of these colours.
When combined with a triple ring set of colour-coded data, an example image might be as FIGURE FIVE To see if we have any data in an image, we perform the following algorithm: Scan for magenta pixels.
When found, scan around for non-magenta pixels, ending up with a contiguous blob of magenta.
Determine the centre of this 'blob' Move radially outwards in all directions, looking for cyan and yellow We end up with a definition that includes for each, approx 5 degree radius from the centre, where the magenta ends, and where the yellow or cyan starts and ends.
From the pattern of these dimensions, we determine the angle to the camera-normal that the data is being presented at, and calculate the perspective distortion. Given these two pieces of information, we project the rest of the data into circular form. This projection will also be used later when extracting the data.
From this we decide whether we have detected data or not. For it to be considered data, the following must be true: There is yellow and cyan around the magenta Start at yellow. As we scan around, when yellow changes to cyan, keep scanning the cyan. When it changes back to yellow, make sure it's 180 degrees (+/- a tolerance) of the previous transition. Keep scanning. Make sure it doesn't go back to cyan again before the first transition.
If this is true, we not only know that it's data, but we also know the orientation - the top is the transition between yellow and cyan.
We can then scan around this pattern and determine the colours in each of the data segments. Should a colour be outside of the tolerance for red, green or blue, it is marked as 'unknown'.
When the image is finished being scanned, there will be one or more data candidates.
Where there are unknown segments, other candidates are tried to see if all segments that are known match each other. If they do, then segments that are known on one image can be copied over to unknown ones in another. From this, you should usually be able to construct a whole set of data.
Should there be incomplete matches, and assuming the system is set up to only ready a single piece of presented data at a time, you can use a voting system to get a best guess.
This even handles the cases where painted fingernails are holding the card, covering some of the segments but with perfectly valid colours.
Combined with a checksum, this will be able to get an accurate result. :.
When actually determining whether a pixel is red, green, blue, magenta, cyan or yellow, the code actually just compares the relative magnitudes of the channels. If for instance green is "much lower" than red and blue, it's treated as magenta. If blue is "much higher" than red and green, it's blue, etc. This will make the determination independent of lighting levels, shadows etc (excluding coloured lights).

Claims (4)

1. A software technique to allow low-quality video cameras connected to a personal computer, or a video game console, or an arcade machine to read and identify complicated information from printed materials or a physical object.
2. A software technique as claimed in Claim 1, that is highly resilient to focus, light-levels, distance from camera, obscuration, foreshortening and perspective distortion, and movement.
3. A software technique as claimed in Claim 1 for reading a visual moniker off the back of printed material, held up to a camera, in order to identify the information on the printed material quickly and with a high success rate.
4. A method as detailed in Claims 1-3, used to read information off a trading card held up to a video camera attached to a personal computer, or a video game console, or an arcade machine, and thus allow the computer to identify the contents of the card by the means of a unique id stored on the printed material in the way of an image.
GB0410514A 2004-05-12 2004-05-12 Trading card recognition utilizing colour coded data Withdrawn GB2414101A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0410514A GB2414101A (en) 2004-05-12 2004-05-12 Trading card recognition utilizing colour coded data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0410514A GB2414101A (en) 2004-05-12 2004-05-12 Trading card recognition utilizing colour coded data

Publications (2)

Publication Number Publication Date
GB0410514D0 GB0410514D0 (en) 2004-06-16
GB2414101A true GB2414101A (en) 2005-11-16

Family

ID=32526847

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0410514A Withdrawn GB2414101A (en) 2004-05-12 2004-05-12 Trading card recognition utilizing colour coded data

Country Status (1)

Country Link
GB (1) GB2414101A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10317335B2 (en) * 2014-07-16 2019-06-11 International Business Machines Corporation Reflective tag and polarized light sensor for transmitting information

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6647142B1 (en) * 1999-08-19 2003-11-11 Mitsubishi Electric Research Laboratories, Inc. Badge identification system
WO2004081857A1 (en) * 2003-03-10 2004-09-23 Kenichi Ueda Color dot code system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6647142B1 (en) * 1999-08-19 2003-11-11 Mitsubishi Electric Research Laboratories, Inc. Badge identification system
WO2004081857A1 (en) * 2003-03-10 2004-09-23 Kenichi Ueda Color dot code system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10317335B2 (en) * 2014-07-16 2019-06-11 International Business Machines Corporation Reflective tag and polarized light sensor for transmitting information
US10648904B2 (en) 2014-07-16 2020-05-12 International Business Machines Corporation Reflective tag and polarized light sensor for transmitting information

Also Published As

Publication number Publication date
GB0410514D0 (en) 2004-06-16

Similar Documents

Publication Publication Date Title
US10398966B2 (en) Methods for automatically generating a card deck library and master images for a deck of cards, and a related card processing apparatus
US9764222B2 (en) System and method for calculating values in tile games
CA2537232C (en) Systems, methods, and devices for monitoring card games, such as baccarat
US9498721B2 (en) System and method for object extraction
EP1677879A1 (en) Method and apparatus for determining an initial hand in a playing card game, such as blackjack or baccarat
JP5565606B2 (en) Game device
US9189918B1 (en) Camera for player authentication and monitoring of wagering game tables
US20200023269A1 (en) Game system
WO2014182845A2 (en) Game system with marked play-pieces
JP7464784B2 (en) GAME PROGRAM, INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING METHOD
RU2707808C1 (en) Device for recognizing of dice and method of recognizing of dice
GB2414101A (en) Trading card recognition utilizing colour coded data
JP5842953B2 (en) Game device
JP6593928B2 (en) Information processing apparatus and program
JP2018118074A (en) Game device
Zutis et al. Who’s counting? real-time blackjack monitoring for card counting detection
US10576362B2 (en) Card with machine-readable markings, system and method
JP5717018B2 (en) Game device
JP2014230930A (en) Game device
JP2014184314A (en) Game device
JP2002159744A (en) Game system, recording medium and array judgment method

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)