Bowling system, bowling program, and computer-executed method
Patent Information
- Application Number
- JP2023132667
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-16
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2043-08-16
AI Technical Summary
【0013】 本発明によれば、ピン自体に属性を持たせ、倒されたピンの属性を自動的に判別してスコアに反映させて新たなゲーム性を与えることができる。
Smart Images

Figure 2025027669000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a bowling system, a bowling program, and a bowling method suitable for broadening the range of bowling games. [Background technology]
[0002] Conventionally, in bowling systems, the presence or absence of pins before and after the bowling ball is detected by image processing or the like, and the score is calculated according to the number of pins knocked down. For example, Japanese Patent Laid-Open Publication No. 6-182019 discloses a computer bowling system that captures images of pins after the bowling ball is taken by an imaging means and detects the number of pins remaining standing in the correct positions (Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 6-182019 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the games available at bowling alleys have remained unchanged for decades, and most of them are simply contests to see who can knock down the most pins out of ten standing pins with a thrown ball (so-called ten-pin bowling). As a result, the appeal and popularity of bowling, which has remained the same for many years, is declining amid the diversification of entertainment and pastimes, and there is a problem that it is gradually losing its ability to attract customers.
[0005] The present invention has been made to solve such problems, and has as its object to provide a bowling system, bowling program and bowling method that can give attributes to the pins themselves, automatically determine the attributes of knocked down pins and reflect them in the score, thereby adding new gameplay to the game. [Means for solving the problem]
[0006] In order to solve the problem of giving attributes to the pins themselves and automatically determining the attributes of knocked-down pins and reflecting them in the score to provide new game play, the bowling system of the present invention has a pin image acquisition unit that acquires pin images of pins placed on a lane from a photographing means, an attribute detection unit that analyzes the pre-arrival image acquired by the pin image acquisition unit before the ball reaches the pins and detects whether each pin has been knocked down and the color or pattern of the standing pin as the pin attributes, a pin detection unit that analyzes the post-arrival image acquired by the pin image acquisition unit after the ball reaches the pins and detects whether each pin has been knocked down, and a score calculation unit that calculates the bowling score based on information on the fallen pins and the attributes of the standing pins detected by the attribute detection unit, and information on the fallen pins detected by the pin detection unit.
[0007] In addition, as one aspect of the present invention, in order to solve the problem of detecting information about fallen pins and attributes of standing pins with high accuracy before the ball reaches the pins, the attribute detection unit cuts out a predetermined area in which each pin is located from the pre-arrival image as an individual pin image based on position information of each pin in the image coordinate system of the pin image, and for each of the individual pin images, if the proportion of black pixels exceeds a predetermined value, it determines that the pin is fallen, and if the proportion of black pixels is equal to or less than a predetermined value, it determines that the pin is standing, and also determines the color of each pixel using a trained model, and detects the most common color other than black as the attribute of the pin.
[0008] Furthermore, as one aspect of the present invention, in order to solve the problem of detecting pins that have fallen after the ball has reached them with high accuracy, the pin detection unit may cut out, from the post-arrival image, a predetermined area in which each pin is located, as an individual pin image based on positional information of each pin in the image coordinate system of the pin image, and for each of the individual pin images, if the proportion of black pixels exceeds a predetermined value, it may determine that the pin is fallen, and if the proportion of black pixels is equal to or less than a predetermined value, it may determine that the pin is standing.
[0009] Furthermore, as one aspect of the present invention, in order to solve the problem of acquiring position information of pins with high accuracy, a position information acquisition unit that acquires the position information may acquire a pin-free image when no pins are placed and a pin-present image when a pin is placed from the pin image acquisition unit, cut out a head image including a head portion of each pin in a difference image between the pin-free image and the pin-present image, define the X-coordinate of the pin as the X-coordinate of the head image at which the number of non-black pixels in the Y-axis direction is maximized, cut out individual head images for each pin from the head image based on the X-coordinate, and define the Y-coordinate of the pin as the Y-coordinate at which the number of non-black pixels in the X-axis direction increases from the top to the bottom of the individual head image in the Y-axis direction.
[0010] Furthermore, as one aspect of the present invention, in order to solve the problem of automatically determining whether or not the pitching has ended, the present invention may have a loop time calculation unit that calculates a loop time based on the ball speed of the pitched ball, and a pitching end determination unit that determines that the pitching has ended when the loop time has elapsed or when there is a change between the number of fallen pins detected by the attribute detection unit and the number of fallen pins detected by the pin detection unit.
[0011] In order to solve the problem of giving attributes to the pins themselves and automatically determining the attributes of knocked-down pins to reflect them in the score, thereby providing new game play, the bowling program of the present invention causes a computer to function as: a pin image acquisition unit that acquires pin images of pins placed on a lane from a photographing means; an attribute detection unit that analyzes the pre-arrival image acquired by the pin image acquisition unit before the ball reaches the pins and detects whether each pin is standing and the color or pattern of the standing pin as the pin attributes; a pin detection unit that analyzes the post-arrival image acquired by the pin image acquisition unit after the ball reaches the pins and detects whether each pin is standing; and a score calculation unit that calculates a bowling score based on the attributes of the pins detected by the attribute detection unit and information on the knocked-down pins detected by the pin detection unit.
[0012] In order to solve the problem of giving attributes to the pins themselves and automatically determining the attributes of knocked-down pins to reflect them in the score, thereby providing new game characteristics, the bowling method of the present invention includes a pin image acquisition step of acquiring pin images of pins arranged on a lane from a photographing means, an attribute detection step of analyzing the pre-arrival image acquired in the pin image acquisition step before the ball reaches the pins and detecting whether each pin is standing and the color or pattern of the standing pin as the pin attribute, a pin detection step of analyzing the post-arrival image acquired in the pin image acquisition step after the ball reaches the pins and detecting whether each pin is standing, and a score calculation step of calculating a bowling score based on the attributes of the pins detected in the attribute detection step and information on the knocked-down pins detected in the pin detection step. Effect of the Invention
[0013] According to the present invention, the pins themselves have attributes, and the attributes of the pins that are knocked down can be automatically determined and reflected in the score, providing a new gaming experience. [Brief description of the drawings]
[0014] [Figure 1] 1 is a block diagram showing an embodiment of a bowling system according to the present invention. [Diagram 2] 5 is a diagram showing an example of pin position information in the embodiment; FIG. [Diagram 3] FIG. 4 is a diagram showing an example of pin information according to the embodiment; [Figure 4] 5 is a flowchart showing a location information acquisition process executed by a location information acquisition unit of the present embodiment. [Diagram 5] FIG. 4 is a diagram showing an example of an unfocused image in the present embodiment. [Figure 6] FIG. 4 is a diagram showing an example of an in-focus image in the present embodiment. [Figure 7] FIG. 4 is a diagram showing an example of a difference image in the present embodiment. [Figure 8] FIG. 4 is a diagram showing an example of a head image in the present embodiment. [Figure 9] FIG. 4 is a diagram showing an example of an individual head image in the present embodiment. [Figure 10] 2 is a flowchart showing a bowling method executed by the bowling system and bowling program of the present embodiment. [Figure 11] 10 is a flowchart showing an initial arrangement detection process executed by an initial arrangement detection unit of the present embodiment. [Figure 12] 10 is a flowchart showing an attribute detection process executed by an attribute detection unit of the present embodiment. [Figure 13] 5 is a flowchart showing a pin detection process executed by a pin detection unit of the present embodiment. [Figure 14] 1A is a diagram showing the arrangement of the pins at the start of a game, (b) the arrangement of the pins after the red team has thrown the ball, and (c) pin information stored in a pin information storage unit in Example 1. FIG. [Figure 15] FIG. 13 is a diagram showing (a) the arrangement of the pins before the blue team throws the ball, (b) the arrangement of the pins after the blue team throws the ball, and (c) the pin information stored in the pin information storage unit in Example 1. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an embodiment of a bowling system, a bowling program, and a bowling method according to the present invention will be described with reference to the drawings.
[0016] 1 is a block diagram showing a bowling system 100 of this embodiment, which includes a bowling machine 1 installed in a bowling alley or the like, and a server 10 that calculates a score based on pin information sent from the bowling machine 1. Below, the bowling machine 1 and the server 10 will be described separately.
[0017] (1) Bowling machine 1 The bowling machine 1 of this embodiment is configured by a computer such as a personal computer, and as shown in Fig. 1, mainly comprises an image capture means 2, a passage detection means 3, a communication means 4, a storage means 5, and an arithmetic processing means 6. Each of the constituent means will be described in detail below. The bowling machine 1 is also connected to be able to communicate with existing mechanical systems (pinsetters, rakes, etc.) installed in the bowling alley.
[0018] The image capturing means 2 is composed of a digital video camera or the like, and captures images of the pins arranged on the lane. In this embodiment, the image capturing means 2 captures not only still images but also moving images as images. The image capturing means 2 may capture images of the pins for each lane, or may capture images of multiple lanes at the same time.
[0019] The passage detection means 3 is composed of an infrared sensor or the like, and detects whether or not a bowling ball has passed through. In this embodiment, the passage detection means 3 is installed so that infrared rays cross the lane, and when the infrared rays are blocked by the passage of a ball or the like, the output potential fluctuates greatly. Note that in this embodiment, a retroreflective infrared sensor is used as the passage detection means 3, but the present invention is not limited to this, and any sensor capable of detecting the passage of a ball may be used.
[0020] The communication means 4 implements a communication function in the bowling machine 1. In this embodiment, the communication means 4 supports carrier network standards such as fourth generation (4G) and fifth generation (5G), wireless LAN standards such as Wi-Fi (registered trademark), and short-range wireless communication standards such as Bluetooth (registered trademark), and is configured to connect to the server 10 via any one of the communication networks.
[0021] The storage means 5 stores various data and functions as a working area when the arithmetic processing means 6 performs arithmetic processing. In this embodiment, the storage means 5 is composed of a hard disk, a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc., and has a program storage unit 51, a position information storage unit 52, a trained model storage unit 53, and a pin information storage unit 54, as shown in FIG.
[0022] A bowling program 1a for executing the bowling method of this embodiment is installed in the program storage unit 51. Then, the arithmetic processing means 6 executes the bowling program 1a, thereby causing the computer as the bowling device 1 to function as each of the components described below.
[0023] The position information storage unit 52 stores position information of each pin in the image coordinate system of the pin image. In this embodiment, as the position information, the X coordinate and the Y coordinate of the vertex of each pin in the image coordinate system are stored in association with the pin number of each pin, as shown in FIG.
[0024] The trained model storage unit 53 stores a trained model for detecting pin attributes. In this embodiment, the detectable pin attribute is the color or pattern of the pin. For this reason, when detecting the color of the pin as a pin attribute, machine learning is performed using a learning dataset consisting of pin images of pins of various colors and the colors of the pins confirmed by visual inspection, and a trained model that outputs the color of the pin when the pin image is input is stored in the trained model storage unit 53.
[0025] In addition, when detecting the pin pattern as an attribute of a pin, machine learning can be performed using a learning dataset consisting of pin images photographed of pins with various patterns and patterns confirmed by visual inspection of the pins, and a trained model that outputs the pin pattern when a pin image is input can be stored in the trained model memory unit 53.
[0026] The use of the bowling program 1a and the trained model is not limited to the above configuration. For example, the bowling program 1a and the trained model may be stored in a non-transitory computer-readable recording medium such as a USB memory or a CD-ROM, and may be read and executed directly from the recording medium. The bowling program 1a and the trained model may be packaged and made downloadable as an application for a smartphone or tablet. Furthermore, the bowling program 1a and the trained model may be stored in an external server or the like, and used in a cloud computing system or an ASP (Application Service Provider) system.
[0027] The pin information storage unit 54 stores pin information before and after the bowling. In this embodiment, as shown in Fig. 3, the pin information includes a store ID for identifying the bowling alley, a lane ID for identifying the lane on which the bowling was made, and the pin numbers (1 to 10) of each pin before and after the bowling, and stores the color of the pin (red, yellow, white, green, etc.) for upright pins and a blank (-) for downed pins.
[0028] Next, the calculation processing means 6 is composed of a CPU (Central Processing Unit) etc., and by executing the bowling program 1a installed in the program storage unit 51, as shown in Fig. 1, it functions as a pin image acquisition unit 61, a position information acquisition unit 62, a ball detection unit 63, a ball speed calculation unit 64, an attribute detection unit 65, a loop time calculation unit 66, a pin detection unit 67, a bowling end determination unit 68, a pin information transmission unit 69 and an initial placement detection unit 70. Each component unit will be described in more detail below.
[0029] The pin image acquisition unit 61 acquires images of the pins placed on the lane from the imaging means 2. In this embodiment, as described later, when acquiring pin position information, the pin image acquisition unit 61 acquires a no-pin image, which is a pin image in a state where the pin is not placed, and a pin-present image, which is a pin image in a state where the pin is placed. In addition, the pin image acquisition unit 61 is adapted to acquire a pre-throw image, which is a pin image before the ball is thrown, a pre-arrival image, which is a pin image before the ball reaches the pin, and a post-arrival image, which is a pin image after the ball reaches the pin.
[0030] The position information acquisition unit 62 acquires position information in the image coordinate system of each pin arranged at an initial position during initial setting of the bowling machine 1. Hereinafter, the position information acquisition process executed by the position information acquisition unit 62 will be described with reference to FIG.
[0031] The position information acquisition unit 62 first acquires from the pin image acquisition unit 61 a pin-less image in a state where no pins are placed as shown in Fig. 5, and a pin-with image in a state where the pins are placed in their initial positions as shown in Fig. 6 (steps S1 and S2). Next, the position information acquisition unit 62 generates a difference image as shown in Fig. 7 from the difference in luminance between the pin-less image and the pin-with image (step S3). Then, the position information acquisition unit 62 trims the head portion of each pin in the difference image, and cuts out a head image including the head portion as shown in Fig. 8 (step S4).
[0032] Next, the position information acquisition unit 62 acquires the X coordinate where the number of non-black pixels in the Y axis direction of the head image is maximum as the X coordinate of the pin (step S5), as shown in Fig. 8. Note that in Fig. 8, the curve added to the head image is a graph of the ratio of the number of non-black pixels. In the graph, the apex of the convex bulge is the maximum point.
[0033] Furthermore, the position information acquisition unit 62 cuts out individual head images for each pin from the head image based on the X coordinate acquired in step S5 (step S6) as shown in Fig. 9. Note that in this embodiment, the individual head images are cut out from the head image with a width of a predetermined number of pixels on both sides centered on the X coordinate, but this is not limiting.
[0034] Next, the position information acquisition unit 62 acquires as the Y coordinate of the pin the Y coordinate at which the number of non-black pixels in the X-axis direction increases from the top to the bottom in the Y-axis direction of the pin image cut out in step S6 (step S7). After acquiring the X-coordinate and Y-coordinate of each pin, the position information acquisition unit 62 stores the position information (X-coordinate, Y-coordinate) in the position information storage unit 52 in association with the pin number of each pin (step S8). By executing the above position information acquisition process for each lane, the position information in the image coordinate system of each pin placed at the initial position in each lane is registered.
[0035] The ball detection unit 63 detects whether or not the ball has passed over the lane. Specifically, the ball detection unit 63 constantly monitors the output potential from the passage detection means 3, and detects that the ball has passed over the lane based on the fluctuation in the output potential. However, since small fluctuations in potential occur even when the ball has not passed over, in this embodiment, a threshold value is set for the amount of fluctuation in the output potential, and if there is a fluctuation equal to or greater than the threshold, it is determined that the ball has passed over, whereas if there is a fluctuation less than the threshold, it is determined that a false detection has occurred.
[0036] The ball speed calculation unit 64 calculates the speed of the thrown ball. In this embodiment, the ball speed calculation unit 64 calculates the speed of the thrown ball based on the time during which the output potential of the passage detection means 3 was high, i.e., the time during which the ball blocked infrared rays, and the diameter of the ball. This ball speed is used when calculating the loop time, which will be described later.
[0037] The attribute detection unit 65 detects pin information before the ball reaches the pins. In this embodiment, the attribute detection unit 65 analyzes a pre-arrival image, which is a pin image acquired by the pin image acquisition unit 61 before the ball reaches the pins, and detects whether each pin has fallen or not and the color or pattern of the standing pin as the attribute of the pin.
[0038] Specifically, the attribute detection unit 65 cuts out a predetermined area where each pin is located from the pre-arrival image as an individual pin image, based on the position information of each pin stored in the position information storage unit 52. In this embodiment, a rectangular area that is centered on the position information (X coordinate, Y coordinate) of each pin and expanded by a predetermined number of pixels on all four sides is set as an individual pin image.
[0039] Next, the attribute detection unit 65 determines that the pin is down if the ratio of black pixels for each individual pin image exceeds a predetermined value. On the other hand, the attribute detection unit 65 determines that the pin is up if the ratio of black pixels is equal to or less than a predetermined value, and determines the color of each pixel using the trained model stored in the trained model storage unit 53, and detects the most common color other than black as the attribute of the pin. The attribute detection unit 65 then outputs the pin color (red, yellow, white, green, etc.) to the pin number of the upright pin, while outputting a blank (-) to the pin number of the downed pin, and stores it in the pin information storage unit 54.
[0040] The loop time calculation unit 66 calculates a loop time for determining whether or not the pitch has ended. In this embodiment, the loop time calculation unit 66 calculates the loop time based on the ball speed calculated by the ball speed calculation unit 64. Specifically, the loop time is calculated using a calculation formula that calculates a shorter loop time the faster the ball speed is, and calculates a longer loop time the slower the ball speed is.
[0041] The pin detection unit 67 detects pin information after the ball reaches the pins. In this embodiment, the pin detection unit 67 analyzes the post-arrival image acquired by the pin image acquisition unit 61 after the ball reaches the pins, and detects whether each pin has fallen down.
[0042] Specifically, the pin detection unit 67 cuts out a predetermined area where each pin is located from the post-arrival image as an individual pin image based on the position information of each pin in the image coordinate system of the pin image. Then, for each individual pin image, the pin detection unit 67 determines that the pin is down if the ratio of black pixels exceeds a predetermined value, and determines that the pin is up if the ratio of black pixels is equal to or less than the predetermined value.
[0043] Since the attributes of the pins do not change before and after the ball arrives, the attributes of the pins in the image after arrival can be the same as those of the pins in the image before arrival that have the same pin number. For this reason, the pin detection unit 67 does not detect the attributes (color) of the pins, but only detects whether the pins are down or not, and outputs the color of the pin (red, yellow, white, green, etc.) detected by the attribute detection unit 65 to the pin numbers of the standing pins and outputs a blank (-) to the pin numbers of the downed pins, and stores them in the pin information storage unit 54.
[0044] The end-of-throwing determination unit 68 determines whether or not the throw has ended. In this embodiment, the end-of-throwing determination unit 68 determines that the throw has ended when the loop time calculated by the loop time calculation unit 66 has elapsed, or when there is a change between the number of downed pins detected by the attribute detection unit 65 (the number of downed pins before the ball arrives) and the number of downed pins detected by the pin detection unit 67 (the number of downed pins after the ball arrives).
[0045] The pin information transmitting unit 69 transmits pin information relating to the pins before and after the ball is thrown to the server 10. In this embodiment, the pin information transmitting unit 69 transmits pin information consisting of information on fallen pins and attributes of standing pins detected by the attribute detecting unit 65, and information on fallen pins detected by the pin detecting unit 67, to the server 10 via the communication means 4.
[0046] The initial position detection unit 70 detects the initial position of the pins that are placed on the lane at the beginning of each frame (first throw). In this embodiment, the initial position detection unit 70 is executed in response to a trigger of the start of a bowling game for the first frame, and is executed in response to a trigger of the pins being automatically set by the pinsetter for the second frame and thereafter.
[0047] Specifically, the initial placement detection unit 70 detects whether each pin has fallen and the color or pattern of the standing pin as the pin attributes by performing the same analysis as the attribute detection unit 65 on the pre-throw image, which is the pin image acquired by the pin image acquisition unit 61 before the ball is thrown. Then, when a preset waiting time has elapsed or when it is detected that all the pins have been placed, the initial placement detection unit 70 transmits pin information related to the pre-throw pins to the server 10.
[0048] In this embodiment, the initial placement detection unit 70 detects that all pins are placed when a certain number of consecutive pre-throw images are captured in which it is confirmed that all pins are standing. This prevents a rake (a bar for dropping fallen pins or remaining pins into a pit) from appearing in the pre-throw image, resulting in a false detection that the pins are standing.
[0049] Furthermore, in this embodiment, if the placement of all pins is completed within the waiting time, the initial placement detection unit 70 transmits the attributes (colors) of all pins as pin information to the server 10. On the other hand, if the placement of all pins is not completed within the waiting time, the initial placement detection unit 70 forcibly transmits pin information indicating that all pins are white to the server 10. This allows the game to continue without interruption even if a discrepancy occurs between the actual pin states and the pin states recognized by the system.
[0050] For example, in a ten-pin bowling game, if the system judges the first throw to be a strike even though there is one pin remaining, the system expects that the next time the pins will be set with all ten pins because it judges it to be a strike. However, since it is not actually a strike, the pins for the second throw are set without all ten pins. In this case, the system proceeds to the first throw of the next frame, so the initial placement detection unit 70 is executed, but the score on the system side can be corrected to return to the state of the second throw of the previous frame. As a result, after the second throw, the initial placement detection unit 70 is executed again to proceed to the first throw of the next frame, so that the actual pin state and the pin state recognized by the system are both matched with a state of ten pins.
[0051] (2) Server 10 The server 10 of this embodiment is configured by a computer such as a cloud server, and as shown in Fig. 1, mainly includes a communication means 4, a storage means 7, and a calculation processing means 8. Each of the constituent means will be described in detail below. Among the components of the server 10, components that are the same as or correspond to those of the bowling apparatus 1 described above are given the same reference numerals and will not be described again.
[0052] The storage means 7 on the server 10 side stores various data and functions as a working area when the arithmetic processing means 8 on the server 10 side performs arithmetic processing. In this embodiment, the storage means 7 is composed of a hard disk, a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, etc., and has a program storage unit 71 and a score storage unit 72 as shown in FIG.
[0053] A bowling program for executing a part of the bowling method of this embodiment is installed in the program storage unit 71. Then, the arithmetic processing means 8 executes the bowling program, thereby causing the computer serving as the server 10 to function as each component unit described below. Also, the score storage unit 72 stores the scores of a game using bowling, and stores the scores calculated by a score calculation unit 81 described below.
[0054] The calculation processing means 8 on the server 10 side is composed of a CPU (Central Processing Unit) and the like, and functions as a score calculation unit 81 as shown in FIG. 1 by executing a bowling program installed in the program storage unit 71.
[0055] The score calculation unit 81 calculates the bowling score based on the pin information sent from the bowling machine 1. In this embodiment, the score calculation unit 81 acquires the pin information sent from the bowling machine 1 via the communication means 4. Then, the score calculation unit 81 calculates the bowling score based on the pin information, i.e., the pin information before the ball reaches the pins (information on the fallen pins and the attributes of the standing pins detected by the attribute detection unit 65) and the pin information after the ball reaches the pins (information on the fallen pins detected by the pin detection unit 67). The score calculation rules can be set arbitrarily by combining the number of pins and the attributes of the pins, and can be added or changed by the administrator.
[0056] In this embodiment, the score calculation unit 81 stores the calculated score in the score storage unit 72 that can be accessed from the outside. This allows users to access the server 10 from a dedicated app installed on the bowling device 1, a smartphone, or the like, and thereby allows them to view the score in real time, output the game results, and also allows users in remote stores to compete in real time and hold large-scale bowling events and tournaments across multiple stores.
[0057] In this embodiment, the score calculation unit 81 is provided in an external server 10, pin information generated at multiple bowling alleys is aggregated, and the server 10 executes the scoring work. However, this configuration is not limited to this, and an individual server 10 may be provided for each bowling alley, and the score may be calculated by acquiring pin information only from the bowling machine 1 installed at that bowling alley. Alternatively, the score calculation unit 81 may be provided in each bowling machine 1, and the score may be calculated individually at each bowling machine 1.
[0058] Next, the operation of the bowling system 100, the bowling program 1a and the bowling method of this embodiment will be described.
[0059] When bowling is played using the bowling system 100 of this embodiment, as described above, as an initial setting of the bowling machine 1, the position information acquisition unit 62 acquires position information in the image coordinate system of each pin placed at its initial position in advance and stores it in the position information storage unit 52 (FIG. 4). This allows highly accurate position information of the pins to be acquired. In addition, by executing this position information acquisition process for each lane, the position information in the image coordinate system of each pin placed at its initial position on each lane is registered in advance.
[0060] Next, when a game is started using the bowling system 100 of this embodiment, first, as shown in FIG. 10, the initial position detection unit 70 detects the initial position of the pins placed on the lane at the beginning of the first frame (step S10: initial position detection step).
[0061] Specifically, as shown in Fig. 11, when the initial placement detection unit 70 acquires a pre-throw image from the pin image acquisition unit 61 (step S101), it executes a process similar to the attribute detection process described later in Fig. 12 to detect pin information before the ball is thrown (step S102). Then, it determines whether or not a waiting time has elapsed (step S103). As a result, if the waiting time has not elapsed (step S103: NO), it checks whether or not the placement of all pins has been completed (step S104). Then, when all pins have been placed (step S104: YES), it transmits pin information related to the pins before the ball is thrown to the server 10 (step S105).
[0062] As a result, the server 10 is able to grasp the color of each pin placed on the lane at the beginning of the first frame. This allows the server 10 to execute processing to generate an event according to the attributes of the placed pin before the user throws the ball. For example, when a pin that can provide a special bonus (such as a red pin) appears, it is possible to liven up the game by displaying an image such as "Red pin appears!!" or playing a fanfare.
[0063] Until it is confirmed that all pins have been placed (step S104: NO), the process returns to step S101, and the processes from step S101 to step S103 are repeated until the waiting time has elapsed. If the waiting time has elapsed (step S103: YES) when all pins have not been placed (step S104: NO), pin information indicating that all pins are white is forcibly transmitted to the server 10. This allows the game to continue smoothly even if, for some reason, a discrepancy occurs between the actual pin status and the pin status recognized by the system.
[0064] Next, the ball detection unit 63 detects whether or not the ball has passed over the lane (step S11: ball detection step). As a result, if the passage of the ball is detected (step S11: YES), it is further determined whether or not this is a false detection (step S12: false detection determination step). If this is a false detection (step S12: YES), the process returns to step S1. On the other hand, if this is not a false detection, the process proceeds to step S13. This prevents the ball from being falsely detected as having passed over when it has not.
[0065] When the passage of the ball is confirmed (step S12: NO), the ball speed calculation unit 64 calculates the ball speed (step S13: ball speed calculation step), and the pin image acquisition unit 61 acquires a pre-arrival image, which is an image of the pin before the ball reaches the pin (step S14: pre-arrival image acquisition step).Then, the attribute detection unit 65 analyzes the pre-arrival image and detects pin information before the ball reaches the pin (step S15: attribute detection step).
[0066] Specifically, as shown in FIG. 12, the attribute detection unit 65 first acquires the position information of the pins from the position information storage unit 52 (step S31), and then, based on the position information, cuts out a predetermined area in which each pin is placed from the pre-arrival image as an individual pin image (step S32).
[0067] Next, the attribute detection unit 65 judges whether the ratio of black pixels is equal to or less than a predetermined value for each individual pin image (step S33). As a result, if the ratio of black pixels exceeds the predetermined value (step S33: NO), it judges that the pin is down (step S37). On the other hand, if the ratio of black pixels is equal to or less than the predetermined value (step S33: YES), the attribute detection unit 65 judges that the pin is up (step S34), and has the trained model judge the color of each pixel in the individual pin image (step S35), and detects the most common color other than black as the attribute of the pin (step S36).
[0068] The attribute detection unit 65 stores the information of the fallen pins detected in step S37 and the attributes of the standing pins detected in step S36 in the pin information storage unit 54 (step S38). If the attribute detection process has not been completed for all individual pin images (step S38: NO), the process returns to step S33, and the processes from step S33 to step S37 are repeatedly executed for all individual pin images (step S38: YES), and this process ends. This allows the information of the fallen pins and the attributes of the standing pins to be detected with high accuracy before the ball reaches the pins.
[0069] 10, when the pin attribute is detected (step S15), the loop time calculation unit 66 calculates the loop time (step S16: loop time calculation step), and the pin image acquisition unit 61 acquires a post-arrival image, which is the pin image after the ball reaches the pin (step S17: post-arrival image acquisition step).Then, the pin detection unit 67 analyzes the post-arrival image and detects pin information after the ball reaches the pin (step S18: pin detection step).
[0070] Specifically, as shown in FIG. 13, the pin detection unit 67 first acquires pin position information from the position information storage unit 52 (step S41), and then, based on the position information, cuts out a predetermined area in which each pin is located from the post-arrival image as an individual pin image (step S42).
[0071] Next, the pin detection unit 67 judges whether the ratio of black pixels is equal to or less than a predetermined value for each individual pin image (step S43). As a result, if the ratio of black pixels exceeds the predetermined value (step S43: NO), it is judged that the pin is down (step S45). On the other hand, if the ratio of black pixels is equal to or less than the predetermined value (step S43: YES), the pin detection unit 67 judges that the pin is up (step S44).
[0072] The pin detection unit 67 stores information about the fallen pins detected in step S45 in the pin information storage unit 54 (step S46). If the pin detection process has not been completed for all individual pin images (step S46: NO), the process returns to step S43, and the processes from step S43 to step S46 are repeatedly executed for all individual pin images (step S47: YES), and the process ends. This allows pins that have fallen after the ball has reached them to be detected with high accuracy.
[0073] 10, when a pin that has fallen after the ball has arrived is detected (step S18), the end-of-ball determination unit 68 determines whether or not the loop time has elapsed (step S19: loop time determination step). If the loop time has not elapsed (step S19: NO), it determines whether or not there has been a change between the number of pins that have fallen before the ball has arrived and the number of pins that have fallen after the ball has arrived (step S20: pin number determination step).
[0074] As a result, if there is a change in the number of pins that have fallen before and after the ball arrives (step S20: YES), or even if there is no change in the number of pins that have fallen before and after the ball arrives (step S20: NO), but the loop time has elapsed (step S19: YES), the end-of-throw determination unit 68 determines that the throw has ended. This automatically determines whether the throw has ended, whether the ball hits the pins or not (such as in the case of a gutter).
[0075] When it is determined that the bowling has ended, the pin information transmitting unit 69 transmits pin information relating to the pins before and after the bowling to the server 10 (step S21: pin information transmitting step). As a result, the score calculating unit 81 on the server 10 side calculates the bowling score based on the pin information transmitted from the bowling machine 1. The pin information includes not only information on the pins that have fallen before and after the ball has arrived, but also the attributes of the pins that are still standing.
[0076] Therefore, by using not only the number of pins but also the attributes of the pins when calculating the score, it is possible to provide a variety of original games that are completely different from traditional bowling. This will broaden the range of bowling games and contribute to increasing customer attraction.
[0077] Thereafter, a response from the server 10 or the like is used to determine whether the next throw is the first throw of the frame (step S22). If the next throw is the first throw of the frame (step S22: YES), the process returns to step S10, and the initial placement of each frame is detected, and the above-mentioned processes from step S11 to step S21 are repeated. On the other hand, if the next throw is not the first throw of the frame (step S22: NO), there is no need to newly detect the attributes of the pins, so the process returns to step S11 unless the game is over (step S23: NO), and the above-mentioned processes from step S11 to step S21 are repeatedly executed until the game is over (step S23).
[0078] According to the bowling system 100, bowling program 1a and bowling method of the present embodiment described above, the following effects are achieved. 1. The pins themselves can be given attributes, and the attributes of knocked-down pins can be automatically determined and reflected in the score, adding new gameplay to the game. 2. The information on fallen pins and the attributes of standing pins can be detected with high accuracy. 3. It is possible to detect with high accuracy whether a pin is upright or fallen. 4. Pin position information can be obtained with high accuracy. 5. It can automatically determine whether the pitch has ended or not. 6. Before the user throws the ball, an event can be generated according to the attributes of the placed pins, making the game more exciting.
[0079] Next, specific examples of the bowling system 100, bowling program 1a, and bowling method according to the present invention will be described. Note that the technical scope of the present invention is not limited to the characteristics shown by the following examples. EXAMPLES
[0080] In the present embodiment 1, an example of a new original game utilizing attributes of pins that can be played by the bowling system 100, bowling program 1a and bowling method according to the present invention was considered.
[0081] The original game in this embodiment is a bowling game that includes elements of a color-capturing game in which players are divided into a red team and a blue team, and compete to capture their own team's color pins using five red pins and five blue pins. The basic rules are as follows. (1) After each throw, the pins are rearranged and the throwing team is rotated. (2) If you knock down a pin of your team's color, that number of pins will be your team's points, and if you knock down a pin of the opponent's color, that number of pins will be your team's points. (3) If a team knocks down all the pins, regardless of the color of the pins, the team will receive 10 points as a strike bonus. (4) The colored pins are placed randomly.
[0082] In the original game as described above, first, as shown in Fig. 14(a), it is assumed that red pins are placed at positions 1, 3, 5, 7, and 9, and blue pins are placed at positions 2, 4, 6, 8, and 10. In this case, the attribute detection unit 65 determines the color of each standing pin, and the pin information storage unit 54 stores pin information as shown in Fig. 14(c).
[0083] Next, the player of the red team, who is first to bat, throws the ball, and four red pins and one blue pin are knocked down as shown in Fig. 14(b). In this case, the pin detection unit 67 determines which pins have been knocked down, and the pin information storage unit 54 stores pin information as shown in Fig. 14(c). The score calculation unit 81 calculates the scores based on this pin information, and the scores of 4 points for the red team and 1 point for the blue team are stored in the score storage unit 72.
[0084] Next, it is the turn of the blue team, who will be batting second, to pitch, so new pins are placed. As shown in Fig. 15(a), red pins are placed at positions 2, 3, 4, 9, and 10, and blue pins are placed at positions 1, 5, 6, 7, and 8. In this case, the attribute detection unit 65 determines the color of each standing pin, and the pin information storage unit 54 stores pin information as shown in Fig. 15(c).
[0085] Next, when the blue team player throws the ball and all the pins are knocked down as shown in Fig. 15(b), the pin detection unit 67 determines which pins have been knocked down, and the pin information storage unit 54 stores the pin information as shown in Fig. 15(c). Based on this pin information, the score calculation unit 81 calculates the score, and the red team receives no points, while the blue team receives a strike bonus of 10 points, which is stored in the score storage unit 72. Note that the store ID and lane ID are omitted in Fig. 14(c) and Fig. 15(c).
[0086] As described above, in the original game of this embodiment 1, not only the number of pins but also the color of the pins can be detected, so players can use a variety of strategies to enjoy a bowling game unlike any other, such as steadily aiming for their own team's pins or taking the risk of giving many points to the opposing team and aiming for a strike bonus.
[0087] According to the above-mentioned embodiment 1, it has been shown that the bowling system 100, the bowling program 1a and the bowling method according to the present invention can provide various original games that are completely different from conventional bowling by utilizing the attributes of the pins. Therefore, it has been confirmed that there is a possibility that the range of games using bowling will be expanded and the ability to attract customers to bowling will be improved.
[0088] The bowling system 100, the bowling program 1a, and the bowling method according to the present invention are not limited to the above-mentioned embodiment, and can be modified as appropriate. For example, in the above-mentioned embodiment 1, a rule may be added such that gold pins are randomly placed and bonus points are awarded when the gold pins are knocked down. [Explanation of symbols]
[0089] 1 Bowling equipment 1a Bowling Program 2. Shooting Method 3 Passage detection method 4. Means of communication 5. Storage means (bowling device side) 6. Processing means (bowling machine side) 7 Storage means (server side) 8. Processing means (server side) 10 Server 51 Program memory unit (bowling device side) 52 Location information storage unit 53 Trained model memory 54 Pin information storage section 61 Pin image acquisition unit 62 Location information acquisition unit 63 Ball detection unit 64 Ball speed calculation unit 65 Attribute detection section 66 Loop time calculation section 67 Pin detector 68 End of pitch judgement section 69 Pin information transmitter 70 Initial placement detection unit 71 Program storage unit (server side) 72 Score memory section 81 Score Calculation Section
Claims
1. a pin image acquisition unit that acquires pin images of pins placed on the lane from an imaging means; an attribute detection unit that analyzes the pre-arrival image acquired by the pin image acquisition unit before the ball reaches the pins, and detects whether each pin is knocked down or not and the color or pattern of the standing pin as the attribute of the pin; a pin detection unit that analyzes the post-arrival image acquired by the pin image acquisition unit after the ball reaches the pins and detects whether each pin has fallen; a score calculation unit that calculates a bowling score based on information on the fallen pins and attributes of the standing pins detected by the attribute detection unit and information on the fallen pins detected by the pin detection unit; The bowling system includes:
2. 2. The bowling system of claim 1, wherein the attribute detection unit extracts a predetermined area in which each pin is located from the pre-arrival image as an individual pin image based on position information of each pin in an image coordinate system of the pin image, and for each of the individual pin images, if a proportion of black pixels exceeds a predetermined value, it determines that the pin is down, and if the proportion of black pixels is equal to or less than a predetermined value, it determines that the pin is up, and also determines the color of each pixel using a trained model, and detects the most common color other than black as the attribute of the pin.
3. 2. The bowling system of claim 1, wherein the pin detection unit extracts a predetermined area in which each pin is located from the post-arrival image as an individual pin image based on position information of each pin in an image coordinate system of the pin image, and determines that the pin is down if the proportion of black pixels in each of the individual pin images exceeds a predetermined value, and determines that the pin is up if the proportion of black pixels is equal to or less than a predetermined value.
4. The location information acquisition unit for acquiring the location information includes: A pin-less image in a state where no pin is placed and a pin-with image in a state where a pin is placed are obtained from the pin image acquisition unit; a head image including a head portion of each pin in a difference image between the no-pin image and the pin-present image is cut out, and the X-coordinate at which the number of pixels other than black pixels in the Y-axis direction of the head image is maximized is determined as the X-coordinate of the pin; An individual head image for each pin is cut out from the head image based on the X coordinate, and the Y coordinate at which the number of pixels other than black in the X axis direction increases from the top end to the bottom end of the individual head image in the Y axis direction is set as the Y coordinate of the pin.
4. A bowling system according to claim 2 or claim 3.
5. a loop time calculation unit that calculates a loop time based on the ball speed of a pitched ball; a pitching end determination unit that determines that pitching has ended when the loop time has elapsed or when there is a change between the number of fallen pins detected by the attribute detection unit and the number of fallen pins detected by the pin detection unit; 2. The bowling system of claim 1, comprising:
6. a pin image acquisition unit that acquires pin images of pins placed on the lane from an imaging means; an attribute detection unit that analyzes the pre-arrival image acquired by the pin image acquisition unit before the ball arrives at the pins, and detects whether each pin is standing or not and the color or pattern of the standing pin as an attribute of the pin; a pin detection unit that analyzes the post-arrival image acquired by the pin image acquisition unit after the ball reaches the pins and detects whether each pin is standing; a score calculation unit that calculates a bowling score based on the attributes of the pins detected by the attribute detection unit and information on the knocked down pins detected by the pin detection unit; A bowling program that runs a computer.
7. a pin image acquisition step of acquiring pin images of pins arranged on the lane from an image capture means; an attribute detection step of analyzing the pre-arrival image acquired in the pin image acquisition step before the ball arrives at the pins, and detecting whether each pin is standing or not and the color or pattern of the standing pin as an attribute of the pin; a pin detection step of analyzing the post-arrival image acquired in the pin image acquisition step after the ball has arrived at the pins and detecting whether or not each pin is standing; a score calculation step of calculating a bowling score based on the attributes of the pins detected in the attribute detection step and information on the knocked down pins detected in the pin detection step; The bowling method comprises:
Citation Information
Patent Citations
Method for detecting remaining pins for computer bowling
JP1994182019A