GB2414101A - Trading card recognition utilizing colour coded data - Google Patents
Trading card recognition utilizing colour coded data Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record 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/06009—Record 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/06037—Record 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.
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)
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)
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 |
-
2004
- 2004-05-12 GB GB0410514A patent/GB2414101A/en not_active Withdrawn
Patent Citations (2)
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)
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) |