KR102469411B1 - Method based on image for coaching billiards and recording medium storing program to implement the method - Google Patents
Method based on image for coaching billiards and recording medium storing program to implement the method Download PDFInfo
- Publication number
- KR102469411B1 KR102469411B1 KR1020200159535A KR20200159535A KR102469411B1 KR 102469411 B1 KR102469411 B1 KR 102469411B1 KR 1020200159535 A KR1020200159535 A KR 1020200159535A KR 20200159535 A KR20200159535 A KR 20200159535A KR 102469411 B1 KR102469411 B1 KR 102469411B1
- Authority
- KR
- South Korea
- Prior art keywords
- ball
- billiard
- image
- information
- cue
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63D—BOWLING GAMES, e.g. SKITTLES, BOCCE OR BOWLS; INSTALLATIONS THEREFOR; BAGATELLE OR SIMILAR GAMES; BILLIARDS
- A63D15/00—Billiards, e.g. carom billiards or pocket billiards; Billiard tables
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0021—Tracking a path or terminating locations
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63D—BOWLING GAMES, e.g. SKITTLES, BOCCE OR BOWLS; INSTALLATIONS THEREFOR; BAGATELLE OR SIMILAR GAMES; BILLIARDS
- A63D15/00—Billiards, e.g. carom billiards or pocket billiards; Billiard tables
- A63D15/006—Training or aiming arrangements on billiard tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0021—Tracking a path or terminating locations
- A63B2024/0028—Tracking the path of an object, e.g. a ball inside a soccer pitch
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0021—Tracking a path or terminating locations
- A63B2024/0056—Tracking a path or terminating locations for statistical or strategic analysis
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/806—Video cameras
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2243/00—Specific ball sports not provided for in A63B2102/00 - A63B2102/38
- A63B2243/002—Billiards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30221—Sports video; Sports image
- G06T2207/30224—Ball; Puck
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Physical Education & Sports Medicine (AREA)
- Image Analysis (AREA)
Abstract
당구 가이드 방법 및 기록매체가 개시된다. 당구 가이드 방법은 컴퓨터 실행가능 명령어가 저장되는 메모리와, 상기 컴퓨터 실행가능 명령어를 실행하는 프로세서가 포함된 컴퓨터에 의해 구현되며, 당구 가이드 방법은 당구공을 촬영한 영상 이미지를 이용하여 당구공의 위치와 색상을 식별하고, 수구와 목적구를 구분하는 당구공 식별 단계; 및 득점이 가능한 경로로 수구가 이동할 수 있도록 추천경로를 도출하는 경로 도출 단계;를 포함하고, 상기 경로 도출 단계에서는, 사전에 저장된 복수의 이미지 정보로부터 상기 영상 이미지와 유사한 이미지를 판단하여 추출하고, 추출된 이미지 정보와 결합되어 있던 경로 정보를 추천경로로 도출할 수 있다.A billiard guide method and recording medium are disclosed. The billiard guide method is implemented by a computer including a memory storing computer-executable instructions and a processor that executes the computer-executable instructions, and the billiard guide method uses a video image of a billiard ball to locate the billiard ball. a billiard ball identification step of identifying a cue ball and a color, and classifying a cue ball and an object ball; And a route derivation step of deriving a recommended route so that the cue ball can move along a route that can be scored; wherein, in the route derivation step, an image similar to the video image is determined and extracted from a plurality of previously stored image information, Route information combined with the extracted image information can be derived as a recommended route.
Description
본 개시는 당구 가이드 방법에 관한 것이다.The present disclosure relates to a billiard guide method.
일반적으로, 당구는 직사각형 당구대 안에 당구공을 위치시킨 후, 큐대를 이용하여 당구공을 타격하여 득점하는 경기 방식을 가지며, 경기 방식에 따라 3구(쓰리쿠션), 4구, 포켓볼 등으로 나뉘어진다. 그 중에서 쓰리쿠션은 흰색공, 빨간공, 노란공을 포함하는 3개의 당구공을 당구대 위에 놓고, 수구를 이용하여 제1목적구와 제2목적구를 맞히되, 당구대 측면에 설치된 쿠션을 3회 이상 부딪쳐야만 득점이 인정되는 방식이다. In general, billiards has a game method of placing a billiard ball in a rectangular billiard table and then hitting the billiard ball using a cue to score points, and is divided into three balls (three cushions), four balls, and pocket balls according to the game method . Among them, the three-cushion is to place three billiard balls, including a white ball, a red ball, and a yellow ball, on the billiard table, hit the first object ball and the second object ball using the cue ball, and hit the cushion installed on the side of the billiard table three or more times. It is a method in which points are recognized only when they collide.
당구에서는 득점으로 인정될 수 있는 공의 경로를 먼저 파악하고 해당 경로로 공을 이동시키는 것이 중요하지만, 초보자의 수준에서는 득점이 가능한 경로를 생각하기가 쉽지 않고, 수구의 어느 위치를 큐대로 타격해야하고 타격시 힘의 강도를 어떻게 조절해야만 원하는 경로로 수구를 이동시키는지에 대해 파악하기가 어려운 문제가 있었다. 이와 관련하여, 대한민국 등록특허공보 제10-1903656호에는 당구 연습장치에 대한 기술이 제시된 바 있으나, 종래의 문제점들을 보다 효과적으로 개선할 수 있는 새로운 기술의 개발이 요구되고 있다.In billiards, it is important to first identify the path of the ball that can be recognized as a score and move the ball along that path, but at the beginner level, it is not easy to think of a path that can score, and where on the cue ball should be hit with the cue. There was a difficult problem in figuring out how to move the apparatus to the desired path only by adjusting the strength of the force at the time of hitting. In this regard, Korean Patent Registration No. 10-1903656 has proposed a technique for a billiard practice device, but the development of a new technique that can more effectively improve the conventional problems is required.
본 개시의 기술적 사상은 상술한 문제점을 해결하기 위한 것으로, 쓰리쿠션 게임시 득점 가능한 경로와 적절한 타격 방법을 가이드하는 기술을 제공하는데 그 목적이 있다.The technical idea of the present disclosure is to solve the above problems, and an object thereof is to provide a technique for guiding a scoring path and an appropriate hitting method in a three-cushion game.
또한, 본 개시의 기술적 사상은 이미지를 인식하는 인공지능 기술을 적용하여 득점 가능한 경로와 타격 방법을 도출하는 기술을 제공하는데 다른 목적이 있다.In addition, another object of the technical idea of the present disclosure is to provide a technique for deriving a scoring path and a hitting method by applying an artificial intelligence technique for recognizing an image.
본 발명이 해결하려는 과제는 전술한 과제로 제한되지 아니하며, 언급되지 아니한 또 다른 기술적 과제들은 후술할 내용으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above problem, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.
이러한 목적을 달성하기 위하여 본 발명의 일 실시형태로서, 당구 가이드 방법은 컴퓨터 실행가능 명령어가 저장되는 메모리와, 상기 컴퓨터 실행가능 명령어를 실행하는 프로세서가 포함된 컴퓨터에 의해 구현되며, 당구 가이드 방법은 당구공을 촬영한 영상 이미지를 이용하여 당구공의 위치와 색상을 식별하고, 수구와 목적구를 구분하는 당구공 식별 단계; 및 득점이 가능한 경로로 수구가 이동할 수 있도록 추천경로를 도출하는 경로 도출 단계;를 포함하고, 상기 경로 도출 단계에서는, 사전에 저장된 복수의 이미지 정보로부터 상기 영상 이미지와 유사한 이미지를 판단하여 추출하고, 추출된 이미지 정보와 결합되어 있던 경로 정보를 추천경로로 도출할 수 있다.As one embodiment of the present invention to achieve this object, the billiard guide method is implemented by a computer including a memory in which computer executable instructions are stored and a processor that executes the computer executable instructions, and the billiard guide method A billiard ball identification step of identifying the location and color of the billiard ball using the video image of the billiard ball and distinguishing between a cue ball and an object ball; And a route derivation step of deriving a recommended route so that the cue ball can move along a route that can be scored; wherein, in the route derivation step, an image similar to the video image is determined and extracted from a plurality of previously stored image information, Route information combined with the extracted image information can be derived as a recommended route.
또한, 당구 가이드 방법은 당구대 위에 배치된 당구공을 촬영하여 만든 촬영 이미지들을 분석하고 학습시켜 인공지능 신경망을 기반으로 한 사물 인식 모델을 만드는 사물 인식 모델 생성 단계;를 더 포함하고, 상기 사물 인식 모델 생성 단계에서, 상기 촬영 이미지 내에는 네 개의 변(邊)으로 이루어진 당구대 프레임, 네 개의 변으로 이루어진 당구대 쿠션, 흰공, 빨간공 및 노란공을 구분하기 위한 1차 라벨링 정보가 포함될 수 있다.In addition, the billiard guide method further includes an object recognition model generation step of creating an object recognition model based on an artificial intelligence neural network by analyzing and learning captured images made by photographing billiard balls disposed on a billiard table, and the object recognition model In the generating step, the captured image may include a pool table frame with four sides, a pool table cushion with four sides, and primary labeling information for classifying white balls, red balls, and yellow balls.
그리고, 당구 가이드 방법은 2차 라벨링 정보가 포함된 촬영 이미지를 저장하는 데이터 저장 단계;를 더 포함하고, 상기 데이터 저장 단계에서, 상기 촬영 이미지에는 제1정보, 제2정보 및 제3정보가 더 포함되고, 상기 제1정보는 수구를 치는 사용자의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 프레임 중 하나의 변으로 적용되고, 상기 제2정보는 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 쿠션 중 하나의 변으로 적용되며, 상기 제3정보는 상기 제1정보와 제2정보가 정해졌을 때 득점 가능한 수구의 경로에 대한 정보이며, 상기 2차 라벨링 정보는 상기 제3정보에 따라서 수구가 이동하기 위해 제공되는 정보로서, 수구의 당점, 두께 및 스트로크시 힘의 강도 중에서 선택된 적어도 어느 하나를 포함할 수 있다.In addition, the billiard guide method further includes a data storage step of storing a captured image including secondary labeling information, and in the data storage step, the captured image further includes first information, second information, and third information. wherein the first information is information about the location of a user playing the cue polo, and is applied to one side of a pool table frame consisting of four sides, and the second information is the position of the first cushion that contacts when the cue polo moves As information on , it is applied to one side of a billiard table cushion composed of four sides, and the third information is information about a path of a cue ball that can score when the first information and the second information are determined, and the second information The labeling information is information provided for the apparatus to move according to the third information, and may include at least one selected from among the point, thickness, and strength of stroke of the apparatus.
또한, 당구공 식별 단계에서는 상기 사물 인식 모델을 통해 상기 영상 이미지 내에 포함된 당구대의 프레임과 쿠션을 네 개의 변으로 세분화하여 인식하고, 식별된 당구공의 색상을 바탕으로 수구와 목적구를 구분할 수 있다.In addition, in the billiard ball identification step, the frame and cushion of the billiard table included in the video image are subdivided into four sides and recognized through the object recognition model, and the cue ball and object ball can be distinguished based on the color of the identified billiard ball. have.
그리고, 경로 도출 단계는 네 개의 변으로 이루어진 당구대 프레임 중 임의의 변을 사용자의 위치(이하, '제1위치'라 함)로 지정하고, 네 개의 변으로 이루어진 당구대 쿠션 중 임의의 변을 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치(이하, '제2위치'라 함)로 지정하는 위치 지정 단계; 상기 데이터 저장 단계에서 저장된 촬영 이미지들 중에서 상기 제1위치와 제2위치에 해당되는 이미지를 추출하는 이미지 추출 단계; 상기 이미지 추출 단계에서 추출된 촬영 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표와 상기 영상 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표 간의 유사도를 판단하고, 유사도 알고리즘에 의한 유사도 값이 가장 높은 촬영 이미지를 선정하는 유사 이미지 선정 단계; 및 상기 유사 이미지 선정 단계에서 선정된 촬영 이미지 내에 포함된 제3정보와 2차 라벨링 정보를 출력하는 결과 출력 단계;를 포함할 수 있다.And, in the path derivation step, an arbitrary side of the pool table frame consisting of four sides is designated as the user's position (hereinafter referred to as a 'first position'), and any side of the pool table cushion consisting of four sides is designated as the cue ball. A position designation step of designating a position of a first cushion (hereinafter referred to as a 'second position') that is in contact when moving; an image extraction step of extracting images corresponding to the first and second positions from among the captured images stored in the data storing step; The degree of similarity between the positional coordinates of the white ball, red ball, and yellow ball included in the photographed image extracted in the image extraction step and the positional coordinates of the white ball, red ball, and yellow ball included in the video image are determined, and the degree of similarity is determined by a similarity algorithm. a similar image selection step of selecting a photographed image having the highest value; and a result output step of outputting third information and secondary labeling information included in the captured image selected in the similar image selection step.
아울러, 당구공 식별 단계에서는 상기 영상 이미지 내에 포함된 당구공을 감싸는 가상의 사각형인 바운딩 박스를 이용하여 당구공의 위치 좌표를 도출하되, 상기 당구공의 위치 좌표는 상기 바운딩 박스의 두 대각선의 교점으로 적용될 수 있다.In addition, in the billiard ball identification step, the position coordinates of the billiard ball are derived using a bounding box, which is a virtual rectangle surrounding the billiard ball included in the video image, and the position coordinates of the billiard ball are the intersection of two diagonals of the bounding box. can be applied as
그리고, 당구 가이드 방법은 당구공을 촬영한 동영상을 이용하여 당구공의 움직임을 판단하는 움직임 판단 단계;를 더 포함하고, 상기 움직임 판단 단계에서는 상기 동영상으로부터 일정한 시간 단위로 이미지를 추출하고, 추출된 이미지의 각 픽셀별 RGB값의 변화를 측정하여 측정된 RGB값의 변화가 없을 때 당구공이 정지 상태라고 판단할 수 있다.In addition, the billiard guide method further includes a motion determination step of determining the motion of the billiard ball using a motion picture of the billiard ball, and in the motion determination step, an image is extracted from the video in units of a predetermined time, and the extracted It may be determined that the billiard ball is in a stationary state when there is no change in the measured RGB value by measuring the change in the RGB value of each pixel of the image.
이러한 목적을 달성하기 위하여 본 발명의 다른 실시형태로서, 컴퓨터로 읽을 수 있는 기록매체에는 전술한 당구 가이드 방법을 수행하기 위한 프로그램이 기록될 수 있다.As another embodiment of the present invention to achieve this object, a program for performing the above-described billiard guide method may be recorded in a computer-readable recording medium.
상술한 과제의 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The solutions to the problems described above are merely illustrative and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.
이상에서 설명한 바와 같이, 본 발명의 다양한 실시예에 의하면, 인공지능 신경망을 기반으로 학습된 사물 인식 모델을 통해 당구 영상 이미지를 자동으로 인식하고 데이터 라벨링을 기반으로 하기 때문에 직관적인 결과를 도출하는 것이 가능하다. 즉, 본 발명의 다양한 실시예에서는 사용자에게 득점 가능한 경로를 안내하고, 그 경로로 수구가 이동하기 위해 필요한 정보(예를 들어, 당점, 두께, 스트로크시 힘의 강도 등)를 제시할 수 있으므로 초보자의 흥미를 유도하고 실력 향상에 기여할 수 있다.As described above, according to various embodiments of the present invention, it is important to automatically recognize billiards video images through an object recognition model learned based on an artificial intelligence neural network and derive intuitive results based on data labeling. It is possible. That is, in various embodiments of the present invention, since it is possible to guide the user to a route that can be scored and to present information necessary for the apparatus to move along the route (eg, score, thickness, strength of stroke, etc.) It can stimulate interest and contribute to the improvement of skills.
또한, 본 발명의 다양한 실시예에 따르면, 사용자의 위치와 첫 번째 쿠션의 위치를 먼저 특정하고, 그에 해당되는 이미지들을 추출한 후에 이미지 유사도를 판단하기 때문에 사용자의 위치와 첫 번째 쿠션의 위치를 특정하지 않은 상태에서 이미지 유사도를 판단하는 과정에 비해 유사도 판별 연산 성능이 최적화되는 장점이 있다. In addition, according to various embodiments of the present invention, the location of the user and the location of the first cushion are not specified because the location of the user and the location of the first cushion are first specified, and the image similarity is determined after extracting corresponding images. Compared to the process of determining image similarity in a state where the similarity is not detected, the similarity determination operation performance is optimized.
본 발명의 다양한 실시예에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects according to various embodiments of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
도1은 본 발명의 일 실시예에 따른 당구 가이드 시스템의 각 구성을 개략적으로 도시한 블록도이다.
도2는 본 발명의 일 실시예에 따른 당구 가이드 방법을 개략적으로 도시한 흐름도이다.
도3은 본 발명의 일 실시예에서 촬영부가 당구대를 촬영하는 모습을 개략적으로 도시한 것이다.
도4는 본 발명의 일 실시예에서 촬영된 영상 이미지를 개략적으로 도시한 것이다.
도5는 본 발명의 일 실시예에서 제1정보, 제2정보, 제3정보 및 2차 라벨링 정보가 포함된 촬영 이미지를 개략적으로 도시한 것이다.
도6은 본 발명의 일 실시예에서 영상 이미지로부터 당구공의 위치를 식별하는 모습을 개략적으로 도시한 것이다.
도7은 본 발명의 일 실시예에서 특정한 제1위치와 제2위치에 해당하는 이미지들이 추출된 모습을 개략적으로 도시한 것이다.
도8은 본 발명의 일 실시예에서 유사도가 가장 높은 이미지에 해당하는 득점 경로와 타격 방법이 출력된 모습을 개략적으로 도시한 것이다.1 is a block diagram schematically showing each component of a billiard guide system according to an embodiment of the present invention.
2 is a flowchart schematically illustrating a billiard guide method according to an embodiment of the present invention.
Figure 3 schematically illustrates a state in which a photographing unit photographs a billiard table in one embodiment of the present invention.
4 schematically illustrates a video image captured in one embodiment of the present invention.
5 schematically illustrates a captured image including first information, second information, third information, and secondary labeling information in one embodiment of the present invention.
Figure 6 schematically illustrates identifying the position of a billiard ball from a video image in one embodiment of the present invention.
7 schematically illustrates how images corresponding to specific first and second positions are extracted in one embodiment of the present invention.
8 schematically shows how the scoring path and the hitting method corresponding to the image with the highest degree of similarity are output in one embodiment of the present invention.
본 발명의 바람직한 실시예에 대하여 첨부된 도면을 참조하여 더 구체적으로 설명하되, 이미 주지되어진 기술적 부분에 대해서는 설명의 간결함을 위해 생략하거나 압축하기로 한다.A preferred embodiment of the present invention will be described in more detail with reference to the accompanying drawings, but the already well-known technical parts will be omitted or compressed for conciseness of description.
본 명세서에서 본 발명의 "일" 또는 "하나의" 실시예에 대한 언급들은 반드시 동일한 실시예에 대한 것은 아니며, 이들은 적어도 하나를 의미한다는 것에 유의해야 한다.It should be noted that references herein to “one” or “an” embodiment of the invention are not necessarily to the same embodiment, they mean at least one.
이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다.In the following embodiments, terms such as first and second are used for the purpose of distinguishing one component from another component without limiting meaning.
이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다른 의미를 뜻하지 않는 한, 복수의 표현을 포함한다.In the following examples, expressions in the singular number include plural expressions unless the context clearly indicates otherwise.
이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.In the following embodiments, terms such as include or have mean that features or elements described in the specification exist, and do not preclude the possibility that one or more other features or elements may be added.
어떤 실시예가 달리 구현 가능한 경우에 특정한 공정 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 공정은 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다. 즉, 본원 명세서에 기술된 방법의 각 단계는 명세서 상에서 달리 언급되거나 문맥상 명백히 상충되지 않는 한 임의의 순서로 적절하게 실시될 수 있다.When an embodiment is otherwise implementable, a specific process sequence may be performed differently from the described sequence. For example, two processes described in succession may be performed substantially simultaneously, or may be performed in an order reverse to the order described. That is, each step of the methods described herein may be suitably performed in any order unless otherwise stated in the specification or clearly contradicted by context.
도면에서 나타난 각 구성은 설명의 편의를 위해 임의로 나타낸 것이므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.Since each component shown in the drawings is arbitrarily shown for convenience of explanation, the present invention is not necessarily limited to the bar shown.
도1은 본 발명의 일 실시예에 따른 당구 가이드 시스템의 각 구성을 개략적으로 도시한 블록도이고, 도3은 본 발명의 일 실시예에서 촬영부가 당구대를 촬영하는 모습을 개략적으로 도시한 것이고, 도4는 본 발명의 일 실시예에서 촬영된 영상 이미지를 개략적으로 도시한 것이고, 도5는 본 발명의 일 실시예에서 제1정보, 제2정보, 제3정보 및 2차 라벨링 정보가 포함된 촬영 이미지를 개략적으로 도시한 것이고, 도6은 본 발명의 일 실시예에서 영상 이미지로부터 당구공의 위치를 식별하는 모습을 개략적으로 도시한 것이고, 도7은 본 발명의 일 실시예에서 특정한 제1위치와 제2위치에 해당하는 이미지들이 추출된 모습을 개략적으로 도시한 것이고, 도8은 본 발명의 일 실시예에서 유사도가 가장 높은 이미지에 해당하는 득점 경로와 타격 방법이 출력된 모습을 개략적으로 도시한 것이다. 도1 내지 도8을 참조하면, 일 실시예에 따른 당구 가이드 시스템(10)은 촬영부(100), 움직임 판단부(200), 사물 인식 모델부(300), 데이터 저장부(400), 위치 지정부(500), 이미지 추출부(600), 이미지 선정부(700) 및 결과 출력부(800)를 포함할 수 있다. 일 실시예에서 당구 가이드 시스템(10)은 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 적어도 하나의 통신 네트워크를 통해 통신하는 통신장치, 화면정보를 출력하는 디스플레이, 컴퓨터 실행가능 명령어가 저장되는 메모리 및 메모리와 전기적으로 연결된 프로세서를 포함할 수 있다.1 is a block diagram schematically showing each component of a billiard guide system according to an embodiment of the present invention, and FIG. 3 is a schematic diagram of a photographing unit photographing a billiard table in an embodiment of the present invention, Figure 4 schematically shows a video image captured in an embodiment of the present invention, Figure 5 is a first information, second information, third information and secondary labeling information included in an embodiment of the present invention A photographed image is schematically shown, and FIG. 6 schematically illustrates identifying a position of a billiard ball from a video image in one embodiment of the present invention. Figure 8 schematically shows how the images corresponding to the position and the second position are extracted, and FIG. it is depicted 1 to 8, the
일 실시예에서 움직임 판단부(200), 사물 인식 모델부(300), 위치 지정부(500), 이미지 추출부(600), 이미지 선정부(700) 및 결과 출력부(800)는 컴퓨터 실행 가능 명령어의 형태로 메모리에 저장될 수 있고, 프로세서는 메모리에 저장된 명령어를 실행하여 각 구성의 기능을 구현할 수 있다.In one embodiment, the
촬영부(100)는 당구대(20) 위에 놓여진 당구공을 실시간으로 촬영하여 영상을 생성하는 장치이다. 일 실시예에서 촬영부(100)는 당구대(20)의 상부에 설치되며, 촬영부(100)는 일정한 시간마다 당구대(20)를 촬영하여 사진 정보를 생성할 수 있고, 연속적으로 촬영하여 동영상 정보를 생성할 수도 있다.The photographing
움직임 판단부(200)는 촬영부(100)가 촬영한 동영상 정보를 이용하여 당구공의 움직임을 판단할 수 있다. 예를 들어, 움직임 판단부(200)는 동영상 정보로부터 일정한 시간 단위(일 예로, 초 단위)로 이미지를 추출하고, 추출된 이미지에 포함되어 있는 각 픽셀별 RGB값의 변화를 측정하여 측정된 RBG값의 변화가 없을 때 당구공이 정지된 상태라고 판단할 수 있다.The
사물 인식 모델부(300)는 입력층, 은닉층 및 출력층을 갖는 인공지능 신경망으로서, 심층 신경망(deep neural network), 컨볼루션 신경망(convolutional neural network), 순환 신경망(recurrent neural network) 등과 같은 하나 이상의 딥러닝 알고리즘이 모듈화된 것이다. 사물 인식 모델부(300)에는 복수의 이미지 샘플에 포함된 당구대 프레임의 형태, 당구대 쿠션의 형태, 당구공의 위치, 당구공의 색상 등을 분석하여 학습된, 사물 인식 기준이 기저장될 수 있다. 따라서, 사물 인식 모델부(300)는 영상 이미지 내에 포함된 당구대 프레임과 쿠션의 위치를 자동으로 인식하고, 당구공의 위치와 색상을 인식하고, 인식된 위치와 색상에 따라서 수구와 목적구를 구분할 수 있다. 예를 들어, 사물 인식 모델부(300)가 흰색으로 인식한 공은 수구로 판단하고, 빨간색으로 인식한 공은 제1목적구로 판단하고, 노란색으로 인식한 공은 제2목적구로 판단할 수 있다. 본 명세서에서 쿠션은 당구대 프레임의 안쪽면에 설치되는 것으로, 당구공과 직접적으로 접촉되는 면을 말한다.The object
또한, 도6에 도시된 바와 같이, 일 실시예에서 사물 인식 모델부(300)는 영상 이미지 내에 포함된 당구공을 감싸는 가상의 사각형인 바운딩 박스(B)를 이용하여 당구공의 위치 좌표(P)를 도출할 수 있다. 구체적인 예로, 사물 인식 모델부(300)는 바운딩 박스(B)의 두 대각선의 교점을 산출하여 당구공의 중심점을 파악할 수 있다.In addition, as shown in FIG. 6, in one embodiment, the object
데이터 저장부(400)는 사전에 촬영된 복수의 촬영 이미지가 저장되는 저장 장치이다. 일 실시예에서 데이터 저장부(400)는 관계형 데이터베이스 관리 시스템(relational database management system)으로 적용될 수 있다. 본 명세서에서 영상 이미지는 실제 경기시 촬영부(100)에 의해 실시간으로 촬영되는 이미지이며, 촬영 이미지는 실제 경기 이전에 미리 만들어진 것으로서, 사전에 촬영된 이미지를 의미한다. 일 실시예에 따르면, 데이터 저장부(400)에 저장되는 촬영 이미지 내에는 제1정보, 제2정보, 제3정보, 1차 라벨링 정보 및 2차 라벨링 정보가 포함될 수 있다. 도5에 도시된 바와 같이, 하나의 촬영 이미지 내에 제1정보, 제2정보, 제3정보 및 2차 라벨링 정보가 맵핑된 상태로 데이터 저장부(400)에 저장될 수 있다.The
일 실시예에서 제1정보는 수구를 치는 사용자의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 프레임 중 하나의 변(즉, F1, F2, F3 및 F4 중에 어느 하나)으로 적용될 수 있다. 제2정보는 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 쿠션 중 하나의 변(즉, C1, C2, C3 및 C4 중에 어느 하나)으로 적용될 수 있다. 제3정보는 제1정보와 제2정보가 특정되었을 때 득점 가능한 수구의 경로에 대한 정보이다. 1차 라벨링 정보는 촬영 이미지 내에 포함된 당구대 프레임, 당구대 쿠션, 흰공, 빨간공 및 노란공의 형태, 크기, 위치, 색상 등을 파악하기 위한 정보로 적용될 수 있다. 예를 들어, 1차 라벨링 정보는 촬영 이미지 내에서 특정 영역에 위치하고 특정 크기를 가진 이미지를 '흰공'이라고 표시한 정보이다.In one embodiment, the first information is information about the location of a user playing cue polo, and may be applied to one side (ie, one of F1, F2, F3, and F4) of a pool table frame composed of four sides. The second information is information about the position of the first cushion contacted when the cue ball moves, and may be applied to one side (ie, any one of C1, C2, C3, and C4) among the four pool table cushions. The third information is information about the path of the cue ball that can score when the first information and the second information are specified. The primary labeling information may be applied as information for identifying the shape, size, position, color, etc. of a pool table frame, a pool table cushion, a white ball, a red ball, and a yellow ball included in a photographed image. For example, the primary labeling information is information indicating that an image having a specific size and located in a specific area within a photographed image is marked as a 'white ball'.
또한, 2차 라벨링 정보는 제3정보에 따라서 수구가 이동하기 위해 제공되는 정보이며, 제3정보에 포함된 수구의 경로를 성공적으로 수행하기 위해 필요한 정보이다. 예를 들어, 2차 라벨링 정보는 수구의 당점, 두께 및 스트로크시 힘의 강도 중에서 선택된 적어도 어느 하나로 적용될 수 있다. 본 명세서에서 수구의 당점은 큐대(Cue)의 끝이 수구에 닿는 지점을 의미하며, 두께는 수구가 목적구에 맞았을 때 두 공이 겹쳐지는 정도를 의미한다.In addition, the secondary labeling information is information provided for the apparatus to move according to the third information, and is information required to successfully execute the path of the apparatus included in the third information. For example, the secondary labeling information may be applied to at least one selected from among the point and thickness of the cue ball and the strength of force during stroke. In this specification, the target point of the cue ball means the point where the end of the cue stick touches the cue ball, and the thickness means the degree to which the two balls overlap when the cue ball hits the object ball.
위치 지정부(500)는 당구대(20)를 촬영한 영상 이미지에서 파악된 당구대 프레임 중 임의의 변을 사용자의 위치(이하, '제1위치'라 함)로 지정하고, 당구대 쿠션 중 임의의 변을 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치(이하, '제2위치'라 함)로 지정할 수 있다. 예를 들어, 위치 지정부(500)는 영상 이미지에 나타난 수구의 위치 좌표와 수직 거리가 가장 가까운 당구대 프레임을 제1위치로 지정하고, 제1목적구가 있는 지점을 향해 수구가 이동할 때 접촉하게 되는 첫 번째 쿠션의 위치를 제2위치로 지정할 수 있다. 도4를 참조하면, 위치 지정부(500)는 제1프레임(F1)을 제1위치로 지정하고, 제3쿠션(C3)을 제2위치로 지정할 수 있다.The
이미지 추출부(600)는 데이터 저장부(400)에 저장된 촬영 이미지들 중에서 특정 정보를 갖는 촬영 이미지를 추출할 수 있다. 여기서, 특정 정보는 위치 지정부(500)가 지정한 제1위치와 제2위치에 해당되는 정보이다. 예를 들어, 도7에 도시된 바와 같이, 이미지 추출부(600)는 제1위치로서 제1프레임(F1)이 기지정되고, 제2위치로서 제3쿠션(C3)이 기지정되어 있는 상태인 촬영 이미지를 복수개 추출할 수 있다.The
이미지 선정부(700)는 이미지 추출부(600)에 의해 추출된 촬영 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표와, 영상 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표 간의 유사도를 판단할 수 있다. 일 실시예에서 이미지 선정부(700)는 유사도 알고리즘(예를 들어, 코사인 유사도, 유클리디안 거리 등)을 이용하여 위치 좌표 간의 유사도를 판단하고, 유사도 알고리즘에 의한 유사도 값이 가장 높은 촬영 이미지를 선정할 수 있다. 도7에 도시된 바와 같이, 이미지 선정부(700)는 유사도 값이 가장 높은 촬영 이미지(점선 처리된 이미지)를 선정할 수 있다.The
결과 출력부(800)는 이미지 선정부(700)가 선정한 촬영 이미지 내에 포함된 제3정보와 2차 라벨링 정보를 확인하고 해당 내용을 출력할 수 있다. 도8에 도시된 바와 같이, 선정된 촬영 이미지 내에는 득점 가능한 수구의 경로에 대한 정보인 제3정보와, 제3정보에 따라 수구가 이동하는데 필요한 타격 정보(예를 들어, 당점, 두께, 스트로크시 힘의 크기)가 포함되어 있으므로, 결과 출력부(800)는 이러한 정보를 출력할 수 있다.The
도2는 본 발명의 일 실시예에 따른 당구 가이드 방법을 개략적으로 도시한 흐름도이다. 본 발명의 일 실시예에 따른 당구 가이드 방법에 대하여 도2에 도시된 흐름도를 따라 설명하고, 도1 내지 도8에 도시된 도면을 참조하여 설명하되, 편의상 순서를 붙여 설명하기로 한다.2 is a flowchart schematically illustrating a billiard guide method according to an embodiment of the present invention. The billiard guide method according to an embodiment of the present invention will be described according to the flow chart shown in FIG. 2 and described with reference to the drawings shown in FIGS. 1 to 8, but will be described in order for convenience.
1. 영상 촬영 단계<S201>1. Video recording step <S201>
본 단계에서는 촬영부(100)가 당구대(20) 위에 놓여진 당구공을 실시간으로 촬영하여 영상을 생성할 수 있다. 본 단계에서 생성된 영상은 움직임 판단부(200)로 전송될 수 있다.In this step, the photographing
2. 움직임 판단 단계<S202>2. Motion judgment step <S202>
본 단계에서 움직임 판단부(200)는 단계 S201에서 촬영부(100)가 촬영한 동영상 정보를 이용하여 당구공의 움직임을 판단할 수 있다. 예를 들어, 움직임 판단부(200)는 동영상 정보로부터 일정한 시간 단위(일 예로, 초 단위)로 영상 이미지를 추출하고, 추출된 영상 이미지에 포함되어 있는 각 픽셀별 RGB값의 변화를 측정하여 측정된 RBG값의 변화가 없을 때 당구공이 정지된 상태라고 판단할 수 있다. In this step, the
3. 사물 인식 모델 생성 단계<S203>3. Object Recognition Model Creation Step <S203>
본 단계에서 프로세서는 당구대(20) 위에 배치된 당구공을 사전에 촬영하여 만든 복수의 촬영 이미지들을 분석하고 학습시켜 인공지능 신경망을 기반으로 한 사물 인식 모델을 만들 수 있다. 일 실시예에 따른 사물 인식 모델부(300)는 입력층, 은닉층 및 출력층을 갖는 인공지능 신경망으로서, 하나 이상의 딥러닝 알고리즘이 모듈화된 것이다. 사물 인식 모델부(300)에는, 촬영 이미지에 포함된 당구대 프레임의 형태, 당구대 쿠션의 형태, 당구공의 위치, 당구공의 색상 등을 분석하고 학습을 통해 만들어진 사물 인식 기준이 탑재될 수 있다.In this step, the processor may create an object recognition model based on an artificial intelligence neural network by analyzing and learning a plurality of photographed images of billiard balls disposed on the pool table 20 in advance. The object
또한, 본 단계에서 사물 인식 모델부(300)의 학습을 위해 사용되는 촬영 이미지 내에는 네 개의 변(邊)으로 이루어진 당구대 프레임(F1~F4), 네 개의 변으로 이루어진 당구대 쿠션(C1~C4), 흰공, 빨간공 및 노란공을 구분하기 위한 1차 라벨링 정보가 포함될 수 있다. 사물 인식 모델부(300)는 촬영 이미지 내에 포함된 1차 라벨링 정보를 분석하고 학습하는 과정을 통해 사물 인식 기준을 정립할 수 있다.In addition, in the photographed image used for learning of the object
4. 데이터 저장 단계<S204>4. Data storage step <S204>
본 단계에서 프로세서는 2차 라벨링 정보가 포함된 촬영 이미지를 데이터 저장부(400)에 저장할 수 있다. 데이터 저장부(400)에 저장되는 촬영 이미지 내에는 제1정보, 제2정보 및 제3정보가 더 포함되므로, 하나의 촬영 이미지 내에 제1정보, 제2정보, 제3정보 및 2차 라벨링 정보가 함께 맵핑될 수 있다.In this step, the processor may store the captured image including the secondary labeling information in the
5. 당구공 식별 단계<S205>5. Billiard ball identification step <S205>
본 단계에서 사물 인식 모델부(300)는 기저장된 사물 인식 기준을 이용하여 영상 이미지에 포함된 당구공의 위치와 색상을 식별하고, 수구와 목적구를 구분할 수 있다. 예를 들어, 사물 인식 모델부(300)는 영상 이미지 내에 포함된 당구대(20)의 프레임과 쿠션을 각각 네 개의 변으로 세분화하여 인식하고, 당구공의 위치와 색상을 인식하며, 식별된 당구공의 위치와 색상을 바탕으로 수구와 목적구를 구분할 수 있다. 일 구체예에서 사물 인식 모델부(300)는 흰색으로 인식된 공을 수구로 판단하고, 빨간색으로 인식한 공을 제1목적구로 판단할 수 있다.In this step, the object
또한, 본 단계에서 사물 인식 모델부(300)는 영상 이미지 내에 포함된 당구공의 위치를 파악하기 위해 당구공을 감싸는 가상의 사각형인 바운딩 박스(B)를 이용하여 당구공의 위치 좌표(P)를 도출할 수 있다. 일 구체예에서 사물 인식 모델부(300)는 바운딩 박스(B)의 꼭지점 좌표를 도출하고, 하기 수학식 1에 의해 당구공의 중심점을 파악할 수 있다.In addition, in this step, the object
[수학식 1][Equation 1]
(여기서, (X0, Y0)는 당구공의 중심점, Xmin은 바운딩 박스의 꼭지점 좌표들 중에 X좌표의 최소값, Xmax는 바운딩 박스의 꼭지점 좌표들 중에 X좌표의 최대값, Ymin은 바운딩 박스의 꼭지점 좌표들 중에 Y좌표의 최소값, Ymax는 바운딩 박스의 꼭지점 좌표들 중에 Y좌표의 최대값이다)(Where (X 0 , Y 0 ) is the center point of the billiard ball, X min is the minimum value of the X coordinate among the coordinates of the vertex of the bounding box, X max is the maximum value of the X coordinate among the coordinates of the vertex of the bounding box, Y min is The minimum value of the Y coordinate among the coordinates of the vertex of the bounding box, Y max is the maximum value of the Y coordinate among the coordinates of the vertex of the bounding box)
6. 경로 도출 단계<S206>6. Route derivation step <S206>
본 단계에서는 득점이 가능한 경로로 수구가 이동할 수 있도록 추천경로를 도출하는 과정이 수행될 수 있다. 예를 들어, 본 단계에서는 데이터 저장부(400)에 저장되어 있던 복수의 촬영 이미지 정보로부터 영상 이미지와 유사한 이미지를 판단하여 추출하고, 추출된 이미지 정보와 결합되어 있던 경로 정보를 추천경로로 도출할 수 있다. 일 실시예에 따른 경로 도출 단계는 위치 지정 단계, 이미지 추출 단계, 유사 이미지 선정 단계 및 결과 출력 단계를 포함할 수 있다.In this step, a process of deriving a recommended route may be performed so that the cue polo can move on a route that can be scored. For example, in this step, an image similar to a video image is determined and extracted from a plurality of captured image information stored in the
6-1. 위치 지정 단계<S2061>6-1. Positioning step <S2061>
본 단계에서 위치 지정부(500)는 영상 이미지에서 파악된, 네 개의 변으로 이루어진 당구대 프레임 중 임의의 변을 제1위치로 지정하고, 네 개의 변으로 이루어진 당구대 쿠션 중 임의의 변을 제2위치로 지정할 수 있다. 예를 들어, 위치 지정부(500)는 영상 이미지에 나타난 수구(흰공)의 위치 좌표와 수직 거리가 가장 가까운 제1프레임(F1)을 제1위치로 지정하고, 제1목적구(빨간공)가 있는 지점을 향해 수구(흰공)가 이동할 때 접촉하게 되는 첫 번째 쿠션(C3)의 위치를 제2위치로 지정할 수 있다.In this step, the
6-2. 이미지 추출 단계<S2062>6-2. Image extraction step <S2062>
본 단계에서 이미지 추출부(600)는 단계 S204에서 데이터 저장부(400)에 저장된 촬영 이미지들 중에서 제1위치와 제2위치에 해당되는 이미지를 추출할 수 있다. 예를 들어, 이미지 추출부(600)는 단계 S2061에서 지정된 제1위치와 제2위치에 해당하는 촬영 이미지를 추출할 수 있다.In this step, the
6-3. 유사 이미지 선정 단계<S2063>6-3. Similar image selection step <S2063>
본 단계에서 이미지 선정부(700)는 단계 S2062에서 추출된 촬영 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표와, 단계 S202에서 당구공이 정지된 상태라고 판단된 영상 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표 간의 유사도를 판단하고, 유사도 알고리즘에 의한 유사도 값이 가장 높은 촬영 이미지를 선정할 수 있다. 본 단계에서 사용되는 유사도 알고리즘은 특정한 유사도 알고리즘에 국한되는 것은 아니며, 코사인 유사도 또는 유클리디안 거리 등 공지된 다양한 유사도 알고리즘을 적용할 수 있다.In this step, the
6-4. 결과 출력 단계<S2064>6-4. Result output step <S2064>
본 단계에서 결과 출력부(800)는 단계 S2063에서 선정된 촬영 이미지 내에 포함된 제3정보와 2차 라벨링 정보를 출력할 수 있다. 따라서, 본 단계에서 사용자는 득점 가능한 수구의 경로와, 득점 가능한 수구의 경로로 수구가 이동하는데 필요한 타격 정보를 확인할 수 있다. In this step, the
본 발명의 다양한 실시예에 따른 당구 가이드 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. The billiard guide method according to various embodiments of the present invention may be implemented as computer readable code on a computer readable recording medium. A computer-readable recording medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. In addition, computer-readable recording media may be distributed to computer systems connected through a network to store and execute computer-readable codes in a distributed manner.
이해의 편의를 위하여, 전술한 구성요소들은 각각 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는 처리 장치가 복수 개의 처리 요소 또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.For convenience of understanding, there are cases in which each of the aforementioned components is described as being used, but those skilled in the art may include a plurality of processing elements or a plurality of types of processing elements in a processing device. it can be seen that there is
상술한 바와 같이, 본 발명의 다양한 실시예에 따르면, 인공지능 신경망을 기반으로 학습된 사물 인식 모델을 통해 당구 영상 이미지를 자동으로 인식하며, 데이터 라벨링을 기반으로 하기 때문에 직관적인 결과를 도출하는 것이 가능하다. 즉, 본 발명의 다양한 실시예에서는 실제 경기 상황에서 사용자에게 득점 가능한 경로를 안내하고, 그 경로로 수구가 이동하기 위해 필요한 정보(예를 들어, 당점, 두께, 스트로크시 힘의 강도 등)를 제시할 수 있으므로 사용자의 흥미를 유도하고 실력 향상에 기여할 수 있다.As described above, according to various embodiments of the present invention, the billiard video image is automatically recognized through an object recognition model learned based on an artificial intelligence neural network, and intuitive results are derived because it is based on data labeling. It is possible. That is, in various embodiments of the present invention, in an actual game situation, the user is guided to a path that can be scored, and information necessary for the apparatus to move along the path (eg, score, thickness, strength of stroke, etc.) is presented. Therefore, it can induce interest of users and contribute to improvement of skills.
또한, 본 발명의 다양한 실시예에 따르면, 사용자의 위치와 첫 번째 쿠션의 위치를 먼저 특정하고, 그에 해당되는 이미지들을 추출한 후에 이미지 유사도를 판단하기 때문에 사용자의 위치와 첫 번째 쿠션의 위치를 특정하지 않은 상태에서 이미지 유사도를 판단하는 과정에 비해 유사도 판별 연산 성능이 최적화되는 장점이 있다. 아울러, 본 발명의 다양한 실시예에 의하면, 3쿠션 게임에 최적화된 당구 가이드 방법을 제시할 수 있다.In addition, according to various embodiments of the present invention, the location of the user and the location of the first cushion are not specified because the location of the user and the location of the first cushion are first specified, and the image similarity is determined after extracting corresponding images. Compared to the process of determining image similarity in a state where the similarity is not detected, the similarity determination operation performance is optimized. In addition, according to various embodiments of the present invention, a billiard guide method optimized for a 3-cushion game can be presented.
위에서 설명한 바와 같이 본 발명에 대한 구체적인 설명은 첨부된 도면을 참조한 실시예에 의해서 이루어졌지만, 상술한 실시예는 본 발명의 바람직한 예를 들어 설명하였을 뿐이기 때문에, 본 발명이 상기의 실시예에만 국한되는 것으로 이해되어져서는 아니 되며, 본 발명의 권리범위는 후술하는 청구범위 및 그 균등개념으로 이해되어져야 할 것이다.As described above, the detailed description of the present invention has been made by the embodiments with reference to the accompanying drawings, but since the above-described embodiments have only been described as preferred examples of the present invention, the present invention is limited to the above embodiments. It should not be understood as being, and the scope of the present invention should be understood as the following claims and equivalent concepts thereof.
10 : 당구 가이드 시스템
100 : 촬영부
200 : 움직임 판단부
300 : 사물 인식 모델부
400 : 데이터 저장부
500 : 위치 지정부
600 : 이미지 추출부
700 : 이미지 선정부
800 : 결과 출력부
B : 바운딩 박스
P : 당구공의 위치 좌표
20 : 당구대
F1 : 제1프레임
F2 : 제2프레임
F3 : 제3프레임
F4 : 제4프레임
C1 : 제1쿠션
C2 : 제2쿠션
C3 : 제3쿠션
C4 : 제4쿠션10: billiard guide system
100: shooting unit
200: motion determination unit
300: object recognition model unit
400: data storage unit
500: location designation unit
600: image extraction unit
700: image selection unit
800: result output unit
B: bounding box
P: position coordinates of the billiard ball
20: pool table
F1: 1st frame
F2: 2nd frame
F3: 3rd frame
F4: 4th frame
C1: 1st cushion
C2: 2nd cushion
C3: 3rd cushion
C4: 4th cushion
Claims (8)
당구공을 촬영한 영상 이미지를 이용하여 당구공의 위치와 색상을 식별하고, 수구와 목적구를 구분하는 당구공 식별 단계; 및
득점이 가능한 경로로 수구가 이동할 수 있도록 추천경로를 도출하는 경로 도출 단계;를 포함하고,
상기 경로 도출 단계에서는, 사전에 저장된 복수의 이미지 정보로부터 상기 영상 이미지와 유사한 이미지를 판단하여 추출하고, 추출된 이미지 정보와 결합되어 있던 경로 정보를 추천경로로 도출하며,
상기 당구 가이드 방법은
당구대 위에 배치된 당구공을 촬영하여 만든 촬영 이미지들을 분석하고 학습시켜 인공지능 신경망을 기반으로 한 사물 인식 모델을 만드는 사물 인식 모델 생성 단계;를 더 포함하고,
상기 사물 인식 모델 생성 단계에서, 상기 촬영 이미지 내에는 네 개의 변(邊)으로 이루어진 당구대 프레임, 네 개의 변으로 이루어진 당구대 쿠션, 흰공, 빨간공 및 노란공을 구분하기 위한 1차 라벨링 정보가 포함된 것이고,
상기 당구 가이드 방법은
2차 라벨링 정보가 포함된 촬영 이미지를 저장하는 데이터 저장 단계;를 더 포함하고,
상기 데이터 저장 단계에서, 상기 촬영 이미지에는 제1정보, 제2정보 및 제3정보가 더 포함되고, 상기 제1정보는 수구를 치는 사용자의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 프레임 중 하나의 변으로 적용되고, 상기 제2정보는 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치에 대한 정보로서, 네 개의 변으로 이루어진 당구대 쿠션 중 하나의 변으로 적용되며, 상기 제3정보는 상기 제1정보와 제2정보가 정해졌을 때 득점 가능한 수구의 경로에 대한 정보이며, 상기 2차 라벨링 정보는 상기 제3정보에 따라서 수구가 이동하기 위해 제공되는 정보로서, 수구의 당점, 두께 및 스트로크시 힘의 강도 중에서 선택된 적어도 어느 하나를 포함하고,
상기 경로 도출 단계는
네 개의 변으로 이루어진 당구대 프레임 중 임의의 변을 사용자의 위치(이하, '제1위치'라 함)로 지정하고, 네 개의 변으로 이루어진 당구대 쿠션 중 임의의 변을 수구가 이동할 때 접촉하는 첫 번째 쿠션의 위치(이하, '제2위치'라 함)로 지정하는 위치 지정 단계;
상기 데이터 저장 단계에서 저장된 촬영 이미지들 중에서 상기 제1위치와 제2위치에 해당되는 이미지를 추출하는 이미지 추출 단계;
상기 이미지 추출 단계에서 추출된 촬영 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표와 상기 영상 이미지 내에 포함된 흰공, 빨간공 및 노란공의 위치 좌표 간의 유사도를 판단하고, 유사도 알고리즘에 의한 유사도 값이 가장 높은 촬영 이미지를 선정하는 유사 이미지 선정 단계; 및
상기 유사 이미지 선정 단계에서 선정된 촬영 이미지 내에 포함된 제3정보와 2차 라벨링 정보를 출력하는 결과 출력 단계;를 포함하고,
상기 당구공 식별 단계에서는 상기 영상 이미지 내에 포함된 당구공을 감싸는 가상의 사각형인 바운딩 박스를 이용하여 당구공의 위치 좌표를 도출하되, 상기 당구공의 위치 좌표는 상기 바운딩 박스의 두 대각선의 교점으로 적용되는 것을 특징으로 하는
이미지 기반 당구 가이드 방법.A billiard guide method implemented by a computer including a memory in which computer executable instructions are stored and a processor that executes the computer executable instructions,
A billiard ball identification step of identifying the location and color of the billiard ball using the video image of the billiard ball and distinguishing between a cue ball and an object ball; and
Including; a path derivation step of deriving a recommended path so that the apparatus can move on a path that can be scored;
In the route derivation step, an image similar to the video image is determined and extracted from a plurality of previously stored image information, and route information combined with the extracted image information is derived as a recommended route;
The billiard guide method
An object recognition model generation step of creating an object recognition model based on an artificial intelligence neural network by analyzing and learning captured images made by photographing billiard balls placed on the billiard table; further comprising,
In the object recognition model generation step, the photographed image includes a pool table frame consisting of four sides, a pool table cushion consisting of four sides, and primary labeling information for distinguishing white balls, red balls, and yellow balls. would,
The billiard guide method
A data storage step of storing a captured image including secondary labeling information; further comprising,
In the data storage step, the captured image further includes first information, second information, and third information, and the first information is information about the position of a user playing water polo, among the four sides of the pool table frame It is applied to one side, and the second information is information about the position of the first cushion that contacts when the cue ball moves, and is applied to one side among the four side cushions of the billiard table. This is information about the path of the cue polo that can be scored when the first and second information are determined, and the secondary labeling information is information provided for the cue polo to move according to the third information, and the score, thickness and stroke of the cue ball are provided. Including at least one selected from the strength of the force,
The path derivation step is
A random side of the pool table frame consisting of four sides is designated as the user's position (hereinafter referred to as 'first position'), and any side of the pool table cushion consisting of four sides is the first contact when the cue ball moves. A position designation step of designating a position of a cushion (hereinafter, referred to as a 'second position');
an image extraction step of extracting images corresponding to the first and second positions from among the captured images stored in the data storing step;
The degree of similarity between the positional coordinates of the white ball, red ball, and yellow ball included in the photographed image extracted in the image extraction step and the positional coordinates of the white ball, red ball, and yellow ball included in the video image are determined, and the degree of similarity is determined by a similarity algorithm. a similar image selection step of selecting a photographed image having the highest value; and
And a result output step of outputting third information and secondary labeling information included in the captured image selected in the similar image selection step;
In the step of identifying the billiard ball, the position coordinates of the billiard ball are derived using a bounding box that is a virtual rectangle surrounding the billiard ball included in the video image, and the position coordinates of the billiard ball are the intersection of two diagonals of the bounding box. characterized in that applied
An image-based billiard guide method.
상기 당구공 식별 단계에서는 상기 사물 인식 모델을 통해 상기 영상 이미지 내에 포함된 당구대의 프레임과 쿠션을 네 개의 변으로 세분화하여 인식하고, 식별된 당구공의 색상을 바탕으로 수구와 목적구를 구분하는 것을 특징으로 하는
이미지 기반 당구 가이드 방법.According to claim 1,
In the billiard ball identification step, the frame and cushion of the billiard table included in the video image are subdivided and recognized into four sides through the object recognition model, and the cue ball and the object ball are distinguished based on the color of the identified billiard ball. characterized
An image-based billiard guide method.
상기 당구 가이드 방법은
당구공을 촬영한 동영상을 이용하여 당구공의 움직임을 판단하는 움직임 판단 단계;를 더 포함하고,
상기 움직임 판단 단계에서는 상기 동영상으로부터 일정한 시간 단위로 이미지를 추출하고, 추출된 이미지의 각 픽셀별 RGB값의 변화를 측정하여 측정된 RGB값의 변화가 없을 때 당구공이 정지 상태라고 판단하는 것을 특징으로 하는
이미지 기반 당구 가이드 방법.According to claim 1,
The billiard guide method
Further comprising a motion determination step of determining the motion of the billiard ball using a video of the billiard ball,
In the motion determination step, an image is extracted from the video at a predetermined time unit, and a change in RGB values for each pixel of the extracted image is measured, and when there is no change in the measured RGB values, it is determined that the billiard ball is in a stationary state. doing
An image-based billiard guide method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159535A KR102469411B1 (en) | 2020-11-25 | 2020-11-25 | Method based on image for coaching billiards and recording medium storing program to implement the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159535A KR102469411B1 (en) | 2020-11-25 | 2020-11-25 | Method based on image for coaching billiards and recording medium storing program to implement the method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220072194A KR20220072194A (en) | 2022-06-02 |
KR102469411B1 true KR102469411B1 (en) | 2022-11-23 |
Family
ID=81985188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200159535A KR102469411B1 (en) | 2020-11-25 | 2020-11-25 | Method based on image for coaching billiards and recording medium storing program to implement the method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102469411B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101386034B1 (en) * | 2012-10-15 | 2014-04-16 | 김종석 | Billiards teaching system and method for controlling thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050035563A (en) * | 2003-10-13 | 2005-04-19 | 학교법인 포항공과대학교 | Billiards teaching system and method using image processing |
KR20190040697A (en) * | 2017-10-11 | 2019-04-19 | 한국과학기술원 | Billiards playing method and billiards playing system |
KR20200129321A (en) * | 2019-05-08 | 2020-11-18 | 주식회사 라이또에프앤씨 | billiard hall system for providing expectation route |
-
2020
- 2020-11-25 KR KR1020200159535A patent/KR102469411B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101386034B1 (en) * | 2012-10-15 | 2014-04-16 | 김종석 | Billiards teaching system and method for controlling thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20220072194A (en) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102596897B1 (en) | Method of motion vector and feature vector based fake face detection and apparatus for the same | |
US9636588B2 (en) | System and method for object extraction for embedding a representation of a real world object into a computer graphic | |
CN108810620A (en) | Identify method, computer equipment and the storage medium of the material time point in video | |
CN110264493B (en) | Method and device for tracking multiple target objects in motion state | |
CN103189827A (en) | Object display device and object display method | |
KR20150059701A (en) | Method for recognizing contectless fingerprint and electronic apparatus for performing the same. | |
EP3324307A1 (en) | Retrieval device, retrieval method, and computer-readable medium | |
CN110163211A (en) | A kind of image-recognizing method, device and storage medium | |
US11087159B2 (en) | Object detection device, object detection method and non-transitory computer readable medium | |
CN110705566A (en) | Multi-mode fusion significance detection method based on spatial pyramid pool | |
CN107610236B (en) | Interaction method and system based on graph recognition | |
US20180247431A1 (en) | Process, system and apparatus for machine colour characterisation of digital media | |
KR102469411B1 (en) | Method based on image for coaching billiards and recording medium storing program to implement the method | |
CN111182207B (en) | Image shooting method and device, storage medium and electronic equipment | |
CN110852172B (en) | Method for expanding crowd counting data set based on Cycle Gan picture collage and enhancement | |
CN112926557A (en) | Method for training multi-mode face recognition model and multi-mode face recognition method | |
CN114734456A (en) | Chess playing method, device, electronic equipment, chess playing robot and storage medium | |
CN114972732A (en) | Smoke and fire detection method, device, equipment and computer readable storage medium | |
CN101540001A (en) | Soccer robot projection recognition algorithm | |
KR102146843B1 (en) | Billiards teaching apparatus and method | |
CN115797964A (en) | Behavior recognition method, device, equipment and storage medium | |
CN113850245A (en) | Image processing method, image processing device, electronic equipment and storage medium | |
CN112800941A (en) | Face anti-fraud method and system based on asymmetric auxiliary information embedded network | |
JP6593928B2 (en) | Information processing apparatus and program | |
Alves et al. | PoolLiveAid: Augmented reality pool table to assist inexperienced players |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right |