KR102517067B1 - Ceiling golf simulation system using two cameras - Google Patents
Ceiling golf simulation system using two cameras Download PDFInfo
- Publication number
- KR102517067B1 KR102517067B1 KR1020210053032A KR20210053032A KR102517067B1 KR 102517067 B1 KR102517067 B1 KR 102517067B1 KR 1020210053032 A KR1020210053032 A KR 1020210053032A KR 20210053032 A KR20210053032 A KR 20210053032A KR 102517067 B1 KR102517067 B1 KR 102517067B1
- Authority
- KR
- South Korea
- Prior art keywords
- ball
- camera
- cameras
- angle
- calculating
- Prior art date
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 36
- 239000013598 vector Substances 0.000 claims abstract description 29
- 238000012937 correction Methods 0.000 claims abstract description 28
- 238000004364 calculation method Methods 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 238000003780 insertion Methods 0.000 claims description 5
- 230000037431 insertion Effects 0.000 claims description 5
- 230000033001 locomotion Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000002452 interceptive effect Effects 0.000 description 2
- 101100491335 Caenorhabditis elegans mat-2 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910052736 halogen Inorganic materials 0.000 description 1
- 150000002367 halogens Chemical class 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/36—Training appliances or apparatus for special sports for golf
- A63B69/3658—Means associated with the ball for indicating or measuring, e.g. speed, direction
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0021—Tracking a path or terminating locations
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B71/00—Games or sports accessories not covered in groups A63B1/00 - A63B69/00
- A63B71/06—Indicating or scoring devices for games or players, or for other sports activities
- A63B71/0619—Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
- A63B71/0622—Visual, audio or audio-visual systems for entertaining, instructing or motivating the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G06T5/001—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/292—Multi-camera tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0021—Tracking a path or terminating locations
- A63B2024/0028—Tracking the path of an object, e.g. a ball inside a soccer pitch
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/806—Video cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30221—Sports video; Sports image
- G06T2207/30224—Ball; Puck
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Physical Education & Sports Medicine (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Geometry (AREA)
- Human Computer Interaction (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
본 발명은 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템에 관한 것으로, 기준점(tee)의 공과 타격으로 인해 기준점(tee)에서 공중으로 비행할 공을 촬영한 제1 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제1 카메라에서 시작하는 정면방향 벡터와 제1 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제1 단계, 제2 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라에서 시작하는 정면방향 벡터와 제2 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 단계, 제1, 제2 카메라에서의 공까지의 거리와 제1, 제2 카메라의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 제3단계, 제1 단계 내지 제3 단계에서 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 제 4단계, 제1, 제2 카메라에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 방위각, 발사각을 계산하는 제5 단계, 제1 카메라의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 제 6단계, 상기 제6 단계에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 계산하는 제7 단계, 클럽의 진행방향과 비행하는 공의 방위각 차이 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 제8 단계, 비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 제9 단계, 및 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 제10 단계로 구성된다.The present invention relates to a ceiling-type golf simulation system using two cameras, and relates to a ball at a reference point (tee) and a ball to fly from a reference point (tee) due to a hit, and an image of a first camera and an error correction obtained in advance. The first step of calculating the angle between the front direction vector starting from the first camera and the vector connecting the first camera to the ball using data, and the second step using the image of the second camera and error correction data acquired in advance. The second step of calculating the angle between the front direction vector starting from the camera and the vector connecting the second camera to the ball, the distance to the ball from the first and second cameras and the positional coordinates of the first and second cameras The 3rd step of calculating the 3D coordinates of the ball using the 3D coordinates, the 4th step of repeatedly inserting the 3D coordinates of the ball into the 3D array of the ball by repeating as many frames as the frames captured in the 1st to 3rd steps, by the 1st and 2nd cameras A fifth step of calculating the azimuth and launch angle of the ball using the time interval between each frame of the captured image and the positional difference of each point, comparing neighboring frames starting with the first and second frames of the image captured by the first camera 6th step of detecting and storing the difference pixels, 7th step of analyzing the change in pixels between frames detected in the 6th step and calculating the direction of movement of the club, difference between the direction of movement of the club and the azimuth angle of the flying ball and an eighth step of simulating sidespin of the ball based on preset data, a ninth step of simulating backspin of the ball based on the launch angle of the flying ball and preset data, and flight. It consists of a tenth step of calculating the trajectory data of the ball based on the backspin, sidespin, azimuth and launch angle of the ball being played and displaying it on the screen along with the virtual golf course.
Description
본 발명은 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템에 관한 것으로서, 더욱 상세하게는 기준점의 직상단에 가까운 곳의 카메라를 통해 취득되는 영상으로부터 정확도가 높은 공의 방위각(좌우각)을 검출하여, 가상 골프 코스에서 골프공의 궤적을 표시하기 위한 궤적 데이터를 계산할 수 있는 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템에 관한 것이다.The present invention relates to a ceiling type golf simulation system using two cameras. A ceiling type golf simulation system using two cameras capable of calculating trajectory data for displaying the trajectory of a golf ball in a virtual golf course.
최근 야구, 축구, 농구, 그리고 골프 등과 같은 인기 스포츠 경기를 실내나 특정 장소에서 시뮬레이션을 통해 인터랙티브 스포츠 게임(Interactive Sports Game)의 형태로 즐길 수 있도록 하는 여러 가지 다양한 장치들에 대한 개발이 활발하게 이루어지고 있다.Recently, various devices that allow users to enjoy popular sports games such as baseball, soccer, basketball, and golf in the form of an interactive sports game through simulation indoors or in a specific place have been actively developed. are losing
특히, 최근에는 이른바 스크린 골프 시스템이 등장하여 사용자가 골프 클럽을 들고 골프 스윙을 함에 따라 타격 매트에 놓인 볼을 타격하면 감지장치가 이를 감지하여 이동하는 골프공의 물리적 특성을 추출하고 이를 바탕으로 가상의 골프코스에서 볼의 궤적이 시뮬레이션되도록 함으로써, 사용자가 가상 현실상에서 골프를 즐길 수 있도록 하는 기술이 개발되고 있다.In particular, recently, a so-called screen golf system has appeared, and when a user swings a golf club with a golf club and hits a ball placed on a hitting mat, a sensing device detects this and extracts the physical characteristics of the moving golf ball, based on which a virtual golf ball is played. A technology is being developed to enable users to enjoy golf in virtual reality by simulating a trajectory of a ball on a golf course.
이와 같은 인터랙티브 스포츠 게임에서 골프공 등의 볼을 이용하는 스포츠에 대한 시뮬레이션이 이루어지도록 하기 위해 운동하는 볼의 움직임에 대한 물리적 정보를 정확하게 감지하기 위한 각종 감지시스템에 대한 연구개발이 매우 활발하게 진행되고 있다.In such an interactive sports game, research and development on various sensing systems for accurately detecting physical information about the motion of a ball in motion is being actively conducted in order to simulate sports using balls such as golf balls. .
예컨대, 적외선 센서를 이용한 감지장치, 레이저 센서를 이용한 감지장치, 음향 센서를 이용한 감지장치, 그리고 카메라 센서를 이용한 감지장치 등 다양한 감지 방식이 등장하고 있으며, 운동하는 볼의 상태를 정확하게 감지하기 위하여 운동하는 볼에 대한 이미지를 취득하여 분석하는 카메라 센서 방식의 감지장치에 대한 연구가 활발하게 이루어지고 있다.For example, various sensing methods have emerged, such as a sensing device using an infrared sensor, a sensing device using a laser sensor, a sensing device using an acoustic sensor, and a sensing device using a camera sensor. Research on a camera sensor-type sensing device that acquires and analyzes an image of a ball playing is being actively conducted.
또한, 종래의 IR 센서 골프 시스템은, 조명으로서 할로겐 전구를 사용하고, 공의 전방, 즉 스크린을 향하는 공의 전방에 2열로 배열되는 두 개의 IR 센서모듈만을 이용하여, 타격으로 인해 공중을 비행하는 공을 감지하여 인식하고 있으나, 이 경우 공의 비행을 단순히 2열로 배열된 두 개의 IR 센서모듈로만 두 번만 감지하기 때문에 공의 비행 감지가 연속적으로 반복적으로 이루어지지 않아 공의 비행정보와 함께 클럽에 대한 정확도가 떨어지는 문제점이 있다.In addition, the conventional IR sensor golf system uses a halogen bulb as lighting and uses only two IR sensor modules arranged in two rows in front of the ball, that is, in front of the ball facing the screen, to prevent flying through the air due to hitting. The ball is sensed and recognized, but in this case, the flight of the ball is detected only twice with two IR sensor modules arranged in two rows, so the ball flight is not detected continuously and repeatedly. There is a problem with low accuracy.
특히, IR 센서 모듈의 해상도가 낮아, IR 센서모듈에 의해 감지되는 정보를 기초로 하는 클럽이나 공의 진행방향, 공의 속도, 회전 등에 대한 정보 역시 정확도가 낮다는 문제점이 있다.In particular, since the resolution of the IR sensor module is low, there is a problem in that information about the direction of movement of the club or ball, the speed of the ball, and rotation based on the information detected by the IR sensor module is also low in accuracy.
상기와 같은 종래기술의 문제점을 해결하기 위한 본 발명은, 기준점의 직상단에 가까운 곳의 카메라를 통해 취득되는 영상으로부터 공의 방위각(좌우각)을 검출하여, 가상 골프 코스에서 골프공의 궤적을 표시하기 위한 방위각의 정확도를 높일 수 있는 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템을 제공하는데 그 목적이 있다.The present invention to solve the problems of the prior art as described above, the trajectory of the golf ball in the virtual golf course is detected by detecting the azimuth angle (left and right angle) of the ball from the image acquired through the camera near the top of the reference point. Its purpose is to provide a ceiling-type golf simulation system using two cameras capable of increasing the accuracy of azimuth for display.
상기한 바와 같은 본 발명의 목적은, 기준점(tee)의 공과 타격으로 인해 기준점(tee)에서 공중으로 비행할 공을 촬영한 제1 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제1 카메라에서 시작하는 정면방향 벡터와 제1 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제1 단계; 제2 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라에서 시작하는 정면방향 벡터와 제2 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 단계; 제1, 제2 카메라에서의 공까지의 거리와 제1, 제2 카메라의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 제3단계; 상기 제1 단계 내지 제3 단계에서 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 제 4단계; 제1, 제2 카메라에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 방위각, 발사각을 계산하는 제5 단계; 제1 카메라의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 제 6단계; 상기 제6 단계에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 추정하는 제7 단계; 상기 클럽의 진행방향과 비행하는 공의 방위각 차이 속도 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 제8 단계; 비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 제9 단계; 및 상기 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 제10 단계로 구성되는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 방법에 의해 달성된다.As described above, an object of the present invention is to use the image of the first camera photographing the ball at the reference point (tee) and the ball to fly into the air from the reference point (tee) due to the hit and the error correction data obtained in advance by the first camera. A first step of calculating an angle between a front direction vector starting at and a vector connecting the first camera to the ball; a second step of calculating an angle between a front direction vector starting from the second camera and a vector connecting the second camera to the ball by using the image of the second camera and error correction data obtained in advance; a third step of calculating 3D coordinates of the ball using the distance to the ball from the first and second cameras and the positional coordinates of the first and second cameras; a fourth step of repeatedly inserting the ball into a three-dimensional array of balls by repeating as many frames as the shots of the ball in the first to third steps; A fifth step of calculating the azimuth and launch angles of the ball using the time interval between each frame of the image captured by the first and second cameras and the positional difference of each point; a sixth step of detecting and storing a pixel having a difference by comparing neighboring frames, starting with the first and second frames of the image captured by the first camera; a seventh step of estimating the moving direction of the club by analyzing the pixel change between frames detected in the sixth step; An eighth step of simulating sidespin of the ball based on the speed of the difference between the direction of the club and the azimuth of the flying ball and preset data; A ninth step of simulating the backspin of the ball based on the launch angle of the flying ball and preset data; and a 10th step of calculating the trajectory data of the ball based on the backspin, sidespin, azimuth and launch angle of the flying ball and displaying it on the screen along with the virtual golf course. It is achieved by a golf simulation method.
본 발명의 하나의 측면에 의하면, 상기 제4 단계는, 공의 3차원 좌표의 배열이 직선이 되도록 보정하는 단계를 더 포함하는 것을 특징으로 한다.According to one aspect of the present invention, the fourth step is characterized in that it further comprises the step of correcting the array of three-dimensional coordinates of the ball to be a straight line.
본 발명의 다른 측면에 의하면, 상기 제1 단계 이전에 공의 시작 위치(tee)를 기준점으로 정후방에 위치한 제1 카메라와 스크린을 향하는 방향을 기준으로 상기 제1 카메라의 오른쪽에 위한 제2 카메라의 X, Y, Z 좌표를 입력하는 단계; 제1, 제2 카메라가 공의 시작 위치를 지향하는 상태에서, 공으로 시작 위치를 기준점으로 타격 영역에 대응하는 직사각형을 만들고 제1, 2 카메라를 통해 기준점을 확인하여, 직사각형의 가로 및 세로값을 입력하는 단계 및 상기 단계들을 통해 제1, 제2 카메라의 위치, 렌즈의 시야각, 곡률로 인해 발생하는 오차를 보정할 오차 보정 데이터를 구하는 단계를 포함하여 구성되는 것을 특징으로 한다.According to another aspect of the present invention, a first camera located forward and backward with respect to the starting position (tee) of the ball before the first step and a second camera to the right of the first camera based on the direction toward the screen. Entering the X, Y, Z coordinates of; With the first and second cameras pointing at the starting position of the ball, a rectangle corresponding to the hitting area is created using the starting position as a reference point, and the reference point is checked through the first and second cameras to determine the horizontal and vertical values of the rectangle. It is characterized in that it is configured to include the step of inputting and obtaining error correction data for correcting errors caused by the positions of the first and second cameras, the angle of view of the lens, and the curvature through the above steps.
또한, 본 발명의 다른 목적은, 영상 입력부를 통해 입력되는 기준점(tee)의 공과 타격으로 인해 기준점(tee)에서 공중으로 비행할 공을 촬영한 제1 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제1 카메라에서 시작하는 정면방향 벡터와 제1 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제1 각도 계산부; 상기 영상 입력부를 통해 입력되는 제2 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라에서 시작하는 정면방향 벡터와 제2 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 각도 계산부; 상기 제1, 제2 카메라에서의 공까지의 거리와 상기 제1, 제2 카메라의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 3차원 좌표 계산부; 상기 제1, 제2 각도 계산부에서 계산된 각도와 상기 3차원 좌표 계산부에서 계산된 3차원 좌표를 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 3차원 배열 삽입부; 상기 영상 입력부를 통해 입력되는 상기 제1, 제2 카메라에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 방위각, 발사각을 계산하는 비행정보 계산부; 상기 제1 카메라의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 픽셀 변화 감지부; 상기 픽셀 변화 감지부에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 추정하는 클럽 진행방향 계산부; 상기 클럽의 진행방향과 비행하는 공의 방위각 차이 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 사이드스핀 시뮬레이션부; 비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 백스핀 시뮬레이션부; 및 상기 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 골프공 궤적 계산부로 구성되는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 방법에 의해 달성된다.In addition, another object of the present invention is to obtain an image of a first camera that captures a ball flying in the air from a reference point (tee) due to a hit and a ball of a reference point (tee) input through an image input unit and error correction data obtained in advance. a first angle calculation unit that calculates an angle between a front direction vector starting from the first camera and a vector connecting the first camera to the ball; A second angle for calculating an angle between a front direction vector starting from the second camera and a vector connecting the second camera to the ball using the image of the second camera input through the image input unit and error correction data obtained in advance. calculator; a 3D coordinate calculation unit for calculating 3D coordinates of the ball using the distance from the first and second cameras to the ball and the coordinates of the positions of the first and second cameras; a 3D array inserting unit that repeatedly inserts the angles calculated by the first and second angle calculation units and the 3D coordinates calculated by the 3D coordinates calculation unit into a 3D array of balls by repeating the number of frames in which the ball is photographed; a flight information calculation unit that calculates an azimuth and a launch angle of the ball using a time interval between frames of images captured by the first and second cameras input through the image input unit and a difference in position of each point; a pixel change detection unit for detecting and storing a pixel having a difference by comparing neighboring frames starting from the first and second frames of the image captured by the first camera; a club traveling direction calculation unit for estimating the traveling direction of the club by analyzing the pixel change between frames detected by the pixel change detecting unit; a sidespin simulation unit simulating sidespin of the ball based on the difference between the direction of the club and the azimuth of the flying ball and preset data; a backspin simulation unit simulating a backspin of the ball based on a launch angle of the flying ball and preset data; and a golf ball trajectory calculation unit that calculates the trajectory data of the ball based on the backspin, sidespin, azimuth and launch angle of the flying ball and displays it on a screen along with a virtual golf course. A ceiling using two cameras. type golf simulation method.
본 발명의 하나의 측면에 의하면, 상기 3차원 배열 삽입부는, 공의 3차원 좌표의 배열이 직선이 되도록 보정하는 배열 보정부를 더 포함하는 것을 특징으로 한다.According to one aspect of the present invention, the 3-dimensional array inserting unit is characterized in that it further comprises an array correcting unit for correcting the array of 3-dimensional coordinates of the ball to be a straight line.
본 발명의 다른 측면에 의하면, 공의 시작 위치(tee)를 기준점으로 정후방에 위치한 제1 카메라와 스크린을 향하는 방향을 기준으로 상기 제1 카메라의 오른쪽에 위한 제2 카메라의 X, Y, Z 좌표를 입력하는 카메라 위치정보 입력부; 상기 제1, 제2 카메라가 공의 시작 위치를 지향하는 상태에서, 공으로 시작 위치를 기준점으로 타격 영역에 대응하는 직사각형을 만들고 상기 제1, 제2 카메라를 통해 기준점을 확인하여, 직사각형의 가로 및 세로값을 입력하는 가로세로값 입력부; 및 상기 카메라 위치 정보 입력부와 상기 가로세로값 입력부에 의해 취득된 상기 제1, 제2 카메라의 위치, 렌즈의 시야각, 곡률로 인해 발생하는 오차를 보정할 오차 보정 데이터를 구하는 오차 보정 데이터 계산부로 구성되는 입력부를 더 포함하여 구성되는 것을 특징으로 한다.According to another aspect of the present invention, the X, Y, and Z of the first camera located forward and backward with the starting position (tee) of the ball as a reference point and the second camera to the right of the first camera based on the direction toward the screen. a camera location information input unit for inputting coordinates; With the first and second cameras pointing at the starting position of the ball, a rectangle corresponding to the hitting area is created using the starting position with the ball as a reference point, and the reference point is checked through the first and second cameras to determine the width and width of the rectangle. a vertical and horizontal value input unit for inputting a vertical value; and an error correction data calculation unit that obtains error correction data for correcting errors caused by the positions of the first and second cameras acquired by the camera position information input unit and the aspect input unit, the viewing angle of the lens, and the curvature. It is characterized in that it is configured to further include an input unit to be.
본 발명에 의하면, 기준점의 직상단에 가까운 곳의 카메라를 통해 취득되는 영상으로부터 공의 방위각(좌우각)을 검출함으로써, 가상 골프 코스에서 골프공의 궤적을 계산하기 위한 방위각의 정확도를 높일 수 있는 효과가 있다.According to the present invention, by detecting the azimuth (left and right angles) of the ball from an image acquired through a camera located directly above the reference point, the accuracy of the azimuth for calculating the trajectory of a golf ball in a virtual golf course can be increased. It works.
도 1a는 본 발명의 실시예에 의한 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템의 구성도이다.
도 1b는 도 1a에 개시된 카메라의 설치상태를 보여주는 도면이다.
도 2는 도 1a에 개시된 골프공 궤적 시뮬레이션부의 상세 구성도이다.
도 3은 도 1a에 개시된 입력부의 상세 구성도이다.
도 4a 및 도 4b는 도 1a에 개시된 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템에 의해 골프 가상 코스에서 골프공 궤적 시뮬레이션 과정을 보여주는 흐름도이다.1A is a configuration diagram of a ceiling type golf simulation system using two cameras according to an embodiment of the present invention.
Figure 1b is a view showing the installed state of the camera disclosed in Figure 1a.
2 is a detailed configuration diagram of the golf ball trajectory simulation unit disclosed in FIG. 1A.
3 is a detailed configuration diagram of an input unit disclosed in FIG. 1A.
4A and 4B are flowcharts illustrating a process of simulating a golf ball trajectory in a golf virtual course by the ceiling type golf simulation system using two cameras disclosed in FIG. 1A.
이하, 본 발명의 바람직한 실시예를 첨부 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1a는 본 발명의 실시예에 의한 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템의 구성도, 도 1b는 도 1a에 개시된 카메라의 설치상태를 보여주는 도면이다.1A is a configuration diagram of a ceiling type golf simulation system using two cameras according to an embodiment of the present invention, and FIG. 1B is a diagram showing an installation state of the cameras disclosed in FIG. 1A.
도 1a 및 도 1b에 의하면, 본 발명의 실시예에 의한 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템은, 공의 시작 위치와 타격으로 인해 비행하는 골프공을 촬영하는 고해상도의 제1, 제2 카메라(110)(120), 제1, 제2 카메라(110)(120)에 의해 촬영되는 골프 클럽과 공에 대한 영상을 분석하여, 가상 골프 코스에서의 골프 시뮬레이션을 위한 공의 궤적 데이터를 계산하는 골프공 궤적 시뮬레이션부(200), 가상 골프 코스와 공의 궤적을 표시하기 위한 프로젝트의 구동을 제어하는 프로젝트 구동 제어부(400), 골프 가상 코스와 골프공의 움직임이 표시되는 스크린(500) 및 제1, 제2 카메라(110)(120)의 위치정보를 입력하고, 오차 보정 데이터를 구하는 입력부(600)로 구성된다.1A and 1B, the ceiling-type golf simulation system using two cameras according to an embodiment of the present invention has high-resolution first and second cameras that photograph the starting position of the ball and a golf ball flying due to hitting. (110) (120) Analyzing the images of the golf club and the ball captured by the first and
여기서, 키오스크(3)에 연결된 제1, 제2 카메라(110)(120)는 수평으로 배치하되, 골프 매트(2)의 골프공(1)의 시작 위치(tee)를 기준으로 후방 상단에 배치한다. 이때 공의 정후방에 제1 카메라(110)가 배치되고, 스크린을 향하는 진행방향을 기준으로 제1 카메라(110)의 오른쪽에 제2 카메라(120)가 배치된다. 또한, IR LED 조명(4)은 제1 카메라(110)에 근접되게 배치한다.Here, the first and
도 2는 도 1a에 개시된 골프공 궤적 시뮬레이션부(200)의 상세 구성도이다.FIG. 2 is a detailed configuration diagram of the golf ball
도 2에 의하면, 도 1a에 개시된 골프공 궤적 시뮬레이션부(200)는, 영상 입력부(210)를 통해 입력되는 기준점(tee)의 공과 타격으로 인해 기준점(tee)에서 공중으로 비행할 공을 촬영한 제1 카메라(110)의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제1 카메라(110)에서 시작하는 정면방향 벡터와 제1 카메라(110)로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제1 각도 계산부(220), 영상 입력부(210)를 통해 입력되는 제2 카메라(120)의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라(120)에서 시작하는 정면방향 벡터와 제2 카메라(120)로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 각도 계산부(230), 제1, 제2 카메라(110)(120)에서의 공까지의 거리와 제1, 제2 카메라(110)(120)의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 3차원 좌표 계산부(240), 제1, 제2 각도 계산부(220)(230)에서 계산된 각도와 3차원 좌표 계산부(240)에서 계산된 3차원 좌표를 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 3차원 배열 삽입부(250), 영상 입력부(210)를 통해 입력되는 제1, 제2 카메라(110)(120)에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 속도, 방위각, 발사각을 계산하는 비행정보 계산부(260), 제1 카메라(110)의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 픽셀 변화 감지부(270), 픽셀 변화 감지부(270)에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 추정하는 클럽 진행방향 계산부(280), 클럽의 진행방향과 비행하는 공의 방위각 차이, 공의 속도 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 사이드스핀 시뮬레이션부(290), 비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 백스핀 시뮬레이션부(300), 및 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 골프공 궤적 계산부(310)로 구성된다.Referring to FIG. 2, the golf ball
여기서, 3차원 배열 삽입부(250)는 공의 3차원 좌표의 배열이 직선이 되도록 보정하는 배열 보정부(251)를 더 포함한다.Here, the 3D
도 3은 도 1a에 개시된 입력부(600)의 상세 구성도이다.FIG. 3 is a detailed configuration diagram of the
도 3에 의하면, 도 1a에 개시된 입력부(600)는, 공의 시작 위치(tee)를 기준점으로 정후방에 위치한 제1 카메라(110)와 스크린을 향하는 방향을 기준으로 상기 제1 카메라(110)의 오른쪽에 위한 제2 카메라(120)의 X, Y, Z 좌표를 입력하는 카메라 위치정보 입력부(610), 제1, 제2 카메라(110)(120)가 공의 시작 위치를 지향하는 상태에서, 공으로 시작 위치를 기준점으로 타격 영역에 대응하는 직사각형을 만들고 제1, 2 카메라(110)(120)를 통해 기준점을 확인하여, 직사각형의 가로 및 세로값을 입력하는 가로세로값 입력부(620), 및 카메라 위치 정보 입력부(610)와 가로세로값 입력부(620)에 의해 취득된 제1, 제2 카메라(110)(120)의 위치, 렌즈의 시야각, 곡률로 인해 발생하는 오차를 보정할 오차 보정 데이터를 구하는 오차 보정 데이터 계산부(620)로 구성된다.Referring to FIG. 3 , the
도 4a 및 도 4b는 도 1a에 개시된 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템에 의해 골프 가상 코스에서 골프공 궤적의 시뮬레이션 과정을 보여주는 흐름도이다.4A and 4B are flowcharts showing a simulation process of a golf ball trajectory in a virtual golf course by the ceiling type golf simulation system using two cameras disclosed in FIG. 1A.
도 4a 및 도 4b에 의하면, 가상 스크린 골프, 즉 골프 가상 코스에서의 골프공 궤적 시뮬레이션을 실행하기에 앞서, 사용자는 공(골프공)을 골프 매트 위의 시작 위치(tee)에 배치한다(S1). 이어서 사용자는 제1, 제2 카메라(110)(120)를 수평으로 배치하여, 공의 시작 위치(tee)를 기준으로 후방 상단에 배치한다. 이때 사용자는 공의 정후방에 제1 카메라(110)를 배치하고, 스크린을 향하는 진행방향을 기준으로 제1 카메라(110)의 오른쪽에 제2 카메라(120)를 배치한다.4A and 4B, prior to executing virtual screen golf, that is, golf ball trajectory simulation on a golf virtual course, the user places a ball (golf ball) at a starting position (tee) on a golf mat (S1 ). Subsequently, the user arranges the first and
이렇게 제1, 제2 카메라(110)(120)를 배치한 후 사용자는 공의 시작 위치를 기준점으로 하는 제1, 제2 카메라(110)(120)의 위치에 대한 X(좌우), Y(전후), Z(상하) 좌표값을 입력(S3)한다.After arranging the first and
천장에 위치한 제1, 제2 카메라(110)(120)가 공을 지향하도록 조정한 상태에서, 사용자는 공으로 타격 영역, 즉 타격 매트에 대응하는 직사각형을 만들고, 제1, 제2 카메라(110)(120)를 통해 기준점을 확인하여, 직사각형의 가로값과 세로값을 입력(S4)한다. 여기서, 직사각형은 공의 위치를 기준점으로 전후좌우로의 거리는 대략 20 cm로 할 수 있다.With the first and
이때, 골프공 궤적 시뮬레이션부(200)는 공의 시작 위치와, 타격 영역, 즉 타격 매트의 각 모서리를 기준점으로 하여, 제1, 제2 카메라(110)(120)의 기준 위치, 시야각, 렌즈의 곡률을 보정할 오차 보정 데이터를 얻는다(S5).At this time, the golf ball
이어서, 사용자가 기준점의 공을 타격하여 공중으로 비행하면, 제1 각도 계산부(220)는 제1 카메라(110)에 의해 촬영된 영상 이미지와 단계 S5에서 얻어진 오차 보정 데이터를 이용하여 제1 카메라(110)에서 시작하는 정면방향 벡터와 제1 카메라(110)로부터 공까지를 잇는 벡터 사이의 각도를 계산한다(S6).Then, when the user strikes the ball at the reference point and flies in the air, the first
마찬가지로, 제2 각도 계산부(230)는 제2 카메라(120)에 의해 촬영되는 영상 이미지와 단계 S5에서 얻어진 오차 보정 데이터를 이용하여 제2 카메라(120)에서 시작하는 정면방향 벡터와 제2 카메라(120)로부터 공까지를 잇는 벡터 사이의 각도를 계산한다(S7).Similarly, the second
이어서, 3차원 좌표 계산부(240)는 제1 각도 계산부(220)에 의해 계산된 제1 카메라(110)에 대한 벡터 각도와 제2 각도 계산부(230)에 의해 계산된 제2 카메라(120)에 대한 벡터 각도 그리고 제1 카메라(110)와 제2 카메라(120) 사이의 거리를 이용하여 삼각 측량하여 제1, 제2 카메라(110)(120)에서 공까지의 거리를 계산(S8)하고, 단계 S8에서 확보한 제1, 제2 카메라(110)(120)에서 공까지의 거리와 제1, 제2 카메라(110)(120)의 위치좌표를 이용하여 공의 3차원 좌표를 계산한다(S9).Subsequently, the 3D coordinate
그리고, 3차원 배열 삽입부(250)는 위 S7 내지 S9의 단계를 공이 촬영된 프레임만큼 수로 반복하여, 3차원 좌표를 배열하여 삽입(S10)하되, 이렇게 저장된 공의 3차원 좌표들은 배열 보정부(251)에 의해 보정되어 직선화된다(S11).Then, the 3D
이어서, 비행정보 계산부(260)는 제1, 제2 카메라(110)(120)에 의해 촬영된 시간간격과 각 점의 위치 차이를 이용하여 공의 방위각 및 발사각을 계산(S12)하고, 픽셀 변화 감지부(270)는 제1 카메라(110)에서 첫번째와 두번째 프레임부터 시작하여 이어서 이웃하는 전후 프레임을 비교하여 차이가 있는 픽셀을 감지하여 저장(S13)하고, 이를 근거로 클럽 진행방향 계산부(280)는 픽셀의 차이가 있는 영역의 끝부분을 모아 클럽의 진행방향을 계산한다(S14).Subsequently, the flight
이어서, 사이드스핀 시뮬레이션부(290)는 클럽의 진행방향과 공의 방위각 차이 그리고 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션(S15)하고, 백스핀 시뮬레이션부(300)는 공의 상하각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션(S16)한다.Subsequently, the
그리하면, 골프공 궤적 계산부(310)는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적 데이터를 계산(S17)하여, 프로젝트 구동 제어부(400)를 통해 스크린(500)상에 가상 골프 코스와 함께 공의 궤적을 표시한다.Then, the golf ball
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시 구조들은 본 발명의 기술 사상으로부터 벗어나는 것으로 이해되어져서는 안될 것이다.Although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and is common in the art to which the present invention pertains without departing from the gist of the present invention claimed in the claims. Of course, various modified implementations are possible by those with knowledge of, and these modified structures should not be understood as departing from the technical spirit of the present invention.
110, 120 : 카메라 200 : 골프공 궤적 시뮬레이션부
210 : 영상 입력부 220 : 제1 각도 계산부
230 : 제2 각도 계산부 240 : 3차원 좌표 계산부
250 : 3차원 배열 삽입부 251 : 배열 보정부
260 : 배행정보 계산부 270 : 픽셀 변화 감지부
280 : 클럽 진행방향 계산부 290 : 사이드스핀 시뮬레이션부
300 : 백스핀 시뮬레이션부 310 : 골프공 궤적 계산부
400 : 프로젝트 구동 제어부 500 : 스크린
600 : 입력부 610 : 카메라 위치정보 입력부
620 : 가로세로값 입력부 630 : 오차 보정 데이터 계산부110, 120: camera 200: golf ball trajectory simulation unit
210: video input unit 220: first angle calculation unit
230: second angle calculation unit 240: 3-dimensional coordinate calculation unit
250: 3-dimensional array insertion unit 251: array correction unit
260: dispatch information calculation unit 270: pixel change detection unit
280: club direction calculation unit 290: side spin simulation unit
300: backspin simulation unit 310: golf ball trajectory calculation unit
400: Project driving control unit 500: Screen
600: input unit 610: camera location information input unit
620: aspect ratio input unit 630: error correction data calculation unit
Claims (6)
제2 카메라의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라에서 시작하는 정면방향 벡터와 제2 카메라로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 단계;
제1, 제2 카메라에서의 공까지의 거리와 제1, 제2 카메라의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 제3단계;
상기 제1 단계 내지 제3 단계에서 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 제 4단계;
제1, 제2 카메라에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 방위각, 발사각을 계산하는 제5 단계;
제1 카메라의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 제 6단계;
상기 제6 단계에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 계산하는 제7 단계;
상기 클럽의 진행방향과 비행하는 공의 방위각 차이 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 제8 단계;
비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 제9 단계; 및
상기 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 제10 단계
로 구성되는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 방법.The front direction vector starting from the first camera and the first camera using the image of the first camera that photographed the ball at the reference point (tee) and the ball to fly in the air from the reference point (tee) due to a hit and error correction data acquired in advance A first step of calculating an angle between vectors linking from to the ball;
a second step of calculating an angle between a front direction vector starting from the second camera and a vector connecting the second camera to the ball by using the image of the second camera and error correction data obtained in advance;
a third step of calculating 3D coordinates of the ball using the distance to the ball from the first and second cameras and the positional coordinates of the first and second cameras;
a fourth step of repeatedly inserting the ball into a three-dimensional array of balls by repeating as many frames as the shots of the ball in the first to third steps;
A fifth step of calculating the azimuth and launch angles of the ball using the time interval between each frame of the image captured by the first and second cameras and the positional difference of each point;
a sixth step of detecting and storing a pixel having a difference by comparing neighboring frames, starting with the first and second frames of the image captured by the first camera;
a seventh step of calculating the moving direction of the club by analyzing the pixel change between frames detected in the sixth step;
An eighth step of simulating sidespin of the ball based on the difference between the club's traveling direction and the azimuth angle of the flying ball and preset data;
A ninth step of simulating the backspin of the ball based on the launch angle of the flying ball and preset data; and
Step 10 of calculating the trajectory data of the ball based on the backspin, sidespin, azimuth and launch angle of the flying ball and displaying it on the screen along with the virtual golf course.
Consisting of, a ceiling type golf simulation method using two cameras.
상기 제4 단계는, 공의 3차원 좌표의 배열이 직선이 되도록 보정하는 단계를 더 포함하는 것을 특징으로 하는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 방법.According to claim 1,
The fourth step further comprises correcting the array of three-dimensional coordinates of the ball to be a straight line.
상기 제1 단계 이전에 공의 시작 위치(tee)를 기준점으로 정후방에 위치한 제1 카메라와 스크린을 향하는 방향을 기준으로 상기 제1 카메라의 오른쪽에 위한 제2 카메라의 X, Y, Z 좌표를 입력하는 단계;
제1, 제2 카메라가 공의 시작 위치를 지향하는 상태에서, 공으로 시작 위치를 기준점으로 타격 영역에 대응하는 직사각형을 만들고 제1. 2 카메라를 통해 기준점을 확인하여, 직사각형의 가로 및 세로값을 입력하는 단계 및
상기 단계들을 통해 제1, 제2 카메라의 위치, 렌즈의 시야각, 곡률로 인해 발생하는 오차를 보정할 오차 보정 데이터를 구하는 단계
를 포함하여 구성되는 것을 특징으로 하는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 방법.According to claim 1,
X, Y, and Z coordinates of a first camera located forward and backward with the starting position (tee) of the ball before the first step as a reference point and a second camera to the right of the first camera based on the direction toward the screen input;
With the first and second cameras pointing at the starting position of the ball, a rectangle corresponding to the hitting area is created using the starting position as a reference point with the ball, and the first. 2 Checking the reference point through the camera and inputting the horizontal and vertical values of the rectangle; and
Obtaining error correction data to correct errors caused by the positions of the first and second cameras, the angle of view, and the curvature of the lens through the above steps.
A ceiling golf simulation method using two cameras, characterized in that it comprises a.
상기 영상 입력부(210)를 통해 입력되는 제2 카메라(120)의 영상과 사전에 취득한 오차 보정 데이터를 이용하여 제2 카메라(120)에서 시작하는 정면방향 벡터와 제2 카메라(120)로부터 공까지를 잇는 벡터 사이의 각도를 계산하는 제2 각도 계산부(230);
상기 제1, 제2 카메라(110)(120)에서의 공까지의 거리와 상기 제1, 제2 카메라(110)(120)의 위치좌표를 이용하여 공의 3차원 좌표를 계산하는 3차원 좌표 계산부(240);
상기 제1, 제2 각도 계산부(220)(230)에서 계산된 각도와 상기 3차원 좌표 계산부(240)에서 계산된 3차원 좌표를 공을 촬영한 프레임만큼 반복하여 공의 3차원 배열에 삽입하는 3차원 배열 삽입부(250);
상기 영상 입력부(210)를 통해 입력되는 상기 제1, 제2 카메라(110)(120)에 의해 촬영되는 영상의 각 프레임 간의 시간간격과 각 점의 위치 차이를 이용하여 공의 속도, 방위각, 발사각을 계산하는 비행정보 계산부(260);
상기 제1 카메라(110)의 촬영된 영상의 첫번째와 두번째 프레임을 시작으로 이웃하는 프레임을 비교하여 차이가 있는 픽셀을 감지 저장하는 픽셀 변화 감지부(270);
상기 픽셀 변화 감지부(270)에서 감지된 프레임 간 픽셀의 변화를 분석하여 클럽의 진행방향을 추정하는 클럽 진행방향 계산부(280);
상기 클럽의 진행방향과 비행하는 공의 방위각 차이 및 미리 설정된 데이터를 기준으로 공의 사이드스핀(sidespin)을 시뮬레이션하는 사이드스핀 시뮬레이션부(290);
비행하는 상기 공의 발사각과 미리 설정된 데이터를 기준으로 공의 백스핀(backspin)을 시뮬레이션하는 백스핀 시뮬레이션부(300); 및
상기 비행하는 공의 백스핀, 사이드스핀, 방위각 및 발사각을 근거로 공의 궤적데이터를 계산하여, 가상 골프 코스와 함께 스크린상에 표시하는 골프공 궤적 계산부(310)
로 구성되는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템.Using the image of the first camera 110 photographing the ball at the reference point (tee) input through the image input unit 210 and the ball to fly into the air from the reference point (tee) due to a hit and error correction data obtained in advance, a first angle calculator 220 that calculates an angle between a front direction vector starting from 1 camera 110 and a vector connecting the first camera 110 to the ball;
Using the image of the second camera 120 input through the image input unit 210 and error correction data obtained in advance, the front direction vector starting from the second camera 120 and the distance from the second camera 120 to the ball a second angle calculation unit 230 that calculates an angle between vectors linking ;
3D coordinates for calculating the 3D coordinates of the ball using the distance from the first and second cameras 110 and 120 to the ball and the positional coordinates of the first and second cameras 110 and 120 Calculator 240;
The angles calculated by the first and second angle calculation units 220 and 230 and the 3-dimensional coordinates calculated by the 3-dimensional coordinate calculation unit 240 are repeated as many times as the number of frames in which the ball is photographed to form a 3-dimensional array of balls. a three-dimensional array insertion unit 250 to be inserted;
The speed, azimuth, and launch angle of the ball are determined by using the time interval between each frame of the image captured by the first and second cameras 110 and 120 input through the image input unit 210 and the difference in position of each point. Flight information calculation unit 260 for calculating the;
a pixel change detection unit 270 that compares neighboring frames starting with the first and second frames of the image captured by the first camera 110 and detects and stores a pixel having a difference;
a club moving direction calculating unit 280 that estimates the moving direction of the club by analyzing the pixel change between frames detected by the pixel change detecting unit 270;
a sidespin simulation unit 290 simulating sidespin of the ball based on the difference between the club's traveling direction and the azimuth angle of the flying ball and preset data;
a backspin simulation unit 300 simulating a backspin of the ball based on a launch angle of the flying ball and preset data; and
A golf ball trajectory calculation unit 310 that calculates ball trajectory data based on the backspin, sidespin, azimuth and launch angle of the flying ball and displays it on a screen along with a virtual golf course.
Consisting of, a ceiling type golf simulation system using two cameras.
상기 3차원 배열 삽입부(250)는, 공의 3차원 좌표의 배열이 직선이 되도록 보정하는 배열 보정부(251)를 더 포함하는 것을 특징으로 하는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템.According to claim 4,
The 3D array insertion unit 250 further comprises an array correction unit 251 for correcting the array of 3D coordinates of the ball to be a straight line.
공의 시작 위치(tee)를 기준점으로 정후방에 위치한 제1 카메라(110)와 스크린을 향하는 방향을 기준으로 상기 제1 카메라(110)의 오른쪽에 위한 제2 카메라(120)의 X, Y, Z 좌표를 입력하는 카메라 위치정보 입력부(610);
상기 제1, 제2 카메라(110)(120)가 공의 시작 위치를 지향하는 상태에서, 공으로 시작 위치를 기준점으로 타격 영역에 대응하는 직사각형을 만들고 상기 제1, 2 카메라(110)(120)를 통해 기준점을 확인하여, 직사각형의 가로 및 세로값을 입력하는 가로세로값 입력부(620); 및
상기 카메라 위치 정보 입력부(610)와 상기 가로세로값 입력부(620)에 의해 취득된 상기 제1, 제2 카메라(110)(120)의 위치, 렌즈의 시야각, 곡률로 인해 발생하는 오차를 보정할 오차 보정 데이터를 구하는 오차 보정 데이터 계산부(620)
로 구성되는 입력부(600)를 더 포함하여 구성되는 것을 특징으로 하는, 두 대의 카메라를 이용한 천장형 골프 시뮬레이션 시스템.According to claim 4,
X, Y of the first camera 110 located at the front and rear with the starting position (tee) of the ball as a reference point and the second camera 120 for the right side of the first camera 110 based on the direction toward the screen, a camera location information input unit 610 for inputting Z coordinates;
With the first and second cameras 110 and 120 pointing at the starting position of the ball, a rectangle corresponding to the hitting area is created using the starting position as a reference point with the ball, and the first and second cameras 110 and 120 a horizontal and vertical value input unit 620 that checks a reference point through and inputs horizontal and vertical values of the rectangle; and
Errors caused by the positions of the first and second cameras 110 and 120 acquired by the camera position information input unit 610 and the aspect input unit 620, the angle of view of the lens, and the curvature of the lens may be corrected. Error correction data calculator 620 for obtaining error correction data
Characterized in that it further comprises an input unit 600 consisting of, ceiling type golf simulation system using two cameras.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210053032A KR102517067B1 (en) | 2021-04-23 | 2021-04-23 | Ceiling golf simulation system using two cameras |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210053032A KR102517067B1 (en) | 2021-04-23 | 2021-04-23 | Ceiling golf simulation system using two cameras |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220146137A KR20220146137A (en) | 2022-11-01 |
KR102517067B1 true KR102517067B1 (en) | 2023-03-31 |
Family
ID=84042355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210053032A KR102517067B1 (en) | 2021-04-23 | 2021-04-23 | Ceiling golf simulation system using two cameras |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102517067B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116251339B (en) * | 2023-03-14 | 2023-11-28 | 西南交通大学 | A service method and device based on behavior recognition and binocular camera ranging |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101412505B1 (en) | 2013-11-28 | 2014-06-26 | (주) 알디텍 | Golf simulator, and golf simulation method |
-
2021
- 2021-04-23 KR KR1020210053032A patent/KR102517067B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101412505B1 (en) | 2013-11-28 | 2014-06-26 | (주) 알디텍 | Golf simulator, and golf simulation method |
Also Published As
Publication number | Publication date |
---|---|
KR20220146137A (en) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10427051B2 (en) | Methods and systems for sports simulation | |
US10058733B2 (en) | Sports simulator and simulation method | |
JP6247817B2 (en) | Sports simulation system | |
KR101385325B1 (en) | Method and system for photographing object in movement with plural camera, and based on taken images therefor, obtaining actual movement trace of same object | |
CN105288982B (en) | The motion state measure device of golf | |
KR20200085803A (en) | Golf ball tracking system | |
KR20090021407A (en) | Golf ball behavior measuring device and control method | |
JP6898415B2 (en) | Methods, systems and computer programs for measuring ball rotation | |
KR102517067B1 (en) | Ceiling golf simulation system using two cameras | |
BR102012028297B1 (en) | APPARATUS AND METHOD FOR DETERMINING THE POSITION OF A SPORTING PROJECTILE WITHIN A SCENE AND, COMPUTER READable STORAGE MEDIA | |
KR102567201B1 (en) | A console-type golf simulation system using two cameras | |
KR102567199B1 (en) | golf simulation system using 3D information | |
KR102582362B1 (en) | floor golf simulation system using two cameras | |
TWI775637B (en) | Golf swing analysis system, golf swing analysis method and information memory medium | |
CN116075341B (en) | Sensing device for golf swing and method for sensing impact position of club head using the same | |
TWI775636B (en) | Golf swing analysis system, golf swing analysis method and information memory medium | |
US20250050168A1 (en) | Method, system and non-transitory computer-readable recording medium for providing shot information of golf balls | |
KR101053870B1 (en) | Latch Sensing Screen Golf System | |
TW201934179A (en) | Real-time golf ball data simulation system and method for user to clearly understand previous swinging record and make real-time adjustment and correction for next swinging |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20210423 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20230116 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20230322 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20230329 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20230329 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |