KR20240038933A - 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램 - Google Patents

프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20240038933A
KR20240038933A KR1020240022773A KR20240022773A KR20240038933A KR 20240038933 A KR20240038933 A KR 20240038933A KR 1020240022773 A KR1020240022773 A KR 1020240022773A KR 20240022773 A KR20240022773 A KR 20240022773A KR 20240038933 A KR20240038933 A KR 20240038933A
Authority
KR
South Korea
Prior art keywords
billiard
user
training
ball
hitting
Prior art date
Application number
KR1020240022773A
Other languages
English (en)
Other versions
KR102723572B1 (ko
Inventor
최명수
Original Assignee
최명수
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 최명수 filed Critical 최명수
Publication of KR20240038933A publication Critical patent/KR20240038933A/ko
Application granted granted Critical
Publication of KR102723572B1 publication Critical patent/KR102723572B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63DBOWLING GAMES, e.g. SKITTLES, BOCCE OR BOWLS; INSTALLATIONS THEREFOR; BAGATELLE OR SIMILAR GAMES; BILLIARDS
    • A63D15/00Billiards, e.g. carom billiards or pocket billiards; Billiard tables
    • A63D15/006Training or aiming arrangements on billiard tables
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/14Details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/05Image processing for measuring physical parameters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/10Positions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/806Video cameras
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2243/00Specific ball sports not provided for in A63B2102/00 - A63B2102/38
    • A63B2243/002Billiards

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Toys (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 실시예에 따르면, 통신망을 통해 제1 사용자 단말기로부터 당구 훈련 신호를 수신하는 단계; 상기 당구 훈련 신호에 응답하여 제1 사용자의 레벨을 교본 검색 알고리즘에 입력시켜 훈련 교본을 검색하는 단계; 상기 훈련 교본과 대응되는 이미지를 프로젝터를 통해 당구대 상에 투영시키는 단계; 당구대의 장축에 평행한 방향으로 설치된 가드 레일에 연결되어 장축과 평행한 방향으로 운동하는 로봇팔을 이용하여 상기 훈련 교본과 대응되는 위치로, 당구공을 이동시키는 단계; 카메라를 통해 촬영된 영상에서의 당구공의 위치 변화를 인식하고, 상기 당구공의 위치 변화에 따라 상기 제1 사용자로부터의 타구를 감지하는 단계; 상기 카메라를 통해 인식된 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 제1 사용자의 타구 자세, 훈련 횟수를 종합하여 상기 제1 사용자의 숙련도를 판단하는 단계; 및 상기 사용자의 숙련도가 기 설정된 완료 레벨 이상인 경우, 다음 단계의 훈련 교본을 검색하여 제공하고, 상기 사용자의 레벨을 한단계 업그레이드 시켜 등록하는 단계;를 포함하는 당구 훈련 방법을 개시한다.

Description

프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램 {Apparatus, methods, and computer program for providing billiards training using a projector and a robot arm}
본 발명에 따르면, 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램에 관한 것이다.
국내에서 당구가 도입된 시점은 구한말 시대이었지만, 한국전쟁을 겪은 후 대중들 사이에 널리 보급되었다. 융단을 깐 당구대 위해 3개 또는 4개의 빨간 색상, 흰 색상의 공을 올려 놓고 큐(cue)라고 하는 긴 막대로 한 개의 정해진 공을 치고 큐에 맞은 공이 다른 공에 맞으면 그것으로 채점이 되어서 승패를 가늠하는 실내 경기가 바로 당구이다. 과거에는 지역의 다소 불량스럽게 보이는 젊은 사람들이 애용하는 곳이라 여성 및 어린 학생들에게는 거부감이 많은 곳이었는데, 전국 체전 및 아시안 게임에 당구가 정식 종목으로 채택이 되었고, 다른 구기 종목에 비해서 두뇌를 많이 사용하여야 함으로 지적 흥미 유발과 더불어 치매를 예방할 수 있다고 알려진 경기이고 더구나 가벼운 운동까지 수반하고 있어서 현대인의 감각과 잘 부합되어 오늘날에는 젊은 사람에서부터 연배의 노년층에 이르기까지 남녀노소의 구별 없이 많은 나라에서 널리 행해지고 있는 경기이다. 문제는 당구를 배우고자 하면, 당구를 오랜 시간 동안 쳤던 실전 경험이 많은 사람으로부터 직접적인 도움 및 지도를 받아 자세 및 큐의 파지 방법부터 시작하여 실전에 대비하여 각종 기량을 배우고 익혀야 하는데 전문적인 당구 훈련지도사로 부터 교수받는 개인 교습을 제외하고서는 일반 입문자의 경우, 체계적으로 당구를 배우기가 쉽지 않다는 사실이다.
당구는 학습자 단독으로 실전 경기를 할 수 없으며 최소한 한명 이상의 파트너가 있어야 가능하며, 그리고 경기자들이 동일 장소의 당구대에서 있어야 학습 및 경기가 가능하다. 학습자간 원격에서 상호 당구 학습 훈련을 하거나 또는 경기를 할 수 없는 것이 현실이다.
통상 당구 경기자는 비슷한 수준의 당구 실력을 갖는 경기자 간의 당구 시합을 선호하지만, 경기자의 주관에 의한 당구 점수의 관리는 비공정한 경기를 초래하여 당구 경기자간에 상호 불신뢰를 초래할 수 있다. 따라서, 당구 경기자 개인에 대해 체계적인 당구 수준(점수)을 부여하는 방안이 요구된다.
기존의 대다수 당구 학습을 위한 발명으로는 당구대 위에 위치한 당구공을 촬영하여 해당 영상분석을 통해 당구대 위에 또는 당구대 옆에 인접한 텔레비전 또는 컴퓨터 모니터와 같은 디스플레이 장치에 타구를 위한 지시 정보를 출력하고 있다. 이런 경우 해당 상황 및 위치에 대한 타구 방법 지시는 가능하지만 훈련 및 학습시에 당구대 위의 공의 다양한 위치 존재로 인해 특정적으로 지정한 상황 및 위치에 당구공을 배치하여 주어진 상황에 대한 문제 해결을 반복 및 집중적으로 숙달할 수 있는 기회를 제공하지 않는 문제가 있다.
본 발명은 당구대 상에 특정 위치에 놓여진 또는 임의 배치된 당구공들 간의 상황을 패턴화 하여 해당 패턴에 대한 해결을 위해 반복 숙달 및 해당 패턴이 요구하는 특정 위치에 당구공을 위치시켜 학습자가 숙달할 때까지 반복하여 연습을 할 수 있는 교육 및 훈련 시스템을 실현하고자 한다.
아울러, 기존의 발명은 주로 특정 당구대에서 학습자와 컴퓨터 기반의 학습 시뮬레이터를 통해 당구를 배우거나 연습하는데 주안을 두고 있다. 학습 방법으로는 당구대 상에 위치한 공의 위치를 기반으로 하는 타구 방법을 제시하는 것이 대부분인데, 특정 위치에 놓인 공에 대한 해결 방법에 있어 숙달이 되기 위해서는 수많은 반복 연습을 통해야만이 학습 목표의 달성이 가능하다. 이러한 경우, 타구를 한 후에, 해당 결과를 확인하고 원하는 결과를 얻을 수 있을 때까지 당구공을 앞서의 위치에 다시 배치하여 집중적이면서도 반복적인 연습 및 훈련을 하여야 한다. 본 발명은 흩어진 당구공을 다시 수거하여 원래의 위치로 재 배치할 수 있고 이를 기반으로 끊임없이 학습 훈련 및 경기를 지속하게 하는 수단을 제공 하고자 한다.
아울러, 당구 경기는 현재까지 특정 당구대에서 2인 이상의 경기자에 의해 진행되는 경기 종목이다. 경기자가 상호간 원격에 위치할 경우에는 근본적으로 경기 진행이 불가하다. 본 발명은 네트워크를 이용하여 원격에 위치한 경기자간에 마치 동일 당구대에 위치한 것과 같이 실시간 경기를 진행하는 방법을 해결하고자 한다.
아울러, 본 발명은 체계적인 당구 학습 및 훈련 결과를 기반으로 경기자별로 객관적인 수준 또는 점수를 부여하게 되어 당구 경기자의 당구 수준에 대한 상호 신뢰 제공과 더불어 흥미로운 경기 유인을 통해 당구 저변화에 기여할 수 있는 방법을 해결하고자 한다.
본 발명의 발명가는 기존의 제안 방법과 달리, 교육 및 훈련을 위해 당구대의 바로 위 천장에 카메라와 컴퓨터, 그리고 당구대에 학습 훈련 지시 정보를 투사 가능한 영상 프로젝트와 더불어, 우주왕복선에서 물건을 외부로 반출하거나 또는 회수할 때 사용되는 로보트 팔 (Robot Arm)과 같은 기구, 유사한 예로 주변에서 쉽게 볼 수 있는 장치로는 인형 뽑는 기계에서 사용자가 특정 인형을 선택하여 끄집어 이동시켜 특정 위치에 놓는 로보트 팔의 동작 개념을 확대 적용하여, 상기에 언급된 당구대 위의 천장에 인접한 위치에 설치하여 카메라로부터 촬영된 영상을 분석한 후에, 당구공의 위치를 파악하고 아울러 원래의 당구공의 지정된 좌표 위치로 분산된 당구공의 재배치를 할 수 있는 기술을 구현할 것인가에 대한 기술적인 해답을 찾기 위해 연구 노력한 끝에 본 발명을 완성하게 되었다.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 것이다.
본 발명의 실시예들에 따른 당구 훈련 방법은 통신망을 통해 제1 사용자 단말기로부터 당구 훈련 신호를 송수신하는 단계; 상기 당구 훈련 신호에 응답하여 제1 사용자의 레벨을 교본 검색 알고리즘에 입력시켜 훈련 교본을 검색하는 단계; 상기 훈련 교본과 대응되는 이미지를 프로젝터를 통해 당구대 상에 투영시키는 단계; 당구대의 장축에 평행한 방향으로 설치된 가드 레일에 연결되어 장축과 평행한 방향으로 운동하는 로봇팔을 이용하여 상기 훈련 교본과 대응되는 위치로, 당구공을 이동시키는 단계; 카메라를 통해 촬영된 영상에서의 당구공의 위치 변화를 인식하고, 상기 당구공의 위치 변화에 따라 상기 제1 사용자로부터의 타구를 감지하는 단계; 상기 카메라를 통해 인식된 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 제1 사용자의 타구 자세, 훈련 횟수를 종합하여 상기 제1 사용자의 숙련도를 판단하는 단계; 및 상기 사용자의 숙련도가 기 설정된 완료 레벨 이상인 경우, 다음 단계의 훈련 교본을 검색하여 제공하고, 상기 사용자의 레벨을 한단계 업그레이드 시켜 등록하는 단계;를 포함할 수 있다.
상기 숙련도를 판단하는 단계는 훈련 횟수 및 훈련의 빈도수를 고려하여 제1 값을 결정하고, 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 타구 자세를 고려하여 제2 값을 결정하며, 상기 제1 값과 비례하여 상기 제1 사용자의 숙련도를 결정하고, 상기 제2 값을 고려하여, 상기 제1 사용자의 숙련도를 보정하는 점을 특징으로 할 수 있다.
상기 제1 값은 상기 훈련 횟수 및 훈련의 빈도수에 따라서 단계적으로 변화되는 값으로 결정되며, 상기 제2 값의 크기는 상기 제1 값의 단계별 차분값을 초과하지 않는 점을 특징으로 할 수 있다.
상기 투영시키는 단계는 상기 훈련 교본과 대응시켜서 당구공의 타구 지침에 따라서 타구되는 큐의 움직임, 당구공의 움직임을 포함하는 영상을 투영시키는 점을 특징으로 할 수 있다.
상기 업그레이드 시켜 등록하는 단계는 상기 제1 사용자의 단말기로부터의 입력에 의해, 업그레이드 되지 않고, 현재 레벨을 유지하도록 등록하는 점을 특징으로 할 수 있다.
상기 로봇팔은 단축의 방향으로의 이동을 위해서 1단 이상의 관절 및 관절 사이에 모터를 구비하며, 1단 이상의 관절을 이용해서 당구대의 단축 상의 어느 위치든 도달하도록 구현되고, 2개 이상의 집게 손가락을 구비하여 당구공을 집어서 이동시키는 점을 특징으로 할 수 있다.
본 발명의 실시예들에 따른 통신망을 통해 제1 사용자 단말기 및 제2 사용자 단말기로부터 당구 시합 신호들을 각각 송수신하는 단계; 상기 당구 시합 신호들 중 더 늦게 도착한 당구 시합 신호에 응답하여 상기 제1 사용자의 제1 당구대 및 상기 제2 사용자의 제2 당구대에 동일한 영상을 각각 투영시키는 단계; 상기 제1 사용자의 타구가 발생되면, 상기 제1 사용자의 타구에 의한 결과인, 당구공들의 위치 변화를 제2 당구대의 제어 장치로 전송하는 단계; 상기 제2 당구대의 제어 장치를 통해, 상기 제2 당구대에 설치된 로봇팔을 이용하여 상기 제2 당구대의 상태가 상기 제1 당구대의 상태와 동일하도록 제2 당구공들의 위치를 변화시키는 단계; 및 상기 제2 사용자의 타구를 대기하는 단계;를 포함할 수 있다.
상기 제2 당구공들의 위치를 변화시키는 단계는 상기 제1 당구대에서의 움직임 상황인 상기 제1 사용자의 행동, 상기 제1 사용자에 의한 큐의 움직임, 타구 이후의 당구공들의 움직임을 포함하는 움직이는 영상을 투영시키는 단계를 더 포함하는 점을 특징으로 할 수 있다.
상기 움직이는 영상은 상기 제1 사용자에 의해 득점이 발생한 경우에는 환호성 소리 및 득점 획득과 대응되는 이미지를 더 포함하도록 구현되고, 상기 제1 사용자에 의해 득점이 발생하지 않은 경우에는, 야유 소리 및 득점 실패와 대응되는 이미지를 더 포함하도록 구현되는 점을 특징으로 할 수 있다.
상기 타구를 대기하는 단계는 상기 제2 사용자의 경기력 및 현재 상황을 고려하여 상기 제2 사용자에게 추천 궤적을 포함하는 이미지를 투영하는 단계를 더 포함하는 점을 특징으로 할 수 있다.
상기 타구를 대기하는 단계는 상기 제2 당구대 위에서의 상기 제2 사용자의 큐의 위치 변화에 따른 예상 궤적 및 난이도 정보를 제공하는 단계를 더 포함하는 점을 특징으로 할 수 있다.
본 발명의 실시예들에 따른 당구 훈련 장치는 통신망을 통해 제1 사용자 단말기로부터 당구 훈련 신호를 송수신하는 통신부; 상기 당구 훈련 신호에 응답하여 제1 사용자의 레벨을 교본 검색 알고리즘에 입력시켜 훈련 교본을 검색하는 훈련 교본 검색부; 상기 훈련 교본과 대응되는 이미지를 생성하여 프로젝션을 통해 당구대 상에 투영시키도록 제어하는 투영 제어부; 당구대의 장축에 평행한 방향으로 설치된 가드 레일에 연결되어 장축과 평행한 방향으로 운동하는 로봇팔을 이용하여 상기 훈련 교본과 대응되는 위치로, 당구공을 이동시키도록 제어하는 로봇팔 제어부; 카메라를 통해 촬영된 영상에서의 당구공의 위치 변화를 인식하고, 상기 당구공의 위치 변화에 따라 상기 제1 사용자로부터의 타구를 감지하는 타구 감지부; 상기 카메라를 통해 인식된 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 제1 사용자의 타구 자세, 훈련 횟수를 종합하여 상기 제1 사용자의 숙련도를 판단하는 숙련도 판단부; 상기 사용자의 숙련도가 기 설정된 완료 레벨 이상인 경우, 다음 단계의 훈련 교본을 검색하여 제공하고, 상기 사용자의 레벨을 한단계 업그레이드 시켜 등록하는 정보 등록부;를 포함할 수 있다.
상기 숙련도 판단부는 훈련 횟수 및 훈련의 빈도수를 고려하여 제1 값을 결정하고, 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 타구 자세를 고려하여 제2 값을 결정하며, 상기 제1 값과 비례하여 상기 제1 사용자의 숙련도를 결정하고, 상기 제2 값을 고려하여, 상기 제1 사용자의 숙련도를 보정하는 점을 특징으로 할 수 있다.
상기 제1 값은 상기 훈련 횟수 및 훈련의 빈도수에 따라서 단계적으로 변화되는 값으로 결정되며, 상기 제2 값의 크기는 상기 제1 값의 단계별 차분값을 초과하지 않는 점을 특징으로 할 수 있다.
*상기 투영 제어부는 상기 훈련 교본과 대응시켜서 당구공의 타구 지침에 따라서 타구되는 큐의 움직임, 당구공의 움직임을 포함하는 영상을 투영시키도록 제어하는 점을 특징으로 할 수 있다.
상기 정보 등록부는 상기 제1 사용자의 단말기로부터의 입력에 의해, 업그레이드 되지 않고, 현재 레벨을 유지하도록 등록하는 점을 특징으로 할 수 있다.
상기 로봇팔은 단축의 방향으로의 이동을 위해서 1단 이상의 관절 및 관절 사이에 모터를 구비하며, 1단 이상의 관절을 이용해서 당구대의 단축 상의 어디든 도달하도록 구현되고, 2개 이상의 집게 손가락을 구비하여 당구공을 집어서 이동시키는 점을 특징으로 할 수 있다.
본 발명의 실시예들에 따른 당구 훈련 장치는 통신망을 통해 제1 사용자 단말기 및 제2 사용자 단말기로부터 당구 시합 신호들을 각각 송수신하는 통신부; 상기 당구 시합 신호들 중 더 늦게 도착한 당구 시합 신호에 응답하여 상기 제1 사용자의 제1 당구대 및 상기 제2 사용자의 제2 당구대에 동일한 영상을 각각 투영시키도록 제어하는 경기 제어부;를 포함하고, 상기 통신부는 상기 제1 사용자의 타구가 발생되면, 상기 제1 사용자의 타구에 의한 결과인, 당구공들의 위치 변화를 제2 당구대의 제어 장치로 전송하고, 상기 경기 제어부는 상기 제2 당구대의 제어 장치를 통해, 상기 제2 당구대에 설치된 로봇팔을 이용하여 상기 제2 당구대의 상태가 상기 제1 당구대의 상태와 동일하도록 제2 당구공들의 위치를 변화시키도록 제어하고, 상기 제2 사용자의 타구를 대기하는 점을 특징으로 할 수 있다.
상기 제2 당구공들의 위치를 변화시키는 것은, 상기 제1 당구대에서의 움직임 상황인 상기 제1 사용자의 행동, 상기 제1 사용자에 의한 큐의 움직임, 타구 이후의 당구공들의 움직임을 포함하는 움직이는 영상을 투영시키는 점을 특징으로 할 수 있다.
상기 움직이는 영상은 상기 제1 사용자에 의해 득점이 발생한 경우에는 환호성 소리 및 득점 획득과 대응되는 이미지를 더 포함하도록 구현되고, 상기 제1 사용자에 의해 득점이 발생하지 않은 경우에는, 야유 소리 및 득점 실패와 대응되는 이미지를 더 포함하도록 구현되는 점을 특징으로 할 수 있다.
상기 타구를 대기하는 것은 상기 제2 사용자의 경기력 및 현재 상황을 고려하여 상기 제2 사용자에게 추천 궤적을 포함하는 이미지를 투영하는 점을 특징으로 할 수 있다.
상기 타구를 대기하는 것은 상기 제2 당구대 위에서의 상기 제2 사용자의 큐의 위치 변화에 따른 예상 궤적 및 난이도 정보를 제공하는 단계를 더 포함하는 점을 특징으로 할 수 있다.
본 발명의 실시예에 따른 컴퓨터 프로그램은 컴퓨터를 이용하여 본 발명의 실시예에 따른 당구 훈련 방법 중 어느 하나의 방법을 실행시키기 위하여 매체에 저장될 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해 질 것이다.
본 발명에 따르면, 특정 상황하에 위치한 당구공을 타구하여 원하는 학습 목표에 도달할 때까지 흩어진 당구공을 원래의 위치로 자동적으로 회수하여 반복 학습 및 훈련이 가능토록 하여 학습 증진에 기여하는 효과 제공이 가능하다.
본 발명은 현재 위치한 당구공에 대한 타구 방법만을 가르치는 것이 아니라 당구공의 특정 위치를 패턴화 하여 해당 상황에서 반복적인 훈련을 하도록 하여 학습 및 실전 능력의 향상이 가능하다.
아울러, 현재 위치한 당구공에 대한 타구 방법의 제시뿐만 아니라, 타구 후의 당구공의 위치 이동에 대한 예측 정보를 사전에 학습자에게 제공하여 학습의 효과를 극대화 할 수 있다.
본 발명은 네트워크 연결 기능이 내장된 당구 학습 훈련 장치를 네트워크에 연결하여 학습자의 위치에 관계없이 학습 및 훈련은 물론 원격상의 실시간 당구 경기의 운영도 가능하다.
한편, 여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급됨을 첨언한다.
도 1은 본 발명의 실시예들에 따른 당구 훈련 시스템의 블록도이다.
도 2는 본 발명의 실시예들에 따른 당구 훈련 장치의 블록도이다.
도 3은 본 발명의 실시예들에 따른 당구 훈련 장치의 메모리의 블록도이다.
도 4는 본 발명의 실시예들에 따른 당구대 상에 위치한 당구 훈련 장치의 블록도이다.
도 5는 본 발명의 실시예들에 따른 당구 훈련 방법의 흐름도이다.
도 6은 본 발명의 실시예들에 따른 당구 학습 훈련 서버의 블록도이다.
도 7은 메모리의 블록도이다.
도 8은 본 발명의 실시예들에 따른 훈련 교본과 대응하여 투영되는 이미지의 일 예이다.
도 9는 본 발명의 실시예들에 따라서 제공되는 사용자의 큐의 방향에 따라서 예상되는 타구 진행 방향을 포함하여 투영되는 이미지의 일 예이다.
도 10 및 도 11은 본 발명의 실시예들에 따른 당구 훈련 방법의 흐름도들이다.
도 12는 본 발명의 실시예들에 따른 예상 궤적을 산출하는 방법의 흐름도이다.
도 13은 본 발명의 실시예들에 따라서 표현되는 당구공의 큐점 위치 표시에 대한 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다.
도 1은 본 발명의 실시예들에 따른 당구 훈련 시스템의 블록도이다.
당구 훈련 시스템(10)은 사용자 단말기(101, 102, 103, … 이하 100), 당구 훈련 장치(201, 202, 203, … 이하 200), 당구 학습 훈련 서버(300), 통신망(400), 데이터베이스(500)를 포함할 수 있다.
당구 훈련 시스템(10)은 사용자의 당구 실력에 맞는 훈련 교본을 제공함으로써, 사용자의 당구 실력이 향상되도록 하는 훈련 시스템이다. 당구 훈련 시스템(10)은 당구공의 위치를 물리적으로 이동시키는 로봇팔을 이용하여 사용자가 반복적으로 당구공들의 위치를 변경하는 수고 없이 훈련 교본에 지시한 위치대로 당구공을 배치하여 특정 당구 패턴에 대한 반복 숙달을 통한 훈련이 가능하도록 제어한다.
사용자 단말기(100)는 훈련자 등의 사용자가 구비하고 있는 통신 전자 장치로서, 통신망(400)을 통해 당구 훈련 장치(200) 및 당구 학습 훈련 서버(300)와 연결될 수 있다. 사용자 단말기(100)는 당구 훈련 장치(200) 또는 당구 학습 훈련 서버(300)에 의해 처리된 정보를 제공받을 수 있다.
복수 개의 사용자 단말기(100)들은 유무선 통신 환경에서 데이터를 송수신 할 수 있는 통신 단말기를 의미한다. 여기서, 사용자 단말기(100)는 사용자의 퍼스널 컴퓨터 일 수도 있고, 또는 사용자의 휴대용 단말일 수도 있다. 도 1에서는 휴대용 단말기가 스마트폰으로 도시되었지만, 본 발명의 사상은 이에 제한되지 아니하며, 상술한 바와 같이 통신망과 연결이 가능한 프로그램이 탑재된 단말은 제한 없이 차용될 수 있다.
이를 더욱 상세히 설명하면, 사용자 단말기(100)들은 컴퓨터(예를 들면, 데스크톱, 랩톱, 태블릿 등), 미디어 컴퓨팅 플랫폼(예를 들면, 케이블, 위성 셋톱박스, 디지털 비디오 레코더), 핸드헬드 컴퓨팅 디바이스(예를 들면, PDA, 이메일 클라이언트 등), 웨어러블 디바이스 (예를 들면, 안경 형태의 착용 컴퓨터, 머리에 착용하는 증강 현실 지원 장치 등), 핸드폰의 임의의 형태 또는 다른 종류의 컴퓨팅 또는 커뮤니케이션 플랫폼의 임의의 형태를 포함할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.
당구 훈련 장치(200)는 당구대에 이미지를 투영시키는 프로젝터 및 당구대 위의 훈련 또는 경기 상황을 촬영하는 카메라, 당구공을 집어서 목표 위치에 이동시키는 로봇 팔로 구성되어 있다. 당구 훈련 장치(200)는 수신된 당구 패턴에 따른 목표 위치에 당구공들이 놓이도록 로봇팔을 제어할 수 있다.
당구 학습 훈련 서버(300)는 다양한 당구 패턴 및 각 당구 패턴의 바람직한 타구 방향, 타구 경로, 타구점, 타구력 등을 관리하고, 사용자 맞춤 당구 패턴을 당구대에 설치된 프로젝터 및 로봇팔을 통해 이미지 또는 실제 상황(당구공들의 배치)으로 제공할 수 있다. 당구 학습 훈련 서버(300)는 사용자의 당구 실력에 따라서 단계별 훈련 교본을 제공할 수 있다. 또한, 당구 학습 훈련 서버(300)는 원격에 위치한 당구대간에서의 당구 훈련 또는 경기 상황을 동기화시킬 수 있으며, 제1 당구대의 변화를 제2 당구대에 적용하고, 제2 당구대의 변화를 제1 당구대에 적용함으로써, 제1 및 제2 당구대를 통해 하나의 당구 경기를 진행할 수 있도록 제어할 수 있다. 당구 학습 훈련 서버(300)는 원격의 제1 사용자의 당구 훈련 장치(201) 및 제2 사용자의 당구 훈련 장치(202)로 서로 떨어져 있는 당구대에서 발생한 타구 상황 데이터를 전송함으로써 제1 사용자 및 제2 사용자가 원격의 위치에서 함께 경기하는 효과를 줄 수 있다.
통신망(400)은 복수 개의 사용자 단말기(100)들, 당구 훈련 장치(200), 당구 학습 훈련 서버(300)를 연결시켜 준다. 즉, 통신망(400)은 사용자 단말기(100) 및 당구 훈련 장치(200)들이 당구 학습 훈련 서버(300)에 접속한 후 데이터를 송수신할 수 있도록 접속 경로를 제공하는 통신망을 의미한다. 통신망(400)은 예컨대 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(Metropolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, LTE, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
데이터베이스(500)는 단계별 당구 훈련 교본에 대한 데이터, 사용자별 훈련 데이터, 훈련 교본 별 예시 타격 영상에 대한 데이터, 큐의 방향에 따른 예상 타구 방향에 대한 데이터, 당구 게임에서 제공되는 이펙트 관련 데이터 등을 저장 관리하는 역할을 수행한다.
도 2는 본 발명의 실시예들에 따른 당구 훈련 장치(200)의 블록도이다.
도 2에 도시된 바와 같이, 당구 훈련 장치(200)는 당구대의 상황을 사용자의 실력에 따른 당구 훈련 교본과 동일하게 설정하기 위해서, 프로세서(210), 통신부(220), 프로젝터(230), 카메라(240), 센서부(250), 메모리(260), 로봇팔(270)을 포함할 수 있다. 당구 훈련 장치(201, 202, 203, …)은 당구 훈련 장치(200)과 동일한 구성을 가지는 것이 일반적이나 도시되지 않은 구성요소들을 더 포함할 수 있다.
프로세서(210)는 통상적으로 당구 훈련 장치(200)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(210)는 메모리(260)에 저장된 프로그램들을 실행함으로써, 통신부(220), 프로젝터(230), 카메라(240), 센서부(250), 로봇팔(270) 등을 전반적으로 제어할 수 있다.
통신부(220)는 사용자 단말기(100) 또는 당구 훈련 장치(200) 간의 통신을 가능하게 하는 하나 이상의 구성요소를 포함할 수 있다. 통신부(220)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등의 근거리 통신부, 이동통신 망을 포함할 수 있다.
프로젝터(230)는 당구대 상에 이미지를 투사하여 출력할 수 있다. 프로젝터(230)는 당구 실력에 맞춰서 검색된 훈련 교본과 대응하는 이미지를 투사하여 출력할 수 있다. 또한, 프로젝터(230)는 다른 당구대에서 이루어진 타격 및 타구 움직임을 투사하도록 제어할 수 있다. 프로젝터(230)는 당구공들의 움직임 뿐만 아니라 다양한 이펙트를 투사하도록 제어할 수 있다.
카메라(240)는 큐의 파지, 큐를 치는 학습 훈련자의 자세 등을 포함하는 영상 정보를 촬영한다. 카메라(240)는 당구대의 전체적인 상황, 큐의 움직임 및 사용자의 타구 자세 등을 촬영한다. 카메라(240)는 당구공들의 이동 경로들을 촬영한다.
센서부(250)는 당구대에서의 움직이는 변화를 카메라 영상 또는 타격 소리를 통해 감지하는 기능을 수행한다. 센서부(250)는 당구대 상에 설치된 상기 카메라(240)가 당구대의 가장 자리에서 측면을 바라보도록 설치될 수 있으나, 이에 한정되지 않는다.
메모리(260)는 사용자를 위한 훈련 교본을 검색하는 훈련 교본 검색부(261), 당구대에 이미지를 투영시키는 투영 제어부(262), 로봇팔을 제어하는 로봇팔 제어부(263), 타구 감지부(264), 숙련도 판단부(265), 정보 등록부(266)를 포함할 수 있다. 메모리(260)의 세부 구성들의 동작은 도 3에서 설명하겠다.
메모리(260)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
로봇팔(270)은 1개 이상의 관절들로 구분되며, 당구공을 움켜쥐는 2개 이상의 집게 손가락을 더 포함할 수 있다. 로봇팔(270)은 당구대의 장축과 평행하게 위치한 레일에 부착되어, 당구공을 움켜집거나 배치하기 위해 당구대의 장축에 따라서 이동할 수 있다. 로봇팔(270)은 훈련 교본에 의해서 이동해야 하는 당구공의 현재 위치로 이동하여, 당구공을 움켜쥐고, 해당 당구공을 바람직한 위치로 이동시킬 수 있다. 또한, 로봇팔(270)은 타 사용자에 의해 이루어진 타구에 의한 당구공들의 최종 위치로, 당구공들을 이동시킨다.
도 3은 본 발명의 실시예들에 따른 당구 훈련 장치의 메모리(260)의 블록도이다.
훈련 교본 검색부(261)는 사용자의 당구 실력에 따른 훈련 교본을 검색하는 기능을 수행한다. 훈련 교본 검색부(261)는 사용자의 이전 훈련 데이터를 기초로 훈련 교본을 검색할 수 있다. 훈련 교본 검색부(261)는 이전 훈련 데이터가 없는 경우, 사용자에 의해 직접 입력된 당구 실력을 나타내는 레벨 값에 따라서 훈련 교본을 검색할 수 있다. 훈련 교본 검색부(261)는 이전 훈련 데이터가 없는 경우, 당구 훈련 장치에 의해 제공되는 샘플 훈련 교본에 대한 타구를 실시하고, 타구에 대한 결과(당구공들의 최종 위치들, 당구공들의 타구 방향, 타구 자세 등)를 이용하여 사용자 맞춤 훈련 교본을 검색할 수 있다.
투영 제어부(262)는 당구대 상에 특정 이미지 또는 영상을 투영시키는 기능을 수행한다. 투영 제어부(262)는 당구 훈련을 준비하는 사용자의 훈련 교본에 대한 훈련 영상을 투영시킨다. 투영 제어부(262)는 사용자에 의해 입력된 이미지 투영 신호에 따라서 훈련 영상을 투영시킨다. 또한, 투영 제어부(262)는 카메라에 의해 촬영된 사용자의 타구 영상을 다시 보기 기능과 같이 출력하도록 제어할 수 있다.
투영 제어부(262)는 다른 당구대에서 촬영된 다른 사용자에 의해 이루어진 타구 영상을 투영시킬 수 있다. 실제 동일한 공간에서 당구 경기를 하지 않는 다른 사용자의 타구 영상을 제1 당구대 상에 투영시킴으로써, 동일한 공간에서 당구 경기를 하는 효과를 줄 수 있다.
투영되는 타구 영상은 각 사용자에 의해 이루어진 타구의 결과(득점 여부, 타구 움직임, 최종 타구 위치 등)를 반영한 이펙트를 추가적으로 포함할 수 있다. 타구 영상은 득점에 성공한 경우, 환호하는 이펙트를 더 포함할 수 있으며, 득점에 실패한 경우, 야유하는 이펙트를 더 포함할 수 있다. 또한, 투영 제어부(262)는 제공되는 이미지 또는 영상에 당구 경기와 관련된 정보를 더 포함하도록 편집할 수 있다. 예를 들어, 이미지 또는 영상은 사용자의 숙련도와 관련된 정보를 더 포함할 수 있다.
다른 실시예에서, 투영 제어부(262)는 실제 촬영된 이미지 또는 영상 외에 타구 하지 않고 사용자의 타구 직전의 타구 자세, 큐의 방향 등을 고려하여 당구공의 움직임을 예측하고, 예측 데이터에 따라서 당구공들이 움직이는 영상을 생성하여 제공할 수 있다.
투영 제어부(262)는 제1 당구공에 대한 큐의 방향, 및 다른 당구공들의 위치를 고려하여 제1 당구공의 움직임을 예상할 수 있다. 예상한 이미지는 제1 당구공 및 다른 당구공들의 움직임을 포함한 영상일 수 있다. 투영 제어부(262)는 실시간으로 변화된 사용자의 자세에 따라서 당구공의 움직임을 예상한 이미지를 투영시키게 된다.
로봇팔 제어부(263)는 목표 위치와 대응되는 좌표에 당구공을 이동시키도록 로봇팔을 제어한다. 로봇팔 제어부(263)는 당구대를 2차원 좌표계로 설정하고, 당구공들의 위치를 2차원의 좌표로 변환할 수 있다. 로봇팔 제어부(263)는 1단 이상의 관절에 모터로 구현되어 당구대의 단축의 제1 측부 및 제2 측부 사이를 이동하도록 구현될 수 있다. 로봇팔의 이동을 통해 발생되는 사고를 방지하기 위해서, 로봇팔의 각 관절의 회전 반경은 당구대를 벗어나지 않도록 제한될 수 있다.
로봇팔 제어부(263)는 프로젝터를 통해서 투영된 이미지에 포함된 당구공과 일치하는 위치에 당구공을 놓도록 제어할 수 있다. 로봇팔 제어부(263)는 카메라를 통해 당구대 상에 투영된 이미지를 촬영하고, 상기 이미지에 포함된 당구공의 위치를 좌표로 변환하고, 좌표에 당구공이 놓여지도록 제어할 수 있다.
로봇팔 제어부(263)는 카메라를 통해 당구대 상의 당구공들을 촬영하고, 촬영한 이미지에 포함된 당구공들의 위치들에 각각의 당구공이 위치하도록 제어할 수 있다. 로봇팔 제어부(263)는 촬영된 이미지의 각 당구공의 위치를 좌표들로 변환하고, 변환한 좌표를 이용하여 당구공을 이동시킬 수 있다. 제1 당구대와 동일하게 로봇팔 제어부(263)는 당구공들을 이동시킬 수 있다. 로봇팔 제어부(263)는 수신된 좌표들에 따라 당구공들을 이동시킬 수 있다.
타구 감지부(264)는 센서부를 통해 획득된 데이터를 이용하여 사용자의 타구 여부를 감지한다. 타구 감지부(264)는 당구대의 중심 방향을 바라보도록 설치된 센서들로부터의 센싱 값을 이용하여 당구공들의 위치 변화를 검출함으로써, 사용자의 타구 여부를 감지할 수 있다. 타구 감지부(264)는 카메라를 통해 획득된 이미지를 이전에 촬영된 이미지와의 비교를 통해서 당구공의 위치 변화를 검출함으로써, 사용자의 타구 여부를 감지할 수 있다. 타구 감지부(264)는 사운드 입력부(미도시)를 통해 입력된 타구 소리가 입력되는 경우, 사용자의 타구 여부를 감지할 수 있다.
타구 감지부(264)는 사용자의 타구 여부를 감지하고 이에 따라 사용자의 타구 횟수를 카운팅한다. 타구 감지부(264)는 사용자의 타구 여부를 감지함으로써, 훈련이 시작된 이후에 경과된 시간을 훈련 기간을 카운팅할 수 있다. 타구 횟수 또는 훈련 기간은 사용자 및 훈련 교본 별로 구분하여 사용자 및 훈련 교본 데이터베이스(DB)(502, 501)에 등록한다. 각 훈련 교본의 난이도를 고려하여, 목표 타구 횟수 또는 목표 훈련 기간이 결정될 수 있다. 난이도가 높은 훈련 교본에 대해서는 목표 타구 횟수 및 목표 훈련 기간이 증가하게 된다.
숙련도 판단부(265)는 사용자에게 제공된 훈련 교본의 훈련 정보에 충실히 따르는지 정도인 숙련도를 판단할 수 있다. 여기서, 제공되는 훈련 정보는 당구공의 배열(패턴), 바람직한 타구 방향, 바람직한 큐의 파지, 바람직한 타구 자세 등의 정보를 포함할 수 있다.
숙련도 판단부(265)는 카메라를 통해 촬영된 영상 및 타구 횟수, 훈련 기간 등을 이용하여 해당 훈련 교본에 대한 숙련도를 판단할 수 있다. 타구 횟수, 훈련 기간 등은 총 타구 횟수, 총 훈련 기간, 해당 훈련 교본에 대한 타구 횟수, 훈련 기간을 말한다. 훈련 기간은 사용자 별로 결정될 수 있다.
숙련도 판단부(265)는 제공된 훈련 교본 별로 설정된 목표 훈련 횟수를 타구 횟수로 비교함으로써, 타구 횟수가 목표 훈련 횟수 보다 큰 경우 숙련도를 100으로 판단할 수 있다. 타구 횟수가 목표 훈련 횟수 이하인 경우, 숙련도 판단부(265)는 목표 훈련 횟수에 대한 타구 횟수의 비율로 숙련도를 결정한다. 이때, 숙련도 판단부(265)는 훈련 기간이 최소 훈련 기간 이하인 경우, 해당 훈련 교본에 대한 훈련 기간을 고려하여 타구 횟수에 따라서 결정된 숙련도를 정정할 수 있다. 예를 들어, 사용자가 제1 훈련 교본에 따라서 제1 훈련 기간 동안 제1 타구 횟수 만큼 당구 훈련을 수행한 경우, 사용자의 제1 훈련 교본의 숙련도는 제1 타구 횟수의 비율로 결정될 수 있다. 만약, 제1 훈련 기간이 최소 훈련 기간 미만인 경우, 사용자의 제1 훈련 교본의 숙련도는 제1 타구 횟수의 비율로 결정된 값에 최소 훈련 기간에 대한 제1 훈련 기간의 비율을 곱한 값으로 결정될 수 있다.
숙련도 판단부(265)는 영상을 분석하여 당구공들의 최종 위치, 이동 경로, 큐의 움직임, 사용자의 타구 자세, 타구 방향, 타구력 등을 이용하여 숙련도를 판단할 수 있다. 사용자의 타구에 의해 발생되는 당구공들의 최종 위치, 이동 경로, 큐의 움직임, 사용자의 타구 자세 등은 해당 훈련 교본에 대한 히스토리 데이터를 통해서 평가될 수 있다. 해당 훈련 교본에 대한 히스토리 데이터는 훈련 교본에 대한 사용자들의 타구 자세, 타구 후 결과, 타구 시 실수 등에 대한 정보를 포함할 수 있다.
숙련도 판단부(265)는 당구공들의 최종 위치가 제공된 훈련 교본의 최종 위치와 일치하는 경우, 숙련도를 100으로 설정하고, 타구 횟수 및 훈련 기간을 고려하여 숙련도를 조정할 수 있다.
숙련도 판단부(265)를 통해 판단된 숙련도는 사용자 별로 구분하여 사용자 데이터베이스(DB)(502)에 등록될 수 있다.
카메라를 통해 촬영된 훈련 영상, 타구 영상은 사용자 별로 구분되어 저장될 수 있다. 훈련 영상, 타구 영상은 각 사용자의 단말기로 이메일, 단문메시지에 포함시켜 전송할 수 있다. 훈련 영상, 타구 영상은 SNS 망의 하나의 포스트로 제공될 수 있다. 또한, 훈련 영상, 타구 영상은 근거리 통신망을 통해 다른 전자 장치로 전송되어 출력될 수 있다.
이를 통해, 본 발명의 실시예들에 따른 당구 훈련 장치는 반복적으로 당구공들을 이동시키는 수고 없이 동일한 당구 패턴에 대한 반복적인 훈련을 진행할 수 있다.
추가적으로, 본 발명의 실시예들에 따른 당구 훈련 장치는 반복적인 훈련을 통해서 해당 당구 패턴에 대한 숙련도를 평가할 수 있고, 숙련도에 따른 필요 훈련 기간을 산출하여 제공할 수 있다. 본 발명의 실시예들에 따른 당구 훈련 장치는 해당 당구 패턴을 숙련하기까지 필요 시간을 산출하여 제공함으로서, 사용자의 훈련 의욕을 높일 수 있다. 또한, 반복 훈련에 대한 성취도를 높이기 위해서, 본 발명의 실시예들에 따른 당구 훈련 장치는 사용자의 단말기로 의욕 을 고취하기 위한 메시지를 제공할 수 있다. 본 발명의 실시예들에 따른 당구 훈련 장치는 제1 사용자의 최종 당구 훈련의 훈련 시점 이후에 경과된 시간이 기설정된 상기시켜주는 기간을 초과하는 경우, 제1 사용자의 단말기로 훈련 이후 시간이 경과되었다는 메시지를 전송함으로써, 제1 사용자의 당구 실력이 완만히 향상될 수 있도록 제어할 수 있다.
도 4는 본 발명의 실시예들에 따른 당구대 상에 위치한 당구 훈련 장치의 블록도이다.
도 4에 도시된 바와 같이, 당구 훈련 장치(200)는 프로젝터(230), 카메라(240), 로봇팔(270), 가드레일(280)와 전기적으로 연결될 수 있다. 카메라는 당구 훈련 장치(200)과 독립적으로 연결되어 있지만 필요 시 당구 훈련 장치(200)에 내장될 수 있다. 당구 훈련 장치(200)는 당구대(290) 상에 존재하게 된다.
프로젝터(230)의 위치는 당구대에 이미지를 투영시킬 수 있는 높이에 설정할 수 있다. 카메라(240)의 위치는 당구대 상의 상황, 당구공의 이동 및 큐의 움직임을 촬영할 수 있도록 결정될 수 있다.
로봇팔(270)은 가드레일(280)을 이동하면서 당구대의 장축(x11)과 평행한 방향으로 이동하게 된다. 도 4에 도시된 바와 같이, 로봇팔(270)은 1개 이상의 관절들로 이루어져 당구대의 단축(y11) 사이의 임의의 위치로 이동하게 된다. 로봇팔(270)은 가장자리에 위치한 집게 손가락들을 이용하여 당구공들을 쥐게 된다.
도 5는 본 발명의 실시예들에 따른 당구 훈련 방법의 흐름도이다.
S110에서는 당구 훈련 장치(200)는 사용자 단말기 또는 당구 학습 훈련 서버로부터 사용자에 대한 데이터를 수신할 수 있다. 당구 훈련 장치(200)는 사용자의 아이디 또는 사용자를 촬영한 이미지를 이용하여 당구 학습 훈련 서버(300)로부터 훈련하려는 사용자에 대한 데이터를 수신할 수 있다. 당구 훈련 장치(200)는 타 사용자의 훈련 데이터가 훼손되는 것을 방지하기 위해서, 사용자의 얼굴, 지문, 목소리 등으로 사용자를 식별할 수 있다. 사용자의 얼굴, 지문, 목소리가 일치하는 경우에만 훈련 데이터, 훈련 교본이 접근되도록 할 수 있다.
S120에서는 당구 훈련 장치(200)는 사용자에 대한 데이터에 포함된 사용자의 당구 레벨에 따른 훈련 교본을 검색할 수 있다. 사용자의 이전 훈련 히스토리 및 사용자의 당구 레벨을 고려하여 적합한 훈련 교본을 검색할 수 있다.
S130에서는 당구 훈련 장치(200)는 프로젝터를 통해서 훈련 교본의 당구 패턴을 당구대 상에 투영시킬 수 있다. S140에서는 당구 훈련 장치(200)는 로봇팔을 통해서 훈련 교본의 당구 패턴에 따라서 당구공들을 이동 및 배열시킨다.
S150에서는 당구 훈련 장치(200)는 사용자의 타구에 따라서 훈련 교본에 대한 숙련도를 판단할 수 있다. S150는 숙련도 판단부(265)의 동작과 동일하므로, 상세한 설명을 생략한다.
S160에서는 당구 훈련 장치(200)는 사용자의 훈련 결과를 반영하여 사용자의 당구 레벨을 갱신할 수 있다.
도 6은 본 발명의 실시예들에 따른 당구 학습 훈련 서버(300)의 블록도이다.
도 6에 도시된 바와 같이, 당구 학습 훈련 서버(300)는 반복적으로 당구 훈련을 수행하기 위해서, 프로세서(310), 통신부(320), 메모리(330)를 포함할 수 있다.
프로세서(310)는 당구 학습 훈련 서버(300)의 통신부(320), 메모리(330)의 기능을 전반적으로 제어 및 수행한다.
통신부(320)는 하나 이상의 사용자 단말기들 및 하나 이상의 당구 훈련 장치들과의 통신을 가능하게 하는 하나 이상의 구성요소를 포함할 수 있다. 통신부(320)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등의 근거리 통신부, 이동통신 망을 포함할 수 있다. 통신부(320)는 입력된 데이터를 목적지 장치가 이해할 수 있는 형식으로 변환할 수 있다.
메모리(330)는 사용자에 맞는 훈련 교본과 관련된 데이터를 제공하는 기능, 원격의 당구 훈련 장치들 사이의 경기 진행 상황을 동기화시키는 프로그램이 저장될 수 있다. 메모리(330)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
당구 학습 훈련 서버(300)는 데이터베이스(500)과 통신하여 필요한 데이터를 수신 받고, 추가적으로 사용자의 타구 및 훈련에 따른 데이터를 전송하여 데이터베이스(500)를 갱신시킨다.
도 7은 메모리(330)의 블록도이다.
도 7에 도시된 바와 같이, 메모리(330)는 제1 당구대 및 제2 당구대 사이의 경기 상황을 동기화시켜 하나의 원격 당구 경기를 하기 위해서, 경기 제어부(331)를 포함할 수 있다.
경기 제어부(331)는 제1 및 제2 당구대의 상황을 동기시키는 기능을 수행한다. 경기 제어부(331)는 제1 당구대에서 이루어진 타구 행위가 감지되면, 타구 행위에 따른 결과를 제2 당구대로 전달하고, 제1 당구대와 동일하게 제2 당구대의 상황을 변경하도록 제어한다. 경기 제어부(331)는 제2 당구대에서 이루어진 타구 행위가 감지되면, 타구 행위에 따른 결과를 제1 당구대로 전달하고, 제2 당구대와 동일하게 제1 당구대의 상황을 변경하도록 제어한다.
경기 제어부(331)는 제1 및 제2 당구대에서 부정한 경기 수행이 발생되지 않도록 감시하는 기능을 수행한다. 경기 제어부(331)는 제1 사용자의 타구 이후에, 제2 사용자의 타구가 발생되기 전까지는 제1 당구대의 상황이 변경되지 않고 유지되도록 감시할 수 있다. 예를 들어, 타격에 의한 당구공의 위치 변화가 아닌 물리적인 힘에 의한 당구공의 위치 변화가 발생되지 않도록 감시할 수 있다. 제1 사용자의 타구 이후에 제2 사용자의 타구가 발생되기 전에 제1 사용자의 타구, 당구공의 위치 변경 등의 움직임이 감지되면, 이에 대한 알람을 제2 당구대 또는 제2 사용자의 단말기로 전달할 수 있다.
이를 통해, 본 발명의 실시예들에 따른 당구 학습 훈련 서버는 상호 원격에 위치한 2명 이상의 사용자들 사이에 당구 경기를 진행할 수 있다. 당구 학습 훈련 서버는 원격상에 위치하면서도 상호간 당구 경기를 진행하면서 부정 행위가 없이 정정당당하게 진행하도록 제어할 수 있다.
경기 제어부(331)는 원격에서 이루어진 당구 경기의 실시간 상황을 반영하도록 이미지를 편집할 수 있다. 예를 들면, 경기 제어부(331)는 제1 또는 제2 사용자의 타구 행위에 따른 득점 여부, 연속 득점 상황 등을 포함하는 이미지를 제공할 수 있다.
경기 제어부(331)는 제1 및 제2 사용자 사이의 경기 결과를 이용하여 제1 사용자 및 제2 사용자의 당구 레벨을 갱신할 수 있다. 예를 들어, 제1 사용자의 당구 레벨이 제2 사용자의 당구 레벨 이하인데 제1 사용자가 승리한 경우, 경기 제어부(331)는 제1 사용자의 당구 레벨을 기 설정된 정도로 증가시키거나 유지 또는 제2 사용자의 당구 레벨을 기 설정된 정도로 감소 시킬 수 있다. 이를 통해, 본 발명의 실시예들에 따른 당구 학습 훈련 서버는 당구 경기 결과를 이용하여 사용자의 당구 레벨을 조절할 수 있다.
본 발명의 실시예들에 따른 당구 학습 훈련 서버(300)는 당구 훈련을 위한 기능 뿐만 아니라 장소에 구애 받지 않고 당구 경기를 진행하는 원격 당구 경기 기능을 제공할 수 있다.
도 8은 본 발명의 실시예들에 따른 훈련 교본과 대응하여 투영되는 이미지의 일 예이다.
도 8에 도시된 바와 같이, 당구대 상에 설치된 프로젝터는 제1 당구 패턴인 b1(x1, y1), b2(x2, y2), b3(x3, y3)를 제공할 때, b1을 타구하는 타구 방향을 나타내는 이미지(image1)를 더 투영시킬 수 있다. Image1은 타구 방향과 대응되는 화살표로 표현될 수 있다. 당구대 상에 표현되는 이미지는 타구 이후의 당구공의 움직임을 표현한 선(image2)을 더 포함할 수 있다. 사용자에 의해 조정되는 큐와 대응되는 이미지(cue1)가 더 포함될 수 있다.
도 9는 본 발명의 실시예들에 따라서 제공되는 사용자의 큐의 방향에 따라서 예상되는 타구 진행 방향을 포함하여 투영되는 이미지의 일 예이다.
당구대에 실제 위치한 당구공(b4)에 대한 타구 방향에 따른 예상 경로들이 route1, route2, route3과 같이 제공될 수 있다.
도 10 및 도 11은 본 발명의 실시예들에 따른 당구 훈련 방법의 흐름도들이다.
S210에서는 당구 훈련 장치(200)는 사용자의 당구 레벨에 따른 제1 훈련 패턴을 제공한다. 당구 훈련 장치(200)는 제1 훈련 패턴에 따른 목표 위치들에 각 당구공을 놓도록 로봇팔을 제어할 수 있다. 로봇팔의 제어가 완료된 이후에 최종적으로 제1 훈련 패턴과 동일하게 당구공들이 배열되는지 여부를 카메라 촬영을 통해서 확인할 수 있다.
S220에서는 당구 훈련 장치(200)는 움직임 감지, 타격 소리 감지 등을 통해 사용자의 타구 여부를 감지할 수 있다. S230에서는 타구가 감지되면, 당구 훈련 장치(200)는 타구된 결과(당구공들의 최종 위치, 타구의 움직임, 타구 방향 등) 및 훈련 기간, 훈련 횟수 등을 종합하여 사용자의 숙련도를 판단할 수 있다.
S240에서는 당구 훈련 장치(200)는 사용자의 제1 훈련 패턴에 대한 숙련도가 기 설정된 기준 값을 초과하는 경우인지 여부를 판단하고, 사용자의 숙련도가 기 설정된 기준 값을 초과하는 경우, 다음 단계의 제2 훈련 패턴을 당구대 상에 제공할 수 있다(S250).
도 11에서는 제1 및 제2 당구대 사이의 당구 경기 진행 상황을 동기화시키는 과정을 설명하겠다.
당구 학습 훈련 서버(300)는 제1 및 제2 당구 훈련 장치(201, 202)로 동기 신호를 전송한다(S310, S320). 동기 신호는 당구공들의 위치 등을 포함할 수 있다. 제1 및 제2 당구 훈련 장치(201, 202)는 동기 신호에 따라서 동일하게 당구대를 설정할 수 있다. 제1 당구 훈련 장치(201)는 카메라, 센서 등을 이용하여 제1 및 제2 사용자의 경기 순서에 따라서 제1 사용자에 의해 이루어진 타구를 감지한다(S330). 제1 당구 훈련 장치(201)는 감지된 타구시, 타구된 결과(당구공들의 최종 위치, 타구의 움직임, 타구 방향, 타구 영상 등)와 함께, 최종적으로 발생된 상황을 포함하는 상황 데이터를 생성할 수 있다(S340). 생성된 상황 데이터는 동기 신호에 포함된 키 값을 이용하여 암호화되어 당구 학습 훈련 서버(300)로 전달되고(S350), 당구 학습 훈련 서버(300)는 상황 데이터를 제2 당구 훈련 장치(202)로 전달한다(S350). S360 에서는 제2 당구 훈련 장치(202)는 수신한 암호화된 상황 데이터를 미리 수신한 동기 신호에 포함된 키 값을 이용하여 복호화하고, 상황 데이터에 따라서 제1 당구 훈련 장치와 동일하게 상황을 설정할 수 있다. 이때, 상황 데이터는 타구 영상 및 타구에 따른 결과값 외에 타구에 의한 득점 여부 등을 포함할 수 있다. 제2 당구 훈련 장치(202)는 제2 사용자를 위한 추천 타구 정보를 생성하여 제공할 수 있다. 현재 상황에서, 제2 사용자에게 유리하게 만들 수 있고, 가장 높은 확률로 유리하게 되는 추천 타구 정보가 생성될 수 있다.
도 12는 본 발명의 실시예들에 따른 예상 궤적을 산출하는 방법의 흐름도이다.
도 12에 도시된 바와 같이, 예상 궤적을 산출하는 방법은 사용자의 큐점 및 타구 방향을 감지하는 단계(S410), 제1 예상 궤적을 산출하는 단계(S420), 제1 예상 궤적을 당구대에 투영시켜 출력하는 단계(S430), 출력 결과를 확인한 이후, 사용자에 의해 큐점 및 타구 방향이 변경되었는지 여부를 판단하는 단계(S440), 사용자에 의해 타구를 감지하는 단계(S450), 타구 후 실제 궤적을 추적하고 표시하는 단계(S460), 타구 전 예상 궤적과 타구 후 실제 궤적을 비교하여 당구대에 투영시키는 단계(S470)를 포함할 수 있다.
S420에서는 당구공들의 위치에 대한 사용자의 큐점 및 타구 방향을 고려하여, 예상 궤적을 산출할 수 있다. 예상 궤적은 타구력에 따라서 하나 이상으로 생성될 수 있다.
S440에서는 사용자에 의한 큐점 및 타구 방향의 변화를 센서들을 통해서 감지할 수 있다. 사용자에 의한 변경된 큐점 및 타구 방향에 의해 제2 예상 궤적을 산출할 수 있다.
사용자의 타구가 감지되면, 실제 당구공의 궤적을 추적하여 움직이는 영상으로 획득하여 당구대에 투영시킬 수 있다. 타구 전에 판단된 예상 궤적과 타구 후 실제 궤적을 비교하여 당구대에 투영시킨다. 또한, 비교 결과를 사용자의 당구 실력을 판단하는데 이용한다.
도 13은 본 발명의 실시예들에 따라서 표현되는 당구공의 큐점 위치 표시에 대한 도면이다.
본 발명의 실시예들에서는 사용자의 큐점을 9개 중 하나로 표현할 수 있다. 훈련 교본은 사용자에게 타구해야 하는 큐점의 위치를 C, U, LU, L, LD, D, RD, R, RU 중 하나로 알려줄 수 있으며 당구공의 반지름을 R이라 할 경우 당구공의 중심(C)를 기준으로 하여 통상 0.7R 거리에 위치한 상, 하, 좌, 우, 좌상, 좌하, 우상, 우하를 타구 방향에 대한 큐점으로 지정할수 있다. 제시된 기호는 하나의 예시에 불과하며, 다른 기호로 표현될 수 있다. 위치와 대응되는 다른 기호로 표현될 수 있다. 사용자는 중앙, 좌, 우, 상, 하, 좌상, 좌하, 우상, 우하 중 하나를 타구함으로써, 당구 훈련을 진행할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100, 101, 102, …: 사용자 단말기
200, 201, 202, …: 당구 훈련 장치
300: 당구 학습 훈련 서버
400: 통신망
500: 데이터베이스

Claims (14)

  1. 당구 훈련 장치가, 통신망을 통해 제1 사용자 단말기로부터 당구 훈련 신호를 수신하는 단계;
    상기 당구 훈련 장치가, 상기 당구 훈련 신호에 응답하여 제1 사용자의 레벨을 교본 검색 알고리즘에 입력시켜 훈련 교본을 검색하는 단계;
    상기 당구 훈련 장치가, 상기 훈련 교본과 대응되는 이미지를 프로젝터를 통해 당구대 상에 투영시키는 단계;
    상기 당구 훈련 장치가, 당구대의 장축에 평행한 방향으로 설치된 가드 레일에 연결되어 장축과 평행한 방향으로 운동하는 로봇팔을 이용하여 상기 훈련 교본과 대응되는 위치로, 당구공을 이동시키는 단계;
    상기 당구 훈련 장치가, 제1 사용자의 움직임 감지 또는 타격 소리 감지를 통해서 제1 사용자의 타구 여부를 감지하고, 카메라를 통해 촬영된 영상에서의 당구공의 위치 변화를 인식하며, 감지된 타구시 당구공들의 최종 위치, 타구의 움직임, 타구 방향, 타구 영상을 포함하는 상황 데이터를 생성하는 단계;
    상기 당구 훈련 장치가, 상기 상황 데이터를 동기 신호에 포함된 키 값을 이용하여 암호화시켜 당구 학습 훈련 서버로 전달하는 단계;
    상기 당구 훈련 장치가, 상기 카메라를 통해 인식된 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 제1 사용자의 타구 자세, 훈련 횟수를 종합하여 상기 제1 사용자의 숙련도를 판단하는 단계; 및
    상기 당구 훈련 장치가, 상기 사용자의 숙련도가 기 설정된 완료 레벨 이상인 경우, 다음 단계의 훈련 교본을 검색하여 제공하고, 상기 사용자의 레벨을 한단계 업그레이드 시켜 등록하는 단계;를 포함하는 당구 훈련 방법.
  2. 제1항에 있어서,
    상기 투영시키는 단계는
    상기 당구 훈련 장치가, 상기 훈련 교본과 대응시켜서 당구공의 타구 지침에 따라서 타구되는 큐의 움직임, 당구공의 움직임을 포함하는 영상을 투영시키는 점을 특징으로 하는, 당구 훈련 방법.
  3. 제1항에 있어서,
    상기 업그레이드 시켜 등록하는 단계는
    상기 당구 훈련 장치가, 상기 제1 사용자의 단말기로부터의 입력에 의해, 갱신하지 않고, 현재 레벨을 유지하도록 등록하는 점을 특징으로 하는, 당구 훈련 방법.
  4. 당구 훈련 장치가, 통신망을 통해 제1 사용자 단말기 및 제2 사용자 단말기로부터 당구 시합 신호들을 각각 송수신하는 단계;
    상기 당구 훈련 장치가, 상기 당구 시합 신호들 중 더 늦게 도착한 당구 시합 신호에 응답하여 상기 제1 사용자의 제1 당구대 및 상기 제2 사용자의 제2 당구대에 동일한 영상을 각각 투영시키는 단계;
    상기 당구 훈련 장치가, 움직임 감지 및 타격 소리 감지를 이용하여 상기 제1 사용자의 타구 여부를 감지하고, 상기 제1 사용자의 타구가 발생되면, 당구공들의 최종 위치, 타구의 움직임, 타구 방향, 및 타구 영상을 포함하는 상황 데이터를 생성하고, 상기 상황 데이터를 동기 신호에 포함된 키 값을 이용하여 암호화시키며, 당구공들의 위치 변화를 포함하는 상황 데이터를 제2 당구대의 제어 장치로 전송하고, 상기 제2 당구대의 제어 장치는 상기 상황 데이터를 미리 수신한 동기 신호에 포함된 키 값을 이용하여 복호화시키는 단계;
    상기 제2 당구대의 제어 장치를 통해, 상기 제2 당구대에 설치된 로봇팔을 이용하여 상기 제2 당구대의 상태가 상기 제1 당구대의 상태와 동일하도록 제2 당구공들의 위치를 변화시키는 단계;
    상기 제2 사용자의 타구를 대기하되, 상기 제2 사용자를 위한 추천 타구 정보를 생성하여 제공하는 단계; 및
    상기 당구 훈련 장치가 상기 제1 사용자의 타구 이후에 제2 사용자의 타구가 발생되기 전에 상기 제1 사용자의 타구, 또는 당구공의 위치 변경의 움직임이 감지되면, 이에 대한 알람을 상기 제2 사용자의 단말기로 전달하는 단계;를 포함하는, 당구 훈련 방법.
  5. 제4항에 있어서,
    상기 제2 당구공들의 위치를 변화시키는 단계는
    상기 당구 훈련 장치가, 상기 제1 당구대에서의 움직임 상황인 상기 제1 사용자의 행동, 상기 제1 사용자에 의한 큐의 움직임, 타구 이후의 당구공들의 움직임을 포함하는 움직이는 영상을 투영시키는 단계를 더 포함하는 점을 특징으로 하는, 당구 훈련 방법.
  6. 제4항에 있어서,
    상기 타구를 대기하는 단계는
    상기 당구 훈련 장치가, 상기 제2 사용자의 경기력 및 현재 상황을 고려하여 상기 제2 사용자에게 추천 궤적을 포함하는 이미지를 투영하는 단계를 더 포함하는 점을 특징으로 하는, 당구 훈련 방법.
  7. 통신망을 통해 제1 사용자 단말기로부터 당구 훈련 신호를 수신하는 통신부;
    상기 당구 훈련 신호에 응답하여 제1 사용자의 레벨을 교본 검색 알고리즘에 입력시켜 훈련 교본을 검색하는 훈련 교본 검색부;
    상기 훈련 교본과 대응되는 이미지를 생성하여 프로젝터를 통해 당구대 상에 투영시키도록 제어하는 투영 제어부;
    당구대의 장축에 평행한 방향으로 설치된 가드 레일에 연결되어 장축과 평행한 방향으로 운동하는 로봇팔을 이용하여 상기 훈련 교본과 대응되는 위치로, 당구공을 이동시키도록 제어하는 로봇팔 제어부;
    제1 사용자의 움직임 감지 또는 타격 소리 감지를 통해서 제1 사용자의 타구 여부를 감지하고, 카메라를 통해 촬영된 영상에서의 당구공의 위치 변화를 인식하며, 감지된 타구시 당구공들의 최종 위치, 타구의 움직임, 타구 방향, 타구 영상을 포함하는 상황 데이터를 생성하는 타구 감지부;
    상기 카메라를 통해 인식된 상기 타구 이후의 최종 당구공의 위치 및 상기 타구 시의 제1 사용자의 타구 자세, 훈련 횟수를 종합하여 상기 제1 사용자의 숙련도를 판단하는 숙련도 판단부; 및
    상기 사용자의 숙련도가 기 설정된 완료 레벨 이상인 경우, 다음 단계의 훈련 교본을 검색하여 제공하고, 상기 사용자의 레벨을 한단계 업그레이드 시켜 등록하는 정보 등록부;를 포함하고, 상기 상황 데이터를 동기 신호에 포함된 키 값을 이용하여 암호화시켜 당구 학습 훈련 서버로 전달하여 관리하는 당구 훈련 장치.
  8. 제7항에 있어서,
    상기 투영 제어부는
    상기 훈련 교본과 대응시켜서 당구공의 타구 지침에 따라서 타구되는 큐의 움직임, 당구공의 움직임을 포함하는 영상을 투영시키도록 제어하는 점을 특징으로 하는, 당구 훈련 장치.
  9. 제7항에 있어서,
    상기 정보 등록부는
    상기 제1 사용자의 단말기로부터의 입력에 의해, 업그레이드 되지 않고, 현재 레벨을 유지하도록 등록하는 점을 특징으로 하는, 당구 훈련 장치.
  10. 통신망을 통해 제1 사용자 단말기 및 제2 사용자 단말기로부터 당구 시합 신호들을 각각 송수신하는 통신부;
    상기 당구 시합 신호들 중 더 늦게 도착한 당구 시합 신호에 응답하여 상기 제1 사용자의 제1 당구대 및 상기 제2 사용자의 제2 당구대에 동일한 영상을 각각 투영시키도록 제어하는 경기 제어부;를 포함하고,
    상기 통신부는
    움직임 감지 및 타격 소리 감지를 이용하여 상기 제1 사용자의 타구 여부를 감지하고, 상기 제1 사용자의 타구가 발생되면, 당구공들의 최종 위치, 타구의 움직임, 타구 방향, 및 타구 영상을 포함하는 상황 데이터를 생성하고, 상기 상황 데이터를 동기 신호에 포함된 키 값을 이용하여 암호화시키며, 당구공들의 위치 변화를 포함하는 상황 데이터를 제2 당구대의 제어 장치로 전송하고,
    상기 경기 제어부는
    상기 제2 당구대의 제어 장치를 통해, 상기 상황 데이터를 미리 수신한 동기 신호에 포함된 키 값을 이용하여 복호화시키고, 상기 제2 당구대에 설치된 로봇팔을 이용하여 상기 제2 당구대의 상태가 상기 제1 당구대의 상태와 동일하도록 제2 당구공들의 위치를 변화시키도록 제어하고, 상기 제2 사용자의 타구를 대기하되, 상기 제2 사용자를 위한 추천 타구 정보를 생성하여 제공하고,
    상기 제1 사용자의 타구 이후에 제2 사용자의 타구가 발생되기 전에 상기 제1 사용자의 타구, 또는 당구공의 위치 변경의 움직임이 감지되면, 이에 대한 알람을 상기 제2 사용자의 단말기로 전달하는 점을 특징으로 하는, 당구 훈련 장치.
  11. 제10항에 있어서,
    상기 제2 당구공들의 위치를 변화시키는 것은,
    상기 제1 당구대에서의 움직임 상황인 상기 제1 사용자의 행동, 상기 제1 사용자에 의한 큐의 움직임, 타구 이후의 당구공들의 움직임을 포함하는 움직이는 영상을 투영시키는 점을 특징으로 하는, 당구 훈련 장치.
  12. 제10항에 있어서,
    상기 타구를 대기하는 것은
    상기 제2 사용자의 경기력 및 현재 상황을 고려하여 상기 제2 사용자에게 추천 궤적을 포함하는 이미지를 투영하는 점을 특징으로 하는, 당구 훈련 장치.
  13. 컴퓨터를 이용하여 제1항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.
  14. 컴퓨터를 이용하여 제7항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.
KR1020240022773A 2017-07-20 2024-02-16 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램 KR102723572B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20170091916 2017-07-20
KR1020170091916 2017-07-20
KR1020180084193A KR20190010468A (ko) 2017-07-20 2018-07-19 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180084193A Division KR20190010468A (ko) 2017-07-20 2018-07-19 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20240038933A true KR20240038933A (ko) 2024-03-26
KR102723572B1 KR102723572B1 (ko) 2024-10-30

Family

ID=

Also Published As

Publication number Publication date
KR20190010468A (ko) 2019-01-30

Similar Documents

Publication Publication Date Title
US10821347B2 (en) Virtual reality sports training systems and methods
US10930172B2 (en) Methods and systems for facilitating interactive training of body-eye coordination and reaction time
US11322043B2 (en) Remote multiplayer interactive physical gaming with mobile computing devices
US11278787B2 (en) Virtual reality sports training systems and methods
TWI612996B (zh) 提供飛鏢遊戲教程模式及其儲存於電腦可讀取媒體的電腦程式的方法及裝置
KR101145126B1 (ko) 당구게임 교육 시스템과 교육 제어방법
KR20190010468A (ko) 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램
US20160314620A1 (en) Virtual reality sports training systems and methods
US20140078137A1 (en) Augmented reality system indexed in three dimensions
US11865429B2 (en) Smart soccer goal
US20210170230A1 (en) Systems and methods for training players in a sports contest using artificial intelligence
EP3251732A1 (en) Server and dart game device for providing dart game in accordance with hitting area on basis of location of dart pin, and computer program
US20230285832A1 (en) Automatic ball machine apparatus utilizing player identification and player tracking
KR102466526B1 (ko) 경기 영상에 대한 이벤트의 태깅을 위한 전자 장치 및 그의 동작 방법
EP3009173B1 (en) Assisted-training system and method for billiards
KR101031424B1 (ko) 가상 골프 시뮬레이션 방법과 이를 이용하는 가상 골프 시뮬레이션 장치 및 시스템
KR102723572B1 (ko) 프로젝터 및 로봇팔을 이용하여 반복적인 당구 훈련을 제공하는 당구 훈련 장치, 방법 및 컴퓨터 프로그램
KR102095647B1 (ko) 스마트기기를 이용한 동작 비교장치 및 동작 비교장치를 통한 댄스 비교방법
KR101247794B1 (ko) 골프 레슨을 제공하는 가상 골프 시뮬레이션 장치 및 그 방법
KR102287721B1 (ko) 단말기를 이용한 당구 교습 방법 및 컴퓨터 판독 가능한 기록매체
KR20110116783A (ko) 당구 시뮬레이션 서비스 시스템 및 방법
US20240252917A1 (en) Player monitoring systems and methods for efficiently processing sensor data
US20240115919A1 (en) Systems and methods for football training
CN116011212A (zh) 战术模拟方法、战术模拟装置、存储介质及电子设备
KR20230070090A (ko) 퍼팅 가이드 시스템 제공방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right