KR20220011997A - 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템 - Google Patents

골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템 Download PDF

Info

Publication number
KR20220011997A
KR20220011997A KR1020200090969A KR20200090969A KR20220011997A KR 20220011997 A KR20220011997 A KR 20220011997A KR 1020200090969 A KR1020200090969 A KR 1020200090969A KR 20200090969 A KR20200090969 A KR 20200090969A KR 20220011997 A KR20220011997 A KR 20220011997A
Authority
KR
South Korea
Prior art keywords
golf swing
data
expert
image
unit
Prior art date
Application number
KR1020200090969A
Other languages
English (en)
Other versions
KR102466989B1 (ko
Inventor
장동식
김현조
Original Assignee
주식회사 스크린고
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 스크린고 filed Critical 주식회사 스크린고
Priority to KR1020200090969A priority Critical patent/KR102466989B1/ko
Publication of KR20220011997A publication Critical patent/KR20220011997A/ko
Application granted granted Critical
Publication of KR102466989B1 publication Critical patent/KR102466989B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/08Auctions
    • 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/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/36Training appliances or apparatus for special sports for golf
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • G06K9/6201
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Multimedia (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Psychiatry (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 방법은 영상 입력 모듈에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계; 골프 스윙 데이터 산출 모듈에 의해, 상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하는 단계; 및 전문가 매칭 모듈에 의해, 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키는 단계를 포함한다.

Description

골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템{EXPERT MATCHING METHOD AND SYSTEM BASED ON SIMILARITY BETWEEN GOLD SWING DATA}
본 발명은 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템에 관한 것이다.
최근 스크린 골프장이 증가하면서 일반 골프 플레이어 수도 증가하고 있으며, 이에 따라 본인의 골프 스윙 자세를 분석하고 이를 기반으로 교육을 받고자 하는 수요 역시 점차 증가하고 있다.
종래의 골프 스윙분석에는 Event-based Motion Capture 장비가 사용되었는데, 해당 장비는 매우 고가이며 국내에 사용하는 사람이 매우 적었기 때문에 일반인들이 이러한 장비를 용이하게 접하고 사용하는데 무리가 있었다.
뿐만 아니라 해당 장비로 본인의 골프 스윙 자세를 분석한다 할지라도 단순히 분석된 데이터를 골프 강사에게 제시하고, 골프 강사는 해당 데이터를 참고하여 교육을 수행하는데 그치는 실정이었다.
일반적으로 골프를 배우는 사람의 입장에서는 골프 강사 혹은 멘토를 선택할 때 강사의 경력 및 레슨 가격 등 단편적으로 나열된 정보만을 가지고 판단하여야 하는데, 이렇게 해서 정해진 강사는 자신만의 정해진 코칭 방향으로 레슨을 이끌어 가기 때문에 개인 별 최적의 레슨이 불가능하였다. 이에 따라 본인의 골프 스윙 자세와 유사한 스윙 자세를 갖는 골프 강사를 선택하여 교육을 받고자 할지라도 그러한 강사를 찾는데 많은 어려움이 따르고 있었다.
본 발명의 실시예는 주변에서 쉽게 접할 수 있는 영상 기록 장치로 사용자의 골프 스윙 영상을 기록하고 이를 기반으로 사용자의 골프 스윙 자세를 분석하며, 사용자의 골프 스윙 자세와 유사한 골프 강사를 매칭 받을 수 있는 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템을 제공하는 것을 목적으로 한다.
한편, 본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 방법은 영상 입력 모듈에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계; 골프 스윙 데이터 산출 모듈에 의해, 상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하는 단계; 및 전문가 매칭 모듈에 의해, 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키는 단계를 포함한다.
상기 a) 단계는: a-1) 영상 입력부에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계; 및 a-2) 영상 프레임 획득부에 의해, 상기 골프 스윙 영상으로부터 복수의 골프 스윙 영상 프레임을 생성하는 단계를 포함할 수 있다.
상기 b) 단계는: b-1) 움직임 객체 추출부에 의해, 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계; b-2) 움직임 데이터 산출부에 의해, 상기 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하는 단계; b-3) 제1 골프 스윙 데이터 산출부에 의해, 사용자의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 사용자의 골프 스윙 데이터인 제1 골프 스윙 벡터를 산출하는 단계; 및 b-4) 제2 골프 스윙 데이터 산출부에 의해, 전문가의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 전문가의 골프 스윙 데이터인 제2 골프 스윙 벡터를 산출하는 단계를 포함할 수 있다.
상기 c) 단계는: c-1) 군집 데이터 생성부에 의해, 복수의 제1 골프 스윙 벡터를 군집화 하여 사용자 군집 데이터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화 하여 전문가 군집 데이터를 생성하는 단계; c-2) 제1 정규화부에 의해, 상기 사용자 군집 데이터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하는 단계; c-3) 제2 정규화부에 의해, 상기 전문가 군집 데이터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하는 단계; c-4) 유사도 산출부에 의해, 각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하는 단계; 및 c-5) 전문가 매칭부에 의해, 상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키는 단계를 포함할 수 있다.
상기 b-1) 단계는: b-1-1) 차분 영상 프레임 생성 유닛에 의해, 각 골프 스윙 영상 프레임과 배경 이미지 간의 화소값 차이를 산출하여 연속되는 차분 영상 프레임들을 생성하는 단계; b-1-2) 차영상 생성 유닛에 의해, 상기 연속되는 차분 영상 프레임들 간의 화소값 차이를 산출하여 골프 스윙 차영상을 생성하는 단계; b-1-3) 평균 화소 크기 산출 유닛에 의해, 상기 골프 스윙 차영상의 화소값을 기반으로 상기 골프 스윙 차영상의 평균 화소 크기를 산출하는 단계; b-1-4) 움직임 객체 존재 여부 판단 유닛에 의해, 상기 골프 스윙 차영상의 평균 화소 크기를 설정된 임계값과 비교하여 움직이는 객체가 존재하는지 판단하는 단계; 및 b-1-5) 움직임 객체 추출 유닛에 의해, 합성곱 신경망을 기반으로 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계를 포함할 수 있다.
상기 b-2) 단계는: b-2-1) 화소값 추출 유닛에 의해, 상기 각 골프 스윙 영상 프레임의 화소값들 중 상기 각 객체의 이전 위치를 기준으로 설정 영역 내의 화소값들을 추출하는 단계; b-2-2) 객체 위치 이동 유닛에 의해, 상기 각 객체의 위치를 상기 이전 위치로부터 상기 설정 영역 내의 화소값들의 무게 중심의 좌표로 이동시키는 단계; b-2-3) 수렴 판단 유닛에 의해, 상기 무게 중심의 좌표와 상기 이전 위치 간의 차이값을 기반으로 상기 각 객체의 위치 이동이 수렴되는지 판단하는 단계; b-2-4) 수렴 판단 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되지 않은 것으로 판단되면, 상기 b-2-1) 내지 b-2-3) 단계를 반복하는 단계; b-2-5) 움직임 경로 추적 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되는 것으로 판단되면, 상기 각 객체의 수렴된 위치에 따라 상기 각 객체의 움직임 경로를 추적하는 단계; 및 b-2-6) 움직임 강도 산출 유닛에 의해, 설정된 시간 동안 상기 각 객체가 상기 움직임 경로를 따라 움직인 거리를 통해 상기 객체의 움직임 강도를 산출하는 단계를 포함할 수 있다.
본 발명의 실시예에 따른 컴퓨터로 읽을 수 있는 기록 매체는 상기 골프 스윙 데이터 기반 전문가 매칭 방법을 컴퓨터로 실행하기 위한 프로그램이 기록된 기록 매체이다.
본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 시스템은 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하도록 구성되는 영상 입력 모듈; 상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하도록 구성되는 골프 스윙 데이터 산출 모듈; 및 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키도록 구성되는 전문가 매칭 모듈을 포함한다.
상기 영상 입력 모듈은: 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하도록 구성되는 영상 입력부; 및 상기 골프 스윙 영상으로부터 복수의 골프 스윙 영상 프레임을 생성하도록 구성되는 영상 프레임 획득부를 포함할 수 있다.
상기 골프 스윙 데이터 산출 모듈은: 상기 골프 스윙 영상에서 움직이는 객체를 추출하도록 구성되는 움직임 객체 추출부; 상기 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하도록 구성되는 움직임 데이터 산출부; 사용자의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 사용자의 골프 스윙 데이터인 제1 골프 스윙 벡터를 산출하도록 구성되는 제1 골프 스윙 데이터 산출부; 및 전문가의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 전문가의 골프 스윙 데이터인 제2 골프 스윙 벡터를 산출하도록 구성되는 제2 골프 스윙 데이터 산출부를 포함할 수 있다.
상기 전문가 매칭 모듈은: 복수의 제1 골프 스윙 벡터를 군집화 하여 사용자 군집 데이터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화 하여 전문가 군집 데이터를 생성하도록 구성되는 군집 데이터 생성부; 상기 사용자 군집 데이터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하도록 구성되는 제1 정규화부; 상기 전문가 군집 데이터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하도록 구성되는 제2 정규화부; 각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하도록 구성되는 유사도 산출부; 및 상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키도록 구성되는 전문가 매칭부를 포함할 수 있다.
본 발명의 실시예에 따른 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템은 주변에서 쉽게 접할 수 있는 영상 기록 장치로 사용자의 골프 스윙 영상을 기록하고 이를 기반으로 사용자의 골프 스윙 자세를 분석하며, 사용자의 골프 스윙 자세와 유사한 골프 강사를 매칭 받을 수 있다.
한편, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 방법의 흐름도이다.
도 3은 본 발명의 실시예에 따른 영상 입력 모듈의 구성도이다.
도 4는 S100 단계를 보다 상세히 나타낸 흐름도이다.
도 5는 본 발명의 실시예에 따른 골프 스윙 데이터 산출 모듈의 구성도이다.
도 6은 S200 단계를 보다 상세히 나타낸 흐름도이다.
도 7은 본 발명의 실시예에 따른 움직임 객체 추출부의 구성도이다.
도 8은 S210 단계를 보다 상세히 나타낸 흐름도이다.
도 9는 본 발명의 실시예에 따른 움직임 데이터 산출부의 구성도이다.
도 10 내지 도 12는 움직임 데이터 산출부에 의한 동작을 설명하기 위한 개념도이다.
도 13은 S220 단계를 보다 상세히 나타낸 흐름도이다.
도 14는 본 발명의 실시예에 따른 전문가 매칭 모듈의 구성도이다.
도 15는 S300 단계를 보다 상세히 나타낸 흐름도이다.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다. 본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
이하, 본 명세서의 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 시스템(10)의 구성도이다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 시스템(10)은 영상 입력 모듈(100), 골프 스윙 데이터 산출 모듈(200) 및 전문가 매칭 모듈(300)을 포함한다.
도 2는 본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 방법(S10)의 흐름도이다. 도 2를 참조하면, 본 발명의 실시예에 따른 골프 스윙 데이터 기반 전문가 매칭 방법(S10)은 영상 입력 모듈에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계(S100), 골프 스윙 데이터 산출 모듈에 의해, 상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하는 단계(S200) 및 전문가 매칭 모듈에 의해, 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키는 단계(S300)를 포함한다.
도 3은 본 발명의 실시예에 따른 영상 입력 모듈(100)의 구성도이다. 도 2를 참조하면, 영상 입력 모듈(100)은 영상 입력부(110) 및 영상 프레임 획득부(120)를 포함할 수 있다.
영상 입력 모듈(100)은 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하도록 구성될 수 있다. 사용자는 아마추어 선수 혹은 일반 골프 플레이어일 수 있고, 전문가는 프로 골프 선수일 수 있다. 이하에서, 골프 플레이어는 아마추어 선수, 일반 골프 플레이어 및 프로 골프 선수를 모두 지칭하는 용어로 사용한다.
영상 입력부(110)는 사용자 또는 전문가의 골프 스윙 영상을 획득하도록 구성될 수 있다. 사용자 또는 전문가의 골프 스윙 영상 획득 시에는 디지털 카메라를 포함한 일반적인 영상 획득 장치의 녹화 기능을 통해 사용자의 골프 스윙 영상을 획득할 수 있다. 또한, 동영상 스트리밍 사이트, 블로그, 인터넷 등 정보통신망을 통해 골프 스윙 영상을 전송받거나 다운로드 받는 방법으로도 골프 스윙 영상을 획득할 수 있다. 영상 프레임 획득부(120)는 영상 입력부(110)에 의해 획득한 골프 스윙 영상을 기반으로 복수의 골프 스윙 영상 프레임을 생성하도록 구성될 수 있다.
도 4는 S100 단계를 보다 상세히 나타낸 흐름도이다. 도 4를 참조하면, S100단계는 영상 입력부에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계(S110) 및 영상 프레임 획득부에 의해, 상기 골프 스윙 영상으로부터 복수의 골프 스윙 영상 프레임을 생성하는 단계(S120)를 포함할 수 있다.
도 5는 본 발명의 실시예에 따른 골프 스윙 데이터 산출 모듈(200)의 구성도이다. 도 5을 참조하면, 골프 스윙 데이터 산출 모듈(200)은 움직임 객체 추출부(210), 움직임 데이터 산출부(220), 제1 골프 스윙 데이터 산출부(230) 및 제2 골프 스윙 데이터 산출부(240)를 포함할 수 있다.
도 6은 S200 단계를 보다 상세히 나타낸 흐름도이다. 도 6을 참조하면, S200 단계는 움직임 객체 추출부에 의해, 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계(S210), 움직임 데이터 산출부에 의해, 상기 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하는 단계(S220), 제1 골프 스윙 데이터 산출부에 의해, 사용자의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 사용자의 골프 스윙 데이터인 제1 골프 스윙 벡터를 산출하는 단계(S230) 및 제2 골프 스윙 데이터 산출부에 의해, 전문가의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 전문가의 골프 스윙 데이터인 제2 골프 스윙 벡터를 산출하는 단계(S240)를 포함할 수 있다.
도 7은 본 발명의 실시예에 따른 움직임 객체 추출부(210)의 구성도이다. 도 7을 참조하면, 움직임 객체 추출부(210)는 골프 스윙 영상에서 움직이는 객체를 추출하도록 구성될 수 있다. 움직임 객체 추출부(210)는 차분 영상 프레임 생성 유닛(211), 차영상 생성 유닛(212), 평균 화소 크기 산출 유닛(213), 움직임 객체 존재 여부 판단 유닛(214) 및 움직임 객체 추출 유닛(215)을 포함할 수 있다.
차분 영상 프레임 생성 유닛(211)은 각 골프 스윙 영상 프레임과 배경 이미지 간의 화소값 차이를 산출하여 연속되는 차분 영상 프레임들을 생성하도록 구성될 수 있다. 차분 영상 프레임 생성 유닛(211)은 예를 들어 하기 [수식 1]에 따라 차분 영상 프레임을 생성할 수 있다.
[수식 1]
P[F(t)] = P[I(t)] - P[B]
상기 [수식 1]에서, P[F(t)]는 차분 영상 프레임, P[I(t)]는 골프 스윙 영상 프레임, P[B]는 배경 영상 프레임이다.
차영상 생성 유닛(212)은 연속되는 차분 영상 프레임들 간의 화소값 차이를 산출하여 골프 스윙 차영상을 생성하도록 구성될 수 있다. 차영상 생성 유닛(212)은 예를 들어 하기 [수식 2]에 따라 골프 스윙 차영상을 생성할 수 있다.
[수식 2]
△P[F(t,t+1)] = P[F(t)] - P[F(t+1)]
상기 [수식 2]에서 △P[F(t,t+1)]는 골프 스윙 차영상, P[F(t)]는 시간 t 에서의 차분 영상 프레임, P[F(t+1)]는 시간 (t+1) 에서의 차분 영상 프레임이다.
평균 화소 크기 산출 유닛(213)은 상기 골프 스윙 차영상의 화소값을 기반으로 상기 골프 스윙 차영상의 평균 화소 크기를 산출하도록 구성될 수 있다.
평균 화소 크기 산출 유닛(213)은 예를 들어, 하기 [수식 3]에 따라 골프 스윙 차영상의 평균 화소 크기를 산출할 수 있다.
[수식 3]
│△P[F(t,t+1)]│ = │P[F(t)] - P[F(t+1)]│
상기 [수식 3]에서 │△P[F(t,t+1)]│는 골프 스윙 차영상의 평균 화소 크기, P[F(t)]는 시간 t 에서의 차분 영상 프레임, P[F(t+1)]는 시간 (t+1)에서의 차분 영상 프레임이다.
움직임 객체 존재 여부 판단 유닛(214)은 상기 골프 스윙 차영상의 평균 화소 크기를 설정된 임계값과 비교하여 움직이는 객체가 존재하는지 판단하도록 구성될 수 있다.
움직임 객체 존재 여부 판단 유닛(214)은 예를 들어 하기 [수식 4]에 따라 움직임 객체가 존재하는지 판단할 수 있다.
[수식 4]
│△P[F(t,t+1)]│ = │P[F(t)] - P[F(t+1)]│ > Threshold
상기 [수식 4]에서, │△P[F(t,t+1)]│는 골프 스윙 차영상의 평균 화소 크기, P[F(t)]는 시간 t 에서의 차분 영상 프레임, P[F(t+1)]는 시간 (t+1)에서의 차분 영상 프레임, Threshold 는 설정된 임계값이다.
움직임 객체 존재 여부 판단 유닛(214)은 골프 스윙 차영상의 평균 화소 크기가 설정된 임계값 보다 크면 움직이는 객체가 존재하는 것으로 판단하고, 골프 스윙 차영상의 평균 화소 크기가 설정된 임계값 이하이면 움직이는 객체가 존재하지 않는 것으로 판단할 수 있다.
움직임 객체 추출 유닛(215)은 합성곱 신경망을 기반으로 골프 스윙 영상에서 움직이는 객체가 차지하는 영역인 움직임 영역을 구분하고, 이러한 움직이는 객체를 추출하도록 구성될 수 있다. 합성곱 신경망은 골프 플레이어와 골프공 및 골프채를 포함하는 각 객체의 움직임 영역을 구분하도록 구성될 수 있다.
보다 상세히 말하면, 움직임 객체 추출 유닛(215)은 골프 스윙 영상 프레임들로부터 판별된 각 사물(골프공, 골프채 등) 또는 골프 플레이어가 골프 스윙 영상 프레임별로 유연하게 연결되는지 판별하여 각각의 골프공과 골프채, 골프 플레이어 등의 객체가 움직이는 영역을 구분할 수 있다.
예를 들어, 합성곱 신경망은 YOLOv3 신경망에 의해 오브젝트 탐지와 분류를 수행하여, 별도의 수작업으로 제작된 필터없이 높은 정확도와 빠른 속도로 오브젝트를 추적할 수 있다. YOLOv3 신경망은 물체 위치와 범위 계산과 물체 분류를 한 번에 실행하는 통합 인식을 구현하는 신경망으로, 이미지를 그리드로 나눈 뒤, 그리드를 합성곱 신경망에 통과시켜 그리드에 어떤 오브젝트가 존재하는지와 그 경계가 어디인지를 알아내고, 이를 모아서 전체 이미지에서 객체가 어느 위치에 존재하는지를 최종적으로 알아내며, 고속 추론이 가능한 신경망을 말한다.
도 8은 S210 단계를 보다 상세히 나타낸 흐름도이다. 도 8을 참조하면, S210 단계는 차분 영상 프레임 생성 유닛에 의해, 각 골프 스윙 영상 프레임과 배경 이미지 간의 화소값 차이를 산출하여 연속되는 차분 영상 프레임들을 생성하는 단계(S211), 차영상 생성 유닛에 의해, 상기 연속되는 차분 영상 프레임들 간의 화소값 차이를 산출하여 골프 스윙 차영상을 생성하는 단계(S212), 평균 화소 크기 산출 유닛에 의해, 상기 골프 스윙 차영상의 화소값을 기반으로 상기 골프 스윙 차영상의 평균 화소 크기를 산출하는 단계(S213), 움직임 객체 존재 여부 판단 유닛에 의해, 상기 골프 스윙 차영상의 평균 화소 크기를 설정된 임계값과 비교하여 움직이는 객체가 존재하는지 판단하는 단계(S214) 및 움직임 객체 추출 유닛에 의해, 합성곱 신경망을 기반으로 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계(S215)를 포함할 수 있다.
도 9는 본 발명의 실시예에 따른 움직임 데이터 산출부(220)의 구성도이다. 도 9를 참조하면, 움직임 데이터 산출부(220)는 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하도록 구성될 수 있다. 예를 들어, 움직임 데이터는 골프 플레이어에 대한 클럽 패스(경로), 페이스 앵글, 다이나믹 로프트, 어택 앵글, 런치 앵글, 클럽 스피드, 캐리, 스매쉬 팩터, 골프공 경로, 골프공 속도 및 골프공 스핀량을 포함할 수 있다.
움직임 데이터 산출부(220)는 화소값 추출 유닛(221), 객체 위치 이동 유닛(222), 수렴 판단 유닛(223), 움직임 경로 추적 유닛(224) 및 움직임 강도 산출 유닛(225)을 포함할 수 있다.
도 10 내지 도 12는 움직임 데이터 산출부(220)에 의한 동작을 설명하기 위한 개념도이다. 도 9 내지 도 12를 참조하면, 화소값 추출 유닛(221)은 각 골프 스윙 영상 프레임의 화소값들 중 각 객체의 이전 위치를 기준으로 설정 영역 내의 화소값들을 추출하도록 구성될 수 있다. 보다 상세히 말하면, 화소값 추출 유닛(221)은 각 객체의 현재 위치에서 설정 반경(R) 이내에 들어오는 화소값들 (x1,y1), (x2,y2), ..., (xn,yn) (n은 설정 반경 이내의 화소들의 개수)을 추출할 수 있다.
객체 위치 이동 유닛(222)은 각 객체의 위치를 이전 위치로부터 설정 영역 내의 화소값들의 무게 중심의 좌표로 이동시키도록 구성될 수 있다. 보다 상세히 말하면, 객체 위치 이동 유닛(222)은 각 객체의 위치를 이전 위치(10)로부터 설정 영역(15) 내의 화소값들의 무게 중심(20)의 좌표(Σxi/n, Σyi/n) (n은 설정 반경 이내의 화소들의 개수, i는 설정 영역 내 화소들의 순번으로 1 내지 n의 정수)로 현재 위치를 이동시킬 수 있다.
수렴 판단 유닛(223)은 무게 중심의 좌표와 이전 위치 간의 차이값을 기반으로 각 객체의 위치 이동이 수렴되는지 판단하도록 구성될 수 있다. 또한, 수렴 판단 유닛(223)은 각 객체의 위치 이동이 수렴되지 않은 것으로 판단되면, 화소값 추출 유닛(221) 및 객체 위치 이동 유닛(222)에 의한 동작을 반복하도록 구성될 수 있다.
보다 상세히 말하면, 수렴 판단 유닛(223)은 설정 영역(15) 내의 화소값들의 무게 중심(20)의 좌표와 각 객체의 이전 위치(10) 간의 차이값을 기반으로 각 객체의 위치 이동이 수렴되는지 판단할 수 있다. 또한, 수렴 판단 유닛(223)은 각 객체의 위치 이동이 수렴되지 않은 것으로 판단되면, 각 객체의 위치가 수렴될 때까지 화소값 추출 유닛(221) 및 객체 위치 이동 유닛(222)에 의한 과정을 반복할 수 있다. 각 객체의 위치가 설정 영역(15) 내의 화소값들의 무게 중심(도 10의 도면 부호 20)으로 이동되면, 해당 이동된 위치(좌표)가 다시 각 객체의 이전 위치(도 11의 도면부호 20')가 된다.
따라서, 화소값 추출 유닛(221)은 다시 각 골프 스윙 영상 프레임의 화소값들 중 각 객체의 이전 위치(20')를 기준으로 설정 영역(25) 내의 화소값들(예를 들어, 이전 위치에서 설정 반경 이내에 들어오는 데이터들)을 추출한다.
다음으로, 객체 위치 이동 유닛(222)는 각 객체의 위치를 이전 위치(20')로부터 설정 영역(25) 내의 화소값들의 무게 중심(30)의 좌표로 이동시킨다.
또한, 수렴 판단 유닛(223)은 설정 영역(25) 내의 화소값들의 무게 중심(30)의 좌표와 각 객체의 이전 위치(20') 간의 차이값을 기반으로 각 객체의 위치 이동이 수렴되는지 판단한다.
다시 각 객체의 위치가 설정 영역(25) 내의 화소값들의 무게 중심(도 11의 도면부호 30)으로 이동되면, 해당 이동된 위치(좌표)가 각 객체의 이전 위치(도 8의 도면부호 30')가 된다.
수렴 판단 유닛(223)은 예를 들어, 각 객체의 이전 위치(30')를 기준으로 하는 설정 영역(35) 내의 화소값들의 무게 중심(40)의 좌표와 각 객체의 이전 위치(30') 간의 차이값(거리)(D)이 기준 거리 미만이면, 각 객체의 위치 이동이 수렴되는 것으로 판단할 수 있다.
움직임 경로 추적 유닛(224)은 각 객체의 위치 이동이 수렴되는 것으로 판단되면, 각 객체의 수렴된 위치에 따라 각 객체의 움직임 경로를 추적하도록 구성될 수 있다.
움직임 강도 산출 유닛(225)은 설정된 시간 동안 각 객체가 상기 움직임 경로를 따라 움직인 거리를 통해 객체의 움직임 강도를 산출하도록 구성될 수 있다. 예를 들어, 디지털 카메라에 의해 영상을 획득할 경우 각 프레임 간에는 디지털 카메라의 종류에 따라 설정된 시간 간격을 갖게 된다. 따라서, 설정된 개수의 프레임에 걸친 골프채 헤드의 이동 거리를 계산하면 골프채 헤드의 속도, 즉 움직임 강도를 알 수 있다.
예를 들어, 골프 스윙 데이터 산출 모듈(200)을 통해 골프 스윙 영상을 분석하여 움직임 데이터를 기반으로 특정 사용자 A에 대한 제1 골프 스윙 벡터를 산출할 수 있다. 이때 사용자 A의 제1 골프 스윙 벡터는 클럽 패스(경로), 페이스 앵글, 다이나믹 로프트, 어택 앵글, 런치 앵글, 클럽 스피드, 캐리, 스매쉬 팩터, 골프공 경로, 골프공 속도 및 골프공 스핀량을 벡터의 성분으로 포함할 수 있다.
도 13은 S220 단계의 흐름도이다. 도 13을 참조하면, S220 단계는 화소값 추출 유닛에 의해, 상기 각 골프 스윙 영상 프레임의 화소값들 중 상기 각 객체의 이전 위치를 기준으로 설정 영역 내의 화소값들을 추출하는 단계(S221), 객체 위치 이동 유닛에 의해, 상기 각 객체의 위치를 상기 이전 위치로부터 상기 설정 영역 내의 화소값들의 무게 중심의 좌표로 이동시키는 단계(S222), 수렴 판단 유닛에 의해, 상기 무게 중심의 좌표와 상기 이전 위치 간의 차이값을 기반으로 상기 각 객체의 위치 이동이 수렴되는지 판단하는 단계(S223), 수렴 판단 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되지 않은 것으로 판단되면, 상기 S221 내지 S223 단계를 반복하는 단계(S224), 움직임 경로 추적 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되는 것으로 판단되면, 상기 각 객체의 수렴된 위치에 따라 상기 각 객체의 움직임 경로를 추적하는 단계(S225) 및 움직임 강도 산출 유닛에 의해, 설정된 시간 동안 상기 각 객체가 상기 움직임 경로를 따라 움직인 거리를 통해 상기 객체의 움직임 강도를 산출하는 단계(S226)를 포함할 수 있다.
도 14는 본 발명의 실시예에 따른 전문가 매칭 모듈(300)의 구성도이다. 도 14를 참조하면, 전문가 매칭 모듈(300)은 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 사용자와 전문가를 서로 매칭시키도록 구성될 수 있다. 전문가 매칭 모듈(300)은 군집 데이터 생성부(310), 제1 정규화부(320), 제2 정규화부(330), 유사도 산출부(340) 및 전문가 매칭부(350)를 포함할 수 있다.
군집 데이터 생성부(310)는 복수의 제1 골프 스윙 벡터를 군집화 하여 사용자 군집 데이터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화 하여 전문가 군집 데이터를 생성하도록 구성될 수 있다. 즉, 군집 데이터 생성부(310)는 복수의 사용자 각각으로부터 산출된 제1 골프 스윙 벡터를 모두 포함하는 사용자 군집 데이터를 생성할 수 있다. 또한, 복수의 전문가 각각으로부터 산출된 제2 골프 스윙 벡터를 모두 포함하는 전문가 군집 데이터를 생성할 수 있다.
제1 정규화부(320)는 상기 사용자 군집 데이터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하도록 구성될 수 있다.
예를 들어, 제1 골프 스윙 벡터의 성분으로 클럽 스피드 및 골프공 속도에 관한 정보가 포함될 수 있으며, 이 경우 사용자 군집 데이터에는 복수의 사용자들의 클럽 스피드 및 골프공 속도에 관한 정보가 포함될 수 있다. 복수의 사용자들의 클럽 스피드 및 골프공 속도는 정규 분포를 갖게 될 것이므로, 제1 정규화부는 클럽 스피드 및 골프공 속도에 대한 정규 분포에서 특정 사용자의 클럽 스피드 및 골프공 속도의 우월도를 기반으로 정규화 벡터를 산출할 수 있다. 이때, 우월도는 특정 사용자의 클럽 스피드 및 골프공 속도가 정규 분포에서 상위 몇 %에 해당하는지를 기반으로 산출될 수 있으며, 정규 분포 중 상위권에 속할수록 우월도가 높게 산출되는 것은 자명할 것이다.
다시 말해, 클럽 스피드 및 골프공 속도가 제1 골프 스윙 벡터의 성분이고, 특정 사용자의 클럽 스피드가 상위 20%이고, 골프공 속도가 상위 30%인 경우, 제1 골프 스윙 벡터는 (클럽 스피드, 골프공 속도)가 되고, 제1 정규화 벡터는 (0.8, 0.7)로 산출될 수 있다.
제2 정규화부(330)는 전문가 군집 데이터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하도록 구성될 수 있다. 제1 정규화부(320)에서 설명한 바와 같이 제2 정규화부(330)에서는 특정 전문가에 대한 제2 정규화 벡터를 산출할 수 있다.
실제 예를 들면, 제1 골프 스윙 벡터 및 제2 골프 스윙 벡터의 성분으로 클럽 스피드를 포함시킬 수 있다. 이때 사용자 A의 클럽 스피드가 시속 100km이고, 전문가 B의 클럽 스피드가 시속 140km라고 가정하자. 사용자 A의 클럽 스피드는 사용자 군집 내에서 상위 10%에 해당하여 제1 정규화 벡터로 환산하면 0.9가 산출될 수 있다. 또한, 전문가 B의 클럽 스피드는 비록 사용자 A의 클럽 스피드 보다는 빠를 지라도 전문가 군집 내에서 상위 20%에 해당하여 제2 정규화 벡터로 환산하면 0.8이 산출될 수 있다.
유사도 산출부(340)는 각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하도록 구성될 수 있다. 보다 상세히 말하면, 유사도 산출부(340)는 제1 정규화 벡터와 제2 정규화 벡터 간의 코사인 유사도(cosine similarity)를 계산하여 유사도를 비교할 수 있다. 코사인 유사도는 하기 [수식 5]에 의해 산출될 수 있다.
[수식 5]
Figure pat00001
이때, A 및 B는 제1 정규화 벡터 및 제2 정규화 벡터에 포함된 벡터 성분이다.
예를 들어, 제1 정규화 벡터 및 제2 정규화 벡터의 성분으로 클럽 스피드 및 비거리가 포함될 수 있으며, 이들 사이의 코사인 유사도를 계산하여 각 정규화 벡터 간의 유사도를 비교할 수 있다.
실제 예를 들면, 사용자 A의 제1 정규화 벡터가 (0.8, 0.4)이고, 전문가 B의 제2 정규화 벡터가 (0.5, 0.7)이고, 전문가 C의 제2 정규화 벡터가 (0.7, 0.5)인 경우, 상기 [수식 5]에 각각의 벡터 성분을 대입하여 계산하면 사용자 A와 전문가 B의 유사도보다 사용자 A와 전문가 C 간의 유사도가 더 높은 것을 알 수 있다.
전문가 매칭부(350)는 상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키도록 구성될 수 있다. 예를 들어, 위의 경우 사용자 A에는 전문가 B가 아닌 전문가 C가 매칭될 수 있다.
도 15는 S300 단계의 흐름도이다. 도 15를 참조하면, S300 단계는 군집 데이터 생성부에 의해, 복수의 제1 골프 스윙 벡터를 군집화하여 사용자 군집 골프 스윙 벡터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화하여 전문가 군집 골프 스윙 벡터를 생성하는 단계(S310), 제1 정규화부에 의해, 상기 사용자 군집 골프 스윙 벡터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하는 단계(S320), 제2 정규화부에 의해, 상기 전문가 군집 골프 스윙 벡터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하는 단계(S330), 유사도 산출부에 의해, 각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하는 단계(S340) 및 전문가 매칭부에 의해, 상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키는 단계(S350)를 포함할 수 있다.
본 발명의 실시예에 따른 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템은 주변에서 쉽게 접할 수 있는 영상 기록 장치로 사용자의 골프 스윙 영상을 기록하고 이를 기반으로 사용자의 골프 스윙 자세를 분석하며, 사용자의 골프 스윙 자세와 유사한 골프 강사를 매칭 받을 수 있다.
이상에서 실시예를 통해 본 발명을 설명하였으나, 위 실시예는 단지 본 발명의 사상을 설명하기 위한 것으로 이에 한정되지 않는다. 통상의 기술자는 전술한 실시예에 다양한 변형이 가해질 수 있음을 이해할 것이다. 본 발명의 범위는 첨부된 특허청구범위의 해석을 통해서만 정해진다.
10: 골프 스윙 데이터 기반 전문가 매칭 시스템
100: 영상 입력 모듈 110: 영상 입력부
120: 영상 프레임 획득부 200: 골프 스윙 데이터 산출 모듈
210: 움직임 객체 추출부 211: 차분 영상 프레임 생성 유닛
212: 차영상 생성 유닛 213: 평균 화소 크기 산출 유닛
214: 움직임 객체 존재 여부 판단 유닛
215: 움직임 객체 추출 유닛 220: 움직임 데이터 산출부
221: 화소값 추출 유닛 222: 객체 위치 이동 유닛
223: 수렴 판단 유닛 224: 움직임 경로 추적 유닛
225: 움직임 강도 산출 유닛 230: 제1 골프 스윙 데이터 산출부
240: 제2 골프 스윙 데이터 산출부
300: 전문가 매칭 모듈 310: 군집 데이터 생성부
320: 제1 정규화부 330: 제2 정규화부
340: 유사도 산출부 350: 전문가 매칭부

Claims (11)

  1. a) 영상 입력 모듈에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계;
    b) 골프 스윙 데이터 산출 모듈에 의해, 상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하는 단계; 및
    c) 전문가 매칭 모듈에 의해, 사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  2. 제1항에 있어서,
    상기 a) 단계는:
    a-1) 영상 입력부에 의해, 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하는 단계; 및
    a-2) 영상 프레임 획득부에 의해, 상기 골프 스윙 영상으로부터 복수의 골프 스윙 영상 프레임을 생성하는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  3. 제2항에 있어서,
    상기 b) 단계는:
    b-1) 움직임 객체 추출부에 의해, 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계;
    b-2) 움직임 데이터 산출부에 의해, 상기 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하는 단계;
    b-3) 제1 골프 스윙 데이터 산출부에 의해, 사용자의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 사용자의 골프 스윙 데이터인 제1 골프 스윙 벡터를 산출하는 단계; 및
    b-4) 제2 골프 스윙 데이터 산출부에 의해, 전문가의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 전문가의 골프 스윙 데이터인 제2 골프 스윙 벡터를 산출하는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  4. 제3항에 있어서,
    상기 c) 단계는:
    c-1) 군집 데이터 생성부에 의해, 복수의 제1 골프 스윙 벡터를 군집화 하여 사용자 군집 데이터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화 하여 전문가 데이터를 생성하는 단계;
    c-2) 제1 정규화부에 의해, 상기 사용자 군집 데이터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하는 단계;
    c-3) 제2 정규화부에 의해, 상기 전문가 군집 데이터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하는 단계;
    c-4) 유사도 산출부에 의해, 각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하는 단계; 및
    c-5) 전문가 매칭부에 의해, 상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  5. 제4항에 있어서,
    상기 b-1) 단계는:
    b-1-1) 차분 영상 프레임 생성 유닛에 의해, 각 골프 스윙 영상 프레임과 배경 이미지 간의 화소값 차이를 산출하여 연속되는 차분 영상 프레임들을 생성하는 단계;
    b-1-2) 차영상 생성 유닛에 의해, 상기 연속되는 차분 영상 프레임들 간의 화소값 차이를 산출하여 골프 스윙 차영상을 생성하는 단계;
    b-1-3) 평균 화소 크기 산출 유닛에 의해, 상기 골프 스윙 차영상의 화소값을 기반으로 상기 골프 스윙 차영상의 평균 화소 크기를 산출하는 단계;
    b-1-4) 움직임 객체 존재 여부 판단 유닛에 의해, 상기 골프 스윙 차영상의 평균 화소 크기를 설정된 임계값과 비교하여 움직이는 객체가 존재하는지 판단하는 단계; 및
    b-1-5) 움직임 객체 추출 유닛에 의해, 합성곱 신경망을 기반으로 상기 골프 스윙 영상에서 움직이는 객체를 추출하는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  6. 제5항에 있어서,
    상기 b-2) 단계는:
    b-2-1) 화소값 추출 유닛에 의해, 상기 각 골프 스윙 영상 프레임의 화소값들 중 상기 각 객체의 이전 위치를 기준으로 설정 영역 내의 화소값들을 추출하는 단계;
    b-2-2) 객체 위치 이동 유닛에 의해, 상기 각 객체의 위치를 상기 이전 위치로부터 상기 설정 영역 내의 화소값들의 무게 중심의 좌표로 이동시키는 단계;
    b-2-3) 수렴 판단 유닛에 의해, 상기 무게 중심의 좌표와 상기 이전 위치 간의 차이값을 기반으로 상기 각 객체의 위치 이동이 수렴되는지 판단하는 단계;
    b-2-4) 수렴 판단 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되지 않은 것으로 판단되면, 상기 b-2-1) 내지 b-2-3) 단계를 반복하는 단계;
    b-2-5) 움직임 경로 추적 유닛에 의해, 상기 각 객체의 위치 이동이 수렴되는 것으로 판단되면, 상기 각 객체의 수렴된 위치에 따라 상기 각 객체의 움직임 경로를 추적하는 단계; 및
    b-2-6) 움직임 강도 산출 유닛에 의해, 설정된 시간 동안 상기 각 객체가 상기 움직임 경로를 따라 움직인 거리를 통해 상기 객체의 움직임 강도를 산출하는 단계를 포함하는 골프 스윙 데이터 기반 전문가 매칭 방법.
  7. 컴퓨터로 읽을 수 있는 기록 매체에 있어서,
    제1항 내지 제6항 중 어느 한 항에 따른 골프 스윙 데이터 기반 전문가 매칭 방법을 컴퓨터로 실행하기 위한 프로그램이 기록된 기록 매체.
  8. 사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하도록 구성되는 영상 입력 모듈;
    상기 골프 스윙 영상 속 객체의 움직임을 기반으로 골프 스윙 데이터를 산출하도록 구성되는 골프 스윙 데이터 산출 모듈; 및
    사용자의 골프 스윙 데이터와 전문가의 골프 스윙 데이터 간의 유사도를 기반으로 상기 사용자와 상기 전문가를 서로 매칭시키도록 구성되는 전문가 매칭 모듈을 포함하는 골프 스윙 데이터 기반 전문가 매칭 시스템.
  9. 제8항에 있어서,
    상기 영상 입력 모듈은:
    사용자 집단 및 전문가 집단의 골프 스윙 영상을 획득하도록 구성되는 영상 입력부; 및
    상기 골프 스윙 영상으로부터 복수의 골프 스윙 영상 프레임을 생성하도록 구성되는 영상 프레임 획득부를 포함하는 골프 스윙 데이터 기반 전문가 매칭 시스템.
  10. 제9항에 있어서,
    상기 골프 스윙 데이터 산출 모듈은:
    상기 골프 스윙 영상에서 움직이는 객체를 추출하도록 구성되는 움직임 객체 추출부;
    상기 움직이는 객체 각각의 움직임 경로 및 움직임 강도를 포함하는 움직임 데이터를 산출하도록 구성되는 움직임 데이터 산출부;
    사용자의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 사용자의 골프 스윙 데이터인 제1 골프 스윙 벡터를 산출하도록 구성되는 제1 골프 스윙 데이터 산출부; 및
    전문가의 골프 스윙 영상으로부터 추출된 움직임 데이터를 기반으로 상기 전문가의 골프 스윙 데이터인 제2 골프 스윙 벡터를 산출하도록 구성되는 제2 골프 스윙 데이터 산출부를 포함하는 골프 스윙 데이터 기반 전문가 매칭 시스템.
  11. 제10항에 있어서,
    상기 전문가 매칭 모듈은:
    복수의 제1 골프 스윙 벡터를 군집화 하여 사용자 군집 데이터를 생성하고, 복수의 제2 골프 스윙 벡터를 군집화 하여 전문가 군집 데이터를 생성하도록 구성되는 군집 데이터 생성부;
    상기 사용자 군집 골프 스윙 벡터 내에서의 상기 제1 골프 스윙 벡터의 우월도를 기반으로 제1 정규화 벡터를 산출하도록 구성되는 제1 정규화부;
    상기 전문가 군집 골프 스윙 벡터 내에서의 상기 제2 골프 스윙 벡터의 우월도를 기반으로 제2 정규화 벡터를 산출하도록 구성되는 제2 정규화부;
    각각의 상기 제1 정규화 벡터와 각각의 상기 제2 정규화 벡터 간의 유사도를 비교하도록 구성되는 유사도 산출부; 및
    상기 제1 정규화 벡터와 상기 제2 정규화 벡터 간의 유사도를 기반으로 사용자와 전문가를 매칭시키도록 구성되는 전문가 매칭부를 포함하는 골프 스윙 데이터 기반 전문가 매칭 시스템.
KR1020200090969A 2020-07-22 2020-07-22 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템 KR102466989B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200090969A KR102466989B1 (ko) 2020-07-22 2020-07-22 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200090969A KR102466989B1 (ko) 2020-07-22 2020-07-22 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20220011997A true KR20220011997A (ko) 2022-02-03
KR102466989B1 KR102466989B1 (ko) 2022-11-14

Family

ID=80268878

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200090969A KR102466989B1 (ko) 2020-07-22 2020-07-22 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102466989B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120132281A (ko) 2011-05-26 2012-12-05 한국과학기술연구원 골프 스윙 분석을 위한 신체 부위별 위치 추적 장치 및 방법
KR101399655B1 (ko) 2013-04-12 2014-05-30 한밭대학교 산학협력단 체형별 스윙분석장치 및 이를 이용한 골프레슨 관리 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120132281A (ko) 2011-05-26 2012-12-05 한국과학기술연구원 골프 스윙 분석을 위한 신체 부위별 위치 추적 장치 및 방법
KR101399655B1 (ko) 2013-04-12 2014-05-30 한밭대학교 산학협력단 체형별 스윙분석장치 및 이를 이용한 골프레슨 관리 시스템 및 방법

Also Published As

Publication number Publication date
KR102466989B1 (ko) 2022-11-14

Similar Documents

Publication Publication Date Title
Huang et al. Tracknet: A deep learning network for tracking high-speed and tiny objects in sports applications
US11544928B2 (en) Athlete style recognition system and method
Girdhar et al. Actionvlad: Learning spatio-temporal aggregation for action classification
Lu et al. Range-sample depth feature for action recognition
US12046038B2 (en) System and method for generating visual analytics and player statistics
Ji Research on basketball shooting action based on image feature extraction and machine learning
Theagarajan et al. Soccer: Who has the ball? Generating visual analytics and player statistics
US9639746B2 (en) Systems and methods of detecting body movements using globally generated multi-dimensional gesture data
Yang et al. Research on face recognition sports intelligence training platform based on artificial intelligence
Li et al. Video-based table tennis tracking and trajectory prediction using convolutional neural networks
He et al. Mathematical modeling and simulation of table tennis trajectory based on digital video image processing
CN110287912A (zh) 基于深度学习的目标对象情感状态确定方法、装置及介质
Liang A video images-aware knowledge extraction method for intelligent healthcare management of basketball players
KR102466989B1 (ko) 골프 스윙 데이터의 유사도를 기반으로 한 전문가 매칭 방법 및 시스템
CN115205961A (zh) 一种羽毛球动作识别方法、装置、电子设备及存储介质
US11922822B2 (en) Method of scoring a move of a user and system thereof
KR20210010408A (ko) 비전 센서 데이터 기반 골프 스윙 궤적 추적 및 분석 장치 및 방법
Zhou Computational Analysis of Table Tennis Games from Real-Time Videos Using Deep Learning
Meng Deep Learning Algorithm and Video Image Processing-based Basketball Training System
He et al. Recognition and prediction of badminton attitude based on video image analysis
Jiang Application of motion trajectory recognition based on remote sensing image optical processing in optimizing swimming training schemes
Zhu A prediction method for the service trajectory of badminton moving video based on fuzzy clustering algorithm
Zhang et al. RECOGNITION METHOD OF DIVERSIFIED TEACHING MODE OF COLLEGE PHYSICAL TRAINING BASED ON DATA MINING
Deng et al. Decision support model for student physical exercise health promotion based on artificial neural network
Qiu et al. Machine Learning based Movement Analysis and Correction for Table Tennis

Legal Events

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