[go: up one dir, main page]

KR102612559B1 - Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same - Google Patents

Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same Download PDF

Info

Publication number
KR102612559B1
KR102612559B1 KR1020210173003A KR20210173003A KR102612559B1 KR 102612559 B1 KR102612559 B1 KR 102612559B1 KR 1020210173003 A KR1020210173003 A KR 1020210173003A KR 20210173003 A KR20210173003 A KR 20210173003A KR 102612559 B1 KR102612559 B1 KR 102612559B1
Authority
KR
South Korea
Prior art keywords
golf ball
pattern
images
electronic device
movement
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020210173003A
Other languages
Korean (ko)
Other versions
KR102612559B9 (en
KR20230085272A (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 KR1020210173003A priority Critical patent/KR102612559B1/en
Publication of KR20230085272A publication Critical patent/KR20230085272A/en
Application granted granted Critical
Publication of KR102612559B1 publication Critical patent/KR102612559B1/en
Publication of KR102612559B9 publication Critical patent/KR102612559B9/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0021Tracking a path or terminating locations
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • 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/0021Tracking a path or terminating locations
    • A63B2024/0028Tracking the path of an object, e.g. a ball inside a soccer pitch
    • 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/32Golf
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/10Positions
    • A63B2220/16Angular positions
    • 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/30Speed
    • A63B2220/34Angular speed
    • A63B2220/35Spin
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/806Video cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S482/00Exercise devices
    • Y10S482/901Exercise devices having computer circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Image Analysis (AREA)

Abstract

패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치, 이의 동작 방법 및 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 전자 장치는 상기 골프공를 촬영하여 상기 골프공의 이미지를 생성하는 제1 카메라 모듈, 상기 골프공을 촬영하여 상기 골프공의 깊이 맵(depth map)을 생성하는 제2 카메라 모듈, 상기 제1 및 제2 카메라 모듈과 전기적으로 연결되고, 상기 제1 및 제2 카메라 모듈을 제어하는 프로세서, 및 상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행되어, 상기 제1 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 이미지를 획득하고, 상기 제2 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 깊이 맵을 획득하고, 상기 복수의 이미지로부터 제1 운동 데이터를 획독하고, 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계를 수행한다.An electronic device that tracks the movement of a golf ball with a printed pattern, a method of operating the same, and a computer program stored in a computer-readable recording medium are disclosed. The electronic device includes a first camera module for photographing the golf ball to generate an image of the golf ball, a second camera module for photographing the golf ball to generate a depth map of the golf ball, and the first and It is electrically connected to a second camera module, and includes a processor that controls the first and second camera modules, and a memory that stores instructions executable by the processor, wherein the instructions are executed by the processor, A first camera module acquires a plurality of images of the golf ball at different viewpoints, the second camera module acquires a plurality of depth maps of the golf ball at different viewpoints, and a first movement is performed from the plurality of images. Reading data and obtaining second motion data from the plurality of depth maps are performed.

Description

패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치, 이의 동작 방법 및 이를 저장하는 컴퓨터로 판독 가능한 기록 매체 {ELECTRONIC DEVICE TRACKING MOVEMENT OF A GOLF BALL WITH A PATTERN PRINTED ON IT, METHOD OF DRIVING THE SAME AND COMPUTER READALE MEDIUM STORING THE SAME}Electronic device for tracking the movement of a pattern-printed golf ball, operating method thereof, and computer-readable recording medium for storing the same READALE MEDIUM STORING THE SAME}

본 발명은 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치, 이의 동작 방법 및 이를 저장하는 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 더욱 구체적으로는 패턴이 인쇄된 골프공이 클럽에 의해 타격된 이후 골프공을 촬영하여 얻어진 영상을 이용하여 골프공의 움직임을 추적하는 전자 장치, 이의 구동 방법 및 전자 장치, 이를 저장하는 컴퓨터로 판독 가능한 기록 매체에 관한 것이다.The present invention relates to an electronic device that tracks the movement of a golf ball with a pattern printed on it, a method of operating the same, and a computer-readable recording medium for storing the same, and more specifically, after the golf ball with the pattern printed on it is hit by a club. It relates to an electronic device that tracks the movement of a golf ball using images obtained by photographing the golf ball, a method and electronic device for driving the same, and a computer-readable recording medium that stores the same.

대표적인 야외 운동인 골프는 최근 IT 기술의 발달에 따라 실내에서 즐길 수 있는 스크린 골프 형태로 대중화되고 있으며, 이를 통해 골프에 입문하는 사람들이 증가하고 있다. 좋은 스코어를 얻기 위해서는 타격 이후의 공의 움직임임인 구질이 좋아야 하며, 올바른 골프공의 구질을 얻기 위해서는 반복적인 연습을 필요로 한다.Golf, a representative outdoor sport, has recently become popular in the form of screen golf that can be enjoyed indoors due to the development of IT technology, and the number of people taking up golf through this is increasing. In order to get a good score, the pitch quality, which is the movement of the ball after hitting, must be good, and repeated practice is necessary to obtain the correct pitch quality of the golf ball.

이미 시중에는 골프공의 움직임을 추적하기 위한 다양한 측정 장비들이 존재한다. 골프공의 스핀 및 속도 등의 움직임 특성을 계측하기 위해 고속 카메라를 통한 촬영(공개번호 제10-2018-0023416호, 2018.03.07 공개)은 물론 레이더를 이용한 탄도 측정 방식도 존재한다. 그러나 정밀한 측정 장비는 매우 고가이면서 무시할 수 없는 크기를 갖거나 별도의 센서를 필요로 하고 있어 휴대성의 한계가 존재한다.There are already various measuring devices on the market to track the movement of golf balls. In order to measure the movement characteristics such as spin and speed of a golf ball, there is also a ballistic measurement method using radar as well as shooting using a high-speed camera (Publication No. 10-2018-0023416, published on March 7, 2018). However, precise measurement equipment is very expensive, has a size that cannot be ignored, or requires a separate sensor, which limits its portability.

따라서 좋은 휴대성을 보장하면서도 간편한 골프공 추적 시스템에 관련된 기술이 요구되며, 본 발명은 이에 관한 것이다.Therefore, technology related to a simple golf ball tracking system while ensuring good portability is required, and the present invention relates to this.

본 발명이 해결하고자 하는 기술적 과제는, 패턴이 인쇄된 골프공을 카메라로 촬영하여 얻어진 이미지 등을 이용하여 골프공의 움직임을 추적할 수 있는 전자 장치 및 이의 동작 방법 골프공의 움직임을 추적할 수 있는 방법 및 이를 위한 시스템을 제공하는 것이다.The technical problem to be solved by the present invention is an electronic device capable of tracking the movement of a golf ball using images obtained by photographing a pattern-printed golf ball with a camera, and an operating method thereof that can track the movement of a golf ball. It provides a method and a system for this.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.

상기 기술적 과제를 해결하기 위한 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치는, 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에 있어서, 상기 골프공를 촬영하여 상기 골프공의 이미지를 생성하는 제1 카메라 모듈, 상기 골프공을 촬영하여 상기 골프공의 깊이 맵(depth map)을 생성하는 제2 카메라 모듈, 상기 제1 및 제2 카메라 모듈과 전기적으로 연결되고, 상기 제1 및 제2 카메라 모듈을 제어하는 프로세서 및 상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행되어, 상기 제1 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 이미지를 획득하고, 상기 제2 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 깊이 맵을 획득하고, 상기 복수의 이미지로부터 제1 운동 데이터를 획독하고, 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계를 수행한다.An electronic device for tracking the movement of a golf ball on which a pattern is printed according to some embodiments of the present invention for solving the above technical problem is an electronic device for tracking the movement of a golf ball on which a pattern is printed, wherein the golf ball is photographed. A first camera module that generates an image of the golf ball, a second camera module that photographs the golf ball and generates a depth map of the golf ball, and is electrically connected to the first and second camera modules. and includes a processor that controls the first and second camera modules and a memory that stores instructions executable by the processor, and the instructions are executed by the processor, so that the first camera module Obtaining a plurality of images of the golf ball, the second camera module acquires a plurality of depth maps of the golf ball at different viewpoints, reading first motion data from the plurality of images, and the plurality of depth maps A step of acquiring second exercise data from the map is performed.

본 발명의 몇몇 실시예에서, 상기 제1 운동 데이터는 상기 골프공의 스핀 데이터이고, 상기 제2 운동 데이터는 상기 골프공의 이동 속도 및 각도 데이터일 수 있다.In some embodiments of the present invention, the first motion data may be spin data of the golf ball, and the second motion data may be movement speed and angle data of the golf ball.

본 발명의 몇몇 실시예에서, 상기 프로세서가 상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 것은, 상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고, 미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고, 미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고, 상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함할 수 있다.In some embodiments of the present invention, the processor obtaining first motion data from the plurality of images includes processing the first image and the second image of the golf ball to extract the first pattern image and the second pattern image. Then, the candidate rotation angles of the first and second pattern images are determined by comparing the first and second pattern images with a pre-stored pattern library, and the rotation angles of the first and second pattern images are set to be less than or equal to a predetermined rotation speed. It may include determining spin data of the golf ball from the rotation angles of the first and second pattern images.

본 발명의 몇몇 실시예에서, 상기 프로세서에 의해 제어되어 상기 전자 장치의 설치 자세를 감지하는 센서부를 더 포함하고, 상기 프로세서가 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 것은, 제1 및 제2 깊이 맵으로부터 얻어진 상기 골프공의 변위와 상기 전자 장치의 설치 자세를 이용하여 상기 골프공의 이동 속도 및 각도 데이터를 획득하는 것을 포함할 수 있다.In some embodiments of the present invention, the sensor unit is controlled by the processor to detect an installation posture of the electronic device, and the processor acquires second motion data from the plurality of depth maps by using the first and This may include obtaining movement speed and angle data of the golf ball using the displacement of the golf ball obtained from the second depth map and the installation posture of the electronic device.

본 발명의 몇몇 실시예에서, 상기 명령어는, 상기 프로세서에 의해 실행되어 상기 제1 운동 데이터와 제2 운동데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 수행할 수 있다.In some embodiments of the present invention, the command may be executed by the processor to further perform the step of outputting feedback based on the first exercise data and the second exercise data to the user.

상기 기술적 과제를 해결하기 위한 본 발명의 다른 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치는, 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에 있어서, 상기 골프공를 촬영하여 상기 골프공의 이미지를 생성하는 제1 카메라 모듈, 상기 제1 카메라 모듈과 전기적으로 연결되고, 상기 제1 카메라 모듈을 제어하는 프로세서, 및 상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행되어, 상기 제1 카메라 모듈이 서로 다른 시점에서 촬영된 상기 골프공의 제1 내지 제3 이미지를 획득하고, 상기 제1 내지 제3 이미지를 전처리하여 상기 골프공의 제1 내지 제3 패턴 이미지를 각각 추출하고, 미리 저장된 패턴 라이브러리와 상기 제1 내지 제3 패턴 이미지를 비교하여 상기 골프공의 제1 내지 제3 회전각을 각각 결정하고, 상기 골프공의 제1 내지 제3 회전각으로부터 제1 운동 데이터를 획득하고, 상기 제1 운동 데이터에 기초한 피드백을 사용자에게 출력하는 단계를 수행한다.An electronic device for tracking the movement of a golf ball on which a pattern is printed according to some other embodiments of the present invention for solving the above technical problem is an electronic device for tracking the movement of a golf ball on which a pattern is printed. It includes a first camera module that generates an image of the golf ball by shooting, a processor that is electrically connected to the first camera module and controls the first camera module, and a memory that stores instructions executable by the processor. And, the instructions are executed by the processor, so that the first camera module acquires first to third images of the golf ball taken at different viewpoints, and preprocesses the first to third images to determine the golf ball. The first to third pattern images of the ball are respectively extracted, the first to third rotation angles of the golf ball are respectively determined by comparing the first to third pattern images with a pre-stored pattern library, and the first to third rotation angles of the golf ball are respectively determined. Obtaining first exercise data from the first to third rotation angles, and outputting feedback based on the first exercise data to the user.

본 발명의 몇몇 실시예에서, 상기 프로세서에 의해 제어되어 상기 골프공을 촬영하여 상기 골프공의 깊이 맵(depth map)을 생성하는 제2 카메라 모듈을 더 포함하되, 상기 명령어는 상기 프로세서에 의해 실행되어 상기 제2 카메라 모듈이 서로 다른 시점에 상기 골프공의 제1 깊이 맵과 제2 깊이 맵을 획득하고, 상기 제1 깊이 맵과 제2 깊이 맵으로부터 제2 운동 데이터를 획득하고, 상기 제2 운동 데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 수행할 수 있다.In some embodiments of the present invention, it further includes a second camera module controlled by the processor to photograph the golf ball and generate a depth map of the golf ball, wherein the command is executed by the processor. The second camera module acquires a first depth map and a second depth map of the golf ball at different points in time, obtains second motion data from the first depth map and the second depth map, and obtains the second motion data from the first depth map and the second depth map. A further step may be performed to output feedback based on exercise data to the user.

본 발명의 몇몇 실시예에서, 상기 제1 운동 데이터는 상기 골프공의 스핀 데이터를 포함하고, 상기 프로세서가 상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 것은, 상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고, 미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고, 미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고, 상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함할 수 있다.In some embodiments of the present invention, the first motion data includes spin data of the golf ball, and the processor obtaining the first motion data from the plurality of images includes the first image of the golf ball and the first motion data. 2 Process the image to extract the first pattern image and the second pattern image, compare the first and second pattern images with a pre-stored pattern library to determine candidate rotation angles of the first and second pattern images, and It may include determining rotation angles of the first and second pattern images to be less than or equal to a predetermined rotation speed, and determining spin data of the golf ball from the rotation angles of the first and second pattern images.

상기 기술적 과제를 해결하기 위한 본 발명의 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 방법은, 제1 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 이미지를 획득하는 단계, 제2 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 깊이 맵을 획득하는 단계, 상기 복수의 이미지로부터 제1 운동 데이터를 획독하는 단계, 및 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계를 포함한다.A method of tracking the movement of a golf ball on which a pattern is printed according to an embodiment of the present invention for solving the above technical problem includes the steps of a first camera module acquiring a plurality of images of the golf ball at different viewpoints, 2 A camera module acquiring a plurality of depth maps of the golf ball at different viewpoints, reading first motion data from the plurality of images, and obtaining second motion data from the plurality of depth maps. Includes.

본 발명의 몇몇 실시예에서, 상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 단계는, 상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고, 미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고, 미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고, 상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함할 수 있다.In some embodiments of the present invention, the step of acquiring first motion data from the plurality of images includes processing the first image and the second image of the golf ball to extract a first pattern image and a second pattern image, Candidate rotation angles of the first and second pattern images are determined by comparing the first and second pattern images with a pre-stored pattern library, and rotation angles of the first and second pattern images are determined to be less than or equal to a predetermined rotation speed. and determining spin data of the golf ball from the rotation angles of the first and second pattern images.

본 발명의 몇몇 실시예에서, 상기 전자 장치의 설치 자세를 감지하는 단계를 더 포함하고, 상기 프로세서가 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 것은, 제1 및 제2 깊이 맵으로부터 얻어진 상기 골프공의 변위와 상기 전자 장치의 설치 자세를 이용하여 상기 골프공의 이동 속도 및 각도 데이터를 획득하는 것을 포함할 수 있다.In some embodiments of the present invention, further comprising detecting an installation posture of the electronic device, wherein the processor obtains second motion data from the plurality of depth maps, wherein the second motion data is obtained from the first and second depth maps. This may include obtaining movement speed and angle data of the golf ball using the displacement of the golf ball and the installation posture of the electronic device.

본 발명의 몇몇 실시예에서, 상기 제1 운동 데이터와 제2 운동데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 포함할 수 있다.In some embodiments of the present invention, the step of outputting feedback based on the first exercise data and the second exercise data to the user may be further included.

또한 상술한 본 발명의 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 방법은 프로그램으로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다.Additionally, the method of tracking the movement of a golf ball with a printed pattern according to the above-described embodiment of the present invention may be implemented as a program and recorded on a computer-readable recording medium.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.

본 발명의 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치 및 이의 동작 방법에 따르면 고가의 고해상도의 초고속 카메라를 이용하지 않고도, 비교적 주변에서 이용할 수 있는 전자 장치, 예를 들어 스마트 폰에 탑재된 카메라를 통해 타격 후 움직이는 골프공을 촬영한 영상을 분석하여 골프공 스핀축과 스핀 속도를 정확하게 계산함으로써 골프공의 움직임을 추적할 수 있다.According to an electronic device for tracking the movement of a pattern-printed golf ball according to an embodiment of the present invention and its operating method, an electronic device, such as a smart device, that can be used relatively nearby without using an expensive, high-resolution, high-speed camera. You can track the movement of the golf ball by accurately calculating the spin axis and spin speed of the golf ball by analyzing the video captured of the golf ball moving after hitting through the camera mounted on the phone.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

도 1은 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치를 설명하기 위해 제공되는 블록도이다.
도 2는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치의 동작 방법을 설명하기 위한 순서도이다.
도 3은 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에서 골프공의 움직임을 제1 카메라 모듈과 제2 카메라 모듈에 의해 촬영하는 구성을 설명하기 위한 도면이다.
도 4는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치가 촬영하는 골프공에 인쇄된 패턴의 예시를 설명하기 위한 도면이다.
도 5는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치의 동작 방법과 관련하여 제1 카메라 모듈에 의한 복수의 이미지를 이용한 제1 운동 데이터의 획득을 설명하기 위한 순서도이다.
도 6은 제1 및 제2 패턴 이미지를 추출하는 단계를 설명하기 위한 도면이다.
도 7은 추출된 패턴 이미지를 미리 저장된 패턴 라이브러리와 비교하여 각각의 패턴 이미지에 대응하는 후보 회전각을 결정하는 단계를 설명하기 위한 도면이다.
도 8은 추출된 패턴 이미지에 대응하는 회전각을 갖는 패턴 이미지들을 설명하기 위한 도면이다.
1 is a block diagram provided to explain an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention.
FIG. 2 is a flowchart illustrating a method of operating an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention.
FIG. 3 is a diagram illustrating a configuration for photographing the movement of a golf ball by a first camera module and a second camera module in an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention. .
FIG. 4 is a diagram illustrating an example of a pattern printed on a golf ball captured by an electronic device that tracks the movement of a pattern-printed golf ball according to some embodiments of the present invention.
5 illustrates the acquisition of first motion data using a plurality of images by a first camera module in relation to a method of operating an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention. This is a flow chart for:
Figure 6 is a diagram for explaining the step of extracting the first and second pattern images.
Figure 7 is a diagram for explaining the step of determining a candidate rotation angle corresponding to each pattern image by comparing the extracted pattern image with a pre-stored pattern library.
Figure 8 is a diagram for explaining pattern images having a rotation angle corresponding to the extracted pattern image.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and will be implemented in various different forms. The present embodiments only serve to ensure that the disclosure of the present invention is complete and that common knowledge in the technical field to which the present invention pertains is not limited. It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

하나의 구성 요소가 다른 구성 요소와 "연결된(connected to)" 또는 "커플링된(coupled to)" 이라고 지칭되는 것은, 다른 구성 요소와 직접 연결 또는 커플링된 경우 또는 중간에 다른 구성 요소를 개재한 경우를 모두 포함한다. 반면, 하나의 구성 요소가 다른 구성 요소와 "직접 연결된(directly connected to)" 또는 "직접 커플링된(directly coupled to)"으로 지칭되는 것은 중간에 다른 구성 요소를 개재하지 않은 것을 나타낸다. "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다. One component is said to be “connected to” or “coupled to” another component when it is directly connected or coupled to another component or with an intervening other component. Includes all cases. On the other hand, when one component is referred to as “directly connected to” or “directly coupled to” another component, it indicates that there is no intervening other component. “And/or” includes each and every combination of one or more of the mentioned items.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for describing embodiments and is not intended to limit the invention. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used herein, “comprises” and/or “comprising” refers to the presence of one or more other components, steps, operations and/or elements. or does not rule out addition.

비록 제1, 제2 등이 다양한 구성 요소들을 서술하기 위해서 사용되나, 이들 구성 요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성 요소를 다른 구성 요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성 요소는 본 발명의 기술적 사상 내에서 제2 구성 요소 일 수도 있음은 물론이다.Although first, second, etc. are used to describe various components, it goes without saying that these components are not limited by these terms. These terms are merely used to distinguish one component from another. Therefore, of course, the first component mentioned below may also be the second component within the technical spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings that can be commonly understood by those skilled in the art to which the present invention pertains. Additionally, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly specifically defined.

본 실시예에서 사용되는 '부' 또는 '모듈'이라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부' 또는 '모듈'은 어떤 역할들을 수행한다. 그러나 '부' 또는 '모듈'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부' 또는 '모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부' 또는 '모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소와, 함수들, 서브루틴들, 프로그램 코드의 세그먼트들, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함할 수 있다. 구성요소들과 '부' 또는 '모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부' 또는 '모듈'들로 결합되거나 추가적인 구성요소들과 '부' 또는 '모듈'들로 더 분리될 수 있다.The term 'unit' or 'module' used in this embodiment refers to software or hardware components such as FPGA or ASIC, and the 'unit' or 'module' performs certain roles. However, 'part' or 'module' is not limited to software or hardware. A 'unit' or 'module' may be configured to reside on an addressable storage medium and may be configured to run on one or more processors. Thus, as an example, a 'part' or 'module' refers to software components, object-oriented software components, functions, subroutines, segments of program code, microcode, circuits, data, databases, and data structures. , tables, arrays, and variables. The functionality provided within components and 'parts' or 'modules' can be combined into smaller numbers of components and 'parts' or 'modules' or into additional components and 'parts' or 'modules'. Could be further separated.

도 1은 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치를 설명하기 위해 제공되는 블록도이다.1 is a block diagram provided to explain an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention.

도 1을 참조하면, 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치(100)는 프로세서(110), 제1 카메라 모듈(120), 제2 카메라 모듈(130), 메모리(140), 입력부(150), 출력부(160), 통신부(170) 및 센서부(180)를 포함할 수 있다.Referring to FIG. 1, an electronic device 100 that tracks the movement of a golf ball on which a pattern is printed according to some embodiments of the present invention includes a processor 110, a first camera module 120, and a second camera module 130. ), memory 140, input unit 150, output unit 160, communication unit 170, and sensor unit 180.

전자 장치(100)는 예를 들어, 제1 카메라 모듈(120)과 제2 카메라 모듈(130)을 탑재한 스마트폰(smartphone)을 포함할 수 있다. 다만 본 발명이 이에 제한되는 것은 아니며, 전자 장치(100)는 뒤에서 설명하는 것같이 일반적인 이미지와 ToF(Time of Flight)를 이용한 깊이 맵을 생성할 수 있는 카메라들을 포함하는 별도의 전자 장치를 포함할 수 있으며, 둘 이상의 모듈이 전기적으로 연결되어 서로 데이터를 주고받거나 하나의 전자 장치에 의해 제어될 수 있는 복수의 전자 장치의 집합을 의미할 수도 있다.The electronic device 100 may include, for example, a smartphone equipped with a first camera module 120 and a second camera module 130. However, the present invention is not limited thereto, and the electronic device 100 may include a separate electronic device including cameras capable of generating a general image and a depth map using Time of Flight (ToF), as will be described later. It may refer to a set of multiple electronic devices in which two or more modules are electrically connected to exchange data with each other or can be controlled by a single electronic device.

프로세서(110)는 전자 장치(100)에 포함된 각 모듈들의 동작을 제어할 수 있다. 프로세서(110)의 동작은 메모리(140)에 저장된 프로그램, 인스터럭션(instruction)에 기초하여 수행될 수 있다. The processor 110 may control the operation of each module included in the electronic device 100. The operation of the processor 110 may be performed based on programs and instructions stored in the memory 140.

제1 카메라 모듈(120)은 이미지 센서에 의해 얻어지는 정지 영상 또는 동영상 등의 화상 프레임을 처리함으로써 이미지를 생성할 수 있다. 제1 카메라 모듈(120)은 촬영에 의해 생성된 이미지를 메모리(140)에 저장하거나 영상 신호 처리(image signal processing; ISP)를 취해 프로세서(110)로 제공할 수 있다.The first camera module 120 may generate an image by processing image frames such as still images or moving images obtained by an image sensor. The first camera module 120 may store the image generated by shooting in the memory 140 or perform image signal processing (ISP) on the image and provide the image to the processor 110 .

제1 카메라 모듈(120)은 고속 촬영을 지원할 수 있다. 여기서 고속 촬영은 기존의 60fps의 동영상 촬영 포맷을 넘어서 120fps, 240fps 및 그 이상의 프레임의 슬로우 모션 촬영이 가능한 촬영 모드를 의미할 수 있다. 사용자는 전자 장치(100)를 제어하여, 제1 카메라 모듈(120)의 촬영 모드를 고속 촬영 모드로 설정할 수 있다.The first camera module 120 can support high-speed shooting. Here, high-speed shooting can refer to a shooting mode that goes beyond the existing 60fps video shooting format and allows slow-motion shooting at 120fps, 240fps, and higher frames. The user can control the electronic device 100 to set the shooting mode of the first camera module 120 to high-speed shooting mode.

제1 카메라 모듈(120)은 렌즈로부터 입사되는 광 신호를 입력받는 이미지 센서로 구성될 수 있으며, 둘 이상의 렌즈 및 이들을 통해 입력되는 광 신호를 각각 입력받는 둘 이상의 이미지 센서들을 포함할 수도 있다. 경우에 따라서 제1 카메라 모듈(120)은 각기 다른 배율 및 화각을 지원하는 렌즈 및 이에 대응하는 이미지 센서로 구성될 수 있다.The first camera module 120 may be composed of an image sensor that receives optical signals input from a lens, and may also include two or more lenses and two or more image sensors that each receive optical signals input through them. In some cases, the first camera module 120 may be composed of lenses supporting different magnifications and angles of view and corresponding image sensors.

프로세서(110)는 제1 카메라 모듈(120)이 서로 다른 시점에 대상체, 즉 패턴이 인쇄된 골프공을 촬영하여 얻어진 복수의 이미지에 기초하여 골프공의 제1 운동 데이터를 획득할 수 있다. 이에 관한 자세한 설명은 후술한다.The processor 110 may acquire first motion data of the golf ball based on a plurality of images obtained when the first camera module 120 photographs an object, that is, a golf ball with a pattern printed on it, at different times. A detailed explanation regarding this will be provided later.

제2 카메라 모듈(130)은 대상체를 촬영하여 대상체와 제2 카메라 모듈(130) 간의 거리 정보에 기초하여 생성된 깊이 맵(depth map)을 생성할 수 있다. The second camera module 130 may photograph an object and generate a depth map based on distance information between the object and the second camera module 130.

제2 카메라 모듈(130)은 예를 들어, 레이저 펄스를 생성하여 대상체에 송신하는 레이저 다이오드, 대상체로부터 반사된 반사파 신호를 감지하는 포토 다이오드를 포함하여 펄스 신호의 송신한 시점과 반사파를 수신한 시점 사이의 시간차, 즉 펄스 신호의 비행 시간(Time of Flight; ToF)에 기초하여 대상체의 깊이 맵을 생성하는 ToF 카메라일 수 있다.For example, the second camera module 130 includes a laser diode that generates a laser pulse and transmits it to the object, a photo diode that detects a reflected wave signal reflected from the object, and a time point at which the pulse signal is transmitted and a time point at which the reflected wave is received. It may be a ToF camera that generates a depth map of an object based on the time difference, that is, the Time of Flight (ToF) of the pulse signal.

다만 본 발명이 이에 제한되는 것은 아니며, 제2 카메라 모듈(130)은 둘 이상의 렌즈 및 이에 대응하여 광 신호를 각각 입력받는 둘 이상의 이미지 센서를 포함하는 스테레오 카메라(stereo camera)일 수도 있다. 제2 카메라 모듈(130)이 스테레오 카메라인 경우, 동일한 시점에 둘 이상의 이미지 센서로부터 얻어진 대응점 및 차이점을 이용하여 깊이 맵을 생성할 수 있다.However, the present invention is not limited to this, and the second camera module 130 may be a stereo camera including two or more lenses and two or more image sensors that respectively receive optical signals corresponding thereto. If the second camera module 130 is a stereo camera, a depth map can be created using corresponding points and differences obtained from two or more image sensors at the same time.

프로세서(110)는 제2 카메라 모듈(130)이 서로 다른 시점에 대상체, 즉 패턴이 인쇄된 골프공을 촬영하여 얻어진 복수의 깊이 맵에 기초하여 골프공의 제2 운동 데이터를 획득할 수 있다. 이에 관한 자세한 설명은 후술한다.The processor 110 may acquire second motion data of the golf ball based on a plurality of depth maps obtained when the second camera module 130 photographs an object, that is, a golf ball with a printed pattern, at different viewpoints. A detailed explanation regarding this will be provided later.

메모리(140)는 전자 장치(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 메모리(140)는 전자 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 전자 장치(100)의 동작을 위한 데이터들, 프로세서(110)에 의해 실행되는 명령어들을 저장할 수 있다. 또한, 메모리(140)는 제1 카메라 모듈(120) 및 제2 카메라 모듈(130)에 의해 촬영되어 생성되는 이미지들, 깊이 맵들을 저장할 수 있다. 메모리(140)는 제1 운동 데이터를 생성하기 위해 이용되는 패턴 라이브러리를 저장할 수 있다.The memory 140 may store data supporting various functions of the electronic device 100. The memory 140 stores a plurality of application programs (application programs or applications) running on the electronic device 100, data for the operation of the electronic device 100, and instructions executed by the processor 110. You can. Additionally, the memory 140 may store images and depth maps generated by being captured by the first camera module 120 and the second camera module 130. The memory 140 may store a pattern library used to generate first exercise data.

메모리(140)는 휘발성 메모리(volatile memory) 또는 불휘발성 메모리(nonvolatile memory)를 포함할 수 있다. 불휘발성 메모리는 ROM (Read Only Memory), PROM (Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM), 플래시 메모리 등을 포함할 수 있으며, 휘발성 메모리는 DRAM (Dynamic RAM), SRAM (Static RAM), SDRAM (Synchronous DRAM), PRAM (Phase-change RAM), MRAM (Magnetic RAM), RRAM (Resistive RAM), FeRAM (Ferroelectric RAM) 등과 같은 다양한 메모리들 중 적어도 하나를 포함할 수 있다.Memory 140 may include volatile memory or nonvolatile memory. Non-volatile memory may include ROM (Read Only Memory), PROM (Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM), flash memory, etc., and volatile memory may include DRAM (Dynamic RAM). , may include at least one of various memories such as SRAM (Static RAM), SDRAM (Synchronous DRAM), PRAM (Phase-change RAM), MRAM (Magnetic RAM), RRAM (Resistive RAM), FeRAM (Ferroelectric RAM), etc. there is.

입력부(150)는 오디오 신호를 수신하기 위한 마이크로폰, 사용자로부터 정보를 입력 받기 위한 사용자 입력부, 즉, 버튼, 조그 휠 등을 포함하는 메커니컬 키와 같은 기계식(mechanical) 입력수단이나 터치식 입력수단을 포함할 수 있다. 입력부(150)에서 수집한 오디오 신호 또는 사용자 입력은 프로세서(110)에 의해 분석되어 사용자의 제어명령으로 처리될 수 있다.The input unit 150 includes a microphone for receiving audio signals, a user input unit for receiving information from the user, that is, mechanical input means such as mechanical keys including buttons, jog wheels, etc., or touch-type input means. can do. The audio signal or user input collected by the input unit 150 may be analyzed by the processor 110 and processed as a user's control command.

출력부(160)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 전자 장치(100)에서 처리되는 정보를 표시(출력)하는 디스플레이, 통신부(170)에 의해 수신되거나 메모리(140)에 저장된 음향 신호를 출력하는 음향 출력부 등을 포함할 수 있다. 특히 전자 장치(100)가 추적한 골프공의 움직임을 나타내는 제1 운동 데이터와 제2 운동 데이터는 영상 신호 또는 음성 신호의 형태로 출력부(160)를 통해 출력될 수 있다.The output unit 160 is for generating output related to vision, hearing, or tactile sensation, and displays (outputs) information processed by the electronic device 100, received by the display and communication unit 170, or stored in the memory 140. It may include an audio output unit that outputs the stored audio signal. In particular, the first exercise data and second exercise data representing the movement of the golf ball tracked by the electronic device 100 may be output through the output unit 160 in the form of a video signal or an audio signal.

통신부(170)는 유무선 통신 기술을 이용하여 전자 장치(100)와 다른 전자 장치 간의 데이터 통신을 수행할 수 있다.The communication unit 170 may perform data communication between the electronic device 100 and another electronic device using wired or wireless communication technology.

센서부(180)는 전자 장치(100) 내 정보 또는 전자 장치(100)를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱 하기 위한 하나 이상의 센서를 포함할 수 있다. 특히 전자 장치(100)는 센서부(180)의 구성 중 가속도 센서, 자기 센서, 중력 센서, 자이로스코프 센서 등을 이용하여 전자 장치(100)의 자세 정보를 획득할 수 있다. 여기서 자세 정보는 제1 카메라 모듈(120) 또는 제2 카메라 모듈(130)에 의해 촬영되는 시점에서의 전자 장치(100)의 설치 각도를 의미할 수 있으며, 이는 제2 카메라 모듈(130)에 의해 획득된 복수의 깊이 맵을 이용한 제2 운동 데이터 생성에 이용될 수 있다. The sensor unit 180 may include one or more sensors for sensing at least one of information within the electronic device 100, information about the surrounding environment surrounding the electronic device 100, and user information. In particular, the electronic device 100 may acquire posture information of the electronic device 100 using an acceleration sensor, a magnetic sensor, a gravity sensor, a gyroscope sensor, etc. among the components of the sensor unit 180. Here, the posture information may mean the installation angle of the electronic device 100 at the time of capturing by the first camera module 120 or the second camera module 130, which is captured by the second camera module 130. It can be used to generate second motion data using the acquired plurality of depth maps.

도 2는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치의 동작 방법을 설명하기 위한 순서도이다.FIG. 2 is a flowchart illustrating a method of operating an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention.

도 2를 참조하면, 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치의 동작 방법은 제1 카메라 모듈이 골프공의 서로 다른 시점에서 골프공의 복수의 이미지를 획득하는 단계(S110), 제2 카메라 모듈이 서로 다른 시점에서 골프공의 복수의 깊이 맵을 획득하는 단계(S120), 복수의 이미지로부터 제1 운동 데이터를 획득하는 단계(S130), 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계(S140) 및 제1 운동 데이터와 제2 운동 데이터에 기초한 피드백을 사용자에게 출력하는 단계(S150)를 포함할 수 있다. 여기서 단계(S110)와 단계(S120) 사이, 단계(S130)와 단계(S140) 사이에는 선후관계가 성립하지 않을 수 있다. 즉, 단계(S120)가 단계(S110)보다 먼저 수행되거나 단계(S120)와 단계(S110)가 동시에 수행될 수 있으며, 마찬가지로 단계(S140)가 단계(S130)보다 먼저 수행되거나 단계(S140)와 단계(S130)가 동시에 수행될 수 있다.Referring to FIG. 2, a method of operating an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention includes a first camera module capturing a plurality of images of the golf ball from different viewpoints of the golf ball. Obtaining step (S110), step of acquiring a plurality of depth maps of the golf ball at different viewpoints by the second camera module (S120), step of acquiring first motion data from a plurality of images (S130), multiple depths It may include obtaining second exercise data from the map (S140) and outputting feedback based on the first exercise data and the second exercise data to the user (S150). Here, a precedence relationship may not be established between steps S110 and S120 and between steps S130 and S140. That is, step S120 may be performed before step S110, or step S120 and step S110 may be performed simultaneously, and similarly, step S140 may be performed before step S130, or step S140 and step S110 may be performed simultaneously. Step S130 may be performed simultaneously.

먼저 제1 카메라 모듈(120)과 제2 카메라 모듈(130)에 의해 복수의 이미지와 복수의 깊이 맵을 획득하는 단계(S110, 120)를 설명한다.First, steps S110 and 120 of acquiring a plurality of images and a plurality of depth maps using the first camera module 120 and the second camera module 130 will be described.

도 3은 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에서 골프공의 움직임을 제1 카메라 모듈과 제2 카메라 모듈에 의해 촬영하는 구성을 설명하기 위한 도면이고, 도 4는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치가 촬영하는 골프공에 인쇄된 패턴의 예시를 설명하기 위한 도면이다.FIG. 3 is a diagram illustrating a configuration for photographing the movement of a golf ball by a first camera module and a second camera module in an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention. , FIG. 4 is a diagram illustrating an example of a pattern printed on a golf ball captured by an electronic device that tracks the movement of a pattern-printed golf ball according to some embodiments of the present invention.

도 3을 참조하면, 제1 카메라 모듈(120)과 제2 카메라 모듈(130)은 클럽이 골프공을 타격하는 것에 의해 트리거링되어 복수의 이미지 또는 깊이 맵을 생성할 수 있다.Referring to FIG. 3, the first camera module 120 and the second camera module 130 may be triggered by a club hitting a golf ball to generate a plurality of images or a depth map.

클럽에 의해 타격되기 전까지 골프공은 정지된 상태를 유지하며, 제1 카메라 모듈(120)과 제2 카메라 모듈(130)은 정지된 상태에서의 골프공을 촬영함으로써 이미지와 깊이 맵을 획득한다. The golf ball remains stationary until it is struck by the club, and the first camera module 120 and the second camera module 130 obtain an image and a depth map by photographing the golf ball in a stationary state.

골프공이 타격되어 이동하면, 전자 장치(100)는 타격에 의해 트리거링될 수 있다. 상기 트리거링은 예를 들어, 정지된 상태에서 얻어진 제1 이미지와, 타격 이후 얻어진 제2 이미지 사이의 차영상(differential image)에 기초하여 발생할 수 있다.When a golf ball is hit and moves, the electronic device 100 may be triggered by the hit. The triggering may occur, for example, based on a differential image between a first image obtained in a stationary state and a second image obtained after hitting.

제1 카메라 모듈(120)이 얻는 복수의 이미지 또는 제2 카메라 모듈(130)이 얻는 복수의 깊이 맵은 정지된 상태에서 얻어진 이미지 또는 깊이 맵을 포함할 수 있다. 즉, 전자 장치(100)는 타격 직전의 위치에서의 골프공의 이미지/깊이 맵을 제1 이미지/제1 깊이 이미지, 타격 이후 시점의 골프공의 이미지/깊이 맵를 제2 이미지/제2 깊이 이미지로 하여 제1 운동 데이터/제2 운동 데이터를 생성할 수 있다. 다만 본 발명이 이에 제한되는 것은 아니며, 전자 장치(100)는 타격 이후 제1 시점에서의 이미지/깊이 맵을 제1 이미지/제1 깊이 이미지, 제1 시점 이후 제2 시점의 골프공의 이미지/깊이 맵를 제2 이미지/제2 깊이 이미지로 할 수도 있다. 또한 움직이는 골프공의 이미지를 획득하는 시점과 깊이 맵을 획득하는 시점은 서로 다를 수도 있는데, 예를 들어 전자 장치(100)가 스마트폰인 경우 480fps, 또는 960fps와 같이 제1 카메라 모듈(120)이 초고속 촬영을 지원하고 제2 카메라 모듈(130)의 ToF 촬영이 120fps과 같이 상대적으로 저속의 촬영을 지원하는 경우를 의미할 수 있다. 어느 경우든 전자 장치(100)는 독립된 복수의 이미지와 복수의 깊이 맵으로부터 제1 및 제2 운동 데이터를 각각 생성할 수 있다.The plurality of images obtained by the first camera module 120 or the plurality of depth maps obtained by the second camera module 130 may include images or depth maps obtained in a stationary state. That is, the electronic device 100 uses the image/depth map of the golf ball at the position just before hitting as the first image/first depth image, and uses the image/depth map of the golf ball at the point after hitting as the second image/second depth image. First exercise data/second exercise data can be generated as follows. However, the present invention is not limited to this, and the electronic device 100 converts the image/depth map at the first viewpoint after the hit into a first image/first depth image, and an image/depth map of the golf ball at a second viewpoint after the first viewpoint. The depth map may be a second image/second depth image. Additionally, the timing of acquiring the image of the moving golf ball and the timing of acquiring the depth map may be different. For example, if the electronic device 100 is a smartphone, the first camera module 120 may operate at 480 fps or 960 fps. This may mean a case where high-speed shooting is supported and ToF shooting of the second camera module 130 supports relatively low-speed shooting, such as 120fps. In either case, the electronic device 100 may generate first and second motion data from a plurality of independent images and a plurality of depth maps, respectively.

골프공 상에는 도 4와 같은 패턴이 인쇄될 수 있다. 패턴(p1, p2, p3) 각각은 골프공의 주위를 일주하는 제1 패턴(p1), 제1 패턴(p1)을 하나의 좌표축을 기준으로 45° 회전시킨 제2 패턴(p2), 상기 좌표축을 기준으로 제1 패턴(p1)을 -45° 회전시킨 제3 패턴(p3)을 포함할 수 있다. 다만 상기 패턴은 예시적인 것이며, 제1 카메라 모듈(120)에 의해 촬영된 이미지를 이용하여 골프공의 스핀 데이터를 얻을 수 있을 정도의 패턴이면 충분하다. A pattern as shown in FIG. 4 may be printed on the golf ball. Each of the patterns (p1, p2, and p3) includes a first pattern (p1) that goes around the golf ball, a second pattern (p2) that rotates the first pattern (p1) by 45° based on one coordinate axis, and the coordinate axis. It may include a third pattern (p3) obtained by rotating the first pattern (p1) by -45°. However, the above pattern is an example, and any pattern sufficient to obtain spin data of a golf ball using an image captured by the first camera module 120 is sufficient.

이하에서 제1 카메라 모듈(120)에 의해 촬영된 골프공의 복수의 이미지를 이용한 제1 운동 데이터의 획득과 관련하여 더욱 자세하게 설명한다.Hereinafter, acquisition of first motion data using a plurality of images of a golf ball captured by the first camera module 120 will be described in more detail.

도 5는 본 발명의 몇몇 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치의 동작 방법과 관련하여 제1 카메라 모듈에 의한 복수의 이미지를 이용한 제1 운동 데이터의 획득을 설명하기 위한 순서도이고, 도 6은 제1 및 제2 패턴 이미지를 추출하는 단계를 설명하기 위한 도면이며, 도 7은 추출된 패턴 이미지를 미리 저장된 패턴 라이브러리와 비교하여 각각의 패턴 이미지에 대응하는 후보 회전각을 결정하는 단계를 설명하기 위한 도면이며, 도 8은 추출된 패턴 이미지에 대응하는 회전각을 갖는 패턴 이미지들을 설명하기 위한 도면이다.5 illustrates the acquisition of first motion data using a plurality of images by a first camera module in relation to a method of operating an electronic device that tracks the movement of a golf ball with a pattern printed on it according to some embodiments of the present invention. Figure 6 is a flow chart for explaining the steps of extracting the first and second pattern images, and Figure 7 shows the candidate rotation angle corresponding to each pattern image by comparing the extracted pattern image with a pre-stored pattern library. This is a diagram for explaining the step of determining , and FIG. 8 is a diagram for explaining pattern images having a rotation angle corresponding to the extracted pattern image.

도 5를 참조하면, 제1 운동 데이터의 획득은 제1 이미지와 제2 이미지를 처리하여 제1 및 제2 패턴 이미지를 추출하는 단계(S210), 패턴 라이브러리와 제1 및 제2 패턴 이미지를 비교하여 각각의 패턴 이미지에 대응하는 후보 회전각을 결정하는 단계(S220), 미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하는 단계(S230), 결정된 회전각에 기초하여 스핀 데이터를 획득하는 단계(S240)를 포함할 수 있다.Referring to FIG. 5, acquisition of first motion data includes processing the first image and the second image to extract the first and second pattern images (S210), and comparing the pattern library with the first and second pattern images. Determining a candidate rotation angle corresponding to each pattern image (S220), determining the rotation angle of the first and second pattern images to be less than a predetermined rotation speed (S230), based on the determined rotation angle It may include acquiring spin data (S240).

먼저 제1 카메라 모듈(120)이 골프공을 촬영하여 얻은 제1 이미지와 제2 이미지를 처리하여 제1 및 제2 패턴 이미지를 추출하는 단계(S210)가 수행된다.First, a step (S210) of extracting first and second pattern images by processing the first and second images obtained by the first camera module 120 by photographing a golf ball is performed.

도 6을 참조하면, 먼저 제1 카메라 모듈(120)이 골프공을 촬영하여 얻은 제1 이미지와 제2 이미지를 처리하여 제1 및 제2 패턴 이미지를 추출하는 과정이 도시된다. (a)는 움직이는 골프공을 촬영한 3개의 이미지를 하나로 합성한 이미지이며, (b)는 (a)로부터 골프공을 인식하는 이미지이며, (c)는 인식된 각각의 골프공 이미지로부터 패턴 이미지를 추출하는 과정의 이미지다.Referring to FIG. 6, a process of extracting first and second pattern images by processing the first and second images obtained by the first camera module 120 by photographing a golf ball is shown. (a) is an image that combines three images of a moving golf ball into one, (b) is an image that recognizes a golf ball from (a), and (c) is a pattern image from each recognized golf ball image. This is an image of the process of extracting .

본 발명의 몇몇 실시예에서, 촬영된 골프공의 이미지로부터 골프공을 인식하기 위해 필요에 따라 이미지에 대한 전처리 과정이 수행될 수 있으며, 이러한 전처리는 예를 들어 가우시안 블러(Gaussian blur) 등을 이용하여 노이즈 제거 후 그레이스케일(grayscale)로 플로팅하는 과정을 포함할 수 있다.In some embodiments of the present invention, pre-processing of the image may be performed as necessary to recognize the golf ball from the captured image of the golf ball, and such pre-processing may use, for example, Gaussian blur, etc. This may include a process of removing noise and plotting in grayscale.

전처리된 이미지로부터 골프공이 인식되면 골프공의 인쇄된 패턴을 인식하여 패턴 이미지(PI)가 추출된다.When a golf ball is recognized from the preprocessed image, a pattern image (PI) is extracted by recognizing the printed pattern of the golf ball.

추출된 패턴 이미지(PI)는 메모리(140)에 미리 저장된 패턴 라이브러리와 비교하고, 각각의 패턴 이미지에 대응하는 후보 회전각이 결정될 수 있다(S220).The extracted pattern image (PI) may be compared with a pattern library previously stored in the memory 140, and a candidate rotation angle corresponding to each pattern image may be determined (S220).

도 7을 참조하면, 골프공의 패턴 이미지(PI, 도 7의 (1))와, 패턴 라이브러리에 저장된 패턴 이미지(도 7의 (2)), 두 패턴 이미지를 비교하여 공통된 부분을 표시한 이미지(도 7의 (3)이 도시된다. 도 7에서는 추출된 패턴 이미지(PI)와, 패턴 라이브러리에 저장된 다양한 패턴 이미지를 비교하는 경우(245, 286, 260, 287)가 예시적으로 도시되었다.Referring to Figure 7, a pattern image of a golf ball (PI, (1) in Figure 7), a pattern image stored in the pattern library ((2) in Figure 7), and an image showing common parts by comparing the two pattern images. ((3) in FIG. 7 is shown. In FIG. 7, a case (245, 286, 260, 287) of comparing the extracted pattern image (PI) with various pattern images stored in the pattern library is shown as an example.

패턴 라이브러리는 골프공에 인쇄된 패턴을 기초로 생성될 수 있다. 즉, 도 4와 같이 골프공을 둘러싸는 3개의 원 패턴을 기준으로 하나의 평면 상에 투영된 2차원 이미지가 생성된다. 또한, 골프공에 인쇄된 패턴을 기준 좌표에 대하여 x축, y축, z축 방향으로 각각 0~360° 회전시킨 경우 경우(360×360×360가지)에 대해 하나의 평면 상에 투영된 2차원 이미지를 각각 생성하여 패턴 라이브러리로서 메모리(140) 상에 저장된다. 도 7의 (2)는 추출된 패턴 이미지와 비교를 위해 패턴 라이브러리로부터 선택된 몇몇 이미지를 도시한다. 패턴 라이브러리에 포함된 패턴 이미지들은 이에 대응하는 파라미터로서의 회전각(예를 들어 x축, y축, z축 순서로 (x1, y1, z1))이 존재한다. 예를 들어 (0,0,0)의 회전각을 갖는 패턴 이미지는 세 개의 패턴이 만나는 지점이 골프공의 중심점에 위치하도록 회전각이 정의될 수 있다.A pattern library can be created based on patterns printed on golf balls. That is, a two-dimensional image projected onto one plane is created based on three circular patterns surrounding the golf ball, as shown in FIG. 4. In addition, when the pattern printed on the golf ball is rotated 0 to 360° in the x-axis, y-axis, and z-axis directions with respect to the reference coordinate (360 × 360 × 360 types), 2 projected on one plane Each dimensional image is generated and stored on the memory 140 as a pattern library. Figure 7(2) shows several images selected from the pattern library for comparison with the extracted pattern image. Pattern images included in the pattern library have rotation angles as corresponding parameters (for example, (x 1 , y 1 , z 1 ) in the order of x-axis, y-axis, and z-axis). For example, in a pattern image with a rotation angle of (0,0,0), the rotation angle may be defined so that the point where the three patterns meet is located at the center point of the golf ball.

다만, 추출된 패턴 이미지와 x축, y축, z축 방향으로 최대 360°시킨 이미지를 비교하는 것은 50픽셀×50픽셀의 이미지를 기준으로 360×360×360×50×50가지의 복잡도를 가질 수 있는 바, 프로세서(110)의 부하를 경감하기 위해 패턴 라이브러리 중 일정한 기준에 의해 선택된 패턴들과 추출된 패턴 이미지의 비교가 수행될 수 있다. 예를 들어, x축, y축, z축 상으로 10° 단위로 건너뛰면서 선택된 패턴의 경우 복잡도가 36×36×36×50×50로 1000배 감소될 수 있을 것이다.However, comparing the extracted pattern image with an image rotated up to 360° in the x-axis, y-axis, and z-axis directions has a complexity of 360 × 360 × 360 × 50 × 50 based on an image of 50 pixels × 50 pixels. In order to reduce the load on the processor 110, a comparison may be performed between patterns selected according to a certain standard from the pattern library and the extracted pattern image. For example, in the case of a pattern selected by skipping in 10° increments along the x-axis, y-axis, and z-axis, the complexity could be reduced by 1000 times to 36×36×36×50×50.

도 7의 (3)과 같이 추출된 패턴 이미지와 패턴 라이브러리와의 비교 결과가 도시된다. 도 7의 (3)은 예시적으로 추출된 패턴 이미지와 패턴 라이브러리와의 비교 결과 공통된 부분을 검은색으로 표시한 것이다. 이와 같이 공통된 부분이 가장 많은 경우의 패턴 이미지를 패턴 라이브러리로부터 선택하고, 선택된 패턴 이미지가 갖는 파라미터로서의 회전각을 후보 회전각으로 선택한다.As shown in (3) of FIG. 7, the comparison result between the extracted pattern image and the pattern library is shown. (3) in FIG. 7 exemplarily shows common parts in black as a result of comparison between the extracted pattern image and the pattern library. In this way, the pattern image with the most common parts is selected from the pattern library, and the rotation angle as a parameter of the selected pattern image is selected as the candidate rotation angle.

골프공에 인쇄된 패턴을 2차원 평면에 투영시키는 경우, 대칭된 패턴이 존재하는 특성 상 동일한 패턴을 갖는 패턴 이미지가 생성될 수 있다. 예를 들어 회전각이 (x1, y1, z1)인 경우의 투영된 패턴 이미지와, (x1+180, y1, z1)인 경우의 투영된 패턴 이미지가 동일할 수 있다. 이 이외에, 패턴 라이브러리에 저장된 360×360×360가지의 패턴 이미지 중 동일하거나 동일하게 인식될 수 있는 패턴 이미지가 복수 개 존재할 수 있다. 즉, 패턴 이미지로부터 결정될 수 있는 회전각이 유일해(unique solution)이 아닌 경우가 되는 것이다.When a pattern printed on a golf ball is projected onto a two-dimensional plane, a pattern image with the same pattern can be created due to the nature of symmetrical patterns. For example, the projected pattern image when the rotation angle is (x 1 , y 1 , z 1 ) and the projected pattern image when the rotation angle is (x 1 +180, y 1 , z 1 ) may be the same. In addition to this, among the 360×360×360 pattern images stored in the pattern library, there may be a plurality of pattern images that are identical or can be recognized as the same. In other words, the rotation angle that can be determined from the pattern image is not a unique solution.

따라서 추출된 패턴 이미지와 이에 대응하는 회전각을 갖는 패턴 이미지들은 도 8과 같이 복수 개 존재할 수 있다. 이는 회전각이 (80, 20, 30)인 경우의 패턴 이미지와, z축을 중심으로 180도 회전된 (80, 20, 210)인 경우의 패턴 이미지가 동일한 경우이다. 이 둘의 패턴 이미지가 갖는 파라미터로서의 회전각이 후보 회전각으로 선택된다.Accordingly, there may be a plurality of extracted pattern images and pattern images with corresponding rotation angles, as shown in FIG. 8 . This is a case where the pattern image when the rotation angle is (80, 20, 30) is the same as the pattern image when the rotation angle is (80, 20, 210) rotated 180 degrees around the z-axis. The rotation angle as a parameter of these two pattern images is selected as the candidate rotation angle.

이어서, 미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각이 결정된다(S230). 여기서 미리 정한 회전 속도는, 인간이 클럽을 이용하여 골프공을 타격하였을 때 가능한 최대의 회전 속도일 수 있으며, 예를 들어 15000rpm 이상의 회전 속도를 내는 것은 불가능한 것으로 간주하고 이보다 작은 회전 속도를 갖도록 패턴 이미지의 회전각이 결정될 수 있다.Next, the rotation angles of the first and second pattern images are determined to be less than or equal to a predetermined rotation speed (S230). Here, the predetermined rotation speed may be the maximum rotation speed possible when a human hits a golf ball using a club. For example, it is considered impossible to achieve a rotation speed of more than 15000 rpm, and the pattern image is set to have a rotation speed smaller than this. The rotation angle can be determined.

이를 판단하기 위해, 복수의 패턴 이미지가 필요할 수 있다. 예를 들어, 제1 패턴 이미지에 대응되는 후보 회전각 중 임의의 회전각을 기준 회전각으로 결정하고, 제2 패턴 이미지에 대응되는 후보 회전각 중 미리 정한 회전 이상을 갖는 회전각을 제외하면 제2 패턴 이미지의 회전각을 결정할 수 있다. 제1 패턴 이미지의 회전각과 제2 패턴 이미지의 회전각에 기초하여 골프공의 스핀 데이터를 획득할 수 있다(S240). 즉, 제1 카메라 모듈(120)에 의한 제1 이미지와 제2 이미지의 촬영 시점의 타임 스탬프, 제1 패턴 이미지의 회전각과 제2 패턴 이미지의 회전각을 이용하여 골프공의 스핀량에 관한 스핀 데이터, 즉 제1 운동 데이터를 획득할 수 있다.To determine this, multiple pattern images may be required. For example, if a random rotation angle among the candidate rotation angles corresponding to the first pattern image is determined as the reference rotation angle, and a rotation angle having a predetermined rotation or more among the candidate rotation angles corresponding to the second pattern image is excluded, 2 The rotation angle of the pattern image can be determined. Spin data of the golf ball can be obtained based on the rotation angle of the first pattern image and the rotation angle of the second pattern image (S240). That is, spin data regarding the spin amount of the golf ball using the time stamp at the time of capturing the first image and the second image by the first camera module 120, the rotation angle of the first pattern image, and the rotation angle of the second pattern image. , That is, first exercise data can be obtained.

이와 같은 회전각의 결정은 셋 이상의 패턴 이미지를 이용하여 수행될 수도 있다. 예를 들어 도 6과 같이 제1 카메라 모듈(120)이 촬영한 제1 내지 제3 이미지를 이용하여 제1 내지 제3 패턴 이미지를 추출하고, 제1 내지 제3 패턴 이미지를 패턴 라이브러리에 저장된 패턴 이미지와 비교하여 회전각을 결정할 수 있다. 이 때 제1 패턴 이미지를 후보 회전각 중 임의의 회전각을 기준 회전각으로 설정하고, 미리 정한 회전 속도 이하가 되도록 제2 패턴 이미지의 후보 회전각 중에 하나를 선택하여 제2 패턴 이미지의 회전각을 결정할 수 있다. 또한, 제3 패턴 이미지의 후보 회전각 중 제2 패턴 이미지의 회전각과의 관계에서 미리 정한 회전 속도 이하가 되도록 제3 패턴 이미지의 회전각을 결정할 수 있다. 이 때 제2 패턴 이미지의 회전각과 제3 패턴 이미지의 회전각은 회전 방향이 일치하고 스핀량은 오차 범위 내에서 동일할 수 있다.Such determination of the rotation angle may be performed using three or more pattern images. For example, as shown in FIG. 6, first to third pattern images are extracted using the first to third images captured by the first camera module 120, and the first to third pattern images are stored in the pattern library. By comparing it with the image, the rotation angle can be determined. At this time, a random rotation angle among the candidate rotation angles of the first pattern image is set as the reference rotation angle, and one of the candidate rotation angles of the second pattern image is selected so that the rotation speed is less than a predetermined rotation speed to determine the rotation angle of the second pattern image. can be decided. Additionally, the rotation angle of the third pattern image may be determined to be less than or equal to a predetermined rotation speed in relation to the rotation angle of the second pattern image among the candidate rotation angles of the third pattern image. At this time, the rotation direction of the rotation angle of the second pattern image and the rotation angle of the third pattern image may be the same and the spin amount may be the same within an error range.

이 때 제1 패턴 이미지와 제2 패턴 이미지의 회전각에 기초하여 획득된 스핀 데이터, 제2 패턴 이미지와 제3 패턴 이미지의 회전각에 기초하여 획득된 스핀 데이터 사이의 평균을 이용하여 골프공의 스핀 데이터를 결정할 수 있다. At this time, the average between the spin data obtained based on the rotation angles of the first pattern image and the second pattern image, and the spin data obtained based on the rotation angles of the second pattern image and the third pattern image is used to determine the size of the golf ball. Spin data can be determined.

이와 같이 본 발명의 실시예에 따른 패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치(100)는 제1 카메라 모듈(120)에 의해 촬영된 골프공의 복수의 이미지로부터 추출된 패턴 이미지들을 이용하여 골프공의 스핀량에 관한 스핀 데이터를 결정할 수 있다. 특히, 골프공의 스핀을 측정하기 위한 고가의 카메라 여러 대 대신에 스마트폰과 같은 전자 장치에 탑재된 카메라 모듈을 이용하여 스핀량을 측정할 수 있다. 또한 전자 장치(100)는 스핀량 측정의 정확도를 높이기 위해 둘 이상의 이미지로부터 추출된 패턴 이미지를 이용하되, 미리 정한 회전 속도 이하의 회전 속도를 갖도록 패턴 이미지의 후보 회전각 중 하나를 선택함으로써 회전각 또는 스핀량이 유일해를 갖도록 연산할 수 있다.As such, the electronic device 100 for tracking the movement of a golf ball with a pattern printed on it according to an embodiment of the present invention uses pattern images extracted from a plurality of images of the golf ball captured by the first camera module 120. Thus, spin data regarding the spin amount of the golf ball can be determined. In particular, instead of using multiple expensive cameras to measure the spin of a golf ball, the spin amount can be measured using a camera module mounted on an electronic device such as a smartphone. Additionally, in order to increase the accuracy of spin amount measurement, the electronic device 100 uses a pattern image extracted from two or more images, and selects one of the candidate rotation angles of the pattern image to have a rotation speed less than a predetermined rotation speed, so that the rotation angle or The spin amount can be calculated to have a unique solution.

다시 도 2를 참조하여, 제2 카메라 모듈(130)에 의해 얻어진 복수의 깊이 맵을 이용하여 제2 운동 데이터를 획득하는 단계(S140)를 설명한다. 프로세서(110)는 제1 시점(예를 들어 타격 전) 골프공의 제1 깊이 맵과, 제2 시점(예를 들어 타격 직후)에서 이동된 골프공의 제2 깊이 맵을 이용하여 골프공의 변위를 측정할 수 있다. Referring again to FIG. 2, the step (S140) of acquiring second motion data using a plurality of depth maps obtained by the second camera module 130 will be described. The processor 110 uses a first depth map of the golf ball at a first time point (e.g., before hitting) and a second depth map of the golf ball moved at a second time point (e.g., immediately after hitting) to determine the size of the golf ball. Displacement can be measured.

제1 시점과 제2 시점의 타임 스탬프와 골프공의 변위를 이용하면 골프공의 이동 속도를 연산할 수 있다. 또한, 이미지 상에서 골프공의 변위와, 센서부(180)를 통해 얻어진 전자 장치(100)의 설치 각도를 이용하여 지면에 대한 골프공의 이동 각도를 연산할 수 있다. 제1 깊이 맵과 제2 깊이 맵을 이용하여 연산된 골프공의 이동 속도 및 각도는 제2 운동 데이터를 구성할 수 있다. Using the time stamps of the first and second viewpoints and the displacement of the golf ball, the moving speed of the golf ball can be calculated. Additionally, the movement angle of the golf ball with respect to the ground can be calculated using the displacement of the golf ball in the image and the installation angle of the electronic device 100 obtained through the sensor unit 180. The moving speed and angle of the golf ball calculated using the first depth map and the second depth map may constitute second motion data.

전자 장치(100)가 획득한 제1 운동 데이터와 제2 운동 데이터에 기초하여 사용자에게 피드백이 출력될 수 있다(S150). 상기 피드백은 출력부(160)를 통해 사용자에게 출력될 수 있으며, 예를 들어 전자 장치(100)의 디스플레이를 통해 영상으로 출력되거나 전자 장치(100)의 음향 출력부를 통해 음향(음성)으로 출력될 수 있다.Feedback may be output to the user based on the first and second exercise data acquired by the electronic device 100 (S150). The feedback may be output to the user through the output unit 160, for example, as an image through the display of the electronic device 100, or as audio (voice) through the audio output unit of the electronic device 100. You can.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 장치에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 하드디스크, ROM, RAM, CD-ROM, 하드 디스크, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The present invention can also be implemented as computer-readable code on a computer-readable recording medium. Computer-readable recording media include all types of recording devices that store data that can be read by a computer device. Examples of computer-readable recording media include hard disks, ROMs, RAM, CD-ROMs, hard disks, magnetic tapes, floppy disks, and optical data storage devices, as well as carrier waves (e.g., transmission via the Internet). It also includes implementation in the form of.

이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although embodiments of the present invention have been described above with reference to the attached drawings, those skilled in the art will understand that the present invention can be implemented in other specific forms without changing the technical idea or essential features. You will be able to understand it. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive.

100 전자 장치 110: 프로세서
120: 제1 카메라 모듈 130: 제2 카메라 모듈
140: 메모리 150: 입력부
160: 출력부 170: 통신부
180: 센서부
100 Electronic Device 110: Processor
120: first camera module 130: second camera module
140: memory 150: input unit
160: output unit 170: communication unit
180: sensor unit

Claims (14)

패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에 있어서,
상기 골프공을 촬영하여 상기 골프공의 이미지를 생성하는 제1 카메라 모듈;
상기 골프공을 촬영하여 상기 골프공의 깊이 맵(depth map)을 생성하는 제2 카메라 모듈;
상기 제1 및 제2 카메라 모듈과 전기적으로 연결되고, 상기 제1 및 제2 카메라 모듈을 제어하는 프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행되어,
상기 제1 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 이미지를 획득하고,
상기 제2 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 깊이 맵을 획득하고,
상기 복수의 이미지로부터 제1 운동 데이터를 획득하고,
상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계를 수행하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에 있어서,
상기 제1 운동 데이터는 상기 골프공의 스핀 데이터이고,
상기 제2 운동 데이터는 상기 골프공의 이동 속도 및 각도 데이터이며,
상기 프로세서가 상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 것은,
상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고,
미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고,
미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고,
상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
In the electronic device for tracking the movement of a pattern-printed golf ball,
a first camera module that photographs the golf ball and generates an image of the golf ball;
a second camera module that photographs the golf ball and generates a depth map of the golf ball;
a processor electrically connected to the first and second camera modules and controlling the first and second camera modules; and
a memory storing instructions executable by the processor, the instructions being executed by the processor,
The first camera module acquires a plurality of images of the golf ball at different viewpoints,
The second camera module acquires a plurality of depth maps of the golf ball at different viewpoints,
Obtaining first motion data from the plurality of images,
Performing the step of obtaining second motion data from the plurality of depth maps,
In the electronic device for tracking the movement of a pattern-printed golf ball,
The first motion data is spin data of the golf ball,
The second movement data is the movement speed and angle data of the golf ball,
The processor acquires first motion data from the plurality of images,
Processing the first and second images of the golf ball to extract a first pattern image and a second pattern image,
Comparing the first and second pattern images with a pre-stored pattern library to determine candidate rotation angles of the first and second pattern images,
Determine the rotation angles of the first and second pattern images to be less than or equal to a predetermined rotation speed,
Including determining spin data of the golf ball from the rotation angle of the first and second pattern images,
An electronic device that tracks the movement of a patterned golf ball.
삭제delete 삭제delete 제 1항에 있어서,
상기 프로세서에 의해 제어되어 상기 전자 장치의 설치 자세를 감지하는 센서부를 더 포함하고,
상기 프로세서가 상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 것은,
제1 및 제2 깊이 맵으로부터 얻어진 상기 골프공의 변위와 상기 전자 장치의 설치 자세를 이용하여 상기 골프공의 이동 속도 및 각도 데이터를 획득하는 것을 포함하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
According to clause 1,
Further comprising a sensor unit controlled by the processor to detect the installation posture of the electronic device,
The processor obtains second motion data from the plurality of depth maps,
Including acquiring movement speed and angle data of the golf ball using the displacement of the golf ball obtained from the first and second depth maps and the installation posture of the electronic device,
An electronic device that tracks the movement of a patterned golf ball.
제 1항에 있어서,
상기 명령어는, 상기 프로세서에 의해 실행되어 상기 제1 운동 데이터와 제2 운동데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 수행하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
According to clause 1,
The command is executed by the processor to further perform the step of outputting feedback based on the first exercise data and the second exercise data to the user.
An electronic device that tracks the movement of a patterned golf ball.
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치에 있어서,
상기 골프공을 촬영하여 상기 골프공의 이미지를 생성하는 제1 카메라 모듈;
상기 제1 카메라 모듈과 전기적으로 연결되고, 상기 제1 카메라 모듈을 제어하는 프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행되어,
상기 제1 카메라 모듈이 서로 다른 시점에서 촬영된 상기 골프공의 제1 내지 제3 이미지를 획득하고,
상기 제1 내지 제3 이미지를 전처리하여 상기 골프공의 제1 내지 제3 패턴 이미지를 각각 추출하고,
미리 저장된 패턴 라이브러리와 상기 제1 내지 제3 패턴 이미지를 비교하여 상기 골프공의 제1 내지 제3 회전각을 각각 결정하고,
상기 골프공의 제1 내지 제3 회전각으로부터 제1 운동 데이터를 획득하고,
상기 제1 운동 데이터에 기초한 피드백을 사용자에게 출력하는 단계를 수행하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
In the electronic device for tracking the movement of a pattern-printed golf ball,
a first camera module that photographs the golf ball and generates an image of the golf ball;
a processor electrically connected to the first camera module and controlling the first camera module; and
a memory storing instructions executable by the processor, the instructions being executed by the processor,
The first camera module acquires first to third images of the golf ball taken at different viewpoints,
Preprocessing the first to third images to extract first to third pattern images of the golf ball, respectively,
Comparing the first to third pattern images with a pre-stored pattern library to determine first to third rotation angles of the golf ball, respectively,
Obtaining first motion data from first to third rotation angles of the golf ball,
Performing the step of outputting feedback based on the first exercise data to the user,
An electronic device that tracks the movement of a patterned golf ball.
제 6항에 있어서,
상기 프로세서에 의해 제어되어 상기 골프공을 촬영하여 상기 골프공의 깊이 맵(depth map)을 생성하는 제2 카메라 모듈을 더 포함하되,
상기 명령어는 상기 프로세서에 의해 실행되어
상기 제2 카메라 모듈이 서로 다른 시점에 상기 골프공의 제1 깊이 맵과 제2 깊이 맵을 획득하고,
상기 제1 깊이 맵과 제2 깊이 맵으로부터 제2 운동 데이터를 획득하고,
상기 제2 운동 데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 수행하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
According to clause 6,
It further includes a second camera module controlled by the processor to photograph the golf ball and generate a depth map of the golf ball,
The instruction is executed by the processor
The second camera module acquires a first depth map and a second depth map of the golf ball at different times,
Obtaining second motion data from the first depth map and the second depth map,
Further performing the step of outputting feedback based on the second exercise data to the user,
An electronic device that tracks the movement of a patterned golf ball.
제 6항에 있어서,
상기 제1 운동 데이터는 상기 골프공의 스핀 데이터를 포함하고,
상기 프로세서가 상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 것은,
상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고,
미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고,
미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고,
상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함하는,
패턴이 인쇄된 골프공의 움직임을 추적하는 전자 장치.
According to clause 6,
The first motion data includes spin data of the golf ball,
The processor acquires first motion data from the plurality of images,
Processing the first and second images of the golf ball to extract a first pattern image and a second pattern image,
Comparing the first and second pattern images with a pre-stored pattern library to determine candidate rotation angles of the first and second pattern images,
Determine the rotation angles of the first and second pattern images to be less than or equal to a predetermined rotation speed,
Including determining spin data of the golf ball from the rotation angle of the first and second pattern images,
An electronic device that tracks the movement of a patterned golf ball.
전자 장치에 의해 패턴이 인쇄된 골프공의 움직임을 추적하는 방법에 있어서,
제1 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 이미지를 획득하는 단계,
제2 카메라 모듈이 서로 다른 시점의 상기 골프공의 복수의 깊이 맵을 획득하는 단계,
상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 단계, 및
상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 단계를 포함하는,
전자 장치에 의해 패턴이 인쇄된 골프공의 움직임을 추적하는 방법에 있어서,
상기 제1 운동 데이터는 상기 골프공의 스핀 데이터이고,
상기 제2 운동 데이터는 상기 골프공의 이동 속도 및 각도 데이터이며,
상기 복수의 이미지로부터 제1 운동 데이터를 획득하는 단계는,
상기 골프공의 제1 이미지와 제2 이미지를 처리하여 제1 패턴 이미지와 제2 패턴 이미지를 추출하고,
미리 저장된 패턴 라이브러리와 상기 제1 및 제2 패턴 이미지를 비교하여 제1 및 제2 패턴 이미지의 후보 회전각을 결정하고,
미리 정한 회전 속도 이하가 되도록 제1 및 제2 패턴 이미지의 회전각을 결정하고,
상기 제1 및 제2 패턴 이미지의 회전각으로부터 상기 골프공의 스핀 데이터를 결정하는 것을 포함하는,
전자 장치에 의해 패턴이 인쇄된 골프공의 움직임을 추적하는 방법.
In a method of tracking the movement of a golf ball with a pattern printed on it by an electronic device,
A first camera module acquiring a plurality of images of the golf ball at different viewpoints,
A second camera module acquiring a plurality of depth maps of the golf ball at different viewpoints,
Obtaining first motion data from the plurality of images, and
Comprising obtaining second motion data from the plurality of depth maps,
In a method of tracking the movement of a golf ball with a pattern printed on it by an electronic device,
The first motion data is spin data of the golf ball,
The second movement data is the movement speed and angle data of the golf ball,
The step of acquiring first motion data from the plurality of images includes:
Processing the first and second images of the golf ball to extract a first pattern image and a second pattern image,
Comparing the first and second pattern images with a pre-stored pattern library to determine candidate rotation angles of the first and second pattern images,
Determine the rotation angles of the first and second pattern images to be less than or equal to a predetermined rotation speed,
Including determining spin data of the golf ball from the rotation angle of the first and second pattern images,
A method of tracking the movement of a golf ball with a pattern printed on it by an electronic device.
삭제delete 삭제delete 제 9항에 있어서,
상기 전자 장치의 설치 자세를 감지하는 단계를 더 포함하고,
상기 복수의 깊이 맵으로부터 제2 운동 데이터를 획득하는 것은,
제1 및 제2 깊이 맵으로부터 얻어진 상기 골프공의 변위와 상기 전자 장치의 설치 자세를 이용하여 상기 골프공의 이동 속도 및 각도 데이터를 획득하는 것을 포함하는,
전자 장치에 의해 패턴이 인쇄된 골프공의 움직임을 추적하는 방법.
According to clause 9,
Further comprising detecting an installation posture of the electronic device,
Obtaining second motion data from the plurality of depth maps includes:
Including acquiring movement speed and angle data of the golf ball using the displacement of the golf ball obtained from the first and second depth maps and the installation posture of the electronic device,
A method of tracking the movement of a golf ball with a pattern printed on it by an electronic device.
제 9항에 있어서,
상기 제1 운동 데이터와 제2 운동데이터에 기초한 피드백을 사용자에게 출력하는 단계를 더 포함하는,
전자 장치에 의해 패턴이 인쇄된 골프공의 움직임을 추적하는 방법.
According to clause 9,
Further comprising outputting feedback based on the first exercise data and the second exercise data to the user,
A method of tracking the movement of a golf ball with a pattern printed on it by an electronic device.
컴퓨터를 이용하여 제 9항, 제12항 및 제 13항의 방법 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 상기 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.A computer program stored in the computer-readable recording medium recording a program for executing the method of any one of claims 9, 12, and 13 using a computer.
KR1020210173003A 2021-12-06 2021-12-06 Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same Active KR102612559B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210173003A KR102612559B1 (en) 2021-12-06 2021-12-06 Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210173003A KR102612559B1 (en) 2021-12-06 2021-12-06 Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same

Publications (3)

Publication Number Publication Date
KR20230085272A KR20230085272A (en) 2023-06-14
KR102612559B1 true KR102612559B1 (en) 2023-12-13
KR102612559B9 KR102612559B9 (en) 2024-09-05

Family

ID=86744733

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210173003A Active KR102612559B1 (en) 2021-12-06 2021-12-06 Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same

Country Status (1)

Country Link
KR (1) KR102612559B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918089A (en) * 2007-09-21 2010-12-15 游戏数据有限责任公司 Object location and movement detection system and method
KR101562319B1 (en) * 2014-04-07 2015-10-21 동의대학교 산학협력단 System and Method for analyzing putting motion using Depth Information
KR20190068431A (en) * 2017-12-08 2019-06-18 한국전자통신연구원 Method for determining precision positioning information and apparatus for the same

Also Published As

Publication number Publication date
KR102612559B9 (en) 2024-09-05
KR20230085272A (en) 2023-06-14

Similar Documents

Publication Publication Date Title
US10902612B2 (en) Launch monitor
US10192310B2 (en) Operating a computing device by detecting rounded objects in an image
US10444845B2 (en) Display of separate computer vision based pose and inertial sensor based pose
US9635251B2 (en) Visual tracking using panoramas on mobile devices
JP5660648B2 (en) Online reference generation and tracking in multi-user augmented reality
US9827487B2 (en) Interactive augmented reality using a self-propelled device
JP5875453B2 (en) Automatic tracking device
US10380761B2 (en) Locating method, locator, and locating system for head-mounted display
CN103907340A (en) Image generation device and image generation method
CN103907341A (en) Image generation device, and image generation method
JP2016213825A (en) Method for acquiring light field data using a non-light field imaging device, corresponding device, computer program product, and non-transitory computer readable carrier medium
US10545215B2 (en) 4D camera tracking and optical stabilization
JP5774226B2 (en) Resolving ambiguity of homography decomposition based on orientation sensor
US12347043B2 (en) Providing pose information
CN107404615B (en) Image recording method and electronic equipment
CN107567632A (en) Critical point detection with trackability measurement result
US10275917B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium
CN112087728B (en) Method and device for acquiring Wi-Fi fingerprint spatial distribution and electronic equipment
JP2009512381A (en) Method and apparatus for reducing motion distortion in digital imaging
US12047674B2 (en) System for generating a three-dimensional scene of a physical environment
KR102612559B1 (en) Electronic device tracking movement of a golf ball with a pattern printed on it, method of driving the same and computer readale medium storing the same
US11836879B2 (en) Information processing apparatus, information processing method, and storage medium for correcting a shift between three-dimensional positions
JP7526542B1 (en) PROGRAM, COMPUTER, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING METHOD
Zamanov Applying Computer Vision Methods on Mobile Devices for BallSpeed Measurements
EP3058717A1 (en) Interactive augmented reality using a self-propelled device

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20211206

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: 20230619

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: 20231204

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20231206

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20231207

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PG1701 Publication of correction

Publication date: 20240905