Game method, game system, and machine readable medium
Through neural network model, the game table image is analyzed, the object differences in the game system are detected and calibrated, which solves the problem of the coordination complexity of cameras and projectors in the prior art, and realizes the fast and reliable self-calibration of the game system in a dynamic environment.
Patent Information
- Application Number
- CN202510178716.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2021-05-13
- Filing Date
- 2021-07-09
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2041-07-09
AI Technical Summary
Existing gaming systems have challenges in coordinating the complexity of cameras and projectors, especially in dynamic gaming environments, making it difficult for the system to self-calibrate and restore precise services.
The image of the game table is electronically analyzed through a neural network model, and objects on the same plane as the game table surface are detected, such as encoding reference marks, and the differences between the object and the physical features of the game table visible in the image are determined through isomorphic transformation, thereby realizing automatic calibration of the system.
This method allows the game system to automatically calibrate in a dynamic game environment, ensuring the accurate projection and display of game content, and improving the system's self-calibration speed and reliability.
Smart Images

Figure CN120094198A_ABST
Abstract
Description
[0001] This application is a divisional application of the patent application with application number 202110776487.2, application date July 9, 2021, and invention name “Gaming environment tracking system calibration”. Technical Field
[0002] The present invention relates generally to gaming systems, devices and methods, and more particularly to image analysis and tracking of physical objects in a gaming environment. Background Art
[0003] The gaming environment is a dynamic environment, in which people such as players, gaming customers, gaming staff, etc. make actions that affect the state of the gaming environment, the state of the player, etc. For example, a player can use one or more physical tokens to play games. Players can make gestures to perform game actions and / or convey instructions during the game, such as making gestures to call, stop, discard, etc. In addition, players can move physical cards, dice, game props, etc. Many other actions and events may occur at any given time. In order to effectively manage this dynamic environment, the gaming operator can use one or more tracking systems or technologies to monitor the various aspects of the gaming environment, such as credit balance, player account information, player movement, game gambling events, etc. The tracking system can generate the historical records of these monitored aspects so that the gaming operator can promote, for example, a safe gaming environment, enhanced game features, and / or enhanced player features (e.g., rewards and benefits for known players with player accounts).
[0004] Some gaming systems can perform object tracking within the gaming environment. For example, a gaming system with a camera can capture an image feed of the gaming area to identify certain physical objects or detect certain activities, such as placement actions, player movements, etc.
[0005] Some gaming systems also include a projector. For example, a gaming system with a camera and a projector can use the camera to capture images of the gaming area for electronic analysis to detect objects / activity in the gaming area. The gaming system can also use the projector to project relevant content into the gaming area. A gaming system that can perform object tracking and relevant projection of content can provide many benefits, such as better customer service, increased security, improved gaming features, faster gameplay, etc.
[0006] However, a challenge of such gaming systems is the complexity of coordinating system elements. For example, a camera can take a picture of a gaming table from one viewing angle (i.e., from the viewing angle of a camera lens), while a projector projects images from different viewing angles (i.e., from the viewing angle of a projector lens). These viewing angles cannot be fully aligned with each other because the camera and projector are independent devices. What increases complexity is that the camera and projector may need to be positioned in a manner that is not directly facing the surface of the gaming table. Therefore, the camera viewing angle and the projector viewing angle are not orthogonal to the plane of the surface, and therefore are not aligned with the projection surface. What further increases this challenge is that sometimes in a busy gaming environment, gaming venue customers, gaming venue employees, or other people may (whether intentionally or unintentionally) move the camera or projector, thereby changing the relative viewing angle. If the camera and projector are used to track gaming activities at the gaming table, the camera and projector will need to be reconfigured mutually so that accurate and reliable service can be restored.
[0007] Therefore, there is a need for a new tracking system that can adapt to the challenges of a dynamic playground gaming environment. Summary of the invention
[0008] According to one aspect of the present disclosure, a system for gaming is provided.
[0009] A method and apparatus for automatically calibrating one or more properties of a gaming system. For example, the gaming system detects one or more objects (e.g., one or more encoded fiducial markers) that are coplanar with the surface of a gaming table through electronic analysis of an image by a neural network model. The gaming system also determines differences (e.g., in position and orientation) between the one or more objects and one or more physical features of the gaming table visible in the image through isomorphic transformations associated with the one or more objects. The gaming system automatically calibrates the gaming system based on the differences.
[0010] In one aspect, a method of operating a gaming table system is disclosed. The method includes: in response to electronic analysis of image data of a gaming table by a neural network model, automatically detecting a set of points of interest coplanar with a surface of the gaming table, wherein the set of points of interest includes a first set of position values having a first spatial relationship relative to a frame of the image data; in response to the electronic analysis, converting the first set of position values to a second set of position values relative to gaming content positioned within a virtual scene superimposed on the frame of the image data, wherein the second set of position values has a second spatial relationship isomorphic to the first spatial relationship; and in response to the conversion, automatically calibrating properties of the gaming table system related to presentation of the gaming content.
[0011] Automatically detecting a set of points of interest may include automatically determining one or more identifier values for the set of points of interest by modifying one or more image characteristic values of the image data.
[0012] The conversion may include: determining a polygonal shape of a first portion of the first set of position values through the electronic analysis, wherein the first portion of the first set of position values surrounds a second portion of the first set of position values; performing polygon triangulation on the polygonal shape using the first set of position values as points on a convex hull and the second portion of the first set of position values as interior points of the convex hull; and associating at least some of the one or more identifier values with an area of interest on the surface related to the game content.
[0013] The set of interest points may include a plurality of binary square fiducial markers organized into a checkerboard, wherein each of the binary square fiducial markers has a unique identifier value.
[0014] The method may further include projecting a board of the markings at a surface of the gaming table while capturing one image; wherein automatically determining the one or more identifier values includes setting a pixel intensity threshold for the one image at the beginning of a value range and increasing the threshold by a threshold increment in an incremental or cyclical manner until the threshold reaches an end of the value range, and detecting, by electronic analysis of the image, corresponding portions of the markings that become detectable in response to the increase in the threshold.
[0015] Associating at least some of the one or more identifier values with the area of interest may include: storing each identifier value of each detected marker in a memory device; detecting through the electronic analysis that at least some of the set of points of interest are spatially related to the area of interest; and automatically associating, through the memory device, each identifier value of at least some of the one or more identifier values to corresponding coordinates of the area of interest.
[0016] The automatic calibration may include: determining the center of mass of each detected marker in response to the electronic analysis; generating a virtual grid using the center of mass of each detected marker of at least some of the one or more identifier values through polygon triangulation; and overlaying an animation of the game content at the area of interest using at least some of the one or more identifier values as the corresponding coordinates.
[0017] The method may further include configuring the animation on the virtual grid with respect to the orientation of the region of interest based on the detected orientation of at least a portion of each detected marker located at the region of interest.
[0018] Automatically detecting a set of points of interest on the surface of the gaming table may include classifying, by electronic analysis of the neural network model, the set of points of interest as being coplanar with the surface.
[0019] In another aspect, an apparatus for automatically calibrating a gaming table is disclosed. The apparatus includes: a projector configured to project at least one marker onto a surface of the gaming table; a camera configured to capture at least one image of the at least one marker and at least one physical gaming table object in the same plane as the surface of the gaming table; and a processor configured to perform operations to cause the apparatus to, in response to electronic analysis of the at least one image by a neural network model, identify the at least one marker and the at least one physical gaming table object, wherein the at least one marker has a shape that can be transformed from a camera perspective to a virtual scene perspective by a known isomorphic relationship; determine a difference between a position and orientation of the at least one marker and a position and orientation of the at least one physical gaming table object by transforming one or more portions of the image to the virtual scene perspective one or more times based on the known isomorphic relationship; and, in response to determining the difference, set a position and orientation of gaming content within the virtual scene relative to the position and orientation of the at least one physical gaming table object.
[0020] The at least one marking may include at least one fiducial marking, and wherein the at least one physical gaming table object may include one or more of a gaming token tray, a betting circle, a logo, and an edge of the gaming table.
[0021] The processor may be configured to identify the at least one marker and the at least one physical gaming table object in response to automatically detecting that one or more of the projector, the camera, or the at least one physical gaming table object has moved.
[0022] The processor may be configured to identify the at least one physical gaming table object as being associated with a mode associated with the gaming content.
[0023] The processor configured to perform operations to cause the device to determine the difference may also be configured to automatically deform the shape of the at least one marker according to the known isomorphic relationship; in response to the shape of the at least one marker being automatically deformed, determine an offset of the position and orientation of the at least one marker from the position and orientation of the at least one physical gaming table object; and store one or more values of the offset in a memory storage device.
[0024] The at least one marker may include a group of markers, and the processor configured to perform operations to cause the device to determine the difference may also be configured to: decode, by the electronic analysis, a unique identifier associated with the group of markers, wherein the unique identifier is equal to a coordinate value of a grid structure associated with the group of markers in the virtual scene; detect a simple polygonal shape formed by a first subset of the group of markers as an outer boundary of a convex hull, wherein the simple polygonal shape indicates an outline of a shape of the gaming table; connect, by polygon triangulation, a first portion of the coordinate values associated with the first subset of the group of markers and a second portion of the coordinate values associated with a second subset of the group of markers on an interior of the convex hull; determine, based on the outline of the shape of the gaming table corresponding to the first portion of the coordinate values, at least one coordinate value that is closest in position to the at least one physical gaming table object according to the second portion of the coordinate values; and determine the position and orientation of the gaming content relative to the at least one coordinate value as the difference.
[0025] The processor configured to identify the at least one indicia and the at least one physical gaming table object may also be configured to perform operations to cause the device to incrementally modify a threshold of the at least one image within a range of values.
[0026]
[0013] Further aspects of the present invention will be apparent to those of ordinary skill in the art in view of the detailed description of various embodiments with reference to the drawings, a brief description of which is provided below. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 is a diagram of an example gaming system according to one or more embodiments of the present disclosure.
[0028] Figure 2 is a diagram of an exemplary gaming system according to one or more embodiments of the present disclosure.
[0029] Figure 3 is a flow chart of an example method according to one or more embodiments of the present disclosure.
[0030] Figure 4 , 5A , 5B, 5C, 6, 7, 8A, 8B, 9A and 9B are examples of embodiments according to the present disclosure. Figure 3 00140] Figure 1 is a diagram of an exemplary gaming system associated with the data flow shown in FIG.
[0031] Fig.10 is a perspective view of a gaming table configured for implementing an embodiment of a game according to the present disclosure.
[0032] Fig.11is a perspective view of a single electronic gaming device configured to implement an embodiment of a game according to the present disclosure.
[0033] Fig.12 is a top view of a table configured for practicing an embodiment of a game according to the present disclosure.
[0034] Fig.13 is a perspective view of another embodiment of a table configured for implementing an embodiment of a game according to the present disclosure, wherein the implementation includes a virtual dealer.
[0035] Fig.14 is a schematic block diagram of a gaming system for implementing an embodiment of a game according to the present disclosure.
[0036] Fig.15 is a schematic block diagram of a gaming system for implementing an embodiment of a game that includes a real-time dealer feed.
[0037] Fig.16 is a block diagram of a computer used as a gaming system for implementing an embodiment of a game according to the present disclosure.
[0038] Fig.17 An embodiment of data flow between various applications / services used to support the games, features, or utilities of the present disclosure for mobile / interactive gaming is shown.
[0039] Although the present invention allows various modifications and alternative forms, specific embodiments have been shown by way of example in the accompanying drawings and will be described in detail herein. However, it should be understood that the present invention is not intended to be limited to the specific forms disclosed. On the contrary, the present invention encompasses all modifications, equivalents and alternatives that fall within the spirit and scope of the present invention as defined by the appended claims. DETAILED DESCRIPTION
[0040] Although the present invention is susceptible of embodiments in many different forms, preferred embodiments of the present invention are shown in the drawings and will be described in detail herein, with the understanding that the present disclosure should be considered as an illustration of the principles of the invention and is not intended to limit the broad aspects of the invention to the embodiments shown. For the purpose of this detailed description, the singular includes the plural and vice versa (unless specifically denied); the words "and" and "or" shall be conjunctions and disjunctions; the word "all" means "any and all"; the word "any" means "any and all"; and the word "including" means "including but not limited to".
[0041] In some embodiments, the game additionally or alternatively involves gaming tokens of non-cash value, such as virtual currency, and thus may be considered a social or casual game, such as those typically available on social networking sites, other websites, in applications across a computer network, or on a mobile device (e.g., phone, tablet, etc.). When offered as a social or casual game, the game may be very similar to a traditional casino game, or it may take another format that is more similar to other types of social / casual games.
[0042] Some embodiments described herein are conducive to electronic detection of one or more objects in the game area, such as objects on the surface of a game table, and calibrate the properties of the system accordingly. In some cases, the game system can capture image data of the game table and the associated environment around the game table, including the image of the surface of the game table. The game system can further (e.g., using one or more imaging neural network models and / or other imaging analysis tools) analyze the captured image data to identify one or more locations of one or more specific points of interest related to a physical object (e.g., a tag) depicted in the captured image data. The system and method can further associate one or more locations with an identifier value, which can be used as a reference to automatically calibrate any property of the system associated with the performance of one or more game features. One or more game features may include, but are not limited to, game mode, game operation, game function, game content selection, game content placement / orientation, game animation, sensor / camera settings, projector settings, virtual scene aspects, etc. In some cases, the game system can project one or more tags on the game table surface, such as a chessboard or grid of a tag, and can determine the identifier value based on the electronic analysis of one or more images of the tag (e.g., via the transformation between the camera perspective and the virtual scene perspective, via incremental image attribute modification, etc.). In some cases, the gaming system can analyze the image by decoding the information (e.g., symbols, codes, etc.) presented on the marker. In some instances, the identifier value is stored in a memory as a coordinate position relative to a position in a grid structure. In some instances, the gaming system automatically calibrates system properties based on the identifier value. For example, in some embodiments, the gaming system generates a virtual grid, for example, by using the center point of the detected marker for polygon triangulation, and calibrates the presentation of the gaming content (e.g., placement, orientation, etc.) relative to the placement of the detected center point directional content in the virtual scene. In addition, in some cases, the gaming system can infer the perceived function, purpose, location, appearance, orientation, etc. of the marker based on electronic analysis, and calibrate aspects of the gaming system based on the inference.
[0043] The self-referenced game table system for automatic calibration (as disclosed herein) is a significant advancement in gaming technology. It solves many challenges of gaming systems by coordinating the complex aspects of the viewing angle and interactivity of cameras, projectors, and dynamic gaming environments. It allows cameras and / or projectors to be positioned in a manner that is not directly facing the surface of the gaming table (e.g., non-orthogonal to the plane positioning of the surface), but aligns the content with the projection surface (e.g., orthogonally). Properly aligning the game content ensures that the projection of the game animation clearly indicates the game result, thereby reducing the possibility of any dispute between the customer and the gaming venue operator regarding the result. In addition, for example, if the camera and / or projector moves, or if the gaming table surface changes (e.g., if the surface covering is replaced due to wear, if the surface object is rearranged for different gaming purposes, etc.), the gaming system can quickly and reliably calibrate itself. Fast and accurate self-calibration enables the gaming table to accurately operate and more reliably maintain service without the need for trained technicians.
[0044] Figure 11 is a diagram of an example gaming system 100 according to one or more embodiments of the present disclosure. The gaming system 100 includes a gaming table 101, a camera 102, and a projector 103. The camera 102 captures an image stream of a gaming area (e.g., an area covering a top surface 104 of the gaming table 101). The stream includes frames of image data (e.g., image 120). The projector 103 is configured to project an image of a gaming content. The projector 103 projects an image of the gaming content toward the surface 104 relative to an object in the gaming area. The camera 102 is located above the surface 104 and to the left of the first player area 105. The camera 102 has a first perspective (e.g., a field of view or a viewing angle) of the gaming area. In the present disclosure, the first perspective may be more succinctly referred to as a camera perspective or an observation perspective. For example, the camera 102 has a lens that points to the gaming table 101 in a manner that observes a portion of the surface 104 related to gaming and observes gaming participants (e.g., players, dealers, backstage betting customers, etc.) located around the gaming table 101. The projector 103 is also located above the game table 101 and also on the left side of the first player area 105. The projector 103 has a second perspective (e.g., projection direction, projection angle, projection view, or projection cone) of the game area. The second perspective may be more concisely referred to as a projection perspective in the present disclosure. For example, the projector 103 has a lens that points to the game table 101 in a manner that projects (or projects) an image of the game content onto a substantially similar portion of the game area observed by the camera 102. Because the lenses of the camera 102 and the projector 103 are not in the same position, the camera perspective is different from the projection perspective. However, the game system 100 is a self-referenced game table system that adjusts for perspective differences. For example, the game system 100 is configured to detect one or more points of interest that are substantially in the same plane as the surface of the game table 101 in response to an electronic analysis of the image 120. The game system 100 can also automatically transform the position values of the detected points from the camera perspective to the projection perspective, and vice versa, so that they substantially and accurately correspond to each other. In addition, the gaming system 100 can automatically calibrate one or more properties of the gaming table 101, the camera 102, the projector 103, or any other aspect of the gaming system 100 based on the transformation. For example, the gaming system can automatically calibrate the gaming mode, gaming operation, gaming function, gaming-related features, gaming content placement / orientation, sensor / camera settings, projector settings, virtual scene aspects, etc. For example, the gaming system 100 can associate a set of points of interest with one or more locations of a target area for the neural network model to observe one or more events related to the gaming aspect. In some cases, the gaming system 100 associates locations with the target area for projecting gaming content related to the gaming aspect (e.g., related to the gaming mode).For example, in some embodiments, the gaming system 100 automatically associates one or more locations of one or more objects in an image with one or more identifier values associated with a point of interest on the surface 104. In some cases, the object 130 has visible detectable information, such as a visible code associated with a unique identifier value. In some instances, the gaming system 100 determines an identifier 171 associated with the object 130 (e.g., a coordinate value associated with a grid structure of the object 130, a key linking the object 130 with the content 173 through the database 170, etc.). The gaming system 100 can use the identifier value to configure aspects of the game associated with the point of interest. For example, the gaming system 100 can use the identifier value to orient, resize, and position the content 173 relative to the location and / or orientation of the object 130 on the gaming table 101 (e.g., to configure the location and / or orientation of the game content for a gaming mode associated with the point of interest).
[0045] In some embodiments, the gaming system 100 automatically detects physical objects as points of interest based on electronic analysis of the image 120, such as by feature set extraction, object classification, etc. performed by a neural network model (e.g., via the tracking controller 204). For example, the gaming system 100 can detect one or more points of interest by detecting physical features of the image 120 that appear to be coplanar with the surface 104 via the neural network model. For example, the gaming system 100 includes the tracking controller 204 (in Figure 2 ). The tracking controller 204 is configured to monitor the game area (e.g., physical objects within the game area) and determine relationships between one or more objects. The tracking controller 204 may also receive and analyze collected sensor data (e.g., receive and analyze captured image data from the camera 102) to detect and monitor physical objects. The tracking controller 204 may establish a data structure related to various physical objects detected in the image data. For example, the tracking controller 204 may apply one or more image neural network models trained to detect aspects of physical objects during image analysis. In at least some embodiments, each model applied by the tracking controller 204 may be configured to recognize specific aspects of the image data and provide different outputs for any physical object identified, so that the tracking controller 204 can aggregate the outputs of the neural network models to identify physical objects as described herein. The tracking controller 204 may generate a data object for each physical object identified within the captured image data. The data object may include an identifier that uniquely identifies the physical object, so that the data stored in the data object is bound to the physical object. The tracking controller 204 may also store the data in a database, such as Figure 2 In the database system 208, or as Figure 1 As shown in , stored in database 170.
[0046] In some embodiments, the game system 100 automatically detects an automatic deformation relationship (e.g., a homography or isomorphism relationship) between observed points of interest to transform between projected space and linear space. For example, the game system 100 can detect points of interest physically located on the surface 104 and infer the spatial relationship between the points of interest. For example, the game system 100 can detect one or more physical objects that are placed, printed, or otherwise physically located on the surface 104, such as objects placed at specific locations on the surface 104 in a specific pattern or for a specific purpose. In some cases, the tracking controller 204 determines the characteristics of the object by electronic analysis, such as the shape, visual pattern, size, relative positioning, number, displayed identifier, etc. of the object. In some cases, the game system 100 can detect at least three points of interest that are substantially in the same plane as the surface 104, and the at least three points of interest have a known homography relationship (e.g., a triangle, a parallelogram, etc.). Therefore, the game system 100 can use isomorphism or homography transformations, such as linear transformations, affine transformations, projective transformations, barycentric transformations, etc., on the detected objects.
[0047] In some embodiments, the gaming system 100 infers a relationship (e.g., a spatial relationship) between multiple objects (e.g., representing multiple related points) on the surface of the gaming table based on a classification of detected objects (specifically, objects or features of automorphic opportunities, such as objects that have a rigid transformation relationship, an affine transformation relationship, or a projective transformation relationship according to their determined features). For example, the gaming system 100 can detect a unique configuration of objects on the surface 104, such as a logo of a gaming table manufacturer, multiple placement points printed on a fabric covering the gaming table, the size of a gaming token tray 113, etc. For example, the gaming system 100 can detect a logo (not shown) within a captured image that identifies Scientific Games Inc. as a gaming manufacturer of the gaming table 101 or the covering of the surface 104. The gaming system 100 can also identify a group of ellipses in the captured image and infer that they are placement circles. For example, as Figure 1As shown in FIG, there are twelve placement points with placement circles (e.g., primary placement circles 105A, 106A, 107A, 108A, 109A, 110A (“105A-110A”) and secondary placement circles 105B, 106B, 107B, 108B, 109B, 110B (“105B-110B”)). Based on this information, the gaming system can look up a library of gaming table layouts for the detected manufacturer and, in response to detecting the configuration, obtain a template with the precise distances and locations of printed features on the gaming table fabric (e.g., fabric with a given number of detected placement points arranged in an arc shape). Thus, the position and orientation of the printed object has a known relationship in a geometric plane (i.e., of surface 104) that occurs when the fabric is placed and attached to the gaming table top (e.g., when the gaming fabric top is placed in a gaming area or when the gaming fabric top is replaced in a gaming area (e.g., for initial setup, when it becomes dirty or damaged, etc.)). Thus, the gaming system 100 detects and recognizes the printed feature and uses it as an identifier due to its shape and pattern, which is related to the known relationship on the spatial dimensions and objects (e.g., different cast circles represent different points of interest on the plane of the gaming table, each of which has a different label and function during gaming).
[0048] As mentioned, one example of an object associated with a point of interest includes printed betting circles (e.g., primary betting circles 105A, 106A, 107A, 108A, 109A, and 110A (“105A-110A”) and secondary betting circles 105B, 106B, 107B, 108B, 109B, and 110B (“105B-110B”). The printed betting circles are symmetrically arranged with the six different player areas 105, 106, 109A, and 110A around the dealer area 111. 7, 108, 109 and 110. For example, the primary betting circle 105A and the secondary betting circle 105B are associated with the first player area 105 at the leftmost side of the circular table edge 112; the primary betting circles 106A and 106B are associated with the second player area 106 located to the right of the first player area 105; and the same is true for the additional player areas 107-110 around the gaming table 101 until the relative rightmost side of the circular table edge 112 (i.e., the primary betting circle 107A and the secondary betting circle 107B) is reached. The primary betting circle 107B is associated with the third player area 107, the primary betting circle 108A and the secondary betting circle 108B are associated with the fourth player area 108, the primary betting circle 109A and the secondary betting circle 109B are associated with the fifth player area 109, and the primary betting circle 110A and the secondary betting circle 110B are associated with the sixth player area 110). In some cases, the gaming system 100 detects or, in some cases, estimates the center of mass of any of the detected objects / points of interest (e.g., the gaming system 100 can estimate the center of mass of the gaming token tray 113 and / or the betting circles 105A0-11A, 105B-110B). In some cases, the gaming system 100 can detect or estimate the center of mass of each ellipse in the image 120 by binarizing the digitized image of the ellipse (e.g., converting the pixels of the image of the ellipse from an 8-bit grayscale image to a 1-bit black and white image) and determining the center of mass using a weighted average of the image pixel intensities. The gaming system 100 can use the center of mass of the ellipse as a reference point.
[0049] In some cases, the gaming system 100 can automatically detect natural topological features of the surface 104 as points of interest. For example, the gaming system 100 can detect one or more points of interest associated with a gaming token tray 113 positioned at the dealer area 111. The gaming token tray 113 can store gaming tokens (e.g., gaming tokens, tiles, etc.). Some objects can be included at the gaming table 101, such as gaming tokens, playing cards, a playing card shoe, dice, etc., but for simplicity of description, these points of interest are not described herein. Figure 1Additional area 114 may be used to present (e.g., project) game content related to some elements of the game that are common or related to any or all players. In some cases, the gaming system 100 utilizes any additional identifying features (e.g., the center of the gaming token tray 113) to gather as much information as possible to infer the appropriate layout relationship of the content.
[0050] In one example, the gaming system 100 detects the gaming token tray 113 based on visible features of the gaming token tray 113 (e.g., its rectangular shape, parallel lines of its evenly spaced slats 116, its position relative to the shape of the table 101, etc.). For example, the gaming system 100 detects a first upper corner point 151 and a second upper corner point 153 of the gaming token tray 113. The gaming system 100 also determines a center point 152 on a line 161 along an upper edge 115 of the gaming token tray 113. The gaming system 100 can determine the center point 152 by detecting the number of slats 116 within the gaming token tray 113 (e.g., the gaming token tray 113 has ten evenly spaced slats 116), detecting a center divider 117 of the center slat, and detecting a vertex of the center divider that connects to the upper edge 115 (i.e., the center point 152). The gaming system 100 can use the center point 152 (and the orientation of the center divider 117) as a reference to construct the center dividing line 164 (also referred to herein as the axis of symmetry for the layout of the surface 104 of the gaming table 101). In addition, the gaming system 100 detects features of the betting circles 105A-110A and 105B-110B. For example, the gaming system 100 detects many ellipses that appear in the image 120 as betting circles 105A-110A and 105B-110B. The gaming system 100 can also detect the relative size of the ellipses, their arrangement relative to the gaming token tray 113, their positions relative to each other, and the like. Therefore, the gaming system 100 can infer that the center dividing line 164 is the axis of symmetry for the layout of the table, and each ellipse seen is actually a circle of equal size to each other. In some cases, the gaming system 100 is configured to determine based on electronic analysis that there is a homography relationship between two circles on the same geometric plane. More specifically, a line 162 between two intersecting perimeter points of the ellipse (e.g., point 154 on the perimeter of the betting circle 105A and point 155 on the perimeter of the betting circle 110A) can be determined. Due to the nature of the homography relationship and the detected orientation of the betting circles 105A, 110A relative to the game token tray 113, the game system 100 determines that the line 162 is parallel to the line 161. In addition, the game system 100 can access information about the desired rendering parameters of the content 173. For example, the game system 100 accesses the layout information about the content 173 stored in the database 170, and determines that the center of mass of the content 173 should be anchored in the portion 114 midway between the betting circle 105A and the betting circle 110A. Therefore, using all the acquired information (including the detected homography relationship), the game system 100 determines that the intersection of the center dividing line 164 and the line 162 is the anchor point of the center of mass of the content 173. In some cases, gaming system 100 may also position object 130 (eg, automatically move the object) until it is aligned with the intersection point.Gaming system 100 may store the position and orientation values of object 130 as calibration values, thereby ensuring automatic positioning and orientation of content 173 projected into area 114 during game play.
[0051] As mentioned, in some cases, the game system 100 can automatically detect one or more points of interest projected onto the surface 104 by the projector 103. In one example, the game system 100 can automatically triangulate the projection space based on the known spatial relationship of the points of interest on the surface 104. For example, in some embodiments, the game system 100 uses polygonal triangulation of the detected points of interest to generate a virtual grid associated with a virtual scene simulated to the projection perspective. More specifically, the game system 100 can project an image of a set of one or more specific objects or markers (as points of interest) onto the surface 104, and use the markers for self-reference and automatic calibration. For example, the game system 100 can project an object 130 at the surface 104. The appearance of the object 130 is uniquely identifiable when analyzed electronically from any viewing perspective. Projecting the projected image of the object 130 into the game area will make the object 130 appear naturally on the surface 104, because the photons of the light projecting the object 103 only become visible (and therefore detectable by the game system 100) when they appear on the reflective material of the surface 104. Thus, the surface 104 should be covered with a material that fully reflects the light projected by the projector 103 on its surface. Therefore, in some cases, when the game system 100 identifies the features of the projected object through the neural network model with sufficient confidence that the projected object is a projected object for calibration, the game system determines that the projected object is in the same plane as the surface of the game table 103. In some cases, the object 130 has an isomorphic shape, or in other words, the shape of the object 130 can be isomorphically transformed into a known reference shape (e.g., a square, a parallelogram, a triangle, a set of flat circles, etc.) (e.g., via a homography matrix). Therefore, the game system 100 uses the isomorphic properties of the object 130 to transform the appearance of the object 130 until it can be recognized as a reference point for calibration. The object 130 may be referred to as a reference or reference marker in this article. In other words, the game system 100 can place the object 130 in the field of view of the camera 102 as a reference point or measurement for calibrating the game system 100. Object 130 also has contrasting color / tone features that gaming system 100 uses to binarize and identify object 130 (e.g., object 130 is projected in black and white so that the appearance of object 130 has a high contrast between its light and dark elements, thereby improving detectability through binarization). Because object 130 has a unique shape, having isomorphic properties, gaming system 100 can determine the orientation of object 130 within image 120, and in response, orient the placement of content 173 accordingly. For example, in database 170, marker 130 has a specific orientation. Content 173 also has a specific orientation indicated by database 170. Therefore, gaming system 100 can replace object 130 with content 173 using its associated orientation indicated by database 170.The gaming system 100 may also observe the projected appearance of the content 173 (after it is initially positioned) and may automatically make any necessary additional adjustments to its size, shape, position, etc., and / or may present (e.g., project) a calibration feature to make any additional adjustments to the appearance of the content 173.
[0052] In some instances, the gaming system 100 detects a combination of non-projected objects (e.g., objects physically placed or positioned on the gaming table 101) and projected objects (e.g., objects projected onto the surface 104 via light projection). For example, during a setup process, the gaming system 100 detects when an object is placed at a particular location on the surface 104. The gaming system 100 stores the locations of the objects relative to each other (e.g., as multiple objects captured in a single image or as a composition of multiple images of the same object positioned at different locations during setup). The gaming system 100 detects the locations of the objects as regions of interest on the virtual scene overlaying the image 120. The gaming system 100 may also present a calibration option for manually mapping the placement of gaming content within the virtual scene so that the positioning of the content corresponds to the detected locations.
[0053] As mentioned, the game system 100 uses various points of interest, including topological features and reference objects (e.g., object 130). In some embodiments, the game system 100 projects a set of reference objects similar to object 130, each of which has a unique individual appearance associated with an identifier value (e.g., via a binary code) (e.g., see more details in Figure 3). The identifier value identifies a single object (or "marker") within a spatial relationship of a group of objects as a group, such as a grid relationship arranged as a checkerboard pattern, where the position of each mark on the checkerboard is a different identifier / coordinate point in the grid. In some embodiments, the checkerboard is an isomorphic shape (e.g., a parallelogram or a square) and / or has some recognizable homography properties, such as known symmetry, a known geometric relationship of at least three points in a single plane, etc. Therefore, the game system 100 can transform the appearance of the mark from the projected space visible in the image 120 to a known linear (e.g., Euclidean) space associated with the grid by a projective transformation, such as a virtual or augmented reality layer that depicts a virtual scene, where the game content is mapped relative to the position in the grid. In some cases, the checkerboard is a set of binary square reference marks (e.g., barcode marks, aruco marks). In some instances, the square reference includes a black box (set relative to a white background) with a unique image or pattern inside the black box (e.g., see object 130). The pattern can be used to uniquely identify the reference and determine its orientation. Binary fiducials can be generated in groups from a Bose-Chaudhuri-Hocquenghem (BCH) code generator, where each member of the group has a binary coded image, thereby generating multiple groups of patterns with error correction capabilities. In some embodiments, the game system 100 uses a chessboard with binary square fiducial marks positioned at each intersection of the grid structure. In some embodiments, the group of marks is placed on the chessboard, where the marks are positioned on alternating light (e.g., white) squares. The shape and position of the dark (e.g., black) squares that alternate with the light squares provide a detectable feature that the game system 100 can use to accurately find the corners of the marks.
[0054] In addition, in some cases (for example, see Figure 3), the gaming system 100 includes analyzing features of the image 120 in stages through an incremental thresholding process, thereby ensuring that a set of objects within the image 120 are electronically identified despite dimming and inconsistent lighting conditions within the gaming environment that affect the quality of the image 120. Specifically, the gaming system 100 may not be able to adjust the lighting of the gaming environment in which the gaming table 101 is located. As a result, when the camera 102 captures the image 120, the size of the gaming table 101, and the various distances of each point of interest from the camera 102, the digitized pixels of the image 120 may have pixel intensity values that may change actual values based on their relative positions on the surface 104. For example, a portion of the gaming table 101 that is closer to the camera 102 may have brighter pixel intensity values than a portion of the gaming table 101 that is farther away from the camera 102. In another example, the lighting conditions at one end of the gaming table 101 may be different from the lighting conditions at the other end of the gaming table 101. Therefore, when the gaming system 100 electronically analyzes the image 120, the pixel intensity values of different portions of the table may vary greatly. As a result, binarization of the image 120 with a single threshold value will cause the gaming system 100 to detect features of an object depicted in one portion of the image 120 but not in other portions. To overcome this challenge, the gaming system 100 performs incremental thresholding of the image 120 during binarization. For example, the gaming system 100 incrementally and gradually increases the threshold value of the image 120 from a range of selected values (e.g., from a low threshold value to a high threshold value (or vice versa)) so that the values of the features of various portions of the image 120 gradually increase within the range of possible values. After each incremental increase in the threshold value, the gaming system 100 again electronically analyzes the image 120 to detect additional possible points of interest in portions having similar pixel intensity values (based on their relative positions in the image 120, based on lighting conditions at different portions, etc.). Thus, as the threshold value is incremented within the range, features of objects across the gaming table 101 become visually detectable in the image 120 by the neural network model, and thus become extractable and classifiable.
[0055] Figure 2 2 is a block diagram of an example gaming system 200 for tracking aspects of a game in a gaming area 201. In an example embodiment, gaming system 200 includes a gaming controller 202, a tracking controller 204, a sensor system 206, and a tracking database system 208. In other embodiments, gaming system 200 may include more, fewer, or alternative components, including those described elsewhere herein.
[0056] The gaming area 201 is an environment in which one or more casino games are provided. In an exemplary embodiment, the gaming area 201 is a casino game table and the area surrounding the table (e.g., Figure 1). In other embodiments, other suitable gaming areas 201 may be monitored by the gaming system 200. For example, the gaming area 201 may include one or more floor-standing electronic gaming machines. In another example, multiple gaming tables may be monitored by the gaming system 200. Although the description herein may refer to a gaming area (e.g., gaming area 201) as a single gaming table and the area surrounding the gaming table, it should be understood that other gaming areas 201 may be used with the gaming system 200 by employing the same, similar, and / or modified details as described herein.
[0057] The game controller 202 is configured to facilitate, monitor, manage and / or control game play of one or more games at the game area 201. More specifically, the game controller 202 is communicatively coupled to at least one or more of the tracking controller 204, the sensor system 206, the tracking database system 208, the game device 210, the external interface 212 and / or the server system 214 to receive, generate and transmit data related to the game, the player and / or the game area 201. The game controller 202 may include one or more processors, memory devices and communication devices to perform the functions described herein. More specifically, the memory device stores computer readable instructions that, when executed by the processor, cause the game controller 202 to function as described herein, including communicating with devices of the game system 200 via the communication device.
[0058] The game controller 202 may be physically located at Figure 2 The game controller 202 may be located at or away from the game area 201 as shown. In some embodiments, the game controller 202 may be a distributed computing system. That is, several devices may operate together to provide the functionality of the game controller 202. In such embodiments, Figure 2 At least some of the devices (or their functionality) described in may be incorporated into a distributed game controller 202.
[0059] The game device 210 is configured to promote one or more aspects of the game. For example, for a game based on cards, the game device 210 can be a card shuffler, a card box or other card handling device. The external interface 212 is a device that presents information to a player, a dealer or other user, and can accept user input to be provided to the game controller 202. In some embodiments, the external interface 212 can be a remote computing device that communicates with the game controller 202, such as a player's mobile device. In other examples, the game device 210 and / or the external interface 212 include one or more projectors. The server system 214 is configured to provide one or more back-end services and / or game gaming services to the game controller 202. For example, the server system 214 may include accounting services for monitoring the game coins, rewards and accumulated game coins of the game area 201. In another example, the server system 214 is configured to control the game gaming by sending game gaming instructions or results to the game controller 202. It should be understood that the devices described above as communicating with the game controller 202 are for exemplary purposes only, and that additional, fewer, or alternative devices may be in communication with the game controller 202, including those described elsewhere herein.
[0060] In an example embodiment, tracking controller 204 communicates with game controller 202. In other embodiments, tracking controller 204 is integrated with game controller 202 such that game controller 202 provides the functionality of tracking controller 204 as described herein. Similar to game controller 202, tracking controller 204 can be a single device or a distributed computing system. In one example, tracking controller 204 can be located at least partially away from game area 201. That is, tracking controller 204 can receive data from one or more devices (e.g., game controller 202 and / or sensor system 206) located in game area 201, analyze the received data, and / or transmit data back based on the analysis.
[0061] In an example embodiment, tracking controller 204 includes one or more processors, a memory device, and at least one communication device similar to example game controller 202. The memory device is configured to store computer executable instructions that, when executed by the processor, cause tracking controller 204 to perform the functions of tracking controller 204 described herein. The communication device is configured to communicate with external devices and systems using any suitable communication protocol to enable tracking controller 204 to interact with external devices and integrate the functions of tracking controller 204 with the functions of external devices. Tracking controller 204 may include several communication devices to facilitate communication with various external devices using different communication protocols.
[0062] Tracking controller 204 is configured to monitor at least one or more aspects of game area 201. In an example embodiment, tracking controller 204 is configured to monitor physical objects within area 201 and determine the relationship between one or more objects. Some objects may include game tokens. A token may be any physical object (or a group of physical objects) for placement. As used herein, the term "pile" refers to one or more game tokens that are physically grouped together. For round tokens (e.g., game tokens) commonly found in a playground game environment, these tokens can be grouped together in a vertical pile.
[0063] In an example embodiment, tracking controller 204 is communicatively coupled to sensor system 206 to monitor game area 201. More specifically, sensor system 206 includes one or more sensors configured to collect sensor data associated with game area 201, and tracking controller 204 receives and analyzes the collected sensor data to detect and monitor physical objects. Sensor system 206 may include any suitable number, type, and / or configuration of sensors to provide sensor data to game controller 202, tracking controller 204, and / or another device that may benefit from the sensor data.
[0064] In an example embodiment, the sensor system 206 includes at least one image sensor oriented to capture image data of physical objects in the game area 201. In one example, the sensor system 206 may include a single image sensor that monitors the game area 201. In another example, the sensor system 206 includes multiple image sensors that monitor subdivisions of the game area 201. The image sensor may be part of a camera unit or a three-dimensional (3D) camera unit of the sensor system 206, wherein the image sensor in combination with other image sensors and / or other types of sensors may collect depth data related to the image data, which may be used to distinguish objects within the image data. The image data is transmitted to the tracking controller 204 for analysis as described herein. In some embodiments, the image sensor is configured to transmit image data that has been subjected to limited image processing or analysis, so that the tracking controller 204 and / or another device that receives the image data performs image processing and analysis. In other embodiments, the image sensor may perform at least some preliminary image processing and / or analysis before transmitting the image data. In such embodiments, the image sensor may be considered an extension of tracking controller 204, and thus, the functions described herein in relation to image processing and analysis performed by tracking controller 204 may be performed by the image sensor (or a dedicated computing device for the image sensor). In certain embodiments, sensor system 206 may include one or more sensors configured to detect objects, such as a time-of-flight sensor, a radar sensor (e.g., LIDAR), a thermal imaging sensor, etc., in addition to or in lieu of an image sensor.
[0065] The tracking controller 204 is configured to establish data structures related to various physical objects detected in the image data from the image sensor. For example, the tracking controller 204 applies one or more image neural network models during image analysis, which are trained to detect various aspects of the physical objects. Neural network models are analysis tools that classify "raw" or unclassified input data without requiring user input. That is, in the case of raw image data captured by the image sensor, the neural network model can be used to convert patterns within the image data into data object representations, such as tokens, faces, hands, etc., thereby facilitating data storage and analysis of objects detected in the image data as described herein.
[0066] At a simplified level, a neural network model is a set of node functions with corresponding weights applied to each function. The node functions and corresponding weights are configured to receive some form of raw input data (e.g., image data), establish patterns within the raw input data, and generate outputs based on the established patterns. Weights are applied to the node functions to facilitate model optimization, thereby identifying certain patterns (i.e., giving increased weights to node functions that produce correct outputs), and / or adapting to new patterns. For example, a neural network model can be configured to receive input data, detect patterns in image data representing human body parts, perform image segmentation, and generate outputs that classify one or more portions of the image data as segments representing body parts of a player (e.g., a box with coordinates relative to image data that encloses a head, arm, hand, etc. and classifies the enclosed area as "person", "face", "arm", "hand", etc.).
[0067] For example, in order to train a neural network to identify the most relevant guesses for identifying human body parts, for example, a predetermined data set including image data of human body parts and raw image data with known outputs is provided to the neural network. When each node function is applied to the raw input with known outputs, error correction analysis is performed so that node functions that produce outputs close to or matching the known outputs can be given increased weights, while node functions with significant errors can be given reduced weights. In the example of recognizing a person's face, node functions that consistently recognize image patterns of facial features (e.g., nose, eyes, mouth, etc.) can be given additional weights. Similarly, in the example of recognizing a person's hand, node functions that consistently recognize image patterns of hand features (e.g., wrists, fingers, palms, etc.) can be given additional weights. The outputs of the evaluation node functions (including corresponding weights) are then combined to provide an output of a data structure, such as a representation of a person's face. Training can be repeated to further optimize the model's pattern recognition, and the model can still be optimized during deployment (i.e., raw inputs without known data outputs).
[0068] At least some of the neural network models applied by the tracking controller 204 may be deep neural network (DNN) models. The DNN model includes at least three layers of node functions linked together to decompose the complexity of image analysis into a series of steps that are increasingly extracted from the raw image data. For example, for a DNN model trained to detect a person's face from an image, a first layer may be trained to identify groups of pixels representing boundaries of facial features, a second layer may be trained to identify facial features as a whole based on the identified boundaries, and a third layer may be trained to determine whether the identified facial features form a face and to distinguish this face from other faces. The multi-layer nature of the DNN model may facilitate more targeted weights, a reduced number of node functions, and / or pipeline processing of image data (e.g., for a three-layer DNN model, each stage of the model may process three frames of image data in parallel).
[0069] In at least some embodiments, each model applied by the tracking controller 204 can be configured to recognize specific aspects of the image data and provide different outputs, so that the tracking controller 204 can aggregate the outputs of the neural network models to recognize physical objects as described herein. For example, one model can be trained to recognize a person's face, while another model can be trained to recognize a player's body. In this example, the tracking controller 204 can link the player's face with the player's body by analyzing the outputs of the two models. In other embodiments, a single DNN model can be applied to perform the functions of several models.
[0070] As described in further detail below, the tracking controller 204 can generate a data object for each physical object identified within the captured image data through the DNN model. A data object is a data structure generated to link together data associated with a corresponding physical object. For example, the outputs of several DNN models associated with a player can be linked together as part of a player data object.
[0071] It should be understood that the underlying data storage of a data object may vary depending on the computing environment of the one or several memory devices storing the data object. That is, factors such as programming language and file system may change where and / or how data objects are stored (e.g., via a single block allocation for data storage, via distributed storage with pointers linking data together, etc.). In addition, some data objects may be stored on several different memory devices or databases.
[0072] In some embodiments, the player data object includes a player identifier, and the data objects of other physical objects include other identifiers. The identifier uniquely identifies the physical object so that the data stored in the data object is bound to the physical object. In some embodiments, the identifier can be incorporated into other systems or subsystems. For example, a player account system can store a player identifier as part of a player account, which can be used to provide benefits, rewards, etc. to the player. In some embodiments, the identifier can be provided to the tracking controller 204 by other systems that may have generated the identifier.
[0073] In at least some embodiments, the data objects and identifiers may be stored by the tracking database system 208. The tracking database system 208 includes one or more data storage devices (e.g., one or more databases) that store data from at least the tracking controller 204 in a structured, addressable manner. That is, the tracking database system 208 stores data according to one or more linked metadata fields that identify the type of data stored and can be used to group the stored data together across several metadata fields. The stored data is addressable so that the data stored within the tracking database system 208 can be tracked after initial storage for retrieval, deletion, and / or subsequent data manipulation (e.g., editing or moving the data). The tracking database system 208 can be formatted according to one or more suitable file system structures (e.g., FAT, exFAT, ext4, NTFS, etc.).
[0074] Tracking database system 208 may be a distributed system (i.e., data storage is distributed across multiple computing devices) or a single device system. In some embodiments, tracking database system 208 may be integrated with one or more computing devices that are configured to provide other functionality to gaming system 200 and / or other gaming systems. For example, tracking database system 208 may be integrated with tracking controller 204 or server system 214.
[0075] In an example embodiment, the tracking database system 208 is configured to facilitate a search function for the stored data of the tracking controller 204. The search function compares the input data provided by the tracking controller 204 with the data stored in the tracking database system 208 to identify any "matching" data. It should be understood that a "match" within the context of the search function may refer to the input data being identical, substantially similar, or linked to the stored data in the tracking database system 208. For example, if the input data is an image of a player's face, a search function may be performed to compare the input data with a set of stored images of historical players to determine whether the player captured in the input data is a returning player. In this instance, one or more image comparison techniques may be used to identify any "matching" images stored by the tracking database system 208. For example, key visual markers for distinguishing players may be extracted from the input data and compared with similar key visual markers of the stored data. If identical or substantially similar visual markers are found within the tracking database system 208, the matching stored images may be retrieved. In addition to or in lieu of matching images, other data linked to the matching stored images may be retrieved during the search function, such as a player account number, a player's name, and the like. In at least some embodiments, the tracking database system 208 includes at least one computing device configured to perform a lookup function. In other embodiments, the lookup function is performed by a device in communication with the tracking database system 208 (e.g., the tracking controller 204) or a device in which the tracking database system 208 is integrated.
[0076] Figure 3 is a flow chart of an example method according to one or more embodiments of the present disclosure. Figure 4 , 5A , 5B, 5C, 6, 7, 8A, 8B, 9A and 9B are examples of embodiments according to the present disclosure. Figure 3 FIG. 1 is a diagram of an exemplary gaming system associated with the data flow shown in FIG. Figure 3 The description will refer to Figure 4 , 5A , 5B, 5C, 6, 7, 8A, 8B, 9A and 9B.
[0077] exist Figure 3 In the example, process 300 begins at processing block 302 by projecting a plurality of markers onto the surface of a gaming table. Figure 4 In the embodiment, the game system 400 is similar to the game system 100. The game system 400 includes a game table 401, a camera 402, a projector 403, a game token tray 413, a primary betting circle 405A-410A and a secondary betting circle 405B-410B. The game system 400 is also similar to Figure 2The gaming system 200 described in , and thus the tracking controller 204 may be utilized to perform one or more operations described. Figure 4 4, the gaming system 400 projects (via the projector 403) a chessboard of coded square fiducial marks ("chessboard 425"). When projected onto the surface 404 of the gaming table 401, a portion of the marks become visible to the camera 402. The portions of the marks that do not fall on the surface 404 (when projected by the projector 403) are not visible to the camera 402. The visible marks are depicted in the image 420 captured by the camera 402. In some embodiments, the chessboard 425 is configured to be larger than the surface 404 of the gaming table 401. Thus, when the chessboard 420 is projected into the gaming area at the general direction of the gaming table 401, at least a portion of the chessboard 425 appears on the surface 404, thereby ensuring that the gaming table 401 is adequately covered with the marks. At some point, if the projector 403 is moved, the gaming system 400 can recapture the image 420. Because the projector 403 has been moved, marks that are different from the chessboard 425 will fall on a different portion of the surface 404. However, because the markers are organized into a common grid structure, and because each marker is proportionally spaced apart, the gaming system 400 can recapture the image 420 and recalibrate (e.g., repeat one or more portions of the process 300) using new fiducial marker identifier values corresponding to different markers that fall on different portions of the surface 404. Thus, the chessboard 425 becomes a floating grid, any portion of which can be anchored to any portion of the surface 404, and thus provides an acceptable displacement margin in the physical position of the projector 403 for calibration purposes.
[0078] The number of markers in the chessboard 425 can vary. More markers represent more grid points, which can be used as more interior points of the convex hull during polygon triangulation (e.g., at processing block 318), thereby producing a denser virtual grid. A denser virtual grid has more points for calibrating the presentation of game content (e.g., at processing block 320). Therefore, according to some embodiments, more markers in the chessboard 425 are preferred, as long as the markers are of sufficient size to be recognized by the neural network model (taking into account the input requirements of the neural network model, the distance from the camera 402 to the game table 401, the lighting in the game area, etc.). At a minimum, the chessboard 425 should include enough markers to cover the portion of the game table 401 that needs to be observed for object detection and / or accurate positioning of content projection. In some cases, the grid can include any number of markers, such as two or more markers. In some embodiments, according to a uniform grid structure, the markers are in a known spatial relationship to each other in distance and orientation. Thus, if the gaming system 400 detects the locations of some markers, the gaming system 400 can infer the locations of the ambiguous markers based on the known spatial relationships of all markers to each other through the grid structure of the board 425. For example, Figure 4 As shown in , some of the marks projected at the surface 404 may be obscured by one or more additional objects (e.g., placement circles 405A-410A and 405B-410B) on the surface 404, or may not be visible due to the presence of the one or more additional objects. However, the game system 400 can detect other visible marks around the placement circles 405A-410A and 405B-410B. After detecting the marks around the placement circles 405A-410A and 405B-410B, the game system 400 can infer the position value of the obscure mark. For example, each visible mark has a unique identifier value representing the coordinates in an organized grid. The game system 400 knows the size of the spacing of the coordinate points in the grid. Therefore, the game system 400 can use the known size of the spacing of the coordinate points relative to each other in the grid to infer the location of the obscure mark relative to the location of the surrounding visible marks.
[0079] Return to reference Figure 3 , process 300 continues at processing block 304 by capturing an image of the surface of the gaming table. Figure 4 As shown in FIG. 4 , system 400 can capture an image 420 of the gaming area from the perspective of camera 402 (“camera perspective”), which includes an image of gaming table 401. In one embodiment, gaming system 400 captures a single frame of a video stream of image data via camera 402 and sends the single frame of image data (e.g., image 420) to a tracking controller (e.g., Figure 2404) for image processing and analysis to identify physical objects in the game area. As previously described, the portion of the mark on the chessboard 425 that falls on the surface 404 becomes visible to the camera 402 and is therefore visible in the image 420 captured by the camera 402.
[0080] Return to reference Figure 3 , process 300 continues at processing block 306 in a loop or repeating operation that iteratively modifies the image characteristic value of the captured image until the image characteristic value limit is reached. In some cases, the gaming system modifies the graphical characteristics of the image, such as resolution, contrast, brightness, color, vibrancy, sharpness, threshold, exposure, etc. As these characteristics are incrementally modified (alone or in various combinations), additional information becomes visible in the image. In one example, as Figure 5A As shown in , the gaming system 400 performs a thresholding algorithm on the entire image 420. The thresholding algorithm sets an initial threshold value. The threshold value is a pixel intensity value. In other words, any pixel in the image 420 that has a pixel intensity above the pixel intensity threshold value will appear as white in the modified image, and any pixel that has a pixel intensity below the pixel intensity threshold value will appear as black. For example, the gaming system 400 sets the threshold value to a low setting, such as the number "32". This means that any pixel with an intensity level below "32" will appear as black, and any pixel with an intensity level higher will appear as white. Therefore, as Figure 5A As shown in , a first section 501 of a set of visible markings on table 401 becomes detectable (ie, first marking set 511).
[0081] Flow 300 continues at processing block 308 by identifying a detectable marker of the marker by analyzing the image using a neural network model. Figure 5AAs shown in , the game system 400 automatically changes each object with detectable features within the image 420 through the neural network model. Due to the initial threshold (e.g., the lower limit value "32"), the segment 501 includes such an object (e.g., the first group of marks 511) whose pixel intensity values make the digitized version of the first group of marks 511 sufficiently binary for identification (e.g., the light pixels of the first group of marks 511 are changed to pixel intensity values corresponding to white, and the dark pixels of the first group of marks 511 are changed to pixel intensity values corresponding to black). The game system 400 transforms each of the first group of marks 511 shown in the image 420 through an isomorphic transformation (e.g., a projective transformation) until it is detectable as a mark. Therefore, the game system 400 can identify the unique pattern (e.g., the encoding value) of each detected mark to determine the unique identifier value assigned to the mark (e.g., the coordinate value corresponding to the positioning of the mark in the grid structure of the chessboard 425). The game system 400 can also perform a centroid detection algorithm on the detected mark to indicate the center point of the square shape of the detected mark. The center point of the square shape becomes a position reference point, and the gaming system 400 can associate the identifier of the detected marker with the position reference point.
[0082] Flow 300 continues at processing block 310 to determine if there are any undetected marks. If there are still undetected marks, the gaming system continues to processing block 312. However, if all possible marks detectable on the surface of the gaming table have been detected, the loop ends 314 and the process continues at processing block 316.
[0083] For example, in Figure 5A , gaming system 400 determines that only a portion of image 420 (i.e., section 501) includes any detectable indicia. A majority of gaming table 401 does not. Therefore, gaming system 400 determines that more indicia are detectable. Therefore, gaming system 400 incrementally modifies the threshold (e.g., increases the threshold from an initial value (e.g., "32") to a next incremental value (e.g., "40") according to a threshold increment set to "8"), and then gaming system 400 repeats processing blocks 308 and 310. For example, if Figure 5B As shown in , after the gaming system 400 increases the threshold, a second segment 502 of the set of visible marks on the surface 404 becomes detectable (i.e., a second set of marks 512). The gaming system 400 also determines that more marks can be detected, and therefore increases the threshold again (e.g., increasing the threshold from "40" to "48"). After the additional increase, as shown in Figure 5CAs shown in , the third segment 503 of the set of visible indicia on the table 401 becomes detectable (i.e., the third indicia set 513). After a series of increments, the gaming system 400 determines that there are no visible segments left on the table 410 to be electronically analyzed for the presence of indicia, so the gaming system 400 ends the "for" loop at processing block 314. For simplicity, according to some embodiments, Figure 3 The "for" loop shown in may also be referred to herein as a "marker detection loop." In some embodiments, the gaming system 400 may repeat the mark detection loop until a threshold reaches a limit (e.g., until the threshold is so high that all pixels will appear completely black, thus revealing no mark).
[0084] Figures 5A-5C The example shown in shows only three iterations of a mark detection loop within a particular threshold range. However, in other cases, the gaming system 400 may perform fewer than three or more than three mark detection loops, wherein each iteration causes a different segment of the set of visible marks to become detectable. The number of iterations required may vary based on the ambient lighting to which the gaming table 401 is exposed. In some cases, the gaming system 400 may reach a maximum limit of the threshold range (e.g., reaching a maximum pixel intensity limit of "255" for an 8-bit grayscale image). If so, the gaming system 400 also ends the mark detection loop.
[0085] In some cases, if the gaming system 400 reaches the maximum limit, and if the gaming system 400 also determines that portions of the gaming table 401 may include detectable markings (e.g., if the gaming system 400 determines that no markings are found on any portion of the gaming table 401 where markings would be expected to be present), the gaming system 400 may repeat the marking detection loop using a smaller threshold increment of the threshold. Additionally, in some embodiments, the gaming system 400 may automatically modify the threshold increment to be larger or smaller based on the amount of visible markings detected for any iteration of the marking detection loop. For example, the gaming system 400 may determine that an initial threshold increment of "8" may detect markings very slowly (few or no markings may be detected for multiple iterations), and therefore the gaming system 400 may increase the threshold increment to a larger number. If, in response to the increase in the threshold increment, the gaming system 400 detects a larger number of markings, the gaming system 400 may continue to use the new threshold increment for the remaining iterations, or until the gaming system 400 again begins to detect few or no markings (at which point the gaming system 400 may modify the threshold increment again). However, in some cases, if increases in the threshold increment continue to result in few or no markers being detected, the gaming system 400 can instead decrease the threshold increment to below the initial value (e.g., below the initial threshold increment of "8"). Additionally, in some embodiments, the gaming system 400 can roll the threshold back to the initial range value and repeat the marker detection cycle using the modified threshold increment.
[0086] Return to reference Figure 3 , process 300 continues at processing block 316 by associating the position of each detected marker in the image with the identifier value of each detected marker. In one example, Figure 6 , the gaming system 400 overlays the grid structure of the chessboard 425 onto the virtual representation 601 of the gaming table 401 within the virtual scene 620 through one or more isomorphic transformations of the image 420. In some embodiments, the gaming system 400 determines the virtual representation 601 of the gaming table 401 based on one or more of the size of the outline 621 of the detected marker, the known size of the grid structure of the chessboard 425, the known position of the projector 403 relative to the projected chessboard 425, and any additional reference points of interest that may be detected on the gaming table 425 (e.g., the detected position of a gaming token tray, a betting circle, etc.). The grid structure of the chessboard 425 has a corresponding coordinate value at each position of each marker. Therefore, the gaming system 400 modifies the virtual scene 620 to associate the relative position of the detected marker with the coordinate value of each detected marker in the grid structure of the chessboard 425. In multiple iterations of the marker detection loop (in Figures 5A-5C), the gaming system 400 associates the locations of the first marker set 511, the second marker set 512, and the third marker set 513 with their corresponding coordinate value identifiers. In some cases, the gaming system 400 may modify the number of markers on the board 425 based on the characteristics of the detected outline 621. For example, the gaming system 400 may detect the shape of the outline 621. If the number of markers on the board 425 is too small and / or the markers are too far apart, the shape of the outline 621 may appear amorphous, thereby making the details of the shape of the gaming table 401 difficult to detect, thereby making the orientation of the gaming table 401 difficult to determine. Therefore, the gaming system 400 may regenerate the board 425 with a larger number of markers (e.g., smaller and more densely stacked together) until the shape of the detected outline 621 has a sufficiently similar shape to the gaming table 401 and / or has sufficient details to accurately identify specific features of the gaming table 401 (e.g., accurately identify objects, edges, sections, regions, ridges, corners, etc.).
[0087] Return to reference Figure 3 , process 300 continues at processing block 318 by using the identifier values as polygon triangulation points to generate a virtual grid aligned with the surface of the gaming table. In one example, Figure 7 In the process, the game system 400 performs polygon triangulation, such as point set triangulation, Delaunay triangulation, etc. For example, the game system selects a first set of position values of the markers on the contour 621 as points on the convex hull of a simple polygonal shape (i.e., the shape of the contour 621 is a simple polygonal shape, which means that the shape does not intersect itself and has no holes, or in other words, the shape is a flat shape composed of straight non-intersecting line segments or "sides", which are joined in pairs to form a single closed path). In response to detecting a point on the convex hull of the contour 621, the game system 400 draws a triangular mesh connecting the interior points (i.e., the detected markers inside the contour 621) with the points on the convex hull. In addition, the game system 400 draws a triangular mesh connecting the interior points to each other. Polygonal triangulation forms a two-dimensional finite element mesh or graph of a portion of the plane of the surface 404 of the game table 401, at which the projected markers are detected. An example of a polygon triangulation algorithm is "Triangle.Net", which is found at the following Internet address: https: / / archive.codeplex.com / ? p = triangle. Therefore, if Figure 7 As shown in , the gaming system 400 generates a virtual mesh 701 having interconnected virtual triangles.
[0088] Return to reference Figure 3 , flow 300 continues at processing block 320, where the rendering of the game content is calibrated using the virtual grid. Figure 7 , the gaming system 400 identifies the locations of additional detected objects from the gaming table 401, such as the gaming token tray 413 and / or the betting circles 405A-410A and 405B-410B. The gaming system 400 uses the coordinate identification values of the points on the virtual grid 701 to place gaming content within the virtual scene 620. For example, the gaming system 400 overlays representations of the gaming token tray 413 and the betting circles within the virtual scene 620 at corresponding locations relative to the approximate locations of the detected objects on the gaming table 401. Fig. 8A , the gaming system 400 can project grid lines 815 of the virtual grid 701 relative to the visible markers. The grid lines 815 are depicted in an additional image 820 captured by the camera 402. Figure 8B Grid lines 815 are shown (via image 821) with visible markings removed.
[0089] The gaming system 400 can also determine where to position the gaming content relative to the detected object (on the virtual grid 701) based on the relative position of the detected object within the mapped coordinates. For example, knowing the position of the detected object within the map (e.g., the game token tray position, the placement circle position, the player station position, etc.), the gaming system 400 can position the graphical content relative to the corresponding object within the virtual scene 620. The gaming system can use the position of the detected object as a reference point for positioning the content. For example, Fig.9A As shown in FIG. 1 , the gaming system 400 positions the virtual roulette wheel graphic 973 (e.g., similar to the grid point coordinates) within the virtual scene 620 and relative to any other points of interest on the gaming table 410 (e.g., point 913 associated with the gaming token tray 413, one or more centroid points of the betting circles 405A-410A and 410B-410B, a point associated with the detected symmetry axis 964, etc.). Figure 1 173) and one or more placement indicator graphics (e.g., secondary placement indicator graphic 975). For example, the gaming system 400 positions the secondary placement indicator graphic 975 (also referred to as "graphic 975") to an acceptable grid point closest to the associated point of interest based on the detected spatial relationship. For example, an acceptable placement of graphic 975 for secondary placement circle 407B includes detecting an offset (e.g., a difference in position, orientation, etc.) between a coordinate point of the centroid 923 of the secondary placement circle 407B and a closest coordinate point (e.g., a triangle point on the virtual grid 701) where the anchor (e.g., centroid) of graphic 975 can be placed when properly oriented without overlapping the secondary placement circle 407B (or otherwise blocking the detected surface area occupied by the secondary placement circle). The gaming system 400 can store the offset in memory and use it at a later time to project content. Fig. 9BThe calibration of the positioning of the game content (e.g., the virtual roulette graphic 973 and the bet indicator graphic 975) within the image 920 captured by the camera 402 after calibration is shown. Fig. 9B , grid lines 815 of virtual grid 701 are shown as references, however, in some embodiments, grid lines 815 may appear transparent.
[0090] Figure 1 , 2 , 3, 4, 5A, 5B, 5C, 6, 7, 8A, 8B, 9A and 9B are some examples of self-referential game systems. The following further describes a game system similar to game system 100 ( Figure 1 )、Game system 200( Figure 2 )、Game system 400( Figure 4 ) or the like, or another embodiment of any element of a gaming system.
[0091] In some embodiments, the gaming system automatically modifies the characteristics of the camera (e.g., exposure, light sensitivity, aperture, shutter speed, focus, zoom, ISO, image sensor settings, etc.) to provide optimal quality images for analyzing objects (e.g., gaming tokens, playing cards, projected indicia, non-projected objects, etc.) to obtain information of identifiable value (e.g., gaming token value, playing card value, symbol value, coordinate value, reference orientation, manufacturer settings, layout size, display requirement settings, bar code value, etc.).
[0092] In some embodiments, the gaming system modifies camera characteristics based on the mode. For example, for the placement mode, the gaming system automatically sets the camera settings to the highest possible quality to ensure that the placed gaming coins are correctly identified. For example, the gaming system modifies the camera settings to a longer exposure time and a higher light sensitivity. On the other hand, in a second mode, such as the gaming mode, the gaming system modifies the camera settings to different values to optimize for fast motion, such as the movement of hands, cards, etc. For example, the gaming system modifies the camera settings to a shorter exposure time and a lower light sensitivity.
[0093] In some cases, the gaming system modifies the camera settings incrementally. Because these settings are incrementally modified, multiple images are acquired from the same camera using different camera settings. From the multiple images, the gaming system can identify additional features of the object, such as additional portions of the projected marking board. For example, in a low-lighting environment, such as under the gaming floor, a camera at a gaming table can take a picture of a projected marking board with a given light sensitivity setting, thereby generating a first image. The gaming system analyzes the first image and identifies the markings (or other objects) located near the camera. However, objects far from the camera in the first image appear dark. In other words, in the first image, projected markings beyond a specific distance from the camera cannot be identified by the gaming system (e.g., by a neural network model), thereby resulting in an incomplete view of a portion of the marking board appearing on the surface of the gaming table. According to some embodiments, the gaming system can modify the characteristics of the first image, such as by modifying the camera settings (e.g., modifying the camera exposure settings, modifying the brightness and / or contrast settings, etc.), thereby generating at least one additional version of the first image (e.g., a second image). Then, the gaming system analyzes the second image to detect additional objects far from the camera. In some cases, the gaming system determines whether the changes made result in the detection of image details of additional objects that were not previously detected. For example, if more details of an object or group of objects are visible in the second image, the gaming system determines that a change to a particular graphical feature (e.g., by a change to the optical settings of a camera) is useful, and adjusts subsequent iterations of the modification step based on that determination. For example, if the image quality is such that additional markers are recognized (by a neural network model), the gaming system can increase the value of the graphical feature that was changed in the previous iteration to a greater extent until no more markers can be recognized. On the other hand, if the image quality is worse or not as good as before (e.g., no additional barcodes are detected), the gaming system can adjust the value in a different way (e.g., decreasing the camera setting value instead of increasing the camera setting value).
[0094] In another example, the gaming system modifies multiple different graphics characteristics and / or settings simultaneously. In yet another example, the gaming system automatically modifies the exposure setting to an optimal point for any given gaming mode, any gaming environment conditions, etc. (e.g., sequentially changing the exposure setting modification up and down to determine which setting displays the desired image quality given a particular gaming mode or environment condition, given a particular frame rate requirement for the image data stream. In some embodiments, for example, for Figure 3, the gaming system can automatically change the exposure setting at the beginning (or during) each iteration of the loop (e.g., before or during a marker detection loop). In some cases, the gaming system determines the number of markers that can be detected based on the exposure change. The gaming system can then set the exposure of the camera to a setting that results in the detection of the most markers.
[0095] In another embodiment, the gaming system provides an option to manually adjust camera settings. For example, the gaming system may pause and request the operator to manually review the image for optimal quality and manually change settings (e.g., exposure settings) based on the review. The gaming system may then capture an image in response to user input indicating that the settings are being manually adjusted.
[0096] In some embodiments, the gaming system automatically modifies aspects of the projection, such as characteristics, settings, modes, etc. of a projector (e.g., brightness or luminosity levels, contrast settings, color vibrancy settings, color space settings, focus, zoom, power usage, network connection settings, mode settings, etc.), or other aspects of the system related to projection (e.g., aspects of the graphical reproduction of content in a virtual scene to assist in calibration).
[0097] In some embodiments, the gaming system uses a projector to help obtain optimal image capture by providing optimal lighting for various portions of the gaming table. For example, the projector light settings can be modified to project certain amounts of light to different portions of the table to balance the lighting imbalance from the ambient lighting. For example, the gaming system can project a single color, such as white light, to illuminate specific selected areas, objects, etc. associated with the gaming table surface. For example, the gaming system can project white light on the front of a pile of gaming tokens to obtain the best possible light conditions for image capture so that the neural network model can detect gaming token edges, colors, shapes, etc.
[0098] In some embodiments, the gaming system projects white light and / or other identifiers at the edge of an object (e.g., a finger, a gaming token, etc.) that is close to the surface of the gaming table. In some embodiments, the gaming system projects a strong light at the object to determine whether a shadow appears below the object by electronic analysis of the image. The gaming system can use the detection of shadows to infer that the object is not in contact with the surface. In some embodiments, the gaming system projects an object with a structure or element, and if the structure or element appears on the object and / or if it shows enough continuity with the pattern projected on the surface, it means that the object is close enough to the surface and is about to touch. For example, if the color and / or pattern is clearly displayed on the fingernail in a way that only appears when the fingertip is at a specific distance from the surface material (e.g., a small diamond shape projected by a projector appears on the fingernail), the gaming system can predict that the finger is touching the surface. In another example, if the color and / or pattern is detectable on the bottom edge of the gaming token and has continuity with the projected portion of the identifier projected onto the table surface just next to the gaming token, or in other words, the pattern appears to be continuous from the surface to the gaming token, with no dark gaps in between, the gaming system infers that the gaming token is touching the surface.
[0099] In some embodiments, the gaming system can modify aspects of the projection for each mode. For example, in the projection mode, the gaming system may require higher image quality to detect certain values of gaming tokens, gaming token stacks, etc. Therefore, the gaming system modifies the projection characteristics to provide lighting (e.g., continuous, diffuse light) that produces the highest quality image for the conditions of the gaming environment. On the other hand, in a second mode, such as the gaming mode, the projection characteristics can be set to different settings or values (e.g., a focused lighting mode, a flash lighting mode, etc.) to optimize the image quality (e.g., to reduce possible blur) that may be caused by the rapid movement of hands, cards, etc.
[0100] In some embodiments, the gaming system can optimize aspects of the projection to compensate for shadows. For example, if the projection light casts a harsh shadow, the gaming system can automatically mask a specific object within the virtual scene and automatically adjust the specific amount of light projected onto the object by modifying the projection content on the mask. For example, in the virtual scene of the content, the gaming system can overlay a graphic mask at the location of the detected object and render a graphic of the light color and / or identifier onto the mask. In addition, the mask can have a transparent / opaque property so that the gaming system can reduce the opacity of the layer, thereby reducing the potential brightness and / or detail of the projected content, thus allowing it to carefully determine the darkness of the shadows generated by the projected content.
[0101] In some embodiments, the gaming system modifies the graphical characteristics of the projected identifier to allow detectability. For example, the gaming system changes the color of all or part of a projected object (e.g., a marker, a board, etc.) based on the detected background color. By changing the color of the projected object so that it has high contrast with the background, the gaming system provides an image that visually depicts the projected object with optimal contrast to surrounding portions of the surface shown in the image.
[0102] Fig.10 1 is a perspective view of an embodiment of a game table 1200 (which may be configured as a game table 101 or a game table 401) for implementing a game according to the present disclosure. The game table 1200 may be a physical furniture item around which players of the game may stand or sit, and on which physical objects used to manage or otherwise participate in the game may be supported, positioned, moved, transferred, and otherwise manipulated. For example, the game table 1200 may include a game tabletop 1202 (e.g., a tabletop), on which physical objects used to manage the game may be located. The game tabletop 1202 may be, for example, a felt fabric covering the hard surface of the table, and a design specific to the game being managed, generally referred to as a "layout," may be physically printed on the game tabletop 1202. As another example, the game tabletop 1202 may be a surface of a transparent or translucent material (e.g., glass or Plexiglas), and a projector 1203, which may be located, for example, above or below the game tabletop 1202, may illuminate the layout specific to the game being managed onto the surface. In this example, the specific layout projected onto the gaming table 1202 may be changeable, so that the gaming table 1200 can be used to manage different variations of the game or other games within the scope of the present disclosure. In any example, the gaming table 1202 may include, for example, designated areas for player positions; areas where one or more of player cards, dealer cards, or community cards may be dealt; areas where gaming coins may be accepted; areas where gaming coins may be grouped into pots; and areas where rules, payout tables, and other instructions related to the game may be displayed. As specific, non-limiting examples, the gaming table 1202 may be constructed as any of the table surfaces described herein.
[0103] In some embodiments, the gaming table 1200 may include a display 1210 separate from the gaming tabletop 1202. The display 1210 may be configured to face players, potential players, and viewers, and may display information such as randomly selected by the shuffling device and also displayed on the display of the shuffling device; rules; payout tables; real-time game status, such as accepted game tokens and dealt cards; historical game information, such as the amount won, the amount of game tokens, the percentage of winning hands, and the number of significant hands obtained; commercial game names, casino names, advertisements, and other instructions and information related to the game. In some embodiments, the display 1210 may be a physically fixed display, such as an edge-lit sign. In other embodiments, the display 1210 may automatically change in response to a stimulus (e.g., it may be an electronic video monitor).
[0104] The gaming table 1200 may include specific machines and equipment configured to facilitate the management of the game. For example, the gaming table 1200 may include one or more card handling devices 1204A, 1204B. The card handling device 1204A may be, for example, a card shoe from which physical cards 1206 from one or more mixed decks of playing cards may be removed at a time. Such a card handling device 1204A may include, for example, a housing in which the cards 1206 are located, an opening from which the cards 1206 are removed, and a card presentation mechanism (e.g., a moving weight on a ramp that is configured to push a stack of cards down the ramp) that is configured to continuously present new cards 1206 for removal from the shoe.
[0105] In some embodiments using a card handling device 1204A, in addition to or instead of including such features in a shuffling device, the card handling device 1204A may include a random number generator 151 and a display 152. In addition to the card handling device 1204A, a card handling device 1204B may also be included. The card handling device 1204B may be, for example, a card shuffler configured to select information (using a random number generator) to display the selected information on a display of the shuffler, reorder (random or pseudo-random) physical playing cards 1206 from one or more decks of playing cards, and present the random playing cards 1206 for use in a game. Such a card handling device 1204B may include, for example, a housing, a shuffling mechanism configured to shuffle cards, and a card input and output (e.g., a tray). The shuffler may include card recognition capabilities that may form a set of randomly ordered playing cards within the shuffler. The card handling device 1204 may also be a combination shuffler and shoe, for example, where the output of the shuffler is a shoe.
[0106] In some embodiments, the card handling device 1204 may be constructed and programmed to manage at least a portion of a game played using the card handling device 1204. For example, the card handling device 1204 may be programmed and constructed to randomize a set of cards and deliver the cards individually for use according to the game rules and the player and / or dealer game selection. More specifically, the card handling device 1204 may be programmed and constructed to, for example, randomize a set of six complete decks of cards, including one or more standard 52-card playing cards, and optionally any specialty cards (e.g., cut cards, bonus cards, wild cards, or other specialty cards). In some embodiments, the card handling device 1204 may present a single card, one at a time, so as to be removed from the card handling device 1204. In other embodiments, the card handling device 1204 may present an entire shuffled card block that is manually or automatically transferred to the card distribution shoe 1204. In some such embodiments, the card handling device 1204 may accept dealer input, such as the number of replacement cards for discarding cards, the number of cut cards to be added, or the number of partial hands to be completed. In other embodiments, the device may accept dealer input indicating a game selection from a game options menu, which may select programming to allow the card handling device 1204 to deliver the necessary number of cards to the game according to game rules, player decisions, and dealer decisions. In other embodiments, the card handling device 1204 may present a complete set of random cards to be manually or automatically removed from a shuffler and then inserted into a card delivery box. As a specific non-limiting example, the card handling device 1204 may present a complete set of cards to be manually or automatically transferred to a card distribution delivery box, or may provide a continuous supply of a single card.
[0107] In another embodiment, the card handling device may be a batch shuffler that randomizes a set of cards, for example by using a gripping, lifting, and inserting sequence.
[0108] In some embodiments, the card handling device 1204 may employ a random number generator device to determine a card sequence, for example, a final card sequence or the order in which the cards are inserted into compartments configured to form a card pack. The compartments may be numbered sequentially, and a random number may be assigned to each compartment number before the first card is delivered. In other embodiments, the random number generator may select a position in the pile of cards to divide the pile into two sub-piles, thereby creating an insertion point at a random position within the pile. The next card may be inserted into the insertion point. In yet other embodiments, the random number generator may randomly select a position in the pile to randomly remove a card by activating an ejector.
[0109] Regardless of whether the random number generator is hardware or software, it can be used to implement the specific game management method of the present disclosure.
[0110] In some embodiments, the card handling device 1204 may simply be supported on the gaming table 1202. In other embodiments, the card handling device 1204 may be mounted into the gaming table 1202 such that the card handling device 1204 cannot be manually removed from the gaming table 1202 without the use of tools. In some embodiments, the one or more decks of playing cards used may be one or more standard 52-card decks. In other embodiments, the one or more decks used may include playing cards, such as playing cards, wild cards, bonus cards, etc. The shuffler may also be configured to handle and dispense security cards, such as cut cards.
[0111] In some embodiments, the card handling device 1204 may include an electronic display 1207 for displaying information related to the game being administered. The electronic display 1207 may display a menu of game options, the name of the selected game, the number of cards to be dealt per hand, the amount of other game tokens that may be accepted (e.g., maximum and minimum), the number of cards to be dealt to a recipient, the location of a specific recipient for a specific card, game tokens won and lost, a payout table, the number of winning hands, the number of losing hands, and the amount of prizes. In other embodiments, information related to the game may be displayed on another electronic display, such as the previously described display 1210.
[0112] The type of the card handling device 1204 of the embodiment for managing the disclosed game, and the type and number of the deck of cards used can be specific to the game to be implemented. The cards used in the game of the present disclosure can be, for example, standard game cards from one or more decks of cards, each of which has four suits (plums, hearts, diamonds and spades) and A, K, J and ten to two cards arranged in descending order. As a more specific example, six, seven or eight such standard cards can be mixed. Usually, six or eight 52 standard game cards can be mixed and formed into a group, to manage blackjack or blackjack variant games. After shuffling, the random group can all be transferred to another part of the card handling device 1204B or another card handling device 1204A, such as a mechanized card box that can read the size of the card and the suit.
[0113] The game table 1200 may include one or more game token racks 1208, which are configured to promote the acceptance of game coins, and the lost game coins are transferred to the game field. For example, the game token rack 1208 may include a series of token support rows, and each token support row may support tokens of different types (e.g., color and denomination). In some embodiments, the game token rack 1208 may be configured to automatically present a selected number of game tokens using game token cutting and delivery mechanisms. In some embodiments, the game table 1200 may include a drop-in box 1214 for exchanging game elements or game tokens 1212. The drop-in box 1214 may be, for example, a safety container (e.g., a safe or a lock box), which has a one-way opening and a safe lockable opening. Such a drop-in box 1214 is known in the art, and may be directly incorporated into the game table 1200, and in some embodiments, may have a removable container.
[0114] When managing a game according to an embodiment of the present disclosure, a dealer 1216 may issue a game element 1212 to a player. The dealer 1216 may pass the physical game element 1212 to the player. As part of a method for managing a game, the dealer 1216 may accept one or more initial game coins from the player, which may be reflected by the dealer 1216, thereby allowing the player to place one or more game elements 1212 or other game tokens in a designated area on the game table 1202 associated with each game coin of the game. In some embodiments, once the initial game coin has been accepted, the dealer 1216 may remove physical cards 1206 (e.g., a single card, a card package, or a complete set of cards) from the card handling device 1204. In other embodiments, the physical cards 1206 may be manually thrown (i.e., the dealer 1216 may optionally shuffle the cards 1206 to randomize the set of cards, and may hand-deal cards 1206 from the randomized set of cards). The dealer 1216 may position the cards 1206 in designated areas on the gaming table 1202, which may designate the cards 1206 as being used as single player cards, community cards, or dealer cards, according to the rules of the game. The house rules may require the dealer to accept primary and secondary game tokens before dealing the cards. The house rules may alternatively allow the player to only pay the next game token (i.e., the second game token) during the split and after the initial game token has been placed, or after the cards are dealt but before all cards available for play are revealed.
[0115] In some embodiments, after dealing cards 1206 and during the game, according to the rules of the game, any additional game coins can be accepted, which can be reflected by the dealer 1216, thereby allowing the player to place one or more game elements 1212 in a designated area (i.e., area 124) on the game table 1202 associated with the game game coins of the game. The dealer 1216 can perform any additional card dealing according to the rules of the game. Finally, the dealer 1216 can parse the game coins, award the won game coins to the player, which can be achieved by providing the game elements 1212 from the game token rack 1208 to the player, and transfer the lost game coins to the game field, which can be achieved by moving the game elements 1212 from the designated player placement area to the game token rack 1208.
[0116] Fig.11 1 is a perspective view of a single electronic gaming device 1300 (e.g., an electronic gaming machine (EGM)) configured to implement games according to the present disclosure. The single electronic gaming device 1300 may include a single player position 1314, which includes a player input area 1332, which is configured to enable the player to interact with the single electronic gaming device 1300 through various input devices (e.g., buttons, levers, touch screen). The player input area 1332 may also include a ticket input receiver, through which the player can feed a monetary value ticket to the single electronic gaming device 1300, which can then associate with the game logic circuit in the single electronic gaming device 1300 to detect the physical item (ticket) associated with the monetary value and then establish a point balance for the player. In other embodiments, the single electronic gaming device 1300 detects a signal indicating that an electronic gaming coin has been deposited. Then, when the player uses the player input area 1332 or elsewhere on the machine (e.g., through a touch screen), the gaming coin can be received and paid out of the point balance. The winnings and coins pushed out or returned may be reflected in a point balance at the end of each round, with the point balance increasing to reflect the winnings and coins pushed out or returned, and / or decreasing to reflect the lost coins.
[0117] A single electronic gaming device 1300 may also include a ticket output printer or cash dispenser in a single player location 1312, which may issue an award of a point balance to a player via the ticket output printer or cash dispenser upon receipt of an instruction entered by the player using the player input area 1332.
[0118] The single electronic gaming device 1300 may include a game screen 1374 configured to display indicia for interacting with the single electronic gaming device 1300, such as by processing one or more programs stored in the game logic circuit memory 1340 to implement the rules of the game play at the single electronic gaming device 1300. Thus, in some embodiments, game play can be accommodated without involving physical game cards, game tokens or other game elements and on-site personnel. This action can in turn be simulated by the control processor 1350, which is operably coupled to the memory 1340 and interacts with and controls the single electronic gaming device 1300. For example, the processor can cause the display 1374 to display cards, including virtual players and virtual dealer cards for playing the game of the present disclosure.
[0119] although Fig.11 The single electronic gaming device 1300 shown in FIG. 1 has the profile of a traditional gaming cabinet, but the single electronic gaming device 1300 may be implemented in other ways, such as on a bar game terminal via client software downloaded to a portable device (e.g., a smartphone, tablet, or laptop computer). The single electronic gaming device 1300 may also be a non-portable personal computer (e.g., a desktop computer or a stand-alone computer) or other computing device. In some embodiments, the client software is not downloaded, but is native to the device, or is delivered with the device at the time of distribution. In such embodiments, a point balance may be established by receiving payment via a credit card or player account information entered into the system by the player.
[0120] A communication device 1360 may be included and may be operably coupled to the processor 1350 so that information related to the operation of the single electronic gaming device 1300, information related to game play, or a combination thereof may be transmitted between the single electronic gaming device 1300 and other devices, such as a server, via a suitable communication medium (e.g., a wired network, a Wi-Fi network, and a cellular communication network).
[0121] The game screen 1374 may be carried by a generally vertically extending cabinet 1376 of the single electronic gaming device 1300. The single electronic gaming device 1300 may also include banners for conveying game play rules, instructions, game play suggestions or tips, etc., such as along a top portion 1378 of the cabinet 1376 of the single electronic gaming device 1300. The single electronic gaming device 1300 may also include additional decorative lights (not shown) and speakers (not shown) for transmitting and optionally receiving sound during game play.
[0122] Some embodiments can be implemented at the position including a plurality of player stations. Such player stations can include electronic display screens, which are used to display game information (e.g., playing cards, game coins and game instructions) and are used to accept game coins and promote point balance adjustment. Such player stations can be optionally integrated in a table format, can be distributed in the entire game field or other game websites, or can include both grouped and distributed player stations.
[0123] Fig.12 14 is a top view of a suitable table 1010 configured for implementing a game according to the present disclosure. Table 1010 may include a game table 1404. Table 1010 may include an electronic player station 1412. Each player station 1412 may include a player interface 1416, which may be used to display game information (e.g., graphics showing player layout, game instructions, input options, game coin information, game results, etc.) and accept player selections. In some embodiments, the player interface 1416 may be a display screen in the form of a touch screen, which may be at least substantially flush with the game table 1404. Each player interface 1416 may be operated by its own local game processor 1414 (shown in dotted lines), but in some embodiments, a central game processor 1428 (shown in dotted lines) may be used, and it may communicate directly with the player interface 1416. In some embodiments, a combination of a single local game processor 1414 and a central game processor 1428 may be used. Each of processors 1414 , 1428 may be operably coupled to a memory that includes one or more programs related to the rules of gaming at table 1010 .
[0124] A communication device 1460 may be included and may be operably coupled to one or more of the local game processor 1414, the central game processor 1428, or a combination thereof, so that information related to the operation of the table 1010, information related to game play, or a combination thereof may be transmitted between the table 1010 and other devices via a suitable communication medium (e.g., a wired network, a Wi-Fi network, and a cellular communication network).
[0125] Table 1010 may also include additional features, such as a dealer game token tray 1420, and game coins and balance adjustments during game play may be performed using, for example, virtual game tokens (e.g., images or text representing game coins). For embodiments using physical playing cards 1406a and 1406b, table 1010 may also include a card handling device 1422, such as a card delivery shoe configured to read and deliver randomized playing cards. For embodiments using virtual playing cards, virtual playing cards may be displayed at a single player interface 1416. Physical playing cards designated as "common cards" may be displayed in the common card area.
[0126] The table 1010 may also include a dealer interface 1418, which, like the player interface 1416, may include a touch screen control for receiving dealer input and assisting the dealer in managing the game. The table 1010 may also include an upright display 1430 configured to display images depicting game information, payout tables, manual counts, historical win / loss information for players, and a wide variety of other information useful to the players. The upright display 1430 may be double-sided to provide such information to the players as well as to casino personnel.
[0127] Although the described embodiments show individual discrete player stations, in some embodiments, the entire gaming table 1404 may be an electronic display that is logically partitioned to allow game play from multiple players, for receiving input from players, dealers, or both, and for displaying game information to players, dealers, or both.
[0128] Fig.13 1 is a perspective view of another embodiment of a suitable electronic multi-player table 1500 configured to implement a game according to the present disclosure using a virtual dealer. The table 1500 may include player positions 1514 arranged in a row around an arcuate edge 1520 of a video device 1558, which may include a card screen 1564 and a virtual dealer screen 1560. The dealer screen 1560 may display a video simulation of a dealer (i.e., a virtual dealer) interacting with the video device 1558, such as by processing one or more stored programs stored in a memory 1595 to implement the rules of the game at the video device 1558. The dealer screen 1560 may be carried by a generally vertically extending cabinet 1562 of the video device 1558. The substantially horizontal card screen 1564 may be configured to display at least one or more of the dealer's cards, any community cards, and each player's cards dealt by the virtual dealer on the dealer screen 1560.
[0129] Each of the player positions 1514 may include a player interface area 1532 that is configured to be used for placing and interacting with the video device 1558 and the virtual dealer for game play. Therefore, game play can be adapted without involving physical game cards, poker game tokens, and on-site personnel. This action can be simulated by the control processor 1597 interacting with the video device 1558 and controlling the video device instead. The control processor 1597 can be programmed to implement the rules of game play at the video device 1558 by known techniques. Therefore, the control processor 1597 can interact and communicate with the data item input of each player interface area 1532 of the display / input interface and the video device 1558. Other embodiments of the table and the gaming device may include a control processor that can be similarly adapted to the specific configuration of its associated device.
[0130] A communication device 1599 may be included and may be operably coupled to a control processor 1597 so that information relating to the operation of the table 1500, information relating to game play, or a combination thereof may be transmitted between the table 1500 and other devices such as a central server via a suitable communication medium (e.g., a wired network, a Wi-Fi network, and a cellular communication network).
[0131] The video device 1558 may also include banners conveying game rules, etc., which may be located along one or more walls 1570 of the cabinet 1562. The video device 1558 may also include additional decorative lights and speakers, which may be located, for example, on the underside surface 1566 of the generally horizontally extending top 1568 of the cabinet 1562 of the video device 1558, which extends generally toward the player position 1514.
[0132] Although the described embodiments show individual discrete player stations, in some embodiments, the entire gaming table (e.g., player interface area 1532, card screen 1564, etc.) can be an integral electronic display that is logically partitioned to allow game play from multiple players, for receiving input from players, dealers, or both, and for displaying game information to players, dealers, or both.
[0133] In some embodiments, a gaming system that employs a client-server architecture (eg, via the Internet, a local area network, etc.) may be used to manage gaming according to the present disclosure. Fig.141 is a schematic diagram of an exemplary gaming system 1600 for implementing a game according to the present disclosure. The gaming system 1600 may enable end users to access gaming content remotely. Such gaming content may include, but is not limited to, various types of games, such as card games, dice games, roulette games, scratch games ("scratch-offs"), and any other games in which the outcome of the game is determined in whole or in part by one or more random events. The games supported by the gaming system 1600 may be operated with real money or with virtual points or other virtual (e.g., electronic) value markers. A virtual point option may be used with a game, where points (or other symbols) may be issued to a player for gaming currency. Players may obtain points in any permitted manner, including, but not limited to: players purchase points; points are awarded as part of a competition or this or another game (including non-slot games); points are awarded as a reward for using a product, a gaming venue or other enterprise, for the time or game played in a session; or it may be as simple as obtaining virtual points when logging in at a specific time or with a specific frequency, etc. Although points may be won or lost, the ability of a player to redeem points may be controlled or prevented. In one example, points earned (e.g., purchased or awarded) for entertainment gaming may be limited to non-monetary redemption items, rewards, or points that may be used in the future or for another game or gaming session. The same point redemption restrictions may also apply to some or all of the points won in the game.
[0134] Other variations include web-based websites with both entertainment games and games, including issuing free (non-monetary) points that can be used to play entertainment games. This feature can attract players to enter websites and games before players participate in games. In some embodiments, a limited number of free or promotional points can be issued to entice players to play games. Another method of issuing points includes issuing free points, in exchange for identifying friends who may want to play games. In another embodiment, additional points can be issued after a period of time has passed to encourage players to continue playing games. Game system 1600 can enable players to purchase additional game points to allow players to continue playing games. Valuable objects can be granted to entertainment game players, which can be directly or not directly exchanged for points. For example, during the time interval defined, the entertainment game player with the highest score can be rewarded or win a prize. As expected by game designers and game hosts (individuals or entities that control hosting systems), all variations of point exchange are envisioned.
[0135] The gaming system 1600 may include a gaming platform to establish a portal for end users to access games hosted by one or more gaming servers 1610 over a network 1630. In some embodiments, the games are accessed through a user interaction service 1612. The gaming system 1600 enables players to interact with a user device 1620 through a user input device 1624 and a display 1622, and communicate with one or more gaming servers 1610 using a network 1630 (e.g., the Internet). Typically, the user device is remote from the gaming server 1610, and the network is the World Wide Web (i.e., the Internet).
[0136] In some embodiments, game server 1610 may be configured as a single server to manage a game in combination with user device 1620. In other embodiments, game server 1610 may be configured as separate servers for performing separate dedicated functions associated with managing a game. Thus, the following description also discusses "services", with the understanding that various services may be performed by different servers or combinations of servers in different embodiments. Fig.14 As shown in , game servers 1610 may include user interaction services 1612, game services 1616, and asset services 1614. In some embodiments, one or more game servers 1610 may communicate with an account server 1632 that executes an account service 1632. As explained more fully below, for some slot-type games, account service 1632 may be independent and operated by a different entity than game servers 1610; however, in some embodiments, account service 1632 may also be operated by one or more game servers 1610.
[0137] User device 1620 can communicate with user interaction service 1612 through network 1630. User interaction service 1612 can communicate with game service 1616, and provide game information to user device 1620. In some embodiments, game service 1616 can also include game engine. Game engine can for example access, explain and apply game rules. In some embodiments, single user device 1620 communicates with the game provided by game service 1616, and other embodiments can include multiple user devices 1620 configured to communicate with the same game provided by game service 1616 and provide access to the same game to end users. In addition, multiple end users can be allowed to access single user interaction service 1612 or multiple user interaction services 1612 to access game service 1616. User interaction service 1612 can enable users to create and access user accounts and interact with game service 1616. User interaction service 1612 can enable users to initiate new games, join existing games, and communicate with the games that users are playing.
[0138] The user interaction service 1612 may also provide a client for executing on the user device 1620 to access the game server 1610. The client provided by the game server 1610 for executing on the user device 1620 may be any of various implementations depending on the user device 1620 and the method of communicating with the game server 1610. In one embodiment, the user device 1620 may connect to the game server 1610 using a web browser, and the client may execute within a browser window or frame of the web browser. In another embodiment, the client may be a stand-alone executable file on the user device 1620.
[0139] For example, a client may include a relatively small number of scripts (e.g., ), also known as a "script driver", includes a scripting language that controls the client interface. The script driver may include a simple function call to request information from the game server 1610. In other words, the script driver stored in the client may only include calls to functions defined externally by the game server 1610 and executed by it. Therefore, the client can be characterized as a "thin client". The client can only send requests to the game server 1610 without executing the logic itself. The client can receive player input, and the player input can be passed to the game server 1610 for processing and executing the game. In some embodiments, this may involve providing specific graphical display information and game results to the display 1622.
[0140] As another example, the client may include an executable file instead of a script. The client may perform more local processing than a script driver, such as calculating where to display what game symbols when receiving a game result from the game service 1616 via the user interaction service 1612. In some embodiments, portions of the asset service 1614 may be loaded onto the client and may be used by the client to process and update graphical displays. When data is transmitted over the network 1630, some form of data protection, such as end-to-end encryption, may be used. The network 1630 may be any network, such as the Internet or a local area network.
[0141] The game server 1610 may include an asset service 1614 that can host various media assets (e.g., text, audio, video, and image files) to be sent to the user device 1620 for presenting various games to the end user. In other words, the assets presented to the end user can be stored separately from the user device 1620. For example, the user device 1620 requests assets suitable for the game played by the user; as another example, particularly with thin clients, the game server 1610 will only send those assets required for a specific display event, including only one asset. The user device 1620 can call functions defined at the user interaction service 1612 or the asset service 1614, which can determine which assets to deliver to the user device 1620 and how the user device 1620 presents these assets to the end user. Different assets can correspond to various user devices 1620 and their clients, and the clients can access the game service 1616 and different variations of the game.
[0142] The game server 1610 may include a game service 1616 that may be programmed to manage games and determine game play outcomes to provide to the user interaction service 1612, thereby transmitting to the user device 1620. For example, the game service 1616 may include game rules for one or more games, so that the game service 1616 controls some or all of the game streams and the determined game outcomes of the selected games. The game service 1616 may include a payout table and other game logic. The game service 1616 may perform random number generation to determine the random game elements of the game. In one embodiment, the game service 1616 may be separated from the user interaction service 1612 by a firewall or other methods that prevent general members of the network 1630 from unauthorized access to the game service 1612.
[0143] The user device 1620 can present the game interface to the player and transmit the user interaction of the user input device 1624 to the game server 1610. The user device 1620 can be any electronic system capable of displaying game information, receiving user input, and transmitting the user input to the game server 1610. For example, the user device 1620 can be a desktop computer, a laptop computer, a tablet computer, a set-top box, a mobile device (e.g., a smart phone), an information kiosk, a terminal, or another computing device. As a specific non-limiting example, the user device 1620 operating the client can be an interactive electronic game system 1300. The client can be a dedicated application, or can be executed within a general application capable of interpreting instructions from an interactive game system such as a web browser.
[0144] The client may interface with the end user via a web page or application running on a device including, but not limited to, a smartphone, tablet, or general purpose computer, or the client may be any other computer program that can be configured to access the game server 1610. The client may be shown within a gaming site web page (or other interface) indicating that the client is embedded in a web page supported by a web browser executing on the user device 1620.
[0145] In some embodiments, the components of the game system 1600 can be operated by different entities. For example, the user device 1620 can be operated by a third party (e.g., a playground or an individual) linked to the game server 1610, and the game server can be operated, for example, by a game service provider. Therefore, in some embodiments, the user device 1620 and the client can be operated by an administrator different from the operator of the game service 1616. In other words, the user device 1620 can be a part of a third-party system that does not manage or otherwise control the game server 1610 or the game service 1616. In other embodiments, user interaction services 1612 and asset services 1614 can be operated by a third-party system. For example, a game entity (e.g., a playground) can operate user interaction services 1612, user devices 1620 or a combination thereof to provide access to game content managed by different entities to its customers, and the different entities can control game services 1616 and other functions. In other embodiments, all functions can be operated by the same administrator. For example, a gaming entity (e.g., a casino) may choose to perform each of these functions internally, such as providing access to user devices 1620, delivering the actual gaming content, and managing the gaming system 1600.
[0146] The game server 1610 may optionally communicate with one or more external account servers 1632 (also referred to herein as account services 1632) through another firewall. For example, the game server 1610 may not directly accept game coins or issue rewards. That is, the game server 1610 can promote online game field games, but may not be a part of the self-contained online game field itself. Another entity (e.g., a game field or any account holder or financial record system) can operate and maintain its external account services 1632 to accept placement and perform reward distribution. The game server 1610 can communicate with the account services 1632. As another example, the game server 1610 can directly accept game coins and perform reward distribution, such as when the administrator of the game server 1610 operates as a game field.
[0147] Additional features may be supported by the game server 1610, such as hacking and cheating detection, data storage and archiving, metrics generation, message generation, output formatting for different end-user devices, and other features and operations.
[0148] Fig.15 is a schematic block diagram of a table 1682 for implementing a game including a real-time dealer video feed. Fig.14 The game system 1600 described (see Fig.14 ) can be used in conjunction with this embodiment. Instead of the cards being determined by a computerized random process, physical cards (e.g., from a standard 52-card deck of playing cards) can be dealt by a live dealer 1680 at a table 1682 from a card handling system 1684 located on the studio or casino floor. A table manager 1686 can assist the dealer 1680 in facilitating the play of the game by transmitting a real-time video feed of the dealer's actions to the user device 1620 and transmitting remote player selections to the dealer 1680. As described above, the table manager 1686 can be used as a game system 1600 (see Fig.14 ) (e.g., for use as a gaming system 1600 (see Fig.14 ) itself or as an interposer between the user device 1620 and the gaming system 1600 (see Fig.14 ) between and operatively connected to both) or in communication with the gaming system to provide gaming system 1600 (see Fig.14 ) users. Therefore, the table manager 1686 can communicate with the user device 1620 (see Fig.14 ) and may be part of a larger online gaming venue or may operate as a separate system that facilitates gaming. In various embodiments, each table 1682 may be managed by a single table manager 1686 that constitutes a gaming device that may receive and process information related to the table. For simplicity of description, these functions are described as being performed by the table manager 1686, but certain functions may be performed by the intermediate gaming system 1600 (see Fig.14 ) execution, for example, combined with Fig.14 In some embodiments, the gaming system 1600 (see Fig.14 ) can match remotely located players with tables 1682 and facilitate the transmission of information such as chip amounts and player option selections between user devices 1620 and tables 1682 without managing game play at individual tables. In other embodiments, the functionality of table manager 1686 can be incorporated into gaming system 1600 (see Fig.14 )middle.
[0149] Table 1682 includes camera 1670 and optionally microphone 1672 to capture video and audio feeds related to table 1682. Camera 1670 can be trained for live dealer 1680, game area 1687 and card handling system 1684. When the game is managed by live dealer 1680, the video feed captured by camera 1670 can be remotely displayed to the player using user device 1620, and any audio captured by microphone 1672 can be remotely played to the player using user device 1620. In some embodiments, user device 1620 can also include camera, microphone or both, which can also capture feeds to be shared with dealer 1680 and other players. In some embodiments, camera 1670 can be trained to capture images of cards, game tokens and game token piles on the surface of the game table. Card count and card size and suit information can be obtained from the card images using known image extraction techniques.
[0150] In some embodiments, the table manager 1686 may use the card data and the game chip data to determine the outcome of the game. The data extracted from the camera 1670 may be used to confirm the card data obtained from the card handling system 1684, determine the position of the player receiving the card, and for general security monitoring purposes such as detecting a player or dealer card switch. Examples of card data include, for example, suit and rank information of the cards, suit and rank information of each card in a hand, rank information of a hand, and rank information of each hand in a round of the game.
[0151] The real-time video feed allows the dealer to show the cards dealt by the card handling system 1684 and play the game as if the player were playing at a gaming table with other players in a live gaming venue. In addition, the dealer can prompt the user by announcing that the player's selection will be executed. In an embodiment including a microphone 1672, the dealer 1680 can verbally announce the action or request the player to make a selection. In some embodiments, the user device 1620 also includes a camera or microphone that also captures the feed to be shared with the dealer 1680 and other players.
[0152] The card handling system 1684 may be as previously shown and described. The game area 1686 depicts a player layout for playing the game. As determined by the game rules, the player at the user device 1620 may be presented with a card for use as described in reference Fig.14 Describes the options for clients to respond to in-game events.
[0153] The player selections may be transmitted to the table manager 1686, which may display the player selections to the dealer 1680 using the dealer display 1688 and player action indicators 1690 on the table 1682. For example, the dealer display 1688 may display information about where the next card is dealt or which player position is responsible for the next action.
[0154] In some embodiments, the table manager 1686 may receive playing card information from the playing card handling system 1684 to identify the cards dealt by the playing card handling system 1684. For example, the playing card handling system 1684 may include a playing card reader to determine playing card information from the playing cards. The playing card information may include the rank and suit of each dealt card and information about a hand of cards.
[0155] The table manager 1686 can apply the game rules to the card information along with the acceptable player decisions to determine the game play events and the game chip results. Alternatively, the game chip results can be determined by the dealer 1680 and input to the table manager 1686, which can be used to automatically confirm the results determined by the gaming system.
[0156] In some embodiments, the table manager 1686 can use the card data and the chip data to determine the outcome of the game. The data extracted from the camera 1670 can be used to confirm the card data obtained from the card handling system 1684, determine the position of the player receiving the card, and for general security monitoring purposes such as detecting player or dealer card switching.
[0157] The real-time video feed allows the dealer to show the cards dealt by the card handling system 1684 and play the game as if the player were in a live gaming venue. In addition, the dealer can prompt the user by announcing that the player's selection will be executed. In embodiments including a microphone 1672, the dealer 1680 can verbally announce the action or request the player to make a selection. In some embodiments, the user device 1620 also includes a camera or microphone that also captures a feed to be shared with the dealer 1680 and other players.
[0158] Fig.16 1640 is a simplified block diagram illustrating elements of a computing device that may be used with the systems and apparatus of the present disclosure. Computing system 1640 may be a user-friendly computer, a file server, a computer server, a notebook computer, a tablet computer, a handheld device, a mobile device, or other similar computer system for executing software. Computing system 1640 may be configured to execute a software program containing computing instructions, and may include one or more processors 1642, a memory 1646, one or more displays 1658, one or more user interface elements 1644, one or more communication elements 1656, and one or more storage devices 1648 (also referred to herein as storage devices 1648).
[0159] Processor 1642 may be configured to execute various operating systems and applications, including computing instructions for managing the games of the present disclosure.
[0160] Processor 1642 may be configured as a general purpose processor, such as a microprocessor, but in the alternative, the general purpose processor may be any processor, controller, microcontroller, or state machine suitable for performing the processes of the present disclosure. Processor 1642 may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor), multiple microprocessors, one or more microprocessors combined with a DSP core, or any other such configuration.
[0161] A general-purpose processor can be a part of a general-purpose computer. However, when configured to execute instructions (e.g., software codes) for executing embodiments of the present disclosure, a general-purpose computer should be considered as a special-purpose computer. In addition, when configured according to embodiments of the present disclosure, such special-purpose computers improve the functions of general-purpose computers, because without the present disclosure, general-purpose computers will not be able to perform the process of the present disclosure. When executed by a special-purpose computer, the process of the present disclosure is a process that a person cannot perform within a reasonable time due to the complexity of the data processing, decision-making, communication, interactive nature or a combination thereof of the present disclosure. The present disclosure also provides meaningful limitations in one or more specific technical environments beyond abstract concepts. For example, embodiments of the present disclosure provide improvements in the technical field related to the present disclosure.
[0162] Memory 1646 may be used to store computing instructions, data, and other information used to perform various tasks, including managing the game of the present disclosure. As an example and not limitation, memory 1646 may include synchronous random access memory (SRAM), dynamic RAM (DRAM), read-only memory (ROM), flash memory, etc.
[0163] The display 1658 may be a variety of displays, such as a light emitting diode display, a liquid crystal display, a cathode ray tube, etc. In addition, the display 1658 may be configured with a touch screen feature for accepting user input as the user interface element 1644.
[0164] As non-limiting examples, user interface elements 1644 may include elements such as a display, keyboard, buttons, mouse, joystick, haptic device, microphone, speaker, camera, and touch screen.
[0165] As non-limiting examples, the communication elements 1656 may be configured to communicate with other devices or communication networks. As non-limiting examples, the communication elements 1656 may include elements for communicating over wired and wireless communication media, such as serial ports, parallel ports, Ethernet connections, Universal Serial Bus (USB) connections, IEEE 1394 ("Firewire") connections, THUNDERBOLT™ connections, Wireless networks, ZigBee wireless networks, 802.11 type wireless networks, cellular telephone / data networks, fiber optic networks, and other suitable communication interfaces and protocols.
[0166] Storage devices 1648 may be used to store relatively large amounts of non-volatile information for use in computing system 1640 and may be configured as one or more storage devices. By way of example and not limitation, these storage devices may include computer readable media (CRMs). The CRMs may include, but are not limited to, magnetic and optical storage devices such as disk drives, tapes, CDs (compact disks), DVDs (digital versatile disks or digital video disks), and semiconductor devices such as RAM, DRAM, ROM, EPROM, internal memory, and other equivalent storage devices.
[0167] Those of ordinary skill in the art will recognize that computing system 1640 can be configured in many different ways, with different types of interconnecting buses between various elements. In addition, the various elements can be subdivided physically, functionally, or a combination thereof. As a non-limiting example, memory 1646 can be divided into cache memory, graphics memory, and main memory. Each of these memories can communicate directly or indirectly with one or more processors 1642 on a separate bus, a partially combined bus, or a common bus.
[0168] As specific non-limiting examples, the various methods and features of the present disclosure may be implemented in a mobile, remote, or mobile and remote environment via one or more of the Internet, cellular communications (e.g., broadband), near field communications networks, and other communications networks collectively referred to herein as an iGaming environment. The iGaming environment may be implemented, for example, via DragonPlay Ltd., acquired by Bally Technologies, provides access to social media environments such as and An example of a platform that provides games to user devices (e.g., cell phones and other devices). Where permitted by the jurisdiction, iGaming environments may include pay-to-play (P2P) games. If P2P is not permitted, these features may be presented as entertainment-only games where players stake virtual points of no value, or do not take any risk in the game, such as playing promotional games or features.
[0169] Fig.17 An exemplary embodiment of an information flow in an iGaming environment is shown. At the player level, a player or user accesses a website hosting an activity, such as website 1700. Website 1700 can provide a web game client 1702 in functionality. Web game client 1702 can be represented, for example, by a game client 1708 that can be downloaded at information flow 1710, which can process a small program transmitted from a game server 1714 at information flow 1711 to present and process game gambling on a player's remote device. In the case where the game is a P2P game, game server 1714 can process game coins (e.g., game coins) based on value, and randomly generate results reproduced on the player's device. In some embodiments, web game client 1702 can access a local memory store to drive a graphic display on the player's device. In other embodiments, all or part of the game graphics can be streamed to the player's device with web game client 1702, thereby realizing player interaction and display of game features and results on the player's device.
[0170] The website 1700 may access a player-centric iGaming platform-level account module 1704 at information flow 1706 for players to establish and confirm credentials for gaming and, where permitted, access an account for placement (e.g., eWallet). The account module 1704 may include or access data related to a player profile (e.g., player-centric information that needs to be retained and tracked by the host), the player's electronic account, deposit and withdrawal records, registration and authentication information (e.g., username and password, name and address information, date of birth), a copy of a government-issued identification document (e.g., a driver's license or passport), and biometric identification standards (e.g., fingerprint or facial recognition data), as well as a responsible gaming module containing information such as self-imposed or jurisdiction-imposed gaming restrictions (e.g., loss limits, daily limits, and duration limits). The account module 1704 may also include and enforce geographic location restrictions, such as the geographic area in which a player may play P2P games, user device IP address confirmation, etc.
[0171] The account module 1704 communicates with the game module 1716 at information flow 1705 to complete login, registration and other activities. The game module 1716 can also store or access the player's game history, such as player tracking and loyalty club account information. The game module 1716 can provide static web pages from the game module 1716 to the player's device via information flow 1718, while real-time game content can be provided from the game server 1714 to the network game client via information flow 1711 as described above.
[0172] The game server 1714 can be configured to provide interaction between the game and the player, such as receiving game currency information, game selection, player selection in the game or selection to play the game until completion, and random selection of game results and graphics packages, which provide display of game graphics and player interaction interface alone or in combination with the downloadable game client 1708 / web game client 1702 and the game module 1716. At information flow 1718, the player account and login information can be provided from the account module 1704 to the game server 1714 to enable the game. Information flow 1720 provides game currency / points information between the account module 1704 and the game server 1714 for the game, and can display points and eWallet availability. Information flow 1722 can provide the game server 1714 with player tracking information for tracking the player's game play. Tracking games can be used for the purpose of providing loyalty rewards to players, determining preferences, etc.
[0173] Fig.17 All or portions of the features of may be supported by servers and databases located remotely from the player's mobile device, and may be hosted or sponsored by a regulated gaming entity for P2P gaming, or where P2P is not permitted, for recreational gaming only.
[0174] In some embodiments, the game may be managed in at least a partial player pooled format, where pooled coin rewards are paid to players from a pot, and lost coins are collected into a pot and ultimately distributed to one or more players. Such player pooled embodiments may include player pooled progressive embodiments, where the pot is ultimately distributed when a predetermined progressive winning hand combination or composition is processed. Player pooled embodiments may also include dividend payout embodiments, where at least a portion of the pot is ultimately distributed in the form of a payout that is, for example, proportionally distributed to the players who contributed to the pot.
[0175] In some player pooled embodiments, the game administrator may not profit from chance-based events that occur during the game that result in lost game coins. Instead, the lost game coins may be redistributed back to the players. In order to profit from the game, the game administrator may retain a commission, for example, a player entry fee or a fee for game coins, so that the amount the game administrator receives in exchange for hosting the game is limited to the commission, rather than based on chance events that occur in the game itself. The game administrator may also charge a fixed fee rental for participating in the game.
[0176] It should be noted that the method described herein can be played with 52 cards of any number of standard decks (e.g., 1 to 10 decks). A deck of standard decks is a collection of decks, including A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K, each with four suits (including spades, diamonds, clubs, hearts), totaling 52 decks. The decks can be shuffled or a continuous shuffler (CSM) can be used. A deck of standard 52 decks of cards can be used, as well as several decks of cards of other types, such as several decks of Spanish cards, several decks of wild cards, etc. The operations described herein can be performed in any reasonable order. In addition, many different variations of the rules of the game field can be applied.
[0177] Note that in embodiments where a computer (processor / processing unit) is used to play the game, a "virtual deck" of cards is used instead of a physical deck of cards. A virtual deck is an electronic data structure used to represent a physical deck of cards, using an electronic representation for each corresponding card in the deck. In some embodiments, the virtual cards are presented (e.g., displayed on an electronic output device using computer graphics, projected onto the surface of a physical table using a video projector, etc.), and are presented to mimic the real image of the cards.
[0178] The methods described herein can also be played on a physical table using physical playing cards and physical game tokens for placement. When a player wins (and the dealer loses) a player's game tokens, the dealer will pay the player a corresponding bonus amount. When a player loses (and the dealer wins) a player's game tokens, the dealer will take (collect) the game tokens from the player and typically place the game tokens in the dealer's game token holder. Before the game begins, all rules, embodiments, features, etc. of the game being played can be communicated to the player (e.g., verbally or on a written rule card).
[0179] Game coins can be purchased in the form of electronic points.
[0180] Any component of any embodiment described herein may include hardware, software, or any combination thereof.
[0181] In addition, the operations described herein can be performed in any reasonable order. Any operation not required for normal operation can be optional. In addition, all methods described herein can also be stored as instructions on a computer-readable storage medium, which can be operated by a computer processor. All variations and features described herein can be combined with any other features described herein without restriction. All features in all files incorporated herein by reference can be combined with any features described herein, and can also be combined with all other features in all other files incorporated by reference without restriction.
[0182] The features of the various embodiments of the subject matter described herein, no matter how important to the example embodiments incorporated therein, do not limit the subject matter as a whole, and any reference to the invention, its elements, operations, and applications are not limiting as a whole, but only to these example embodiments. Therefore, this detailed description does not limit the embodiments limited only by the appended claims. Moreover, since many modifications and changes can be readily imagined by those skilled in the art, it is not desirable to limit the subject matter to the exact construction and operation shown and described, and therefore all suitable modifications and equivalents may be resorted to within the scope of the subject matter.
Claims
1. A method, include: detecting, by the processor in response to analysis of the image data by the neural network model, the appearance of one or more features of the gaming surface; automatically modifying, by the processor, via the neural network model, in response to detecting the appearance of the one or more features, a presentation attribute associated with presenting gaming content via a designated area of the gaming table; as well as The processor projects the game content to the designated area of the game table through the projection system based on the modified presentation attributes.
2. The method according to claim 1, further comprising: include: Image data is captured from an image sensor perspective of the image sensor oriented toward a gaming tabletop within a gaming environment, and wherein analysis of the image data includes analyzing an appearance of one or more features in the image data compared to a known geometry of the one or more features.
3. The method according to claim 2, in, The known geometric shapes include isomorphic equivalents of the appearance of the one or more features acquired from a substantially identical image sensor perspective oriented toward the gaming table during training of the neural network model in a training environment, and wherein the modification is based on one or more conversions of the detected appearances of the one or more features to the isomorphic equivalents by the neural network model.
4. The method according to claim 3, in, The one or more transformations are based on one or more layout elements of the gaming table, the layout elements being specified in a layout authorized for presenting a gaming game via a designated area of the gaming table.
5. The method according to claim 1, in, The gaming tabletop includes a hard surface covered by a reflective material, and at least one of the one or more features is projected onto the hard surface.
6. The method according to claim 1, in, The one or more features include features for managing gaming.
7. The method according to claim 1, in, The automatic modification includes: Detecting, by a processor, a first relative position between a first feature of the one or more features and a second feature of the one or more features based on an analysis of the image data by a neural network model; The processor searches a library of layout templates based on one or more transformations of the first relative position through a neural network model; selecting, by the processor through the neural network model, a layout template from a library of layout templates based on the search, wherein the layout template has a second relative position between additional features on the game table layout, and wherein the second relative position is isomorphic to the first relative position; and Wherein modifying the presentation attribute is based at least in part on a size of the additional feature obtained from the layout template.
8. The method according to claim 7, further comprising: include: Based on the analysis of the image data by the neural network model, a manufacturer of one or more of the gaming desktop or the layout templates is detected, wherein the search includes searching only a portion of the library of layout templates associated with the detected manufacturer.
9. The method according to claim 1, in, The image data is captured via an image sensor perspective of the image sensor that is fixed relative to the designated area, and wherein, prior to automatically modifying the rendering attribute, the method further comprises: obtaining additional image data of game content projected onto the gaming desktop using the rendering attributes for the projection prior to modification; and Based on a isomorphic assessment of the additional image data compared to the image data by a neural network model, a position change of the one or more features relative to the designated area is determined, wherein automatically modifying the presentation attribute includes automatically calibrating the presentation attribute based on the position change.
10. The method according to claim 1, in, Automatically modifying the presentation attributes includes one or more of the following: self-calibrate projector settings of said projection system; or Based on the analysis of the appearance of the one or more features by the neural network model, one or more of a position, size, or orientation of gaming content within the virtual overlay of the gaming table is modified.
11. The method according to claim 1, in, The one or more features include at least one physical feature of the gaming table and a grid of fiducial markers projected onto the gaming table through a projection field of view of the projection system, wherein each fiducial marker within the grid of fiducial markers has a unique appearance associated with specific coordinates of the grid structure, and wherein detecting the appearance of the one or more features includes: Detecting, by the neural network model, at least a portion of the grid of fiducial markers visible on the gaming surface through analysis of the image data; and Based on the detected orientation of at least a portion of the grid of fiducial markers relative to the known dimensions of the at least one physical feature, a homography matrix is determined to automatically transform one or more dimensions of the game content to fit the designated area through the projection based on the projection perspective and based on the specific coordinates of the grid structure.
12. A gaming system, include: Projection system; as well as A processor, wherein the processor is configured to execute instructions that, when executed, cause the gaming system to perform operations such as: Detecting the appearance of one or more features of the gaming surface in response to the analysis of the image data by the neural network model; automatically modifying, by the neural network model, presentation attributes associated with presenting gaming content via a designated area of the gaming table in response to detecting the appearance of the one or more features; and The game content is projected onto the designated area of the game table by the projection system based on the modified presentation properties.
13. The gaming system of claim 12, wherein the processor is further configured to execute instructions that, when executed, cause the gaming system to perform operations to: The image data is captured from an image sensor perspective of an image sensor oriented toward a gaming tabletop within a gaming environment, and wherein the operation of analyzing the image data includes the operation of evaluating the appearance of one or more features in the image data in comparison to a known geometry of the one or more features.
14. The gaming system according to claim 13, in, The known geometric shapes include isomorphic equivalents of the appearance of the one or more features acquired from a substantially identical image sensor perspective oriented toward the gaming table during training of the neural network model in a training environment, and wherein the operation of automatically modifying the rendering attributes is based on one or more conversions of the detected appearances of the one or more features into the isomorphic equivalents by the neural network model.
15. The gaming system according to claim 12, in, The gaming tabletop includes a hard surface covered by a reflective material, and at least one of the one or more features is projected onto the hard surface.
16. The gaming system of claim 12, wherein the processor is further configured to execute instructions that, when executed, cause the gaming system to perform operations to: Detecting a first relative position between a first feature of the one or more features and a second feature of the one or more features based on an analysis of the image data by a neural network model; Searching a library of layout templates based on one or more transformations of the first relative position using a neural network model; Selecting, by the neural network model, a layout template from a library of layout templates based on the search, wherein the layout template has a second relative position between additional features on the game table layout, and wherein the second relative position is isomorphic to the first relative position; and in, Modifying the presentation property is based at least in part on a size of the additional feature obtained from the layout template.
17. The gaming system according to claim 12, in, The image data is captured via an image sensor perspective of the image sensor that is fixed relative to the designated area, and wherein, prior to automatically modifying the rendering attribute, the processor is further configured to execute instructions that, when executed, cause the gaming system to: obtaining additional image data of game content projected onto the gaming desktop using the rendering attributes for the projection prior to modification; and Based on a isomorphic assessment of the additional image data compared to the image data by the neural network model, a position change of the one or more features relative to the designated area is determined, wherein automatically modifying the presentation attribute includes automatically calibrating the presentation attribute based on the position change.
18. One or more non-volatile machine-readable media comprising instructions executable by a processor, the instructions include: Instructions for detecting, by the processor, the appearance of one or more features of the gaming surface in response to analysis of the image data by the neural network model; instructions for automatically modifying, by the neural network model, presentation attributes associated with presenting gaming content via a designated area of the gaming table in response to detecting the appearance of the one or more features; as well as Instructions for projecting game content onto a designated area of the game table via a projection system based on the modified presentation properties.
19. The one or more non-transitory machine-readable media of claim 18, wherein the instructions to automatically modify the presentation attributes include one or more of: instructions for self-calibrating projector settings of the projection system; or Instructions for modifying one or more of a position, size, or orientation of gaming content within a virtual overlay of the gaming table based on an analysis by the neural network model of the appearance of the one or more features.
20. One or more non-volatile machine-readable media according to claim 18, in, The one or more features include at least one physical feature of the gaming table and a grid of fiducial markers projected onto the gaming table through a projection field of view of the projection system, wherein each fiducial marker within the grid of fiducial markers has a unique appearance associated with specific coordinates of the grid structure, and wherein the instructions for detecting the appearance of the one or more features include: instructions for detecting, by the neural network model, at least a portion of the grid of fiducial markers visible on the gaming table through analysis of the image data; and Instructions for determining a homography matrix based on a detected orientation of at least a portion of the grid of fiducial markers relative to the known dimensions of the at least one physical feature to automatically transform one or more dimensions of the game content to fit the designated area through the projection based on a projection viewing angle and based on specific coordinates of the grid structure.
Citation Information
Patent Citations
Systems, methods and devices for monitoring game activities
CN107427718A
Systems and methods for distinguishing multiple distinct wagers at a single bet spot of a game table
CN109699173A
System and method for automatic calibration
CN111145259A
System and methods for operating gaming environments
US20150199872A1
Arcade table
US6761634B1