KR20190038730A - Apparatus, method and computer for controlling a virtual cricket game - Google Patents

Apparatus, method and computer for controlling a virtual cricket game Download PDF

Info

Publication number
KR20190038730A
KR20190038730A KR1020170128292A KR20170128292A KR20190038730A KR 20190038730 A KR20190038730 A KR 20190038730A KR 1020170128292 A KR1020170128292 A KR 1020170128292A KR 20170128292 A KR20170128292 A KR 20170128292A KR 20190038730 A KR20190038730 A KR 20190038730A
Authority
KR
South Korea
Prior art keywords
ball
motion
pattern
movement
data
Prior art date
Application number
KR1020170128292A
Other languages
Korean (ko)
Other versions
KR101977964B1 (en
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 주식회사 파이브브릭스
Priority to KR1020170128292A priority Critical patent/KR101977964B1/en
Priority to PCT/KR2017/014658 priority patent/WO2019059458A1/en
Publication of KR20190038730A publication Critical patent/KR20190038730A/en
Application granted granted Critical
Publication of KR101977964B1 publication Critical patent/KR101977964B1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0087Electric or electronic controls for exercising apparatus of groups A63B21/00 - A63B23/00, e.g. controlling load
    • 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
    • A63B69/40Stationarily-arranged devices for projecting balls or other bodies
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B71/0622Visual, audio or audio-visual systems for entertaining, instructing or motivating the user
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2102/00Application of clubs, bats, rackets or the like to the sporting activity ; particular sports involving the use of balls and clubs, bats, rackets, or the like
    • A63B2102/20Cricket
    • 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/83Special sensors, transducers or devices therefor characterised by the position of the sensor
    • A63B2220/833Sensors arranged on the exercise apparatus or sports implement
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/50Wireless data transmission, e.g. by radio transmitters or telemetry

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Disclosed is a control method of a virtual cricket match, comprising: a step in which a controller receives data for one or more objects in a predetermined area through a sensing device; a step in which the controller switches the received data to an initial motion pattern based on information on motions; a step in which the controller comprehensively determines the motion pattern, environmental information, whether to collide with objects, whether to contact with objects and the like, and divides and generates a first motion pattern in a predetermined area; a step in which the controller expands motions of a ball in external areas based on the motion pattern and the first motion pattern, and divides and generates an expanded second motion pattern in the external area by considering predetermined place information; and a step in which the controller generates virtual match progress information according to the first motion pattern and the second motion pattern. According to one embodiment of the present invention, a sensing device and method may infer 3D movement of a moving ball based on sensing data obtained through a sensor unit.

Description

가상의 크리켓 경기를 제어하는 제어 장치, 제어 방법 및 컴퓨터 프로그램{APPARATUS, METHOD AND COMPUTER FOR CONTROLLING A VIRTUAL CRICKET GAME}TECHNICAL FIELD [0001] The present invention relates to a control device, a control method, and a computer program for controlling a virtual cricket game,

본 발명의 실시예는 소정의 구역에서 움직이는 공의 움직임을 센싱하고, 센싱된 데이터 및 기 설정된 가상 객체들을 고려하여 상기 구역을 초과하여 설정된 가상의 외부 구역에서 가상의 크리켓 경기에 대한 출력 데이터를 생성하여 제공하는 제어 장치, 제어 방법, 및 컴퓨터 프로그램에 관한 것이다. Embodiments of the present invention provide a method and system for sensing movement of a moving ball in a predetermined area and generating output data for a virtual cricket game in a virtual outer zone set above the zone in consideration of sensed data and predetermined virtual objects A control method, and a computer program.

넓은 크리켓 경기장에서 실제 플레이를 하기 어려운 한계를 극복하고 좁은 실내 공간에서도 크리켓 경기의 현장감을 느끼면서 가상으로 크리켓 플레이를 할 수 있도록 하는 스크린 크리켓 시스템이 등장하게 되었다. A screen cricket system has emerged that allows players to overcome limitations that are difficult to play in a wide cricket stadium and to experience cricket play in a small indoor space.

피칭 머신을 이용한 스크린 스포츠 시스템에 관한 기술은 특허출원 제10-2001-7011084호, 특허출원 제10-2014-0058124호, 특허출원 제10-2009-0063347호, 특허출원 제10-2010-0079368호, 특허출원 특1990-7002659호, 일본공개특허공보 특개평09-276467호, 특허출원 특1994-0023057호 등 상당히 많은 선행기술문헌에서 개시하고 있다. Techniques relating to a screen sports system using a pitching machine are disclosed in Patent Application No. 10-2001-7011084, Patent Application No. 10-2014-0058124, Patent Application No. 10-2009-0063347, Patent Application No. 10-2010-0079368 , Patent Application Publication Nos. 1990-7002659, 09-276467, and 1994-0023057, which are incorporated herein by reference.

본 발명은 실제로 존재하는 구역 및 상기 구역을 확장시키는 가상의 외부 구역을 설정하고, 실제 움직이는 공의 움직임을 실제 구역 뿐만 아니라 가사으이 외부 구역에서도 표현하도록 제어하는 가상의 크리켓 경기를 제어하는 제어 장치, 제어 방법 및 컴퓨터 프로그램을 제공하기 위한 것이다. The present invention relates to a control device for controlling a virtual cricket game in which a real existence zone and a virtual outer zone for expanding the zone are set and the movement of the actually moving ball is controlled not only in the actual zone but also in the outer zone, A control method and a computer program.

본 발명의 실시예에 따른 가상의 크리켓 경기를 제어하는 방법은 제어 장치가 센싱 장치를 통해 소정의 구역 내의 하나 이상의 객체에 대한 데이터를 수신하는 단계; 상기 제어 장치가 상기 수신된 데이터를 움직임에 대한 정보를 기초로 최초 움직임 패턴으로 변환하는 단계; 상기 제어 장치가 상기 움직임 패턴 및 환경 정보 및 객체와의 충돌 여부, 접촉 여부 등을 종합적으로 판단하여 소정의 구역 내의 제1 움직임 패턴으로 분할하여 생성하는 단계; 상기 제어 장치가 상기 움직임 패턴 및 상기 제1 움직임 패턴을 기초로 외부 구역에서의 상기 공의 움직임을 확장하되, 기 설정된 장소 정보 등을 고려하여, 상기 외부 구역에서의 확장된 제2 움직임 패턴으로 분할하여 생성하는 단계; 및 상기 제어 장치가 상기 제1 움직임 패턴 및 제2 움직임 패턴에 따른 가상 경기 진행 정보를 생성하는 단계;를 포함할 수 있다. A method for controlling a virtual cricket game according to an embodiment of the present invention includes: a step in which a control device receives data for one or more objects in a predetermined zone via a sensing device; Converting the received data into an initial movement pattern based on information on movement; The control device comprehensively determining whether or not the movement pattern, the environment information, and the object are in conflict with each other, dividing the first movement pattern into a first movement pattern in a predetermined area, and creating the divided first movement pattern; The control device extends the movement of the ball in the outer zone on the basis of the movement pattern and the first movement pattern and divides the ball into an extended second movement pattern in the outer zone in consideration of predetermined place information, ; And generating virtual game progress information according to the first movement pattern and the second movement pattern by the controller.

상기 제1 움직임 패턴으로 분할하여 생성하는 단계는 상기 움직임 패턴에 대해서 기 설정된 환경 정보 및 센싱된 객체와의 접촉 여부를 종합적으로 판단하고, 상기 환경 정보 및 상기 객체와의 접촉 여부및 움직임 패턴을 고려하여 구역 내에서의 움직이는 공에 대한 제1 움직임 패턴을 생성하는 점을 특징으로 할 수 있다. The step of dividing and generating the first motion pattern may include a step of comprehensively determining whether or not to contact the environment information and the sensed object with respect to the movement pattern, and considering the environment information, the contact with the object, Thereby creating a first movement pattern for moving balls in the area.

상기 제2 움직임 패턴으로 분할하여 생성하는 단계는 상기 움직임 패턴에 대해서, 설정된 장소 정보를 기초로 상기 구역 내에서의 제1 움직임 패턴과 연속되며, 상기 구역을 벗어나서 3차원으로 존재하는 외부 구역 상에서의 제2 움직임 패턴을 생성하는 점을 특징으로 할 수 있다. Wherein the step of dividing and generating the second movement pattern includes a step of generating a motion pattern in which the motion pattern is continuous with the first movement pattern in the zone based on the set place information, And a second motion pattern is generated.

상기 진행 정보를 생성하는 단계는 상기 공이 사용자에 의해 제어되어, 사용자의 의도된 움직임을 가지는 타격 장치와의 충돌 여부를 판단하는 단계를 포함하는 점을 특징으로 할 수 있다. The step of generating the progress information may include the step of determining whether the ball is collided with the striking device having the intended movement of the user controlled by the user.

본 실시예에 따르면, 상기 공이 타격 장치와 충돌한 것으로 판단된 경우, 상기 제2 움직임 패턴을 기초로 상기 공의 이동 거리 또는 이동 시간을 산출하고, 상기 제2 움직임 패턴 상에서 가상의 객체와의 관계를 예측하고, 상기 이동 거리 및 상기 가상의 객체와의 관계를 종합적으로 판단하여, 획득된 점수를 결정하는 단계;를 더 포함할 수 있다. According to the present embodiment, when it is determined that the ball has collided with the striking device, the movement distance or movement time of the ball is calculated on the basis of the second movement pattern, and the relationship with the virtual object on the second movement pattern And determining a score obtained by comprehensively determining a relationship between the movement distance and the virtual object.

본 실시예에 따르면, 상기 제1 움직임 패턴 및 상기 제2 움직임 패턴에 따라 움직이는 공이 기 설정된 위켓 장치과 충돌한 것으로 판단된 경우, 상기 진행 정보를 생성하는 단계는 상기 구역 내에 존재하는 출력 장치들을 통해 임팩트를 가지는 출력 데이터를 출력 시키는 단계를 더 포함할 수 있다. According to the present embodiment, when it is determined that a ball moving according to the first movement pattern and the second movement pattern has collided with a predetermined widget device, the step of generating progress information includes: And outputting the output data.

본 발명의 실시예에 따른 가상의 크리켓 경기를 제어하는 장치는 센싱 장치를 통해 소정의 구역 내의 하나 이상의 객체에 대한 데이터를 수신하고, 상기 제어 장치가 상기 수신된 데이터를 움직임에 대한 정보를 기초로 최초 움직임 패턴으로 변환하는 변환부; 상기 움직임 패턴 및 환경 정보 및 객체와의 충돌 여부, 접촉 여부 등을 종합적으로 판단하여 소정의 구역 내의 제1 움직임 패턴으로 분할하여 생성하는 제1 움직임 패턴 생성부; 상기 움직임 패턴 및 상기 제1 움직임 패턴을 기초로 외부 구역에서의 상기 공의 움직임을 확장하되, 기 설정된 장소 정보 등을 고려하여, 상기 외부 구역에서의 확장된 제2 움직임 패턴으로 분할하여 생성하는 제2 움직임 패턴 생성부; 및 상기 제1 움직임 패턴 및 제2 움직임 패턴에 따른 가상 경기 진행 정보를 생성하는 진행 정보 생성부;를 포함할 수 있다. An apparatus for controlling a virtual cricket game according to an exemplary embodiment of the present invention receives data for at least one object in a predetermined area through a sensing device, and the control device determines, based on information about movement of the received data A conversion unit for converting the first motion pattern into a first motion pattern; A first motion pattern generating unit for generating a first motion pattern by dividing the motion pattern and the environment information into a first motion pattern within a predetermined region by comprehensively determining whether the object collides with the environment, A second motion pattern generating unit for dividing the motion of the ball in an outer zone based on the motion pattern and the first motion pattern into an extended second motion pattern in the outer zone, 2 movement pattern generation unit; And a progress information generation unit for generating virtual progress information according to the first movement pattern and the second movement pattern.

상기 제1 움직임 패턴 생성부는 상기 움직임 패턴에 대해서 기 설정된 환경 정보 및 센싱된 객체와의 접촉 여부를 종합적으로 판단하고, 상기 환경 정보 및 상기 객체와의 접촉 여부및 움직임 패턴을 고려하여 구역 내에서의 움직이는 공에 대한 제1 움직임 패턴을 생성하는 점을 특징으로 할 수 있다. The first motion pattern generator comprehensively determines whether or not the motion pattern is in contact with predetermined environment information and the sensed object, and determines whether or not the motion pattern is in contact with the object, And generating a first movement pattern for the moving ball.

상기 제2 움직임 패턴 생성부는 상기 움직임 패턴에 대해서, 설정된 장소 정보를 기초로 상기 구역 내에서의 제1 움직임 패턴과 연속되며, 상기 구역을 벗어나서 3차원으로 존재하는 외부 구역 상에서의 제2 움직임 패턴을 생성하는 점을 특징으로 할 수 있다. The second movement pattern generation unit may generate a second movement pattern on the outer zone that is continuous with the first movement pattern in the zone on the basis of the set place information with respect to the movement pattern, And the like.

상기 진행 정보를 생성하는 단계는 상기 공이 사용자에 의해 제어되어, 사용자의 의도된 움직임을 가지는 타격 장치와의 충돌 여부를 판단하는 단계를 포함하는 점을 특징으로 할 수 있다. The step of generating the progress information may include the step of determining whether the ball is collided with the striking device having the intended movement of the user controlled by the user.

상기 공이 타격 장치와 충돌한 것으로 판단된 경우, 상기 진행 정보 생성부는 상기 제2 움직임 패턴을 기초로 상기 공의 이동 거리 또는 이동 시간을 산출하고, 상기 제2 움직임 패턴 상에서 가상의 객체와의 관계를 예측하고, 상기 이동 거리 및 상기 가상의 객체와의 관계를 종합적으로 판단하여, 획득된 점수를 결정하는 점을 특징으로 할 수 있다. The progress information generating unit may calculate the movement distance or the movement time of the ball based on the second movement pattern when the ball is determined to have collided with the striking device, And determines the obtained score by comprehensively determining the relationship between the movement distance and the virtual object.

상기 제1 움직임 패턴 및 상기 제2 움직임 패턴에 따라 움직이는 공이 기 설정된 위켓 장치과 충돌한 것으로 판단된 경우, 상기 진행 정보 생성부는 상기 구역 내에 존재하는 출력 장치들을 통해 임팩트를 가지는 출력 데이터를 출력 시키는 점을 특징으로 할 수 있다. When it is determined that the ball moving according to the first movement pattern and the second movement pattern has collided with a predetermined widget device, the progress information generation unit outputs output data having an impact through the output devices existing in the zone .

본 발명의 실시예에 따른 컴퓨터 프로그램은 컴퓨터를 이용하여 본 발명의 실시예에 따른 가상의 크리켓 경기를 제어하는 방법 중 어느 하나의 방법을 실행시키기 위하여 매체에 저장될 수 있다. The computer program according to an embodiment of the present invention may be stored in a medium for executing any one of the methods for controlling a virtual cricket game according to an embodiment of the present invention using a computer.

이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공된다. In addition to this, another method for implementing the present invention, another system, and a computer-readable recording medium for recording a computer program for executing the method are further provided.

전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해 질 것이다. Other aspects, features, and advantages other than those described above will become apparent from the following drawings, claims, and the detailed description of the invention.

본 발명의 실시예에 따른 센싱 장치 및 방법은 센서부를 통해 획득된 센싱 데이터를 기초로 운동하는 볼의 3차원 움직임을 추론할 수 있다. The sensing apparatus and method according to the embodiment of the present invention can deduce the three-dimensional motion of the ball moving based on the sensing data obtained through the sensor unit.

본 발명의 실시예에 따른 가상의 크리켓 경기를 제어하는 제어 장치, 제어 방법 및 컴퓨터 프로그램은 실제로 존재하는 구역 및 상기 구역을 확장시키는 가상의 외부 구역을 설정하고, 실제 움직이는 공의 움직임을 실제 구역 뿐만 아니라 가상의 외부 구역에서도 표현하도록 제어하는 가상의 크리켓 경기를 제어하는 제어 장치, 제어 방법 및 컴퓨터 프로그램을 제공하기 위한 것이다. A control device, a control method, and a computer program for controlling a virtual cricket game according to an embodiment of the present invention sets a real existing zone and a virtual outer zone that extends the zone, A control method, and a computer program for controlling a virtual cricket game in which the virtual cricket game is controlled so as to be expressed even in a virtual outer zone.

도 1은 본 발명의 실시예에 따른 시뮬레이션 시스템의 구조를 나타내는 블록도이다.
도 2는 본 발명의 실시예에 따른 제어 장치의 구조를 나타내는 블록도이다.
도 3은 경기흐름 제어부의 구조를 나타내는 블록도이다.
도 4 내지 도 6은 정해진 구역 내에서의 상황에 따른 제어 장치의 동작을 설명하기 위한 도면이다.
도 7a 및 도 7b는 시뮬레이션 시스템에 의해 설정된 구역 및 외부 구역의 측면도, 사시도 이다.
도 8은 본 발명의 실시예들에 따른 운동하는 볼에 대한 센싱 장치의 구조를 나타내는 블록도이다.
도 9는 움직임 추론부의 구조를 나타내는 블록도이다.
도 10은 경기 흐름 제어부의 구조를 나타내는 블록도이다.
도 11는 처리부의 구조를 나타내는 블록도이다.
도 12은 본 발명의 실시예에 따른 시뮬레이션 시스템의 구조를 나타내는 블록도이다.
도 13 내지 도 14은 본 발명의 실시예들에 따른 동작 방법의 흐름도들이다.
1 is a block diagram showing the structure of a simulation system according to an embodiment of the present invention.
2 is a block diagram showing the structure of a control apparatus according to an embodiment of the present invention.
3 is a block diagram showing a structure of a competition flow control unit.
FIGS. 4 to 6 are views for explaining the operation of the control device according to a situation in a predetermined area.
7A and 7B are side and perspective views of the zone and the outer zone set by the simulation system.
8 is a block diagram illustrating the structure of a sensing device for a moving ball according to embodiments of the present invention.
9 is a block diagram showing a structure of a motion speculative part.
10 is a block diagram showing the structure of a competition flow control unit.
11 is a block diagram showing the structure of the processing section.
12 is a block diagram showing a structure of a simulation system according to an embodiment of the present invention.
13 to 14 are flowcharts of an operation method according to embodiments of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description. The effects and features of the present invention and methods of achieving them will be apparent with reference to the embodiments described in detail below with reference to the drawings. However, the present invention is not limited to the embodiments described below, but may be implemented in various forms.

본 명세서에 따르면, 시뮬레이션 시스템은 소정의 크기의 실내 공간에서 사용자에 의해 피칭된 볼이나, 사용자에 의해 타격된 볼의 움직임을 센싱하여 그 센싱 결과에 기초하여 아웃 여부, 점수 획득 여부의 판정과 출력 장치 상에 타격된 볼의 궤적에 대한 시뮬레이션 영상을 구현한다. 시뮬레이션 영상은 가상의 경기장에 대한 영상, 선수와 심판, 관객에 대한 영상 등의 백그라운드 영상을 360도로 제공할 수 있다. 또한, 시뮬레이션 영상은 하나 이상의 사용자들의 크리켓 능력치를 고려하여 가상의 객체의 능력 레벨을 설정할 수 있다. According to the present specification, the simulation system senses the motion of a ball pitched by a user or a ball struck by a user in an indoor space of a predetermined size, and determines whether or not the ball is out, And implements a simulation image of the trajectory of the hit ball on the apparatus. The simulation image can provide 360 degrees of background images such as images of a virtual arena, images of players and judges, and images of the audience. In addition, the simulation image can set the capability level of a virtual object in consideration of the cricket abilities of one or more users.

본 명세서에 따르면, 시뮬레이션 시스템은 운동하는 볼 및 경기 참가자의 움직임에 따른 경기 결과를 생성하고, 경기 결과를 반영한 사용자 인터페이스를 제공할 수 있다. According to the present specification, the simulation system can generate a game result according to the movement of the ball and the player participating in the exercise, and can provide a user interface reflecting the game result.

본 명세서에 따르면, 시뮬레이션 시스템은 정해진 구역 내의 다른 컴퓨팅 장치 또는 사용자에 의해 지정된 컴퓨팅 장치와 데이터를 공유할 수 있다. 구체적으로, 시뮬레이션 시스템은 다른 컴퓨팅 장치로 경기 결과에 따른 사용자 인터페이스를 제공할 수 있다. 시뮬레이션 시스템은 소정의 컴퓨팅 장치 그룹과 경기 결과를 공유할 수 있다. 시뮬레이션 시스템은 소정의 이벤트에 따라 소정의 알림을 컴퓨팅 장치로 제공할 수 있다. 경기 결과 등의 데이터를 수신하는 컴퓨팅 장치는 시뮬레이션 시스템에 접속하여 별도의 인증 절차의 과정을 수행해야 한다. 본 명세서에 따르면, 센싱 장치는 운동하는 볼의 움직임을 센싱하여 제어 장치로 제공할 수 있다. 센싱 장치는 정해진 하나의 방향으로 정해진 영역을 촬영할 수 있다. 센싱 장치는 촬영된 화상 프레임을 분석하여, 운동하는 볼의 3차원 움직임을 추론할 수 있다. 본 명세서에 따르면, 운동하는 볼의 3차원 움직임을 포함하도록 생성된 크리켓 시뮬레이션 영상이 제공될 수 있다. According to the present specification, the simulation system may share data with other computing devices within a given area or with a computing device designated by the user. Specifically, the simulation system can provide a user interface according to the result of the competition to another computing device. The simulation system may share a game result with a predetermined computing device group. The simulation system may provide a predetermined notification to the computing device according to a predetermined event. A computing device that receives data such as a game result must access the simulation system and perform a separate authentication procedure. According to the present specification, the sensing device can sense the movement of a moving ball and provide it to the control device. The sensing device can photograph a predetermined region in one predetermined direction. The sensing device analyzes the photographed image frame to deduce the three-dimensional motion of the moving ball. According to the present specification, a cricket simulation image generated to include a three-dimensional motion of a moving ball can be provided.

시뮬레이션 시스템은 위켓 장치를 더 포함할 수 있다. The simulation system may further include a widget device.

본 명세서에서, 컴퓨팅 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다.In this specification, a computing device may be, for example, a smartphone, a tablet personal computer, a mobile phone, a video phone, an e-book reader, a desktop A laptop computer, a netbook computer, a workstation, a server, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, a mobile medical device, a camera, And a wearable device.

도 1은 본 발명의 실시예에 따른 시뮬레이션 시스템의 구조를 나타내는 블록도이다. 1 is a block diagram showing the structure of a simulation system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 시뮬레이션 시스템은 센싱 장치(100) 및 제어 장치(200)를 포함할 수 있다. As shown in FIG. 1, the simulation system may include a sensing device 100 and a control device 200.

센싱 장치(100)는 주변 환경을 센싱하는 기능을 수행한다. 센싱 장치(100)는 센싱 데이터를 제어 장치로 전달하는 기능을 수행한다. 센싱 장치(100)는 통신망을 통해 제어 장치와 통신할 수 있다. The sensing device 100 performs a function of sensing a surrounding environment. The sensing device 100 performs a function of transmitting sensing data to the control device. The sensing device 100 can communicate with the control device through a communication network.

제어 장치(200)는 센싱된 데이터를 이용하여 가상의 크리켓 경기를 위한 제어 데이터를 생성한다. 제어 장치(200)는 사용자, 가상의 객체, 실제 객체 등을 센싱한 데이터를 이용하여 사용자에게 가상의 크리켓 경기를 즐길 수 있게 한다. 제어 장치(200)는 가상의 크리켓 경기를 위한 제어 데이터를 하나 이상의 출력 장치로 전달될 수 있다. 또한, 가상의 크리켓 경기를 위한 제어 데이터는 출력 장치를 포함한 전자 기기로 전달 될 수 있다. 가상의 크리켓 경기를 위한 제어 데이터는 피칭되는 공, 공에 대한 배트의 움직임, 사용자의 움직임, 위켓 장치와의 충돌 여부 등을 기초로 사용자가 실제 크리켓 경기를 하는 듯한 느낌을 가지도록 구현되며, 실제 경기 느낌을 주기 위해 시각적, 청각적, 촉각적으로 자극을 주는 장치들과 연동될 수 있다. 제어 장치(200)는 센싱된 데이터 뿐만 아니라, 센싱된 데이터를 기초로 추론된 데이터를 이용하여 가상의 크리켓 경기를 위한 제어 데이터를 생성할 수 있다. 특히, 제어 장치(200)는 실제 정해진 구역 내에서의 공의 움직임 패턴 뿐만 아니라 구역을 벗어나는 외부 구역에서의 공의 움직임 패턴을 이용하여 가상의 크리켓 경기를 위한 제어 데이터를 생성할 수 있다. The control device 200 generates control data for a virtual cricket game using the sensed data. The control device 200 allows the user to enjoy a virtual cricket game using data that senses a user, a virtual object, an actual object, and the like. The control device 200 can be transferred to one or more output devices for control data for a virtual cricket game. Further, control data for a virtual cricket game may be transmitted to an electronic device including an output device. The control data for a virtual cricket game is implemented such that the user feels like playing a cricket game based on the ball to be pitched, the movement of the bat to the ball, the movement of the user, the collision with the widget device, It can be interlocked with visual, auditory, and tactile stimuli to give a sense of game. The control device 200 can generate control data for a virtual cricket game using not only the sensed data but also data deduced based on the sensed data. In particular, the control device 200 may generate control data for a virtual cricket game using not only the ball movement pattern in the actual predetermined area but also the ball movement pattern in the outer zone beyond the zone.

본 발명의 실시예들에 따른 시뮬레이션 시스템은 정해진 구역 내의 실제 객체 및 가상 객체를 고려하여 피칭된 공의 움직임 패턴을 산출, 추론하고, 상기 공의 움직임 패턴을 이용하여 사용자에게 크리켓 경기를 진행하는 느낌을 줄 수 있다. The simulation system according to the embodiments of the present invention calculates and estimates a motion pattern of a pitch in consideration of actual objects and virtual objects in a predetermined area, and estimates the motion pattern of the ball using a motion pattern of the ball to perform a cricket game .

도 2는 본 발명의 실시예에 따른 제어 장치(200)의 구조를 나타내는 블록도이다. 2 is a block diagram showing a structure of a control apparatus 200 according to an embodiment of the present invention.

제어 장치(200)는 피칭 장치 제어부(210), 경기 흐름 제어부(220), 센싱 장치 제어부(230), 출력 제어부(240), 저장부(250), 통신부(260)를 포함할 수 있다. 제어 장치(200)는 센싱 장치(100), 출력 장치(300), 및 피칭 장치(500)의 동작을 제어하는 제어 데이터를 생성하여 전송할 수 있다. 제어 장치(200)는 센싱 장치(100)의 센싱 데이터 획득과 관련된 제어 데이터를, 센싱 장치(100)로부터의 데이터 수집을 위한 제어 데이터를, 피칭 장치(500)를 통해 볼을 발사시키는 볼 발사 신호, 출력 장치(300)를 통해 출력 데이터를 출력하는 제어 데이터를 생성할 수 있다. 제어 장치(200)는 생성된 데이터를 통신부(260)를 통해 각 장치로 전달할 수 있다. 제어 장치(200)는 센싱 장치(100), 출력 장치(300), 피칭 장치(500)와 전기적으로 연결되거나 네트워크를 통해 연결될 수 있다. The control device 200 may include a pitching device controller 210, a competition flow controller 220, a sensing device controller 230, an output controller 240, a storage 250, and a communication unit 260. The control device 200 can generate and transmit control data for controlling the operation of the sensing device 100, the output device 300, and the pitching device 500. [ The control device 200 controls the control data relating to the sensing data acquisition of the sensing device 100 to control data for collecting data from the sensing device 100 in the form of a ball firing signal , And can generate control data for outputting output data through the output device 300. [ The control device 200 can transmit the generated data to each device through the communication unit 260. The control device 200 may be electrically connected to the sensing device 100, the output device 300, and the pitching device 500 or may be connected via a network.

제어 장치(200)는 모드 별로 다르게 동작되도록 설계 될 수 있다. 제어 장치에 의해 제공되는 모드는 타자 모드, 투수 모드, 고정 타격 모드 중 하나 일 수 있다. 타자 모드는 가상의 피쳐 및 타자인 사용자 사이의 가상 경기를 제공하는 모드이다. 투수 모드는 피쳐인 사용자 및 가상의 타자 사이의 가상 경기를 제공하는 모드이다. 고정 타격 모드는 타자인 사용자에 의해 정해진 위치에 고정된 볼을 타격시키는 모드이다. The control device 200 may be designed to operate differently for each mode. The mode provided by the control device may be one of a batter mode, a pitcher mode, and a fixed batting mode. The batter mode is a mode for providing a virtual game between a user who is a virtual feature and a batter. The pitcher mode is a mode for providing a virtual game between a user who is a feature and a virtual batter. The fixed hitting mode is a mode for striking a ball fixed at a position determined by the other user.

제어 장치(200)는 타자 모드로 설정된 경우, 피칭 장치에 의해 볼이 피칭되도록 제어할 수 있다. 이때, 타자 이외의 사용자를 등록 시키는 기능을 제공하기도 한다. 타자 이외의 사용자는 수비수로 등록되며, 사용자와 대응되는 가상의 객체가 생성될 수 있다. 가상의 객체는 각각 고정된 위치에서 수비하도록 설정되어 시뮬레이션 영상에 포함될 수 있다. 가상의 객체는 대응되는 사용자의 경기 레벨을 가지도록 설정될 수 있다. 수비수의 경기 레벨은 사용자에 의해 이루어진 누적된 경기로부터 추출된 수비 범위, 반응 속도 등을 포함할 수 있다. 제어 장치(200)는 투수 모드로 설정된 경우, 피칭 장치에 의해 볼이 피칭되지 않도록 하며, 사용자로부터의 볼 피칭 행위를 센싱하도록 제어한다. 투수 모드에서, 사용자는 투수로 설정되고, 가상의 객체 또는 다른 사용자와 대응되는 가상의 객체가 타자로 설정될 수 있다. 이때, 다른 사용자와 대응되는 가상의 객체는 다른 사용자의 경기 레벨을 가지도록 설정될 수 있다. 타자의 경기 레벨은 사용자에 의해 이루어진 누적된 경기로부터 추출된 배트 스피드, 타점 능력 등을 포함할 수 있다. When the control device 200 is set in the batter mode, the control device 200 can control the pitching by the pitching device. At this time, a function of registering a user other than the other may be provided. A user other than the batter is registered as a defender, and a virtual object corresponding to the user can be created. Each virtual object is set to defend at a fixed position and can be included in the simulation image. The virtual object may be set to have a match level of the corresponding user. The game level of the defender may include a defensive range extracted from the accumulated game performed by the user, a reaction rate, and the like. When the control device 200 is set to the water-permeable mode, the ball is not pitched by the pitching device, and controls to sense the ball pitching action from the user. In the pitcher mode, the user is set as a pitcher, and a hypothetical object corresponding to a virtual object or another user can be set as a batter. At this time, the virtual object corresponding to the other user can be set to have the competition level of the other user. The batter's game level may include bat speed, batting ability, etc. extracted from the accumulated game made by the user.

제어 장치(200)는 고정 타격 모드로 설정된 경우, 고정된 위치로 볼을 운반되도록 제어하는 이동체를 제어할 수 있다. 제어 장치(200)는 고정된 위치에 놓인 볼에 대한 타격이 센싱되면, 이에 따라 타격에 따른 득점 여부, 득점 등을 산출할 수 있다. 제어 장치(200)는 타격에 따른 득점 여부, 득점 등을 종합한 스코어를 관리할 수 있다. When the control device 200 is set in the fixed striking mode, the control device 200 can control a moving body that controls the ball to be transported to a fixed position. The control device 200 can calculate a score, a score, and the like according to the hit when the hit on the ball placed at a fixed position is sensed. The control device 200 can manage a score that is a combination of score, score, etc. according to the hit.

피칭 장치 제어부(210)는 피칭 장치의 동작을 제어하는 제어 데이터를 생성한다. 피칭 장치 제어부(210)는 사용자에 의해 프로그램된 움직임을 가지도록 볼을 피칭시키는 제어 데이터를 생성한다. 피칭 장치 제어부(210)는 소정의 알고리즘에 따라 다양한 움직임을 가지도록 볼을 피칭시키는 제어 데이터를 생성한다. 피칭 장치 제어부(210)는 사용자가 의도하지 않는 다양한 움직임을 가지도록 피칭 장치를 제어한다. 피칭 장치 제어부(210)는 볼 발사 신호를 생성하여 피칭 장치(500)로 전달하도록 구현된다. 피칭 장치 제어부(210)는 타격 또는 피칭하는 사용자의 경기 레벨을 고려하여 볼 발사 시나리오를 생성하고, 볼 발사 시나리오에 따라 피칭되도록 피칭 장치(500)로 볼 발사 신호의 세트를 전달할 수 있다. 예를 들어, 사용자의 경기 레벨의 높고 낮음을 고려하거나, 사용자의 약점 또는 강점을 고려하여 볼 발사 시나리오를 생성할 수도 있다. 볼 발사 시나리오는 사용자 별로 구분되기도 하지만 평균적인 사용자의 경기 레벨을 고려하여 생성될 수도 있다. The pitching device control unit 210 generates control data for controlling the operation of the pitching device. The pitching device control unit 210 generates control data for pitching the ball so as to have a motion programmed by the user. The pitching device control unit 210 generates control data for pitching the ball so as to have various motions according to a predetermined algorithm. The pitching device control unit 210 controls the pitching device to have various motions that the user does not intend. The pitching device control unit 210 is configured to generate a ball launch signal and transmit it to the pitching device 500. The pitching device control 210 may generate a ball shooting scenario taking into account the game level of the user who is hitting or pitching and may transmit a set of ball shot signals to the pitching device 500 to be pitched according to the ball shooting scenario. For example, consideration may be given to the high or low level of the user's game, or the ball shot scenario may be generated in consideration of the weakness or strength of the user. The ball shooting scenario may be divided into users, but may be generated considering the average user's game level.

경기 흐름 제어부(220)는 센싱 데이터 및 기 설정된 크리켓 경기 규칙에 기초하여 가상 크리켓 경기의 경기 흐름을 생성할 수 있다. 경기 흐름 제어부(220)는 모드 별로 구분하여 경기 흐름과 관련된 경기 상황 데이터 및/또는 경기 흐름을 위한 제어 데이터를 생성한다. 경기 흐름을 위한 제어 데이터는 센싱 장치(100), 피칭 장치(500)의 제어와도 관련될 수 있다. 경기 흐름 제어부(220)는 센싱 데이터에 포함된 볼의 움직임 및 사용자의 움직임에 따른 점수 획득 여부, 게임 종료 여부 등을 판단할 수 있다. 점수 획득 여부 및/또는 게임 종료 여부 등은 기 설정된 크리켓 경기 규칙에 따른다. The game flow control unit 220 may generate the game flow of the virtual cricket game based on the sensing data and predetermined cricket game rules. The game flow control unit 220 generates game data and / or control data for the game according to the mode. The control data for the game flow may also be related to the control of the sensing device 100, the pitching device 500. The game flow control unit 220 may determine whether the ball included in the sensing data, whether to acquire a score according to the user's movement, whether the game has ended, and the like. Whether points are earned and / or whether the game ends are subject to predetermined cricket rules.

센싱 장치 제어부(230)는 센싱 장치를 제어하는 기능을 수행한다. 센싱 장치 제어부(230)는 센싱 장치의 센싱 여부, 센싱 방향(촬영 방향), 센싱 간격(프레임 레이트), 센싱 횟수 등을 조절하는 제어 데이터를 생성할 수 있다. 센싱 장치 제어부(230)는 모드 별로 다른 이벤트를 센싱하도록 제어할 수 있다. The sensing device control unit 230 performs a function of controlling the sensing device. The sensing device control unit 230 may generate control data for controlling the sensing device, the sensing direction (photographing direction), the sensing interval (frame rate), the number of sensing times, and the like. The sensing device control unit 230 can control to sense other events in each mode.

출력 제어부(240)는 센싱 장치로부터의 동영상, 가상의 객체, 및/또는 경기 상황 데이터를 고려한 시뮬레이션 영상을 결합시킨 동영상을 출력하도록 제어한다. 출력 제어부(240)는 운동하는 볼의 3차원 움직임과 대응되는 컨텐츠, 사용자와 대응되는 컨텐츠 및 가상 위켓과 대응되는 컨텐츠를 출력하도록 제어한다. 운동하는 볼의 3차원 움직임과 대응되는 컨텐츠는 운동하는 볼의 이동 속도 및 이동 방향에 따라서 다양하게 변경될 수 있다. 출력 제어부(240)는 생성된 하나 이상의 컨텐츠에 경기 흐름과 관련된 컨텐츠를 추가로 덧붙일 수 있다. The output control unit 240 controls to output a moving image obtained by combining a moving image from the sensing device, a virtual object, and / or a simulation image considering the competition situation data. The output controller 240 controls the content corresponding to the three-dimensional movement of the ball to be moved, the content corresponding to the user, and the content corresponding to the virtual widget. The content corresponding to the three-dimensional movement of the moving ball may be variously changed according to the moving speed and moving direction of the moving ball. The output control unit 240 may additionally add content related to the game flow to the generated one or more contents.

출력 제어부(240)는 경기 상황 데이터와 대응되는 시각적 컨텐츠를 출력 장치를 통해 제공하도록 제어한다. 경기 상황 데이터는 사용자가 획득한 점수, 피칭되어 사용자에게 도달하는 공의 움직임, 사용자의 공격 종료 여부 등을 포함할 수 있다. The output control unit 240 controls the output device to provide the visual content corresponding to the competition situation data. The game situation data may include a score obtained by a user, a movement of a ball reached to a user who is pitched, whether or not the user has finished an attack, and the like.

출력 제어부(240)는 가상의 객체와 대응되는 컨텐츠를 출력 장치를 통해 제공하도록 제어한다. 출력 제어부(240)는 가상의 객체와 대응되는 컨텐츠의 움직임을 운동하는 볼의 궤적에 따라서 변경하도록 제어할 수 있다. 예를 들어, 제1 가상 객체의 위치로 향하는 볼의 궤적이 발생되면, 이에 따라 제1 가상 객체는 볼이 향하는 지점으로 이동하는 움직임을 가질 수 있다. 이때, 출력 제어부(240)는 제1 가상 객체의 누적된 경기 레벨에 따라 움직임의 속도, 범위 등을 결정하게 된다. 출력 제어부(240)는 모드 별로 추가하는 가상의 객체의 수를 변경할 수 있다. 타자 모드로 설정된 경우, 출력 제어부(240)는 수비에 해당하는 10명의 가상 객체들을 추가할 수 있다. 투수 모드로 설정된 경우, 출력 제어부(240)는 수비 및 타자에 해당하는 11명의 가상 객체들을 추가할 수 있다. 고정 타격 모드에서는 가상의 객체가 없을 수 있다. The output control unit 240 controls the content corresponding to the virtual object to be provided through the output device. The output control unit 240 can control to change the movement of the content corresponding to the virtual object according to the trajectory of the ball to be moved. For example, if a trajectory of a ball is generated that is directed to a location of a first virtual object, then the first virtual object may have a movement to move to a point where the ball is pointing. At this time, the output controller 240 determines the speed, range, etc. of the motion according to the accumulated game level of the first virtual object. The output control unit 240 may change the number of virtual objects to be added per mode. When set to the batter mode, the output control unit 240 can add 10 virtual objects corresponding to the defense. When the pitcher mode is set, the output controller 240 may add eleven virtual objects corresponding to defense and batter. In the fixed batting mode, there may be no virtual objects.

센싱 장치로부터의 동영상, 가상의 객체, 및/또는 경기 상황 데이터를 고려한 시뮬레이션 영상은 360도의 방향성을 가질 수 있다. A simulation image considering a moving image, a virtual object, and / or competition situation data from the sensing device may have a 360 degree directionality.

출력 제어부(240)는 경기 상황 데이터가 기 설정된 조건이 만족되는 경우, 해당 조건과 대응되는 이펙트 컨텐츠를 추가로 제공할 수 있다. 이펙트 컨텐츠는 다양한 시각적인 컨텐츠, 청각적인 컨텐츠를 포함할 수 있다. 예를 들어, 점수 획득과 대응되는 볼의 움직임 및 사용자의 움직임이 센싱되는 조건이 센싱되면, 점수의 획득이라는 이펙트 컨텐츠가 발생될 수 있다. 여기서, 이펙트 컨텐츠는 하나 이상의 컨텐츠를 포함할 수 있고, 다양한 타입의 컨텐츠를 결합시킬 수 있다. The output control unit 240 may additionally provide the effect contents corresponding to the condition if the predetermined condition is satisfied. The effect content may include various visual content, auditory content. For example, if the movement of the ball corresponding to the score acquisition and the condition under which the user's movement is sensed are sensed, the effect content of score acquisition may be generated. Here, the effect content may include one or more contents, and may combine various types of contents.

저장부(250)는 제어 장치(200)의 처리 및 제어를 위한 데이터를 저장할 수도 있고, 입/출력되는 데이터들을 저장할 수도 있다. 저장부(250)는 플래시 메모리 타입(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), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.The storage unit 250 may store data for processing and control of the control device 200 or may store input / output data. The storage unit 250 may be a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, SD or XD memory) (Random Access Memory) SRAM (Static Random Access Memory), ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory) A disk, and / or an optical disk.

통신부(260)는 제어 데이터를 각 장치로 전송하는 기능을 수행한다. 통신부(260)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. The communication unit 260 performs a function of transmitting control data to each device. The communication unit 260 includes a Bluetooth communication unit, a Bluetooth low energy communication unit, a near field communication unit, a WLAN communication unit, a Zigbee communication unit, an IrDA (infrared data association) communication unit, a WFD Wi-Fi Direct) communication unit, UWB (ultra wideband) communication unit, Ant + communication unit, and the like.

도 3은 경기흐름 제어부(220)의 구조를 나타내는 블록도이다. 3 is a block diagram showing the structure of the competition flow control unit 220. As shown in FIG.

도 3에 도시된 바와 같이, 경기흐름 제어부(220)는 변환부(221), 제1 움직임 패턴 생성부(222), 제2 움직임 패턴 생성부(223), 진행 정보 생성부(224), 제어 신호 생성부(225)를 포함할 수 있다. 3, the game flow control unit 220 includes a conversion unit 221, a first movement pattern generation unit 222, a second movement pattern generation unit 223, a progress information generation unit 224, And a signal generator 225.

변환부(221)는 수신된 센싱 데이터에서 움직이는 공이 등장하는 영역들을 추출하고, 상기 공이 등장하는 영역들을 분석하여 공의 움직임 패턴을 생성한다. 변환부(221)는 복수의 프레임들을 분석하여 지정된 객체의 움직임 패턴을 생성할 수 있다. 지정된 객체는 기 설정된 형태 정보 또는 마커에 따라서 지정되거나, 기 설정된 위치로부터 피칭되는 걸로 지정될 수 있다. The transforming unit 221 extracts regions in which the moving ball appears in the received sensing data, and analyzes the areas in which the ball exists to generate a ball movement pattern. The converting unit 221 may analyze a plurality of frames to generate a movement pattern of a designated object. The specified object can be designated according to the preset type information or marker, or can be designated to be pitched from a predetermined position.

제1 움직임 패턴 생성부(222)는 움직임 패턴, 환경 정보 및 객체와의 충돌 여부 등을 종합적으로 판단하여 소정의 구역 내의 제1 움직임 패턴을 생성할 수 있다. 제1 움직임 패턴은 변환부(221)의 움직임 패턴의 일부 또는 전부와 일치할 수 있으나, 소정의 구역 내에 존재하는 실제 객체(사용자, 배트, 공 등), 가상 객체(타 사용자, 위켓 장치 등), 환경 정보 등을 기초로 보정될 수 있다. 제1 움직임 패턴 생성부(222)는 움직임 패턴에 대해서 기 설정된 환경 정보 및 센싱된 객체와의 접촉 여부를 종합적으로 판단하고, 환경 정보 및 객체와의 접촉 여부 및 움직임 패턴을 고려하여 구역 내에서의 움직이는 공에 대한 제1 움직임 패턴을 생성할 수 있다. The first motion pattern generating unit 222 may generate a first motion pattern in a predetermined region by comprehensively determining a motion pattern, environment information, and a collision with an object. The first motion pattern may correspond to part or all of the motion pattern of the transforming unit 221 but may be an actual object (user, bat, ball, etc.), a virtual object (other user, , Environment information, and the like. The first motion pattern generation unit 222 comprehensively determines whether or not the motion pattern is in contact with the predetermined environment information and the sensed object, comprehensively determines whether the motion pattern is in contact with the object, A first motion pattern for a moving ball can be generated.

제1 움직임 패턴은 소정의 구역 내에서의 지정된 객체, 즉 움직이는 공의 움직임 패턴을 말한다. 특히, 제1 움직임 패턴은 소정의 구역을 벗어나는 확장된 영역에서의 공의 움직임을 표현할 수 있다. 소정의 구역의 경계선, 장애물 등에 의해서 공의 움직임이 정지되더라도, 제1 움직임 패턴은 연속적으로 이동하는 공의 움직임을 포함할 수 있다. 위켓 장치는 실제 객체 또는 가상 객체로 설정될 수 있다. The first movement pattern refers to a designated object within a predetermined area, i.e., a movement pattern of a moving ball. In particular, the first movement pattern can express the motion of the ball in the extended region beyond the predetermined region. Even if the movement of the ball is stopped due to a boundary line of an area, an obstacle, or the like, the first movement pattern may include a movement of the ball continuously moving. The widget device can be set as a real object or a virtual object.

다른 실시예에서, 제1 움직임 패턴 생성부(222)는 위켓 장치로 설정된 위켓 장치와의 충돌 여부를 판단할 수 있으며, 상기 위켓 장치와의 충돌 여부가 감지된 것으로 판단되며, 제1 움직임 패턴의 생성을 중지할 수 있다. 이런 경우, 제어 장치(200)는 변환부에 의한 움직임 패턴을 기초로 가상 경기 진행 정보를 생성할 수 있다. In another embodiment, the first movement pattern generator 222 may determine whether or not a conflict with the widget device set in the widget device is detected, The generation can be stopped. In this case, the control device 200 can generate the virtual game progress information based on the movement pattern by the converting unit.

실제 객체인 위켓 장치는 3개의 기둥, 기둥에 대한 터치 등을 감지하는 센서를 포함할 수 있으며, 추가적으로 3개의 기둥 위에 올려지는 2개의 작은 막대기를 포함할 수 있다. 3개의 기둥은 분리되지 않고 일체로 구현될 수 있다. 3개의 기둥에 대한 공의 충돌 여부를 감지할 수 있는 센서가 더 포함될 수 있다. The actual object, the widget device, may include three columns, a sensor that senses touches to the column, etc., and may additionally include two small bars mounted on three columns. The three pillars can be integrally implemented without being separated. A sensor capable of detecting whether or not the ball collides with the three columns may be further included.

다른 실시예에서, 제1 움직임 패턴 생성부(222)는 공 및 사용자에 의해 제어되어 사용자의 의도의 움직임을 가지는 타격 장치 사이의 충돌 여부를 판단할 수 있다. 타격 장치와의 충돌 여부는 센싱 데이터를 기초로 산출되거나 타격 장치에 포함된 센서부를 통해 감지될 수 있다. In an alternative embodiment, the first motion pattern generator 222 may be controlled by the ball and the user to determine whether there is a conflict between the striking devices with the intentional motion of the user. The collision with the striking device can be calculated based on the sensing data or can be detected through the sensor part included in the striking device.

제 2 움직임 패턴 생성부(223)는 변환부(221)에 의해 생성된 움직임 패턴, 제1 움직임 패턴을 기초로 소정의 구역에서 벗어나는 외부 구역에서의 공의 움직임 패턴을 생성할 수 있다. 외부의 구역은 가상적으로 구현된 공간을 말하는 것으로, 다양한 방식으로 설정된 장소(로마의 콜로세움, 북극, 상암 경기장 등)에 따라 크기, 배경, 환경 등을 다르게 설정될 수 있다. 제2 움직임 패턴 생성부(223)는 움직임 패턴, 제1 움직임 패턴을 기초로 외부 구역에서의 공의 움직임을 확장하되, 장소 정보를 고려하여 외부 구역에서의 확장된 제2 움직임 패턴을 생성할 수 있다. 제2 움직임 패턴은 제1 움직임 패턴과 연결되며 소정의 구역을 벗어나 존재하는 가상의 외부 구역에서의 공의 움직임 정보를 말한다. 움직임은 이동 방향, 속도, 회전 등을 포함하는 의미일 수 있다. 이때, 움직임 패턴에 따라 이동하는 공은 실제 센싱된 공과 대응되는 시각적 효과 및 이미지를 가질 수 있다. The second motion pattern generation unit 223 can generate a motion pattern of the ball in the outer zone that deviates from the predetermined zone based on the motion pattern generated by the conversion unit 221 and the first motion pattern. The external zone is a virtually implemented space. The size, the background, and the environment can be set differently according to the places set in various ways (the Colosseum of Rome, the North Pole, the Sangam Stadium, etc.). The second movement pattern generation unit 223 may expand the motion of the ball in the outer zone on the basis of the movement pattern and the first movement pattern and may generate the extended second movement pattern in the outer zone in consideration of the place information have. The second movement pattern refers to the motion information of the ball in the virtual outer zone which is connected to the first movement pattern and exists outside the predetermined zone. The movement may be a meaning including movement direction, speed, rotation, and the like. At this time, the moving ball according to the movement pattern may have a visual effect and an image corresponding to the actually sensed ball.

다른 실시예에서, 제2 움직임 패턴 생성부(223)는 실제 위켓 장치로부터 수신된 센싱 데이터를 기초로 제2 움직임 패턴을 생성할 수 있다. 실제 위켓 장치로부터 공의 충돌 이벤트가 수신된 경우, 충돌 이후의 공의 움직임 패턴은 생성되지 않도록 제어된다. 다른 실시예에서, 제2 움직임 패턴 생성부(223)는 가상으로 구현된 위켓 장치와의 충돌 여부가 판단된 경우, 충돌 이후의 공의 움직임 패턴을 생성하지 않을 수 있다. In another embodiment, the second movement pattern generation unit 223 can generate the second movement pattern based on the sensing data received from the actual widget apparatus. When a ball collision event is received from the actual widget device, the ball movement pattern after the collision is controlled not to be generated. In another embodiment, the second movement pattern generation unit 223 may not generate a ball movement pattern after a collision if it is determined whether or not the collision with a virtually implemented widget apparatus is possible.

진행 정보 생성부(224)는 제1 움직임 패턴 및 제2 움직임 패턴에 따른 가상 경기 진행 정보를 생성할 수 있다. 가상 경기 진행 정보는 제1 움직임 패턴 및 제2 움직임 패턴으로 움직이는 지정된 객체(공)을 시각적 또는 청각적으로 출력하는 신호를 포함할 수 있다. The progress information generating unit 224 may generate virtual progress information according to the first movement pattern and the second movement pattern. The virtual game progress information may include a signal for visually or auditorily outputting a designated object (ball) moving in the first movement pattern and the second movement pattern.

진행 정보 생성부(224)는 사용자에 의해 제어되는 타격 장치와의 충돌 여부를 판단할 수 있다. The progress information generating unit 224 can determine whether or not the impact information is collided with a striking device controlled by the user.

가상 경기 진행 정보는 실제 존재하는 객체들의 전부 또는 일부를 표현하는 이미지를 포함할 수 있으며, 실제 존재하는 객체들의 일부를 배제시키기도 한다. 가상 경기 진행 정보는 가상적으로 존재하는 객체들을 더 포함할 수 있다. 특히, 경기 종목에 따라서, 가상적으로 존재하는 가상 객체들은 달라질 수 있다. 가상의 크리켓 경기인 경우, 가상의 위켓 장치 또는 실제의 위켓 장치를 포함하는 가상 경기 진행 정보가 생성될 수 있다. The virtual game progress information may include an image representing all or a part of actual objects, and may exclude some of the actual objects. The virtual game progress information may further include virtually existing objects. In particular, virtual objects that exist virtually can vary depending on the game type. In the case of a virtual cricket game, virtual game progress information including a virtual jacket device or an actual jacket device can be generated.

타격 장치와의 충돌이 판단 또는 감지된 경우, 진행 정보 생성부(224)는 제2 움직임 패턴에 따른 공의 이동 거리 또는 이동 시간을 산출하고, 이동 거리 또는 이동 시간에 따른 획득 점수를 결정할 수 있다. 이동 시간은 이동 거리 및 속도와의 관계를 기초로 역으로 계산될 수 있다. When the collision with the striking device is judged or detected, the progress information generating unit 224 may calculate the movement distance or movement time of the ball according to the second movement pattern, and determine the acquisition score according to the movement distance or the movement time . The travel time can be calculated inversely based on the relationship between the travel distance and the speed.

다른 실시예에서, 진행 정보 생성부(224)는 움직이는 공이 가상의 객체인, 수비수와의 관계를 예측할 수 있다. 진행 정보 생성부(224)는 공이 가상의 수비수에 의해 캐치 여부를 판단할 수 있다. 판단 이후에, 획득 점수는 가상의 외부 구역에서의 움직이는 공이 가상의 수비수에 의해 캐치되는 경우에는 산출되지 않는다. 이때, 가상의 수비수는 대응되는 타사용자의 경기력 레벨로 설정되며, 타 사용자의 수비 범위, 반응 속도, 캐치 능력 등에 따른 경기력 레벨을 가질 수 있다. 즉, 가상의 수비수는 대응되는 수비 범위를 벗어나는 공을 캐치할 수 없고, 가상의 수비수는 대응되는 수비 범위에 포함되는 공을 캐치할 수 있다고 예측된다. 가상의 수비수에 의해 캐치 되지 않고, 타격 장치에 의해 타격된 경우, 진행 정보 생성부(224)는 사용자에 대해서 점수가 획득된 것으로 판단할 수 있다. 진행 정보 생성부(224)는 제2 움직임 패턴에 따른 공의 이동 거리 또는 이동 시간을 산출하고, 이동 거리 또는 이동 시간에 따른 획득 점수를 결정할 수 있다.In another embodiment, the progress information generating unit 224 can predict a relationship with a defender, in which a moving ball is a virtual object. The progress information generating unit 224 can determine whether or not the ball is caught by a virtual defender. After the judgment, the acquisition score is not calculated if the moving ball in the virtual outer zone is caught by the virtual defender. At this time, the virtual defenders are set to the competitiveness level of the corresponding other user, and can have the performance level according to the defensive range, reaction speed, catch ability, and the like of other users. That is, it is predicted that a virtual defender can not catch a ball that falls outside a corresponding defensive range, and a virtual defender can catch a ball included in a corresponding defensive range. In a case where the player is struck by the striking device without being caught by a virtual defender, the progress information generating section 224 can determine that a score has been acquired for the user. The progress information generating unit 224 may calculate the ball movement distance or movement time according to the second movement pattern, and determine the acquisition score according to the movement distance or the movement time.

외부의 구역은 실제의 지역 또는 가상의 지역으로 구현될 수 있다. 외부의 구역은 실제의 지역의 현재 모습을 기반으로 생성된 입체 영상으로 표현될 수 있다. The outer zone may be implemented as an actual zone or a virtual zone. The outer region can be represented by a stereoscopic image generated based on the current state of the actual region.

제어 신호 생성부(225)는 가상 경기 진행 정보에 따른 획득 점수, 게임 진행 결과, 사용자의 총 득점 상황, 사용자 및 타 사용자의 경기력 레벨 등의 정보를 나타내는 출력 데이터를 생성하도록 구현된 제어 신호를 생성할 수 있다. 출력 데이터를 생성하도록 구현된 제어 신호는 등록 과정을 거친 다른 장치로 전달될 수 있다. 출력 데이터를 생성하도록 구현된 제어 신호는 소정의 구역 내에 설치된 출력 장치로 전달될 수 있다. The control signal generator 225 generates a control signal, which is implemented to generate output data representing information such as an acquisition score according to virtual game progress information, a game progress result, a total score situation of a user, a user performance level of another user, can do. The control signal implemented to generate the output data may be transmitted to another device through the registration process. The control signal implemented to generate the output data may be delivered to an output device installed in a predetermined area.

제어 신호 생성부(225)는 센싱 장치의 동작을 제어하는 제어 신호를 생성할 수 있다. 제어 신호 생성부(225)는 센싱 장치 외에도 피칭 장치, 출력 장치의 동작을 제어하는 제어 신호를 생성하여 각 장치로 전달할 수 있다. The control signal generator 225 may generate a control signal for controlling the operation of the sensing device. The control signal generator 225 may generate a control signal for controlling the operation of the pitching device and the output device in addition to the sensing device, and may transmit the control signal to each device.

본 발명의 실시예에 따른 제어 장치(200)는 실제적으로 존재하는 움직이는 공, 사용자, 사용자가 소지하는 타격 장치에 대한 센싱 데이터를 기초로 움직임 패턴을 생성하고, 실제 구역 및/또는 가상 구역 상에서 존재하는 가상의 객체들의 위치, 움직임 등을 고려하여 공의 움직임 패턴을 변경하여 생성할 수 있다. 이때 가상의 객체는 고정되기도 하지만, 고정되지 않고 움직임을 가질 수 있다. 가상의 객체의 움직임을 고려하여, 공의 움직임 패턴은 변경될 수 있다. 즉, 가상의 객체라고 하더라도 부피가 존재하기 때문에, 가상의 객체와 공은 충돌될 수 있으며, 공의 움직임은 실제와 달리 산출될 수도 있다. The control device 200 according to an embodiment of the present invention generates a movement pattern based on sensed data of a moving ball, a user, and a striking device possessed by the user, The motion of the ball can be changed by considering the position, motion, and the like of the virtual objects. At this point, the virtual object is fixed, but it can move without being fixed. Considering the movement of the virtual object, the motion pattern of the ball can be changed. That is, since there is a volume even if it is a virtual object, the virtual object and the ball may collide, and the motion of the ball may be calculated differently from the actual.

도 4 내지 도 6은 정해진 구역 내에서의 상황에 따른 제어 장치의 동작을 설명하기 위한 도면이다. FIGS. 4 to 6 are views for explaining the operation of the control device according to a situation in a predetermined area.

도 4에 도시된 바와 같이, 사용자에 의해 제어되어 사용자의 의도된 움직임을 가지는 타격 장치(R-obj2)는 실제 객체로 구성되며, 타격 장치(R-obj2)의 위치, 움직임 등은 센싱 데이터를 통해서 구현될 수 있다. 제어 장치에 의해 생성되는 출력 데이터는 움직이는 공에 대해서 생성된 제1 움직임 패턴(R-obj11, R-obj12, R-obj13, R-obj14, R-obj15, R-obj16, R-obj17, R-obj18) 및 실제로 존재하고 움직이는 타격 장치(R-obj2)를 포함하게 된다. 움직이는 공은 임의의 시점에 대해서만 결정되는 것이 아닌, 복수의 센싱 데이터들로부터 연속적인 움직임을 가지도록 구현될 수 있다. 도 4와 같이, 실제적으로 존재하는 객체들의 움직임을 센싱하여, 객체들의 움직임들을 입체적으로 구현한 출력 데이터가 생성될 수 있다. 이는 센싱된 데이터와 부합하면서도, 센싱되지 않은 부분에 대해서는 추론, 예측을 위한 알고리즘을 이용하여 구현될 수 있다. 예를 들어, 초당 30프레임들을 촬영하는 센싱 장치를 이용하여, 초당 60프레임 정도로 출력되는 출력 데이터가 생성될 수 있다. 이때, 추가된 30 프레임의 화상 데이터는 별도의 화상 데이터에 대한 알고리즘을 이용할 수 있다. As shown in FIG. 4, the striking device R-obj2, which is controlled by the user and has the intended motion of the user, is composed of actual objects, and the position, motion, etc. of the striking device R- Lt; / RTI > The output data generated by the control device includes a first motion pattern (R-obj11, R-obj12, R-obj13, R-obj14, R- obj15, R- obj16, R- obj18) and the actually present and moving striking device (R-obj2). The moving ball may be implemented to have continuous motion from a plurality of sensing data, rather than being determined only at an arbitrary point in time. As shown in FIG. 4, output data in which movements of objects actually exist are implemented in a three-dimensional manner can be generated. This can be implemented using algorithms for reasoning and prediction that are consistent with the sensed data but are not sensed. For example, output data that is output at about 60 frames per second can be generated using a sensing device that captures 30 frames per second. At this time, the image data of the added 30 frames can use an algorithm for separate image data.

도 5에 도시된 바와 같이, 실제 객체인 움직이는 공(R-obj4) 및 가상적으로 존재하는 위켓 장치(obj31, obj32, obj33) 및 가상의 수비수(obj5)를 포함하는 출력 데이터가 생성될 수 있다. 제어 장치에 의해 가상의 객체(obj31, obj32, obj33, obj5) 및 실제의 객체(R-obj4)이 합쳐진 출력 데이터가 생성될 수 있다. As shown in Fig. 5, output data including the moving object R-obj4 and virtually existing widget devices obj31, obj32, obj33 and virtual defuzzer obj5 may be generated, as shown in Fig. Output data in which the virtual objects (obj31, obj32, obj33, obj5) and the actual object (R-obj4) are combined by the control device can be generated.

제어 장치는 실제의 객체인 움직이는 공이 가상적으로 존재하는 객체와 상관없는 움직임을 가지는 경우에, 공의 움직임을 가상적으로 존재하는 위켓 장치의 위치, 크기 및 수비수의 움직임을 고려하여 변경할 수 있다. In the case where the control device has a motion which is not related to an object in which the moving ball is virtually present, the control device can change the motion of the ball in consideration of the position, size, and defender movement of the virtually existing wicket device.

가상의 객체인 수비수(obj5)는 실제 존재하는 타 사용자와 대응되며, 가상의 수비수의 움직임(순간 반응 속도, 수비 범위, 캐치 능력 등)은 실제 존재하는 타 사용자에 대해서 기 설정된 경기 능력 레벨에 따라서 상이하게 설정될 수 있다. The defender (obj5), which is a virtual object, corresponds to another real user, and the movement of the virtual defender (instantaneous reaction rate, defensive range, catch ability, etc.) Can be set differently.

구체적으로, 실제의 객체(R-obj4)는 가상의 객체와 상관없는 움직임을 가지게 되는데, 즉, 실제의 객체(R-obj4)는 위켓 장치(obj31, obj32, obj33)과 지나가는 움직임을 가질 수 있다. 이때, 제어 장치는 가상의 객체와의 충돌 여부를 판단하고, 충돌된다고 판단된 경우, 가상의 위켓 장치(obj31, obj32, obj33)와 충돌되고, 충돌로 인해 이동 방향, 이동 속도가 변경되는 실제 객체(R-obj4)를 구현하게 된다. Specifically, the actual object R-obj4 has a motion that is not related to the virtual object, that is, the actual object R-obj4 may have a movement passing through the widget devices obj31, obj32, obj33 . At this time, the control device judges whether or not there is a collision with a virtual object. If it is determined that a collision is caused, the control device collides with the virtual widget device (obj31, obj32, obj33) (R-obj4).

도 6에 도시된 바와 같이, 제어 장치는 정해진 구역에 한정되는 실제의 움직이는 공의 움직임(R-obj61, R-obj62, R-obj63, R-obj64, R-obj65, R-obj66, R-obj67)에 대한 센싱 데이터를 수신할 수 있다. 제어 장치는 정해진 구역을 초과하여 존재하는 외부 구역에 대한 움직이는 공의 움직임(obj67)을 알고리즘에 따라 생성하고, 전체적인 움직임 패턴(R-obj61, R-obj62, R-obj63, R-obj64, R-obj65, R-obj66, obj67)으로 움직이는 공을 포함하는 출력 데이터를 생성할 수 있다. 센싱된 실제 공(R-obj67)과는 달리 구역 내에서의 움직임과 연속되는 움직임을 가지도록 가상의 공(obj67)이 생성될 수 있다. As shown in Fig. 6, the control device controls the movement of the actual moving ball (R-obj61, R-obj62, R-obj63, R-obj64, R- obj65, R- Can be received. The controller generates the motion of the moving ball (obj67) with respect to the outer zone that exists beyond the predetermined zone according to the algorithm and generates the overall motion patterns (R-obj61, R-obj62, R-obj63, R- obj65, R-obj66, obj67). A virtual hole obj67 can be generated so as to have motion in the zone and continuous motion, unlike the sensed actual ball R-obj67.

도 7a 및 도 7b는 시뮬레이션 시스템에 의해 설정된 구역 및 외부 구역의 측면도, 사시도 이다. 7A and 7B are side and perspective views of the zone and the outer zone set by the simulation system.

시뮬레이션 시스템은 다각형의 형태를 가지는 실제 구역(R-area) 및 실제 구역(R-area)를 포함하는 가상의 외부 구역(V-area)에 대한 시각적 출력 데이터를 생성할 수 있다. 실제 객체인 공(R-obj7)은 실제 구역(R-area)에서 움직이게 되는데, 센싱된 데이터를 통해서 실제 구역(R-area) 내 에서의 움직임을 전체적으로 표현하고, 실제 구역(R-area)를 초과하여 존재하는 외부 구역(V-area)으로 공의 움직임을 확장하여 표현할 수 있다. 실제 구역(R-area)의 경계면과의 접촉 이후의 공의 움직임은 가상의 외부 구역(V-area)에 의해서 결정된다. 가상의 외부 구역(V-area)은 기 설정된 장소 정보(존재하는 실제 지역 또는 가상의 지역)에 따라서 상이하게 설정될 수 있다. The simulation system can generate visual output data for a virtual outer region (V-area) including a real area (R-area) and a real area (R-area) having the shape of a polygon. The actual object, R-obj7, moves in the R-area, which represents the movement in the real area (R-area) through the sensed data and the real area (R-area) The motion of the ball can be extended to an outer zone (V-area) existing in excess. The movement of the ball after contact with the interface of the real area (R-area) is determined by the imaginary outer area (V-area). The virtual outer area (V-area) may be set differently according to predetermined place information (an actual area or virtual area present).

도 8은 본 발명의 실시예들에 따른 운동하는 볼에 대한 센싱 장치의 구조를 나타내는 블록도이다. 8 is a block diagram illustrating the structure of a sensing device for a moving ball according to embodiments of the present invention.

도 8에 도시된 바와 같이, 센싱 장치(100)은 센서부(110), 프레임 수신부(120), 움직임 추론부(130), 동영상 생성부(140), 저장부(150)를 포함할 수 있다. 8, the sensing apparatus 100 may include a sensor unit 110, a frame receiving unit 120, a motion speculation unit 130, a moving image generating unit 140, and a storage unit 150 .

센서부(110)는 정해진 영역을 센싱하는 기능을 수행한다. 예로써, 센서부(110)는 이미지 센서, 지자기 센서(Magnetic sensor), 가속도 센서(Acceleration sensor), 온/습도 센서, 적외선 센서, 자이로스코프 센서, 위치 센서(예컨대, GPS), 기압 센서, 근접 센서, 및 RGB 센서(illuminance sensor) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.The sensor unit 110 performs a function of sensing a predetermined area. For example, the sensor unit 110 may be an image sensor, a magnetic sensor, an acceleration sensor, an on / humidity sensor, an infrared sensor, a gyroscope sensor, a position sensor Sensor, and an RGB sensor (illuminance sensor), but the present invention is not limited thereto. The function of each sensor can be intuitively deduced from the name by those skilled in the art, so a detailed description will be omitted.

센서부(110)는 정해진 영역을 촬영한 화상 프레임을 획득 및/또는 감지할 수 있다. 센서부(110)는 피칭 장치 및/또는 가상 위켓 영역을 포함하는 영역을 촬영한 화상 프레임을 센싱한다. 센서부(110)는 사용자에 의해 설정된 촬영 방향으로 정해진 영역을 촬영한 화상 프레임을 센싱한다. 센서부(110)는 이미지 센서 방식으로 구현될 수 있다. 센서부(110)는 피칭 장치에서, 정해진 타자 영역까지 도달하는 볼의 움직임을 감지할 수 있다. 센서부(110)는 타격된 볼이 바운드된 이후에도 볼의 움직임을 감지할 수 있다. 센서부(110)는 위켓 영역에 도달한 볼의 움직임이 감지된 경우, 움직임 센싱을 중지할 수 있다. 센서부(110)는 볼의 이동 속도 및 이동 방향은 어떠한지, 볼의 타격 여부, 볼의 타격 이후의 움직임 변화 등을 감지할 수 있다. The sensor unit 110 can acquire and / or sense an image frame photographed in a predetermined area. The sensor unit 110 senses an image frame photographed on an area including the pitching device and / or the virtual face area. The sensor unit 110 senses an image frame photographed in a predetermined region in the photographing direction set by the user. The sensor unit 110 may be implemented as an image sensor. The sensor unit 110 can sense the movement of the ball reaching the predetermined batter region in the pitching apparatus. The sensor unit 110 can sense the movement of the ball even after the hit ball is bound. The sensor unit 110 can stop the motion sensing when the ball movement that has reached the toe area is detected. The sensor unit 110 can detect the moving speed and moving direction of the ball, whether or not the ball is hit, and the movement change after the ball is hit.

프레임 수신부(120)는 센서부(110)로부터 센싱 데이터를 수신한다. 프레임 수신부(120)는 이미지 센싱 방식으로 획득된 화상 프레임을 수신한다. The frame receiving unit 120 receives the sensing data from the sensor unit 110. The frame receiving unit 120 receives the image frame obtained by the image sensing method.

움직임 추론부(130)는 화상 프레임 세트를 분석하여, 운동하는 볼의 움직임을 추론할 수 있다. 움직임 추론부(130)는 운동하는 볼의 위치 변화 및 운동하는 볼의 크기 변화를 기초로 운동하는 볼의 3차원 움직임을 추론할 수 있다. 볼의 위치 변화는 화상 프레임 상에서의 2차원적인 위치 변화를 포함할 수 있다. 볼의 이동 방향은 촬영 방향과는 직교할 수 있다. 추가적으로 움직임 추론부(130)는 볼의 크기 변화를 기초로 제1 방향과 다른 제2 방향에서의 볼의 움직임을 결정할 수 있다. 볼의 크기 변화는 촬영 방향과 평행한 방향으로의 움직임을 통해 발생될 수 있다. 움직임 추론부(130)는 각 화상 프레임으로부터 측정된 볼의 크기(지름)를 입력 받고, 미리 설정된 볼의 크기에 따른 볼의 높이 값의 테이블을 이용하여 제2 방향에서의 볼의 움직임을 추론할 수 있다. 움직임 추론부(130)는 각 화상 프레임의 볼의 크기에 따른 위치 값을 산출하고, 시간 순서대로 위치 값들을 나열시켜 볼의 크기 변화를 추론한다. 볼의 크기에 따른 볼의 높이 값의 테이블은 제2 방향 상에서의 절대적 위치 값(높이 값)과 볼의 크기와 대응 시킨 것일 수 있다. 볼의 크기에 따른 위치 값의 테이블은 운동하는 볼의 위치 값을 실측하는 과정을 통해 획득될 수 있다. 이때, 볼의 크기에 따른 위치 값의 테이블은 제1 방향 상에서의 위치 값일 수 있으며, 제2 방향 상의 볼의 위치에 따라서 달라질 수 있다. 움직임은 이동 방향, 초기 위치, 최종 위치를 포함하는 개념이다. The motion inferring unit 130 may analyze the set of image frames to deduce the motion of the moving ball. The motion reasoning unit 130 can deduce a three-dimensional motion of the ball that is moving based on a change in the position of the moving ball and a change in the size of the moving ball. The positional change of the ball may include a two-dimensional positional change on the image frame. The moving direction of the ball may be orthogonal to the shooting direction. In addition, the motion reasoning unit 130 can determine the movement of the ball in the second direction different from the first direction based on the change in the size of the ball. The size change of the ball can be generated through the movement in the direction parallel to the shooting direction. The motion inference unit 130 receives the size (diameter) of the ball measured from each image frame and deduces the movement of the ball in the second direction using the table of the height values of the balls according to the predetermined ball size . The motion inference unit 130 calculates a position value according to the size of the ball in each image frame, and estimates the size change of the ball by arranging the position values in order of time. The table of the height values of the balls according to the sizes of the balls may correspond to the absolute position values (height values) in the second direction and the sizes of the balls. The table of position values according to the size of the ball can be obtained through a process of measuring the position value of the moving ball. At this time, the table of the position value according to the size of the ball may be a position value in the first direction, and may be changed according to the position of the ball in the second direction. The motion is a concept that includes the direction of movement, initial position, and final position.

동영상 생성부(140)는 추론된 운동하는 볼을 3차원적으로 표현한 동영상을 생성한다. 동영상 생성부(140)는 볼의 궤적에 대한 시뮬레이션 동영상을 생성할 수 있다. 이때, 피칭된 볼, 사용자, 위켓 영역은 실제 센싱된 이미지 외에 사용자에 의해 선택된 가상의 컨텐츠로 표현될 수 있다. 또한, 운동하는 볼은 가상의 컨텐츠 및 움직임을 시각적으로 표현한 컨텐츠로 표현될 수 있다. The moving image generating unit 140 generates moving images in which the inferred moving balls are three-dimensionally displayed. The moving image generating unit 140 may generate a simulation moving image for the trajectory of the ball. At this time, the pitch, the user, and the wicket region may be represented by the virtual content selected by the user in addition to the actual sensed image. In addition, a moving ball can be expressed by contents that visually represent virtual contents and movements.

저장부(150)는 센싱 장치의 구동에 관한 각종 정보를 저장하며, 가상의 경기장, 가상의 영상 구현을 위한 영상 데이터 등을 저장하도록 구성될 수 있다. 저장부(150)는 운동하는 볼의 3차원 움직임에 대한 영상 구현을 위한 데이터를 서버의 데이터베이스로부터 추출되어 수신할 수 있다. 저장부(150)는 가상의 경기 영상을 생성하기 위해서 사용자로부터 선택된 캐릭터를 사용자와 대응시켜 제공할 수 있다. 저장부(150)는 플래시 메모리 타입(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), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.The storage unit 150 may store various information related to the driving of the sensing device, and may be configured to store a virtual stadium, image data for implementing a virtual image, and the like. The storage unit 150 may extract and receive data for image implementation of the three-dimensional motion of the moving ball from the database of the server. The storage unit 150 may provide a character selected by a user in association with a user to generate a virtual game image. The storage unit 150 may be a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (for example, SD or XD memory) (Random Access Memory) SRAM (Static Random Access Memory), ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory) A disk, and / or an optical disk.

통신부(160)는 센싱 데이터 및 추론된 움직임과 관련된 데이터를 제어 장치(200) 또는 별개의 컴퓨팅 장치로 전송하는 기능을 수행한다. 통신부(160)는 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. The communication unit 160 transmits the sensing data and the data related to the inferred motion to the control device 200 or a separate computing device. The communication unit 160 includes a Bluetooth communication unit, a Bluetooth low energy communication unit, a near field communication unit, a WLAN communication unit, a Zigbee communication unit, an IrDA communication unit, a WFD Wi-Fi Direct) communication unit, UWB (ultra wideband) communication unit, Ant + communication unit, and the like.

도 9는 움직임 추론부(130)의 구조를 나타내는 블록도이다. FIG. 9 is a block diagram showing the structure of the motion reasoning unit 130. FIG.

도 9에 도시된 바와 같이, 움직임 추론부(130)는 제1 움직임 추론부(131), 제2 움직임 추론부(132)를 포함할 수 있다. As shown in FIG. 9, the motion reasoning unit 130 may include a first motion reasoning unit 131 and a second motion reasoning unit 132.

제1 움직임 추론부(131)는 화상 프레임 내에서의 운동하는 볼의 위치 변화를 기초로 제1 방향과 대응되는 제1 움직임을 추론할 수 있다. 제1 움직임은 2차원적인 움직임으로서, 초기 좌표 성분 값들 및 최종 좌표 성분 값들을 포함할 수 있다. 좌표 성분 값들은 미리 설정된 기준점으로부터의 상대적 거리 값들로서, 운동하는 볼의 상대적인 위치 변화를 산출하는데 이용된다. The first motion inferring unit 131 may infer the first motion corresponding to the first direction based on the change in the position of the moving ball in the image frame. The first motion is a two-dimensional motion, which may include initial coordinate component values and final coordinate component values. The coordinate component values are used to calculate the relative positional change of the moving ball as relative distance values from a preset reference point.

좀더 구체적으로 제1 움직임 추론부(131)는 화상 프레임 및 이전 화상 프레임에 포함된 운동하는 볼의 위치들을 비교하여 운동하는 볼의 2차원적인 움직임을 추론한다. 이때, 제1 움직임 추론부(131)는 촬영 방향과 직교하는 제1 방향 상의 움직임을 추론하게 된다. 제1 움직임 추론부(131)는 화상 프레임에 포함된 제1 방향으로의 운동하는 볼의 움직임을 추론할 수 있다. 제1 움직임 추론부(131)는 화상 프레임에 포함된 제1 볼 및 이전 화상 프레임에 포함된 제2 볼 사이의 간격으로 운동하는 볼의 이동 속도를 계산할 수 있다. 제1 볼 및 제2 볼 사이의 거리 값(distance)을 촬영된 프레임 레이트(frame rate)를 기초로 산출된 시간으로 나누면 운동하는 볼의 속도(velocity)가 산출될 수 있다. More specifically, the first motion inferring unit 131 deduces the two-dimensional movement of the ball that moves by comparing the positions of the moving balls included in the image frame and the previous image frame. At this time, the first motion inference unit 131 deduces the motion in the first direction orthogonal to the photographing direction. The first motion inferring unit 131 can deduce the motion of the ball moving in the first direction included in the image frame. The first motion inferring unit 131 may calculate the moving speed of the ball moving at the interval between the first ball included in the image frame and the second ball included in the previous image frame. The velocity of the moving ball can be calculated by dividing the distance between the first ball and the second ball by the calculated time based on the photographed frame rate.

제2 움직임 추론부(132)는 화상 프레임 내에서의 제2 방향과 대응되는제2 움직임을 추론한다. 제2 움직임은 제2 방향과 평행한 방향에 대한 위치 변화를 말한다. 즉, 제2 방향이 하늘에서 지면으로의 방향이라면, 제2 움직임은 지면으로부터의 높이 변화를 의미한다. 제1 움직임 및 제2 움직임의 이동 방향은 서로 직교할 수 있다. 제2 방향은 화상 프레임을 고려하여 촬영 방향과 평행하게 된다. 촬영 방향과 동일한 제2 방향 상의 움직임은 화상 프레임 내의 위치 변화를 야기하지 않으므로, 위치 변화가 아닌 크기 변화로 추론된다. 이때, 제2 움직임 추론부(132)는 볼의 크기 별 위치 값들을 포함하는 테이블을 이용할 수 있다. 예를 들어, 제1 지름 길이 값의 볼은 대응되는 제1 높이 값에 따라 기준 면에 대해서 제1 높이에 위치한다고 추론된다. The second motion inferring unit 132 deduces the second motion corresponding to the second direction in the image frame. The second movement refers to a change in position with respect to a direction parallel to the second direction. That is, if the second direction is the direction from sky to ground, the second movement means a change in height from the ground. The moving directions of the first movement and the second movement may be orthogonal to each other. The second direction becomes parallel to the photographing direction in consideration of the image frame. Since the movement in the second direction, which is the same as the photographing direction, does not cause a change in position in the image frame, it is deduced as a change in size, not a change in position. At this time, the second motion inferring unit 132 may use a table including position values for each size of a ball. For example, it is deduced that the ball of the first diameter length value is located at the first height relative to the reference plane according to the corresponding first height value.

움직임 추론부(130)는 2차원적인 움직임 및 1차원적인 움직임을 모두 고려하여 운동하는 볼의 3차원적인 움직임을 추론한다. 움직임 추론부(130)는 추론된 제1 움직임에 따라 공을 제1 위치에서 제2 위치로 변화하고, 추론된 제2 움직임을 고려하여 제1 높이에서, 제2 높이로 높이가 변화하도록 운동하는 볼의 3차원 움직임을 추론할 수 있다. The motion reasoning unit 130 deduces a three-dimensional motion of the ball that is moving considering both two-dimensional motion and one-dimensional motion. The motion inferring unit 130 changes the ball from the first position to the second position in accordance with the inferred first motion and moves the ball so that the height changes from the first height to the second height in consideration of the inferred second movement The 3D motion of the ball can be deduced.

동영상 생성부(140)는 움직임 추론부(130)로부터 추론된 3차원 움직임을 수신하고, 3차원 움직임을 가지도록 볼을 렌더링하여 동영상으로 생성한다. The moving image generating unit 140 receives the inferred three-dimensional motion from the motion inferring unit 130, generates a moving image by rendering the ball so as to have a three-dimensional motion.

도 10은 경기 흐름 제어부(220)의 구조를 나타내는 블록도이다. 10 is a block diagram showing the structure of the competition flow control unit 220. As shown in FIG.

도 10에 도시된 바와 같이, 경기 흐름 제어부(220)는 이미지 수신부(221), 동영상 수신부(222), 처리부(223), 결과 생성부(224)를 포함할 수 있다. 10, the game flow control unit 220 may include an image receiving unit 221, a moving image receiving unit 222, a processing unit 223, and a result generating unit 224.

이미지 수신부(221)는 센싱 장치로부터 화상 프레임 세트를 수신한다. The image receiving unit 221 receives a set of image frames from the sensing device.

동영상 수신부(222)는 센싱 장치로부터 렌더링된 3차원의 동영상 데이터를 수신한다. The moving picture receiving unit 222 receives the three-dimensional moving picture data rendered from the sensing device.

처리부(223)는 화상 프레임 세트 및 3차원의 동영상 데이터를 검토하여 크리켓 경기의 흐름과 관련된 제어 데이터 및 경기 상황 데이터를 생성할 수 있다. 처리부(223)는 화상 프레임 세트 및 3차원의 동영상 데이터를 검토하여 피칭 관련 제어 데이터 및/또는 센싱 관련 제어 데이터를 생성한다. The processing unit 223 may review the image frame set and the three-dimensional moving image data to generate control data and competition situation data related to the flow of the cricket game. The processing unit 223 examines the image frame set and the three-dimensional moving image data to generate the pitching-related control data and / or the sensing-related control data.

결과 생성부(224)는 처리부(223)에 의해 생성된 제어 데이터를 반영하여 결과 데이터를 생성한다. 생성된 결과 데이터는 출력 제어부(240)로 전달되어 사용자 인터페이스의 생성에 이용될 수 있다. 출력 제어부(240)는 결과 데이터의 전부 또는 일부를 포함하는 컨텐츠를 생성할 수 있다. 출력 제어부(240)는 결과 데이터에 따른 이펙트 컨텐츠가 제공될 수 있도록 사용자 인터페이스를 생성한다. The result generating unit 224 reflects the control data generated by the processing unit 223 and generates result data. The generated result data is transmitted to the output control unit 240 and can be used for generating a user interface. The output control unit 240 may generate content including all or a part of the result data. The output control unit 240 generates a user interface so that effect contents according to the result data can be provided.

처리부(223) 및 결과 생성부(224)에 의해 생성된 데이터는 별개의 컴퓨팅 장치로 전달될 수 있다. 크리켓 경기 결과 데이터, 화상 프레임 세트 및 3차원의 동영상 데이터는 별개의 컴퓨팅 장치 또는 출력 장치로 통신부(260)를 통해 전달될 수 있다. 크리켓 경기 결과 데이터, 화상 프레임 세트 및 3차원의 동영상 데이터는 시각적 또는 청각적으로 출력될 수 있도록 가공되어 컴퓨팅 장치 또는 출력 장치로 전달될 수 있다. The data generated by the processing unit 223 and the result generating unit 224 may be transmitted to a separate computing device. The cricket match result data, the image frame set, and the three-dimensional moving image data may be transmitted through the communication unit 260 to a separate computing device or output device. The cricket game result data, the image frame set, and the three-dimensional moving image data can be processed to be outputted visually or audibly and transmitted to a computing device or an output device.

본 실시예에 따르면, 제어 장치(200)로부터 데이터를 수신 받기 위해서 컴퓨팅 장치 또는 출력 장치는 소정의 인증 절차를 수행해야 할 수 있다. 인증 절차가 수행된 컴퓨팅 장치 또는 출력 장치는 소정의 기간 동안 제어 장치(200)로부터 데이터를 수신 받을 수 있다. According to the present embodiment, in order to receive data from the control device 200, the computing device or the output device may have to perform a predetermined authentication procedure. The computing device or the output device on which the authentication process has been performed may receive data from the control device 200 for a predetermined period of time.

본 실시예에 따른 제어 장치(200)는 센싱 장치(100), 출력 장치(300), 피칭 장치(500)의 동작을 제어하여 사용자에게 가상의 크리켓 경기를 하는 효과를 제공할 수 있다. The control device 200 according to the present embodiment can control the operation of the sensing device 100, the output device 300, and the pitching device 500 to provide a user with an effect of playing a virtual cricket game.

도 11는 처리부(223)의 구조를 나타내는 블록도이다. 11 is a block diagram showing the structure of the processing section 223. Fig.

도 11에 도시된 바와 같이, 처리부(223)는 타격 여부 판단부(2231), 위켓 타격 판단부(2232), 경기 흐름 발생부(2233)를 포함할 수 있다. 11, the processing unit 223 may include a hit determination unit 2231, a wicket hit determination unit 2232, and a business flow generation unit 2233.

처리부(223)는 생성된 센싱 데이터를 데이터베이스로 전송되도록 제어한다. 처리부(223)는 데이터베이스에서 패턴 별 센싱 데이터를 구분하여 관리되도록 처리할 수 있다. 처리부(223)는 센싱 데이터를 사용자 별로 구분하여 관리할 수 있다. 처리부(223)는 센싱 데이터의 패턴을 데이터베이스(400)로 전달할 수 있다. 데이터베이스(400)는 센싱 데이터의 패턴을 사용자의 구분 없이 저장 관리할 수 있다. 데이터베이스(400)는 센싱 데이터의 패턴을 사용자 별로 구분하여, 사용자 별 타격 여부 판단에 활용할 수 있다. The processing unit 223 controls the generated sensing data to be transmitted to the database. The processing unit 223 can process sensing data for each pattern in the database so as to be managed. The processing unit 223 can manage sensing data by user. The processing unit 223 may transmit the pattern of the sensing data to the database 400. [ The database 400 can store and manage the pattern of the sensing data without discriminating the user. The database 400 may classify the patterns of sensing data according to the users, and may be used to determine whether or not each user is hit.

타격 여부 판단부(2231)는 센싱 데이터에 포함된 라켓의 움직임 및/또는 운동하는 볼의 움직임을 기초로 볼의 타격 여부를 판단할 수 있다. 타격 여부 판단부(2231)는 운동하는 볼의 이동 방향, 이동 속도가 소정의 시점을 기준으로 급격하게 변화하는 이벤트를 검출하면, 이벤트와 대응시켜 볼이 타격되었다고 판단한다. The hit determination unit 2231 can determine whether or not the ball is hit based on the movement of the racket included in the sensing data and / or the movement of the ball. The hit determination unit 2231 determines that the ball is struck in response to the event when it detects an event in which the moving direction and the moving speed of the moving ball suddenly change based on a predetermined time.

위켓 타격 판단부(2232)는 설정된 가상 위켓 영역이 차지하는 범위를 고려하여, 위켓 타격 여부를 판단할 수 있다. 위켓 타격 판단부(2232)는 가상 위켓 영역이 차지하는 범위에 속하는 볼의 크기, 움직임 등을 데이터베이스로부터 수신하고, 수신된 가상 위켓 영역과 관련된 데이터를 이용하여 위켓 타격 여부를 판단할 수 있다. 이때, 데이터베이스로부터 수신되는 데이터는 현재 경기에 참가하는 사용자로 한정될 수 있다. 현재 경기에 참가하는 사용자에 대한 누적 데이터가 존재하지 않는 것으로 판단되면, 사용자의 구분 없이 누적된 가상 위켓 영역과 관련된 데이터가 수신된다. 다른 실시예에서, 위켓 타격 판단부(2232)는 실제 위켓을 통해 위켓 타격 여부를 판단할 수 있다. 이때, 위켓 타격 판단부(2232)는 실제 위켓에 포함된 센서부를 통해 위켓 타격 여부를 판단할 수 있다. The wicket hit determiner 2232 can determine whether the wicket is hit or not by considering the range occupied by the virtual wicket area. The wicket hit determiner 2232 can receive the size, movement, and the like of the ball belonging to the range occupied by the virtual wicket area from the database, and determine whether the wicket strikes using the data related to the received virtual wicket area. At this time, data received from the database may be limited to users participating in the current game. If it is determined that there is no accumulated data for a user participating in the current game, data related to the accumulated virtual wicket area is received without user identification. In another embodiment, the wicket hit determiner 2232 may determine whether the wicket is hit through the actual wicket. At this time, the wicket striking determiner 2232 can determine whether the wicket strikes through the sensor unit included in the actual wicket.

바운드 판단부(2233)는 운동하는 볼의 크기를 기준으로 바운드 여부를 판단할 수 있다. 바운드 판단부(2233)는 볼의 크기가 기 설정된 바운드 지름과 일치하거나, 기 설정된 바운드 범위 내에 속하는 경우, 해당 시점에 볼이 바운드됐다고 판단할 수 있다. 바운드에 의해 볼의 움직임은 급격하게 변화될 수 있다. The bound determination unit 2233 can determine whether or not the ball is bound based on the size of the ball to be moved. The bound determination unit 2233 can determine that the ball is bound at the time point when the size of the ball matches the predetermined bounding diameter or falls within the predetermined bounding range. The movement of the ball by the bound can be changed rapidly.

타격 여부 판단부(2231), 위켓 타격 판단부(2232), 바운드 판단부(2233)는 운동하는 볼의 움직임을 통해 운동하는 볼의 특정 액션(action)에 대해서 결정할 수 있다. 볼의 특정 액션은 공중에서의 움직임 외에 소정의 범위를 초과하는 움직임 변화를 야기시키는 액션으로 한정될 수 있다. 예를 들어, 볼의 특정 액션은 볼의 이동 방향을 변화시키는 바운드, 타격, 충돌, 캐치(catch) 중 하나 일 수 있다. 볼의 특정 액션은 시뮬레이션 영상 생성에 이용될 수 있다. The hit determination unit 2231, the whip hit determination unit 2232, and the bound determination unit 2233 can determine a specific action of the ball to be moved through the motion of the ball to be moved. A specific action of the ball may be limited to an action that causes a motion change in excess of a predetermined range other than a motion in the air. For example, a particular action of a ball may be one of bound, hit, collision, or catch, which changes the direction of movement of the ball. The specific action of the ball can be used to generate the simulation image.

흐름 데이터 생성부(2234)는 볼의 타격 여부, 위켓 타격 여부, 볼의 움직임 등을 종합적으로 분석하여 가상의 크리켓 경기의 흐름을 제어한다. 흐름 데이터 생성부(2234)는 경기 상황 데이터, 경기 제어 데이터 등을 생성한다. The flow data generation unit 2234 controls the flow of the virtual cricket game by comprehensively analyzing whether the ball is hit, whether the ball is hit or not, and the movement of the ball. The flow data generation unit 2234 generates competition condition data, competition control data, and the like.

도 12은 본 발명의 실시예에 따른 시뮬레이션 시스템(10)의 구조를 나타내는 블록도이다. 12 is a block diagram showing the structure of the simulation system 10 according to the embodiment of the present invention.

도 12에 도시된 바와 같이, 시뮬레이션 시스템(10)은 센싱 장치(100), 제어 장치(200), 출력 장치(300), 데이터베이스(400)를 포함할 수 있다. 시뮬레이션 시스템(10)은 센싱 장치(100), 제어 장치(200), 출력 장치(300), 데이터베이스(400)가 전기적으로 연결되거나 통신망을 통해 연결될 수 있다. 12, the simulation system 10 may include a sensing device 100, a control device 200, an output device 300, and a database 400. The simulation system 10 may be electrically connected to the sensing device 100, the control device 200, the output device 300, and the database 400, or may be connected through a communication network.

센싱 장치(100)는 피칭 장치에 의해 피칭된 볼의 움직임, 사용자의 움직임 등을 센싱한다. 센싱 장치(100)는 센싱 데이터를 제어 장치(200) 및/또는 데이터베이스(400)로 전송한다. 센싱 장치(100)는 운동하는 볼의 움직임을 추론할 수 있다. 센싱 장치(100)는 센싱 데이터의 패턴에 대한 데이터를 데이터베이스(400)로부터 수신하고, 수신된 데이터를 이용하여 운동하는 볼의 움직임을 추론할 수 있다. 센싱 장치(100)는 운동하는 볼의 3차원 움직임을 포함하는 동영상을 생성할 수 있다. The sensing device 100 senses the movement of the ball, the movement of the user, etc., which are pitched by the pitching device. The sensing device 100 transmits sensing data to the control device 200 and / or the database 400. The sensing device 100 can deduce the motion of the ball to be moved. The sensing device 100 may receive data on a pattern of sensing data from the database 400 and may infer the motion of the ball that is moving using the received data. The sensing device 100 may generate a moving image including a three-dimensional motion of a moving ball.

제어 장치(200)는 하나 이상의 프로세서를 구비하고 있어 설치된 프로그램을 실행시킬 수 있다. 제어 장치(200)는 크리켓 시뮬레이션 시스템(10)의 각 구성요소들을 제어하며 크리켓 시뮬레이션 영상 구현을 위한 각종 연산을 수행한다. 제어 장치(200)는 센싱 장치로부터 수신된 센싱 데이터를 이용하여 하나 이상의 사용자가 크리켓 경기를 할 수 있도록 제어하는 기능을 수행한다. The control device 200 includes one or more processors and can execute the installed programs. The control device 200 controls each component of the cricket simulation system 10 and performs various operations for implementing the cricket simulation image. The control device 200 controls the at least one user to play a cricket game using the sensing data received from the sensing device.

출력 장치(300)는 제어 장치(200)로부터 수신된 출력 데이터를 출력할 수 있다. 출력 장치(300)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display), 스크린 중에서 적어도 하나를 포함할 수 있다. The output device 300 can output the output data received from the control device 200. [ The output device 300 may be a liquid crystal display, a thin film transistor-liquid crystal display, an organic light-emitting diode, a flexible display, a three-dimensional display 3D display, an electrophoretic display, and a screen.

데이터베이스(400)는 센싱 장치(100), 제어 장치(200)에 의해 생성된 데이터를 수신하여 관리한다. 데이터베이스(400)는 센싱 데이터를 일정한 규칙에 따른 패턴으로 분류할 수 있다. 데이터베이스(400)는 출력 데이터의 생성에 필요한 다양한 컨텐츠를 저장 관리할 수 있다. 데이터베이스(400)는 센싱 장치(100), 제어 장치(200)로부터 계속적으로 데이터를 수신하고 수신된 데이터를 가공하여 저장 관리할 수 있다. The database 400 receives and manages data generated by the sensing device 100 and the control device 200. [ The database 400 can classify the sensing data into a pattern according to a certain rule. The database 400 can store and manage various contents necessary for generation of output data. The database 400 can continuously receive data from the sensing device 100 and the control device 200, process the received data, and store and manage the data.

피칭 장치(500)는 제어 장치(200)로부터의 볼 발사 신호에 따라 볼을 발사시킬 수 있다. 볼 발사 신호는 볼의 발사 여부 및/또는 볼의 움직임에 대한 관련 데이터를 포함할 수 있다. 볼 발사 신호는 발사되어야 하는 볼의 개수 등을 포함할 수 있다. 볼 발사 신호는 볼의 초기 속도 및 방향에 대한 정보를 포함할 수 있다. 피칭 장치(500)는 관리자에 의해 프로그램된 경로에 따라 볼이 피칭되도록 제어할 수 있다. 피칭 장치(500)는 사용자 별로 다른 경로가 적용되도록 제어할 수 있다. 피칭 장치(500)는 팬-틸팅 구동이 가능하여 다양한 방향으로 볼을 피칭할 수 있고, 볼의 경로를 변화시킬 수 있는 별도의 휠을 이용하여 다양한 볼의 구질을 변화시킬 수도 있다. The pitching device 500 can fire the ball in accordance with the ball firing signal from the control device 200. [ The ball launch signal may include data regarding whether the ball is fired and / or the movement of the ball. The ball launch signal may include the number of balls to be fired and the like. The ball launch signal may include information about the initial velocity and direction of the ball. The pitching apparatus 500 can control the ball to be pitched along the path programmed by the manager. The pitching device 500 can control the different paths to be applied to each user. The pitching device 500 is capable of performing pan-tilting driving and can pitch the ball in various directions and may change the pitch of various balls by using a separate wheel that can change the path of the ball.

도 12에는 도시되어 있지 않지만, 시뮬레이션 시스템(10)은 실제 위켓 장치를 더 포함할 수 있다. 실제 위켓 장치는 센서부, 통신부, 음향 출력부를 포함할 수 있다. 실제 위켓 장치는 타자 모드에서만 동작되도록 설정될 수 있다. 투수 모드에서는 실제 위켓 장치는 동작되지 않는다. 센서부는 실제 위켓 장치에 대한 터치 이벤트의 발생 여부를 센싱한다. 통신부는 실제 위켓 장치에 의해 센싱된 데이터를 제어 장치(100)로 전달한다. 음향 출력부는 실제 위켓 장치에 대한 터치 이벤트와 대응되는 청각적 데이터를 출력하는 기능을 제어한다. 음향 출력부는 터치 이벤트의 크기에 따른 청각적 데이터를 출력한다. Although not shown in FIG. 12, the simulation system 10 may further include an actual widget device. The actual widget apparatus may include a sensor unit, a communication unit, and an acoustic output unit. The actual widget device may be set to operate only in the batter mode. In the pitcher mode, the actual jacket device does not work. The sensor unit senses whether or not a touch event occurs with respect to the actual widget device. The communication unit transmits the data sensed by the actual widget device to the control device 100. The sound output unit controls the function of outputting the auditory data corresponding to the touch event to the actual widget device. The sound output unit outputs auditory data according to the size of the touch event.

도 13 내지 도 14은 본 발명의 실시예들에 따른 동작 방법의 흐름도들이다. 13 to 14 are flowcharts of an operation method according to embodiments of the present invention.

도 13은 센싱 장치의 동작 방법을 중심으로 표현된 흐름도이며, 도 8은 제어 장치의 동작 방법을 중심으로 표현된 흐름도이다. FIG. 13 is a flowchart mainly showing the operation method of the sensing device, and FIG. 8 is a flowchart mainly showing the operation method of the control device.

본 실시예에 따른 센싱 장치의 동작 방법은 센싱 데이터를 수신하는 단계(S110), 센싱 데이터를 기초로 운동하는 볼의 움직임을 추론하는 단계(S120), 추론된 볼의 움직임을 기초로 렌더링된 동영상을 생성하는 단계(S130)를 포함할 수 있다. The operation method of the sensing apparatus according to the present embodiment includes receiving sensing data (S110), inferring a movement of the ball moving based on the sensing data (S120) (S130). ≪ / RTI >

S110에서 센싱 장치는 정해진 영역을 촬영한 센싱 데이터를 수신할 수 있다. 센싱 데이터는 정해진 영역을 촬영한 화상 프레임을 포함할 수 있다. 센싱 데이터는 피칭 장치 및/또는 가상 위켓 영역을 포함하는 정해진 영역을 촬영한 화상 프레임을 포함할 수 있다. 정해진 영역을 촬영하기 위해 화상 프레임은 소정의 방향으로 촬영된 것일 수 있다. 센싱 데이터는 사용자 및/또는 관리자에 의해 설정된 촬영 방향, 정해진 영역을 촬영한 데이터일 수 있다. In S110, the sensing device can receive sensing data photographed in a predetermined area. The sensing data may include an image frame photographed in a predetermined area. The sensing data may include an image frame that photographs a predetermined area including a pitching device and / or a virtual face area. The image frame may be photographed in a predetermined direction to photograph a predetermined area. The sensing data may be data photographed in a photographing direction and a predetermined area set by a user and / or an administrator.

S120에서 센싱 장치는 이미지 프레임 세트를 분석하여, 운동하는 볼의 움직임을 추론할 수 있다. 센싱 장치는 이미지 프레임 세트로부터 운동하는 볼의 위치 변화 및 운동하는 볼의 크기 변화를 산출할 수 있다. 센싱 장치는 운동하는 볼의 위치 변화 및 운동하는 볼의 크기 변화를 기초로 볼의 움직임을 입체적으로 추론할 수 있다. In S120, the sensing device may analyze the set of image frames to deduce the motion of the moving ball. The sensing device may calculate a change in the position of the ball moving from the image frame set and a change in the size of the moving ball. The sensing device can infer three-dimensionally the movement of the ball based on a change in the position of the moving ball and a change in the size of the moving ball.

이때, 센싱 장치는 이미지 프레임 상에서의 볼의 위치 변화를 결정할 수 있다. 촬영된 이미지 프레임은 정해진 제1 방향으로 정해진 영역을 촬영한 것일 수 있다. At this time, the sensing device can determine a positional change of the ball on the image frame. The photographed image frame may have photographed a predetermined region in a predetermined first direction.

추가적으로 센싱 장치는 제1 방향과 다른 제2 방향에서의 볼의 움직임을 결정할 수 있다. 센싱 장치는 이미지 프레임 상에서의 볼의 크기 변화를 기초로 제2 방향에서의 볼의 위치 변화를 추론할 수 있다. 제2 방향 상에서의 절대적 위치 값(높이 값)은 볼의 크기와 대응되어 미리 저장될 수 있다. In addition, the sensing device may determine the movement of the ball in a second direction different from the first direction. The sensing device may deduce a change in position of the ball in the second direction based on a change in size of the ball on the image frame. The absolute position value (height value) in the second direction can be stored in advance in association with the size of the ball.

좀더 구체적으로, S120에서 센싱 장치는 이미지 프레임 내에서의 운동하는 볼의 2차원적인 움직임을 추론한다. 추론된 2차원적인 움직임은 초기 좌표 성분 값들 및 최종 좌표 성분 값들을 포함할 수 있다. 좌표 성분 값들은 미리 설정된 기준점으로부터의 상대적 거리 값들을 포함할 수 있다. More specifically, in S120, the sensing device deduces a two-dimensional motion of the moving ball within the image frame. The inferred two-dimensional motion may include initial coordinate component values and final coordinate component values. The coordinate component values may include relative distance values from a preset reference point.

센싱 장치는 이미지 프레임 및 이전 이미지 프레임에 포함된 운동하는 볼의 위치들을 비교하여 운동하는 볼의 2차원적인 움직임을 추론한다. 운동하는 볼의 위치들은 이미지 프레임의 임의의 기준점으로부터의 좌표 성분들로 표현될 수 있다. 센싱 장치는 이미지 프레임에 포함된 제1 방향으로의 운동하는 볼의 움직임을 추론할 수 있다. 센싱 장치는 이미지 프레임에 포함된 제1 볼 및 이전 이미지 프레임에 포함된 제2 볼 사이의 간격으로 운동하는 볼의 이동 속도를 계산할 수 있다. 제1 볼 및 제2 볼 사이의 거리 값(distance)을 촬영된 프레임 레이트(frame rate)를 기초로 산출된 시간으로 나누면 운동하는 볼의 속도(velocity)가 산출될 수 있다. The sensing device compares the positions of the moving balls contained in the image frame and the previous image frame to deduce the two-dimensional movement of the ball moving. The positions of the moving balls may be represented by coordinate components from any reference point of the image frame. The sensing device may deduce the movement of the moving ball in the first direction included in the image frame. The sensing device may calculate a moving velocity of the ball moving at a distance between the first ball included in the image frame and the second ball included in the previous image frame. The velocity of the moving ball can be calculated by dividing the distance between the first ball and the second ball by the calculated time based on the photographed frame rate.

센싱 장치는 이미지 프레임 내에서의 제2 방향으로의 운동하는 볼의 1차원적인 움직임을 추론한다. 여기서, 제2 방향은 제1 방향과 직각을 이루는 방향일 수 있다. 제2 방향 상의 움직임은 이미지 분석 기법으로는 추론되지 않을 수 있다. The sensing device deduces a one-dimensional movement of the moving ball in the second direction within the image frame. Here, the second direction may be a direction perpendicular to the first direction. Motion in the second direction may not be deduced by image analysis techniques.

센싱 장치는 원근법에 따라 이미지 프레임에 포함된 운동하는 볼의 크기를 분석하여, 운동하는 볼의 움직임을 추론할 수 있다. 센싱 장치는 운동하는 볼의 지름 길이 값을 기초로 운동하는 볼의 제2 방향에서의 위치 변화를 추론한다. 이때, 센싱 장치는 볼의 크기 별 위치 값들을 포함하는 테이블을 이용할 수 있다. 예를 들어, 제1 지름 길이 값의 볼은 대응되는 제1 높이 값에 따라 기준 면에 대해서 제1 높이에 위치한다고 추론된다. The sensing device can estimate the motion of the moving ball by analyzing the size of the moving ball included in the image frame according to the perspective. The sensing device deduces a change in position of the moving ball in the second direction based on the diameter length value of the moving ball. At this time, the sensing device may use a table including position values of the ball size. For example, it is deduced that the ball of the first diameter length value is located at the first height relative to the reference plane according to the corresponding first height value.

센싱 장치는 2차원적인 움직임 및 1차원적인 움직임을 이용하여 3차원적인 움직임을 추론한다. The sensing device deduces a three-dimensional motion using a two-dimensional motion and a one-dimensional motion.

S130에서 센싱 장치는 추론된 운동하는 볼을 3차원적으로 표현한 동영상을 생성한다. 센싱 장치는 피칭 장치로부터 피칭된 볼, 사용자, 가상 위켓 영역과 대응되는 이미지들을 포함하는 동영상을 생성할 수 있다. In S130, the sensing device generates a moving image in which the inferred moving ball is expressed in three dimensions. The sensing device may generate a motion picture including a ball, a user, and an image corresponding to a pitched area from the pitching device.

도 14에 도시된 바와 같이, 제어 장치의 동작 방법은 볼의 움직임을 기초로 렌더링된 동영상을 수신하는 단계(S210), 동영상 및 센싱 데이터를 고려하여 경기 제어 데이터를 생성하는 단계(S220), 경기 제어 데이터에 따른 피칭 장치 제어 데이터를 생성, 전달하고, 경기 제어 데이터에 따른 출력 데이터를 생성, 전달하는 단계(S230)를 포함할 수 있다. As shown in FIG. 14, the operation method of the control device includes a step S210 of receiving the rendered moving image based on the movement of the ball, a step S220 of generating competition control data in consideration of the moving image and the sensing data, And generating and transmitting pitching device control data according to the control data, and generating and transmitting output data according to the competition control data (S230).

S210에서 제어 장치는 제어 장치는 운동하는 볼의 움직임을 기초로 렌더링된 동영상 및 센싱 데이터(화상 프레임 세트)를 수신한다. In S210, the control device receives the moving image and sensing data (image frame set) rendered based on the motion of the ball to be moved.

S220에서 제어 장치는 동영상 및 센싱 데이터를 고려하여 제어 데이터를 생성한다. 제어 장치는 수신된 화상 프레임 세트 및 동영상을 기초로 사용자의 동작을 예상하고, 예상된 사용자의 동작과 연계 시켜 센싱 장치를 제어하고, 피칭 장치를 제어하는 제어 데이터를 생성한다. S230에서 제어 장치는 제어 데이터에 따른 피칭 장치를 제어하는 제어 데이터를 생성, 출력 장치를 제어하는 제어 데이터를 생성하여 각 장치로 전송한다. In S220, the control device generates control data in consideration of moving images and sensing data. The control device predicts the operation of the user on the basis of the received image frame set and moving image, controls the sensing device in connection with the operation of the expected user, and generates control data for controlling the pitching device. In S230, the control device generates control data for controlling the pitching device in accordance with the control data, generates control data for controlling the output device, and transmits the control data to each device.

볼의 움직임이 완전히 소멸되고 볼의 움직임 이후에 제공되는 출력 데이터가 출력되는 경우, 제어 장치는 후속의 볼 발사가 필요하다고 판단하며, 볼 발사 신호를 포함하는 제어 데이터를 생성하고, 이를 피칭 장치로 전송한다. When the movement of the ball is completely canceled and the output data provided after the movement of the ball is output, the control device determines that a subsequent ball shot is necessary, generates control data including a ball shot signal, send.

운동하는 볼이 감지되고, 볼의 3차원 움직임에 대한 동영상이 생성되면, 제어 장치는 볼과 관련된 데이터, 동영상이 출력 장치를 통해 출력되도록 제어한다. When a moving ball is sensed and a moving picture for the three-dimensional movement of the ball is generated, the control device controls the data related to the ball and the moving picture to be outputted through the output device.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

100: 센싱 장치 200: 제어 장치
300: 출력 장치 400: 데이터베이스
500: 피칭 장치
100: sensing device 200: control device
300: output device 400: database
500: Pitching device

Claims (5)

제어 장치가 센싱 장치를 통해 소정의 구역 내의 하나 이상의 객체에 대한 데이터를 수신하는 단계;
상기 제어 장치가 상기 수신된 데이터를 움직임에 대한 정보를 기초로 최초 움직임 패턴으로 변환하는 단계;
상기 제어 장치가 상기 움직임 패턴 및 환경 정보 및 객체와의 충돌 여부, 접촉 여부 등을 종합적으로 판단하여 소정의 구역 내의 제1 움직임 패턴으로 분할하여 생성하는 단계;
상기 제어 장치가 상기 움직임 패턴 및 상기 제1 움직임 패턴을 기초로 외부 구역에서의 상기 공의 움직임을 확장하되, 기 설정된 장소 정보 등을 고려하여, 상기 외부 구역에서의 확장된 제2 움직임 패턴으로 분할하여 생성하는 단계; 및
상기 제어 장치가 상기 제1 움직임 패턴 및 제2 움직임 패턴에 따른 가상 경기 진행 정보를 생성하는 단계;를 포함하는, 가상의 크리켓 경기를 제어하는 방법.
The control device receiving data for one or more objects in a predetermined area via a sensing device;
Converting the received data into an initial movement pattern based on information on movement;
The control device comprehensively determining whether or not the movement pattern, the environment information, and the object are in conflict with each other, dividing the first movement pattern into a first movement pattern in a predetermined area, and creating the divided first movement pattern;
The control device extends the movement of the ball in the outer zone on the basis of the movement pattern and the first movement pattern and divides the ball into an extended second movement pattern in the outer zone, ; And
Wherein the controller generates virtual game progress information according to the first movement pattern and the second movement pattern.
제1항에 있어서,
상기 제1 움직임 패턴으로 분할하여 생성하는 단계는
상기 움직임 패턴에 대해서 기 설정된 환경 정보 및 센싱된 객체와의 접촉 여부를 종합적으로 판단하고, 상기 환경 정보 및 상기 객체와의 접촉 여부및 움직임 패턴을 고려하여 구역 내에서의 움직이는 공에 대한 제1 움직임 패턴을 생성하는 점을 특징으로 하는, 가상의 크리켓 경기를 제어하는 방법.
The method according to claim 1,
The step of dividing and generating the first movement pattern
A first motion of the moving ball in the region is determined by taking into consideration the environment information and the contact with the object and the movement pattern, Characterized in that it generates a pattern.
센싱 장치를 통해 소정의 구역 내의 하나 이상의 객체에 대한 데이터를 수신하고, 상기 제어 장치가 상기 수신된 데이터를 움직임에 대한 정보를 기초로 최초 움직임 패턴으로 변환하는 변환부;
상기 움직임 패턴 및 환경 정보 및 객체와의 충돌 여부, 접촉 여부 등을 종합적으로 판단하여 소정의 구역 내의 제1 움직임 패턴으로 분할하여 생성하는 제1 움직임 패턴 생성부;
상기 움직임 패턴 및 상기 제1 움직임 패턴을 기초로 외부 구역에서의 상기 공의 움직임을 확장하되, 기 설정된 장소 정보 등을 고려하여, 상기 외부 구역에서의 확장된 제2 움직임 패턴으로 분할하여 생성하는 제2 움직임 패턴 생성부; 및
상기 제1 움직임 패턴 및 제2 움직임 패턴에 따른 가상 경기 진행 정보를 생성하는 진행 정보 생성부;를 포함하는, 가상의 크리켓 경기를 제어하는 제어 장치.
A converting unit for receiving data for at least one object in a predetermined region via a sensing device and for converting the received data into an initial movement pattern based on information about movement;
A first motion pattern generating unit for generating a first motion pattern by dividing the motion pattern and the environment information into a first motion pattern within a predetermined region by comprehensively determining whether the object collides with the environment,
A second motion pattern generating unit for dividing the motion of the ball in an outer zone based on the motion pattern and the first motion pattern into an extended second motion pattern in the outer zone, 2 movement pattern generation unit; And
And a progress information generating unit for generating virtual progress information according to the first movement pattern and the second movement pattern.
제3항에 있어서,
상기 제1 움직임 패턴 생성부는
상기 움직임 패턴에 대해서 기 설정된 환경 정보 및 센싱된 객체와의 접촉 여부를 종합적으로 판단하고, 상기 환경 정보 및 상기 객체와의 접촉 여부및 움직임 패턴을 고려하여 구역 내에서의 움직이는 공에 대한 제1 움직임 패턴을 생성하는 점을 특징으로 하는, 가상의 크리켓 경기를 제어하는 제어 장치.
The method of claim 3,
The first motion pattern generator
A first motion of the moving ball in the region is determined by taking into consideration the environment information and the contact with the object and the movement pattern, Characterized in that a pattern is generated by the player.
컴퓨터를 이용하여 제1항 내지 제2항 중 어느 한 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable storage medium for executing the method of any one of claims 1 to 2 using a computer.
KR1020170128292A 2017-09-19 2017-09-29 Apparatus, method and computer for controlling a virtual cricket game KR101977964B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170128292A KR101977964B1 (en) 2017-09-29 2017-09-29 Apparatus, method and computer for controlling a virtual cricket game
PCT/KR2017/014658 WO2019059458A1 (en) 2017-09-19 2017-12-13 Sensing apparatus and method for making inference about motion of moving ball

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170128292A KR101977964B1 (en) 2017-09-29 2017-09-29 Apparatus, method and computer for controlling a virtual cricket game

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190053247A Division KR20190055037A (en) 2019-05-07 2019-05-07 Apparatus, method and computer for controlling a virtual cricket game

Publications (2)

Publication Number Publication Date
KR20190038730A true KR20190038730A (en) 2019-04-09
KR101977964B1 KR101977964B1 (en) 2019-05-15

Family

ID=66167560

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170128292A KR101977964B1 (en) 2017-09-19 2017-09-29 Apparatus, method and computer for controlling a virtual cricket game

Country Status (1)

Country Link
KR (1) KR101977964B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112169338A (en) * 2020-10-15 2021-01-05 网易(杭州)网络有限公司 Control method and device for sphere motion, storage medium and computer equipment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3523000A1 (en) 2017-06-22 2019-08-14 Centurion VR, LLC Virtual reality simulation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200197114Y1 (en) * 2000-04-20 2000-09-15 주식회사동인인터내셔널 Indoor cricket ground

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR200197114Y1 (en) * 2000-04-20 2000-09-15 주식회사동인인터내셔널 Indoor cricket ground

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112169338A (en) * 2020-10-15 2021-01-05 网易(杭州)网络有限公司 Control method and device for sphere motion, storage medium and computer equipment
CN112169338B (en) * 2020-10-15 2024-06-11 网易(杭州)网络有限公司 Sphere motion control method and device, storage medium and computer equipment

Also Published As

Publication number Publication date
KR101977964B1 (en) 2019-05-15

Similar Documents

Publication Publication Date Title
JP7247350B2 (en) Method, apparatus, electronic device and computer program for generating mark information in virtual environment
US11161041B2 (en) Virtual object control method and apparatus, electronic apparatus, and storage medium
JP7299312B2 (en) VIRTUAL SCENE DISPLAY METHOD, ELECTRONIC DEVICE AND COMPUTER PROGRAM
JP2016539668A (en) Augmented reality device, method and program
KR102085440B1 (en) Virtual Reality Control System
KR102665665B1 (en) Method and apparatus for displaying virtual environment pictures, devices, and storage media
CN110732135B (en) Virtual scene display method and device, electronic equipment and storage medium
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
US9028311B2 (en) Target game incorporating strategy elements
WO2021244310A1 (en) Method and apparatus for controlling virtual object in virtual scene, and device and storage medium
CN112807681A (en) Game control method, device, electronic equipment and storage medium
TWI803147B (en) Virtual object control method, device, apparatus, storage medium, and program product thereof
KR101977964B1 (en) Apparatus, method and computer for controlling a virtual cricket game
JP2019150269A (en) Game program, game method, and information processor
JP6064111B2 (en) User interface system, operation signal analysis method and program for batting operation
JP6832320B2 (en) Systems, methods, and programs for providing content using augmented reality technology
KR20190055037A (en) Apparatus, method and computer for controlling a virtual cricket game
KR101326869B1 (en) Virtual golf simulation apparatus for supporting generation of virtual golf course and method therefor
KR102006905B1 (en) Sensing apparatus and method for inferring movement of a moving ball
KR20190082174A (en) Sensing apparatus and method for inferring movement of a moving ball
JP5155841B2 (en) Scorability quantification device and scoring possibility quantification program
CN113703654A (en) Camouflage processing method and device in virtual scene and electronic equipment
CN113663329B (en) Shooting control method and device for virtual character, electronic equipment and storage medium
CN117298580A (en) Virtual object interaction method, device, equipment, medium and program product
CN116966549A (en) Method, device, equipment and storage medium for determining aiming point in virtual scene

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant