KR102627521B1 - 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치 - Google Patents

스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치 Download PDF

Info

Publication number
KR102627521B1
KR102627521B1 KR1020220146204A KR20220146204A KR102627521B1 KR 102627521 B1 KR102627521 B1 KR 102627521B1 KR 1020220146204 A KR1020220146204 A KR 1020220146204A KR 20220146204 A KR20220146204 A KR 20220146204A KR 102627521 B1 KR102627521 B1 KR 102627521B1
Authority
KR
South Korea
Prior art keywords
target event
type
team
player
location
Prior art date
Application number
KR1020220146204A
Other languages
English (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 KR1020220146204A priority Critical patent/KR102627521B1/ko
Priority to PCT/KR2022/017310 priority patent/WO2024096167A1/ko
Application granted granted Critical
Publication of KR102627521B1 publication Critical patent/KR102627521B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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/30221Sports video; Sports image

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법이 개시된다. 방법은, 스포츠 세션 내 복수의 시점에 각각 대응되는 복수의 위치 데이터셋을 획득하는 단계, 복수의 플레이어의 속력 데이터를 획득하는 단계, 속력 데이터에 기초하여 타겟 이벤트를 식별하고 타겟 이벤트에 대한 정보를 획득하는 단계, 타겟 이벤트에 대응되는 시간 정보에 기초하여 복수의 위치 데이터셋으로부터 타겟 이벤트에 대응되는 복수의 위치 데이터셋을 식별하는 단계 및 식별된 복수의 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 획득하는 단계를 포함한다.

Description

스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치{METHOD FOR ACQUIRING TYPE OF TARGET EVENT IN SPORTS SESSION AND ELECTRONIC APPARATUS PERFORMING THE SAME}
본 개시는 스포츠 세션에서 발생된 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치에 관한 것이다.
스프린트 이벤트란 스포츠 세션(스포츠 경기, 훈련 세션을 포함함)에서, 스포츠 선수가 기설정된 속력 이상으로 달리는 이벤트를 의미한다. 스프린트 이벤트는 스포츠 세션에서 일어나는 전체 득점 이벤트 중 약 70%와 관련 있을 정도로 높은 상관 관계를 가진다. 득점 이벤트가 많을수록 스포츠 세션에서 승리할 확률이 높기 때문에 현대 스포츠 산업에서 스프린트 이벤트에 대한 분석은 대단히 중요하다고 할 수 있다.
본 개시는 스프린트 이벤트에 대한 분석을 위한 다양한 정보(예로, 스프린트 유형)를 제공하는 방법과 관련된다.
이하에서는 본 기재에서 개시되는 특정 실시예들에 관한 요약을 제시한다. 이하의 요약에서 제시되는 양태들은 단지 특정 실시예들에 관한 간략한 요약을 제공하기 위한 것에 불과한 것으로 본 기재의 범위를 한정하려는 것은 아닌 것으로 이해되어야 한다. 따라서, 본 기재는 이하에서 제시되지 않는 다양한 양태들을 포함할 수 있음을 미리 밝혀둔다.
본 기재 및 이하에서 개시되는 발명의 개념은 스포츠 세션에서 발생되는 타겟 이벤트의 유형을 예측하는 방법들, 장치들, 시스템들, 및 컴퓨터 판독 가능한 저장 매체들을 제공한다.
본 발명이 해결하고자 하는 일 기술적 과제는, 복수의 플레이어의 배치 분포를 나타내는 팀 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 예측하는 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 다른 일 기술적 과제는, 타겟 이벤트 구간에서의 볼 소유권에 기초하여 타겟 이벤트의 유형을 예측하는 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 일 기술적 과제는, 타겟 이벤트에 대응되는 비디오 피드를 사용자에게 제공하는 방법을 제공하는 것이다.
다만, 본 기재의 해결하고자 하는 과제는 이에 한정되는 것이 아니며, 본 기재의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.
실시예들은, 스포츠 볼의 위치를 예측하는 방법들, 장치들, 시스템들 및 컴퓨터 판독 가능한 저장 매체들을 포함한다.
일 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법에 있어서, 상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하는 단계; 상기 복수의 플레이어의 모션 데이터를 획득하는 단계; 상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 플레이어에 대한 정보를 포함함-를 획득하는 단계; 상기 타겟 이벤트에 대응되는 시간 정보에 기초하여 상기 타겟 이벤트 동안의 경기 상황을 반영하는 상황 정보-상기 상황 정보는, 상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 제1 위치 데이터셋 및 상기 플레이어가 아닌 적어도 하나 이상의 다른 플레이어의 경기장에서의 배치나 움직임을 반영하는 제2 위치 데이터셋을 포함함-를 획득하는 단계; 및 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 획득하는 단계를 포함하는 방법이 제공될 수 있다.
다른 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 전자 장치에 있어서, 적어도 하나의 인스트럭션을 저장하는 메모리; 및 프로세서;를 포함하고, 상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써, 상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하고, 상기 복수의 플레이어의 모션 데이터를 획득하고, 상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 상기 플레이어에 대한 정보를 포함함-를 획득하고, 상기 타겟 이벤트에 대응되는 시간 정보에 기초하여 상기 타겟 이벤트 동안의 경기 상황을 반영하는 상황 정보-상기 상황 정보는, 상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 제1 위치 데이터셋 및 상기 플레이어가 아닌 적어도 하나 이상의 다른 플레이어의 경기장에서의 배치나 움직임을 반영하는 제2 위치 데이터셋을 포함함-를 획득하고, 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 획득하는 전자 장치가 제공될 수 있다.
이상의 예시적 실시예들과 다른 예시적 실시예들은 첨부된 도면과 연관되어 읽혀질 예시적 실시예들에 관하여 후술될 상세한 설명에 의해 설명되거나 명확해질 것이다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 개시의 일 실시예에 따르면, 복수의 플레이어의 배치 분포를 나타내는 팀 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 예측할 수 있다.
본 개시의 일 실시예에 따르면, 타겟 이벤트 구간에서의 볼 소유권에 기초하여 타겟 이벤트의 유형을 예측할 수 있다.
본 개시의 일 실시예에 따르면, 타겟 이벤트에 대응되는 비디오 피드를 사용자에게 제공할 수 있다.
이상의 발명의 내용은 본 발명의 모든 측면들에 관한 완전한 목록을 포함하는 것은 아니다. 본 발명은 이상에서 요약된 사항들은 물론, 이하의 상세한 설명 및 청구항에서 개시되는 다양한 측면들의 모든 적절한 조합들로부터 실시 가능한 모든 방법들, 기기들, 및 시스템들을 포함하는 것으로 이해되어야 한다. 그 외에 본 개시의 실시예로 인하여 얻을 수 있거나 예측되는 효과에 대해서는 본 개시의 실시예에 대한 상세한 설명에서 직접적 또는 암시적으로 개시하도록 한다. 예컨대, 본 개시의 실시예에 따라 예측되는 다양한 효과에 대해서는 후술될 상세한 설명 내에서 개시될 것이다.
본 개시의 특정 실시예의 양상, 특징 및 이점은 첨부된 도면들을 참조하여 후술되는 설명을 통해 보다 명확해질 것이다.
도 1은 본 개시의 일 실시예에 따른 스포츠 세션의 예시적인 타겟 이벤트를 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 플레이어 추적 장치를 도시한 도면이다.
도 3은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 나타내는 순서도이다.
도 4는 본 개시의 일 실시예에 따른 복수의 위치 데이터셋을 나타내는 도면이다.
도 5는 본 개시의 일 실시예에 따른 팀 위치 데이터셋을 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 스프린터의 속력 데이터를 나타내는 그래프이다.
도 7은 본 개시의 일 실시예에 따른 신경망 모델을 이용한 타겟 이벤트의 유형을 획득하는 방법을 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시예에 따른 볼의 위치를 획득하는 방법을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 타겟 이벤트에 대응되는 타겟 장면을 제공하는 방법을 나타내는 순서도이다.
도 10은 본 개시의 일 실시예에 따른 비디오 피드로부터 타겟 장면을 추출하는 방법을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 스프린트 장면을 나타내는 도면이다.
도 12는 본 개시의 일 실시예에 따른 타겟 이벤트 로그를 나타내는 표이다.
도 13은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 나타내는 순서도이다.
도 14는 본 개시의 일 실시예에 따른 신경망 모델을 이용한 볼 소유권을 획득하는 방법을 설명하기 위한 도면이다.
도 15는 본 개시의 일 실시예에 따른 제3 신경망 모델의 구조를 설명하기 위한 도면이다.
도 16은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 설명하기 위한 도면이다.
도 17은 본 개시의 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다. 
본 개시의 실시예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시의 실시예들은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 개시된 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
일 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법에 있어서, 상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하는 단계; 상기 복수의 플레이어의 모션 데이터를 획득하는 단계; 상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 플레이어에 대한 정보를 포함함-를 획득하는 단계; 상기 타겟 이벤트에 대응되는 시간 정보에 기초하여 상기 타겟 이벤트 동안의 경기 상황을 반영하는 상황 정보-상기 상황 정보는, 상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 제1 위치 데이터셋 및 상기 플레이어가 아닌 적어도 하나 이상의 다른 플레이어의 경기장에서의 배치나 움직임을 반영하는 제2 위치 데이터셋을 포함함-를 획득하는 단계; 및 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 획득하는 단계를 포함하는 방법이 제공될 수 있다.
상기 방법은, 상기 복수의 위치 데이터셋으로부터 상기 타겟 이벤트에 대응되는 복수의 팀 위치 데이터셋-상기 복수의 팀 위치 데이터셋은, 상기 타겟 이벤트를 수행한 상기 플레이어가 속한 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제1 팀 위치 데이터셋, 및 제2 팀의 플레이어들의 상기 경기장에서의 배치 상태를 반영하는 복수의 제2 팀 위치 데이터셋을 포함함-을 생성하는 단계;를 더 포함하고, 상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 복수의 제1 팀 위치 데이터셋 또는 상기 복수의 제2 팀 위치 데이터셋 중 적어도 하나와 상기 타겟 이벤트를 수행한 상기 플레이어의 위치값들을 신경망 모델에 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 방법은, 상기 스포츠 세션에 이용되는 볼의 위치를 획득하는 단계;를 더 포함하고, 상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 타겟 이벤트에 대응되는 시간 구간에서의 상기 볼의 위치를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 타겟 이벤트를 수행한 상기 플레이어의 역할 정보를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 타겟 이벤트에 대응되는 시간 정보는, 상기 타겟 이벤트를 수행한 상기 플레이어의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간, 상기 플레이어에 의해 상기 타겟 이벤트가 의도된 시점으로부터 상기 제1 시간 구간의 시작점까지의 제2 시간 구간, 및 상기 제1 시간 구간의 끝점으로부터 상기 제1 시간 구간의 끝점으로부터 기설정된 시간 후인 시점까지의 제3 시간 구간을 포함할 수 있다.
상기 임계 시간은, 상기 제1 시간 구간동안 상기 플레이어가 이동한 거리에 기초하여 조절될 수 있다.
상기 타겟 이벤트가 의도된 시점은, 상기 플레이어의 가속도에 기초하여 판단될 수 있다.
다른 일 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 전자 장치에 있어서, 적어도 하나의 인스트럭션을 저장하는 메모리; 및 프로세서;를 포함하고, 상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써, 상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하고, 상기 복수의 플레이어의 모션 데이터를 획득하고, 상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 상기 플레이어에 대한 정보를 포함함-를 획득하고, 상기 타겟 이벤트에 대응되는 시간 정보에 기초하여 상기 타겟 이벤트 동안의 경기 상황을 반영하는 상황 정보-상기 상황 정보는, 상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 제1 위치 데이터셋 및 상기 플레이어가 아닌 적어도 하나 이상의 다른 플레이어의 경기장에서의 배치나 움직임을 반영하는 제2 위치 데이터셋을 포함함-를 획득하고, 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 획득하는 전자 장치가 제공될 수 있다.
상기 프로세서는, 상기 식별된 복수의 위치 데이터셋으로부터 복수의 팀 위치 데이터셋-상기 복수의 팀 위치 데이터셋은, 상기 타겟 이벤트를 수행한 상기 플레이어가 속한 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제1 팀 위치 데이터셋, 및 제2 팀의 플레이어들의 상기 경기장에서의 배치 상태를 반영하는 복수의 제2 팀 위치 데이터셋을 포함함-을 생성하고, 상기 복수의 제1 팀 위치 데이터셋 또는 상기 복수의 제2 팀 위치 데이터셋 중 적어도 하나와 상기 식별된 복수의 위치 데이터셋에 포함된 상기 타겟 이벤트를 수행한 상기 플레이어의 위치값들을 신경망 모델에 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 프로세서는, 상기 스포츠 세션에 이용되는 볼의 위치를 획득하고, 상기 타겟 이벤트에 대응되는 시간 구간에서의 상기 볼의 위치를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 프로세서는, 상기 타겟 이벤트를 수행한 상기 플레이어의 역할 정보를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 프로세서는, 상기 제1 시간 구간동안 상기 플레이어가 이동한 거리에 기초하여 상기 임계 시간을 조절할 수 있다.
상기 프로세서는, 상기 플레이어의 가속도에 기초하여 상기 타겟 이벤트가 의도된 시점을 판단할 수 있다.
또 다른 일 실시예에 따르면, 스포츠 세션에서 발생되는 타겟 이벤트에 대한 정보를 제공하는 방법에 있어서, 상기 스포츠 세션에 대한 비디오 피드를 획득하는 단계; 상기 스포츠 세션에서 발생한 상기 타겟 이벤트의 유형을 예측하는 단계; 상기 비디오 피드로부터 상기 타겟 이벤트에 대응되는 타겟 장면을 추출하는 단계; 및 상기 예측된 타겟 이벤트의 유형과 상기 타겟 장면을 관련지어 저장하는 단계를 포함하는 방법이 제공될 수 있다.
상기 방법은, 상기 예측된 타겟 이벤트의 유형과 상기 타겟 장면을 사용자에게 제공하는 단계; 및 상기 예측된 타겟 이벤트의 유형을 수정하기 위한 사용자 명령이 수신되면, 상기 사용자 명령에 기초하여 상기 예측된 타겟 이벤트의 유형을 수정하는 단계를 더 포함할 수 있다.
상기 타겟 장면에는 상기 예측된 타겟 이벤트의 유형이 표시될 수 있다.
상기 타겟 장면에서 상기 타겟 이벤트를 수행한 플레이어에 하이라이트가 표시되고, 상기 타겟 이벤트에 대응되는 시간 구간에서 상기 플레이어의 이동 궤적이 표시될 수 있다.
상기 방법은, 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하는 단계를 더 포함하고, 상기 예측하는 단계는, 상기 복수의 위치 데이터셋으로부터 상기 타겟 이벤트에 대응되는 복수의 위치 데이터셋을 식별하고, 및 복수의 위치 데이터셋을 입력 받아 상기 타겟 이벤트의 유형을 예측하도록 학습된 신경망 모델을 이용하여, 상기 식별된 복수의 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 타겟 장면은, 상기 타겟 이벤트에 대응되는 시간 정보에 기초하여 상기 비디오 피드로부터 추출될 수 있다.
또 다른 일 실시예에 따르면, 스포츠 세션에서 발생되는 타겟 이벤트에 대한 정보를 제공하는 전자 장치에 있어서, 적어도 하나의 인스트럭션을 저장하는 메모리; 및 프로세서;를 포함하고, 상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써, 상기 스포츠 세션에 대한 비디오 피드를 획득하고, 상기 스포츠 세션에서 발생한 상기 타겟 이벤트의 유형을 예측하고, 상기 비디오 피드로부터 상기 타겟 이벤트에 대응되는 타겟 장면을 추출하고, 상기 예측된 타겟 이벤트의 유형과 상기 타겟 장면을 관련지어 저장하는 단계를 포함하는 전자 장치가 제공될 수 있다.
상기 프로세서는, 상기 예측된 타겟 이벤트의 유형과 상기 타겟 장면을 사용자에게 제공하고, 상기 예측된 타겟 이벤트의 유형을 수정하기 위한 사용자 명령이 수신되면, 상기 사용자 명령에 기초하여 상기 예측된 타겟 이벤트의 유형을 수정할 수 있다.
상기 프로세서는, 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하고, 상기 복수의 위치 데이터셋으로부터 상기 타겟 이벤트에 대응되는 복수의 위치 데이터셋을 식별하고, 복수의 위치 데이터셋을 입력 받아 상기 타겟 이벤트의 유형을 예측하도록 학습된 신경망 모델을 이용하여, 상기 식별된 복수의 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
또 다른 일 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법에 있어서, 상기 스포츠 세션에 참가한 복수의 플레이어의 속력에 기초하여 타겟 이벤트를 식별하고, 상기 식별된 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 타겟 플레이어에 대한 정보를 포함함-를 획득하는 단계; 상기 식별된 타겟 이벤트의 시간 구간에 포함된 복수의 시점에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 상기 복수의 플레이어의 위치값을 포함함-을 획득하는 단계; 상기 복수의 위치 데이터셋에 기초하여 상기 식별된 타겟 이벤트의 시간 구간에서의 볼 소유권을 판단하는 단계; 및 상기 복수의 위치 데이터셋 및 상기 판단된 볼 소유권에 기초하여 상기 타겟 이벤트의 유형을 획득하는 단계를 포함하는 방법이 제공될 수 있다.
상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀이 상기 볼 소유권을 갖는 경우, 공격 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제1 신경망 모델을 이용하여, 상기 타겟 플레이어의 위치값, 상기 제1 팀과 관련된 제1 팀 위치 데이터셋 및 상기 제1 팀의 상대팀인 제2 팀과 관련된 제2 팀 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀의 상대팀인 제2 팀이 상기 볼 소유권을 갖는 경우, 수비 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제2 신경망 모델을 이용하여, 상기 타겟 플레이어의 위치값 및 상기 제2 팀과 관련된 제2 팀 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀이 상기 볼 소유권을 갖는 경우, 상기 식별된 타겟 이벤트의 시간 구간에서의 볼의 위치를 반영하는 볼 위치 데이터셋을 상기 제1 신경망 모델에 입력할 수 있다.
상기 방법은, 상기 복수의 위치 데이터셋으로부터 복수의 팀 위치 데이터셋-상기 복수의 팀 위치 데이터셋은, 제1 팀의 플레이어들에 대응되는 위치 데이터셋으로부터 생성되며 상기 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 제1 팀 위치 데이터셋, 및 제2 팀의 플레이어들에 대응되는 위치 데이터셋으로부터 생성되며 상기 제2 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 제2 팀 위치 데이터셋을 포함함-을 생성하는 단계를 더 포함하고, 상기 타겟 이벤트의 유형을 획득하는 단계는, 상기 타겟 이벤트의 유형을 획득하도록 학습된 제3 신경망 모델을 이용하여, 상기 타겟 플레이어의 위치값, 상기 제1 팀과 관련된 제1 팀 위치 데이터셋 및 상기 제1 팀의 상대팀인 제2 팀과 관련된 제2 팀 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 볼 소유권은, 상기 복수의 위치 데이터셋으로부터 생성된 복수의 팀 위치 데이터셋과 상기 식별된 타겟 이벤트의 시간 구간에서의 볼의 위치를 반영하는 볼 위치 데이터셋을 입력 받아 상기 볼 소유권을 판단하도록 학습된 제4 신경망 모델을 이용하여 획득될 수 있다.
상기 제4 신경망 모델은, 상기 복수의 팀 위치 데이터셋을 미리 정해진 시간 길이에 대응되는 세그먼트 단위로 입력 받는 순환신경망 계열의 신경망 모델일 수 있다.
또 다른 일 실시예에 따르면, 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 전자 장치에 있어서, 적어도 하나의 인스트럭션을 저장하는 메모리; 및 프로세서;를 포함하고, 상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써, 상기 스포츠 세션에 참가한 복수의 플레이어의 속력에 기초하여 타겟 이벤트를 식별하고, 상기 식별된 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트에 대응되는 시간 정보 및 상기 타겟 이벤트를 수행한 타겟 플레이어에 대한 정보를 포함함-를 획득하고, 상기 식별된 타겟 이벤트의 시간 구간에 포함된 복수의 시점에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 상기 복수의 플레이어의 위치값을 포함함-을 획득하고, 상기 복수의 위치 데이터셋에 기초하여 상기 식별된 타겟 이벤트의 시간 구간에서의 볼 소유권을 판단하고, 상기 복수의 위치 데이터셋 및 상기 판단된 볼 소유권에 기초하여 상기 타겟 이벤트의 유형을 획득하는 단계를 포함하는 전자 장치가 제공될 수 있다.
상기 프로세서는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀이 상기 볼 소유권을 갖는 경우, 공격 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제1 신경망 모델을 이용하여, 상기 타겟 플레이어의 위치값, 상기 제1 팀과 관련된 제1 팀 위치 데이터셋 및 상기 제1 팀의 상대팀인 제2 팀과 관련된 제2 팀 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 프로세서는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀의 상대팀인 제2 팀이 상기 볼 소유권을 갖는 경우, 수비 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제2 신경망 모델을 이용하여, 상기 타겟 플레이어의 위치값 및 상기 제2 팀과 관련된 제2 팀 위치 데이터셋에 기초하여 상기 타겟 이벤트의 유형을 획득할 수 있다.
상기 프로세서는, 상기 식별된 타겟 이벤트의 시간 구간에서 상기 타겟 플레이어가 속한 제1 팀이 상기 볼 소유권을 갖는 경우, 상기 식별된 타겟 이벤트의 시간 구간에서의 볼의 위치를 반영하는 볼 위치 데이터셋을 상기 제1 신경망 모델에 입력할 수 있다.
또 다른 일 실시예에 따르면, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체가 제공될 수 있다.
도 1은 본 개시의 일 실시예에 따른 스포츠 세션의 예시적인 타겟 이벤트를 나타내는 도면이다.
도 1을 참조하면, 축구 경기에서 플레이어(1)가 기설정된 속력(예로, 25km/h) 이상으로 볼(2)과 함께 달릴 수 있다. 이 때, 타겟 이벤트는 스프린트 이벤트이며, 타겟 이벤트의 유형은 ‘치고 달리기'(Run with ball)일 수 있다. 본 개시의 전자 장치(100)는 스포츠 세션 내 타겟 이벤트를 식별하고, 타겟 이벤트의 유형을 획득할 수 있다. 예를 들어, 스포츠 세션에서 도 1과 같은 이벤트가 발생한 경우, 전자 장치(100)는 플레이어(1)에 의해 ‘치고 달리기' 이벤트가 수행되었음을 판단할 수 있다.
한편, 이하에서는 설명의 편의상 타겟 이벤트가 스프린트 이벤트인 경우를 중심으로 설명하나, 본 개시의 타겟 이벤트는 스프린트 이벤트가 아닌 다른 이벤트들 중 하나일 수 있다. 예를 들어, 타겟 이벤트는 폭발적 가속(explosive acceleration)이나 방향 전환(change of direction, COD)일 수 있다. 또한, 타겟 이벤트는 고속달리기(High Speed Running, HSR)나 세트피스일 수 있다. 고속달리기는 스프린트보다 낮은 속력의 달리기를 의미한다.
본 개시에서 서술되는 여러 방법은 축구에만 한정 적용될 수 있는 것은 아니며, 하키나 아이스하키를 비롯한 모든 구기 스포츠에 적용될 수 있다. 그리고, 본 개시에서 타겟 이벤트를 수행하는 플레이어는 타겟 플레이어라고 지칭될 수 있다. 특히, 타겟 이벤트가 스프린트 이벤트일 때, 타겟 플레이어는 스프린터로 지칭될 수 있다.
도 2는 본 개시의 일 실시예에 따른 플레이어 추적 장치를 도시한 도면이다.
도 2를 참조하면, 플레이어 추적 장치(T)는 플레이어(1)가 착용한 의류(3)에 형성된 포켓(4)에 삽입될 수 있다. 플레이어 추적 장치(T)는 적어도 하나의 센서를 포함할 수 있다. 예를 들어, 플레이어 추적 장치(T)는 GPS 센서, IMU 센서 또는 LPS 센서 중 적어도 하나를 포함할 수 있다. 플레이어 추적 장치(T)는 스포츠 세션 동안 플레이어(1)와 관련된 데이터를 측정하고, 측정된 데이터를 서버로 전송할 수 있다. 예를 들어, 플레이어(1)와 관련된 데이터는, 스포츠 세션 동안의 플레이어(1)의 위치 데이터, 속도 데이터 및 가속도 데이터를 포함할 수 있다. 한편, 플레이어 추적 장치(T)는 포켓(4)이 아닌 플레이어(1)가 착용한 다른 아이템에 마련될 수도 있다. 예를 들어, 플레이어 추적 장치(T)는 플레이어(1)가 착용한 신발, 팔찌 또는 헤어 밴드에 마련될 수 있다.
스포츠 세션에 참가하는 복수의 플레이어 각각은 플레이어 추적 장치(T)를 착용할 수 있다. 이에 따라, 복수의 플레이어 각각에 대응되는 복수의 위치 데이터셋이 획득될 수 있다. 한편, 스포츠 세션에 참가한 복수의 플레이어 중 일부는 플레이어 추적 장치(T)를 착용하지 않을 수도 있다. 예를 들어, 골키퍼 또는 골텐더는 플레이어 추적 장치(T)를 착용하지 않을 수 있다.
본 개시에서 전자 장치(100)는 플레이어(1)와 관련된 데이터를 이용하여 스프린트 이벤트를 식별하고, 식별된 스프린트 이벤트의 유형을 판단할 수 있다. 예를 들어, 전자 장치(100)는 플레이어의 속력 데이터를 이용하여 스프린트 이벤트를 식별할 수 있다. 또한, 전자 장치(100)는 플레이어의 위치 데이터를 이용하여 스프린트 이벤트의 유형을 획득할 수 있다. 전자 장치(100)가 이용하는 각종 데이터 중 적어도 일부는 플레이어 추적 장치(T)에 의해 측정될 수 있다. 전자 장치(100)는 플레이어(1)와 관련된 데이터를 서버 또는 플레이어 추적 장치(T)로부터 수신할 수 있다.
한편, 본 개시의 위치 데이터는, 각종 센서에 의해 측정된 로 데이터가 아닌 전자 장치(100)에 의해 처리된 데이터일 수 있다. 예를 들어, 전자 장치(100)는 GPS 센서에 의해 측정된 신호 및 IMU 센서에 의해 측정된 신호에 대한 신호 처리를 수행하여 위치 데이터를 획득할 수 있다. 또한, 전자 장치(100)는 GPS 센서에 의해 측정된 위치값을 스포츠 세션이 진행되는 경기장 좌표계에 대응되도록 변환할 수 있다.
도 3은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 나타내는 순서도이다.
도 3을 참조하면, 전자 장치(100)는 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋을 획득할 수 있다(S310). 각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함할 수 있다. 예를 들어, 복수의 위치 데이터셋은 도 4와 같을 수 있다. 도 4는 본 개시의 일 실시예에 따른 복수의 위치 데이터셋을 나타내는 도면이다. 도 4를 참조하면, 복수의 위치 데이터셋(40)은 제1 시점(t=1)에 대응되는 제1 위치 데이터셋을 포함할 수 있다. 제1 위치 데이터셋은 제1 시점(t=1)에서 복수의 플레이어의 위치를 각각 나타내는 복수의 위치 값((x1_A1, y1_A1), (x1_A2, y1_A2), ..., (x1_B11, y1_B11))을 포함할 수 있다.
전자 장치(100)는 복수의 플레이어의 모션 데이터를 획득할 수 있다(S320). 모션 데이터는 속력 데이터, 가속도 데이터 및 각속도 데이터를 포함할 수 있다. 모션 데이터는 플레이어의 여러 동작을 나타낼 수 있다. 예를 들어, 모션 데이터는 슈팅, 점프, 방향 전환 등을 나타낼 수 있다. 복수의 플레이어의 모션 데이터는 복수의 플레이어가 착용한 복수의 플레이어 추적 장치(T)에 의해 측정될 수 있다. 예를 들어, 플레이어의 속력 데이터는 추적 장치(T)에 포함된 GPS 센서에 의해 측정될 수 있다. 또한, 플레이어의 가속도 데이터 및 각속도 데이터는 추적 장치(T)에 포함된 IMU 센서에 의해 측정될 수 있다.
전자 장치(100)는 복수의 플레이어의 속력 데이터를 서버 또는 플레이어 추적 장치(T)로부터 수신할 수 있다. 또는, 전자 장치(100)는 플레이어 추적 장치(T)에 의해 측정된 위치 데이터 또는 가속도 데이터를 기초로 속력 데이터를 획득할 수 있다. 예를 들어, 전자 장치(100)는 위치 데이터를 미분하여 속력 데이터를 획득하거나, 가속도 데이터를 적분하여 속력 데이터를 획득할 수 있다. 또한, 전자 장치(100)는 외부 장치에 의해 측정된 속력 데이터를 획득할 수 있다. 예컨대, 외부 장치는 스포츠 세션의 비디오 피드에 대해 영상 분석을 수행하여 속력 데이터를 획득할 수 있다.
전자 장치(100)는 획득된 모션 데이터에 기초하여 타겟 이벤트를 식별하고, 타겟 이벤트에 대한 정보를 획득할 수 있다(S330). 예를 들어, 제1 플레이어의 속력이 기설정된 범위(예로, 25(km/h)이상 50(km/h)이하) 이내로 임계 시간(예로 3초) 이상 유지되면, 전자 장치(100)는 제1 플레이어에 의해 스프린트 이벤트가 수행되었다고 판단할 수 있다.
타겟 이벤트에 대한 정보는, 타겟 이벤트에 대응되는 시간 정보 및 타겟 이벤트를 수행한 타겟 플레이어에 대한 정보를 포함할 수 있다. 또한, 타겟 이벤트에 대한 정보는, 타겟 이벤트에 대응되는 시간 구간 동안 볼 소유 정보나 타겟 플레이어가 이동한 거리를 포함할 수 있다. 한편, 본 개시에서 타겟 이벤트에 대응되는 시간 구간은 타겟 이벤트 구간으로 간략히 지칭될 수 있다. 특히, 타겟 이벤트가 스프린트 이벤트인 경우, 스프린트 이벤트에 대응되는 시간 구간은 스프린트 구간으로 지칭될 수 있다.
전자 장치(100)는 식별된 타겟 이벤트를 수행한 타겟 플레이어의 속력 데이터에 기초하여 타겟 이벤트 구간의 길이를 획득할 수 있다. 타겟 이벤트 구간은, 타겟 플레이어의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간을 포함할 수 있다. 전자 장치(100)는 타겟 플레이어의 순간 속력이 기설정된 범위 이내로 진입하는 제1 시점을 제1 시간 구간의 시작점으로 식별할 수 있다. 전자 장치(100)는 타겟 플레이어의 순간 속력이 제1 시점 이후 기설정된 범위를 벗어나게 되는 제2 시점을 제1 시간 구간의 끝점으로 식별할 수 있다.
한편, 타겟 이벤트 식별을 위한 임계 시간은, 타겟 이벤트를 수행하는 동안 타겟 플레이어가 이동한 거리에 따라 달라질 수 있다. 예를 들어, 타겟 플레이어가 이동한 거리가 클수록, 임계 시간은 감소할 수 있다. 타겟 플레이어가 이동한 거리가 작을수록, 임계 시간은 증가할 수 있다. 한편, 타겟 이벤트 구간에서 타겟 플레이어의 이동 거리는, 타겟 이벤트 구간에서 타겟 플레이어의 속력 데이터 및 타겟 이벤트 구간의 시간 길이에 기초하여 산출될 수 있다.
한편, 본 개시의 타겟 이벤트 구간은, 실제 타겟 플레이어가 타겟 이벤트를 수행한 시간 구간보다 클 수 있다. 가령, 본 개시의 스프린트 구간은, 실제 타겟 플레이어가 스프린트한 구간보다 클 수 있다. 이는, 실제 타겟 이벤트가 수행된 시간 전후의 정보들까지 이용하면 타겟 이벤트의 유형을 보다 정확히 획득할 수 있기 때문이다.
타겟 이벤트 구간은, 타겟 플레이어에 의해 타겟 이벤트가 의도된 시점으로부터 제1 시간 구간의 시작점(즉, 제1 시점)까지인 제2 시간 구간을 포함할 수 있다. 전자 장치(100)는 타겟 플레이어의 가속도에 기초하여 타겟 이벤트가 의도된 시점(또는, 의도 발생 시점)을 판단할 수 있다. 예를 들어, 전자 장치(100)는 타겟 플레이어의 가속도가 기설정된 값보다 커지게 되는 시점을 타겟 이벤트에 대한 의도 발생 시점으로 판단할 수 있다.
타겟 이벤트 구간은, 제1 시간 구간의 끝점(즉, 제2 시점)으로부터 제1 시간 구간의 끝점으로부터 기설정된 시간(예로, 2초) 후인 제3 시점까지의 제3 시간 구간을 포함할 수 있다.
한편, 각 플레이어가 착용한 플레이어 추적 장치(T) 마다 식별 값이 할당될 수 있다. 전자 장치(100)는 플레이어 추적 장치(T)에 의해 측정된 속력 데이터 및 플레이어 추적 장치(T)에 할당된 식별 값에 기초하여 타겟 플레이어를 식별할 수 있다.
전자 장치(100)는 타겟 이벤트에 대응되는 시간 정보에 기초하여 타겟 이벤트 동안의 경기 상황을 반영하는 상황 정보를 획득할 수 있다(S340). 상황 정보는, 타겟 플레이어의 위치를 반영하는 제1 위치 데이터셋 및 타겟 플레이어가 아닌 적어도 하나 이상의 다른 플레이어의 경기장에서의 배치나 움직임을 반영하는 제2 위치 데이터셋을 포함할 수 있다. 이 외에도, 상황 정보는 스포츠 세션 내 여러 전술적 상황들을 반영하는 맥락 정보를 포함할 수 있다.
상황 정보는, 타겟 이벤트에 대응되는 복수의 팀 위치 데이터셋을 포함할 수 있다. 전자 장치(100)는 타겟 이벤트 구간에 대응되는 복수의 위치 데이터셋으로부터 복수의 팀 위치 데이터셋을 생성할 수 있다. 여기서, 복수의 팀 위치 데이터셋은, 타겟 이벤트 구간 내 복수의 시점에 각각 대응될 수 있다. 팀 위치 데이터셋은, 타겟 이벤트를 수행한 플레이어가 속한 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 제1 팀 위치 데이터셋과, 제1 팀에 대항하는 제2 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 제2 팀 위치 데이터셋을 포함할 수 있다. 일 예로, 팀 위치 데이터셋은 도 5와 같을 수 있다.
도 5는 본 개시의 일 실시예에 따른 팀 위치 데이터셋을 나타내는 도면이다. 구체적으로, 제1 팀 위치 데이터셋(51)은 타겟 이벤트 구간 내 일 시점에서 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영할 수 있다. 제2 팀 위치 데이터셋(52)은 타겟 이벤트 구간 내 일 시점에서 제2 팀의 플레이어들의 경기장에서의 배치 상태를 반영할 수 있다.
팀 위치 데이터셋(51, 52)의 각 요소는 경기장 내 위치에 대응될 수 있으며, 각 위치에 플레이어가 위치하는 지 여부를 나타낼 수 있다. 각 요소의 값이 0이면 해당 요소에 대응되는 위치에 플레이어가 존재하지 않는 것을 의미할 수 있다. 각 요소의 값이 1이면 해당 요소에 대응되는 위치에 제1 팀(팀 A)에 속하는 플레이어가 위치하는 것을 의미할 수 있다. 물론, 여기서 값 "0"이나 "1"은 임의적 인덱스(trivial index)에 불과하므로, "-1"과 "1"로 표현하거나 의미론적으로 팀 구분이 가능한 어떠한 형태의 값을 이용해도 무방하다. 한편, 도 5에서는 필드를 120x90으로 표현한 그리드 맵 형태의 좌표 평면을 이용해 위치를 표현하였으나, 그리드 맵의 사이즈가 반드시 도 5의 예시로 한정되는 것은 아니며, 또 그리드 좌표 대신 벡터 좌표로 위치를 표현하는 것도 가능하다.
한편, 팀 위치 데이터셋은 두 팀의 팀 위치 데이터셋 병합된 형태일 수 있다. 예를 들어, 팀 위치 데이터셋의 요소가 "0"이면, 해당 요소에 대응되는 위치에 플레이어가 존재하지 않을 수 있다. 팀 위치 데이터셋의 "1"이면, 해당 요소에 대응되는 위치에 제1 팀에 속하는 플레이어가 존재할 수 있다. 팀 위치 데이터셋의 "2"이면, 해당 요소에 대응되는 위치에 제2 팀에 속하는 플레이어가 존재할 수 있다. 여기서도 인덱스 번호는 임의적인 것임을 다시 한번 밝혀 둔다.
상술한 바와 같이, 전자 장치(100)는 순열 불변성(permutation invariant) 데이터를 획득하기 위해 도 5와 같은 히트맵 형태로 위치 데이터를 가공할 수 있다. 또는, 전자 장치(100)는 신경망 모델을 이용하여 팀 위치 데이터셋을 획득할 수 있다. 신경망 모델은 입력 받은 데이터를 순열 불변성한 데이터로 변환할 수 있다. 예를 들어, 신경망 모델은 '셋 트랜스포머'일 수 있다. 한편, 이러한 신경망 모델은 타겟 이벤트의 유형을 추론하도록 학습된 신경망 모델 내부에 포함될 수 있다. 예를 들어, 제1 신경망 모델(M1)은 복수의 위치 데이터셋을 입력 받아 팀 위치 데이터셋을 생성하도록 학습된 '셋 트랜스포머'를 포함할 수 있다.
다시 도 3을 참조하면, 전자 장치(100)는 상황 정보에 기초하여 타겟 이벤트의 유형을 획득할 수 있다(S350). 전자 장치(100)는 제1 신경망 모델(M1)에 타겟 이벤트 구간에 대응되는 복수의 제1 팀 위치 데이터셋 또는 복수의 제2 팀 위치 데이터셋 중 적어도 하나와, 타겟 이벤트 구간에 대응되는 타겟 플레이어의 위치 데이터셋을 입력하여 타겟 이벤트의 유형을 획득할 수 있다. 여기서, 타겟 플레이어의 위치 데이터셋은, 타겟 이벤트 구간에서 타겟 플레이어의 위치값들의 집합을 의미한다.
한편, 타겟 이벤트 구간에서 볼 소유권에 따라 제1 신경망 모델(M1)의 입력 데이터는 달라질 수 있다. 예를 들어, 타겟 이벤트 구간에서 타겟 플레이어의 속한 제1 팀이 볼 소유권을 갖는 경우, 전자 장치(100)는 타겟 플레이어의 위치 데이터셋, 제1 팀의 팀 위치 데이터셋 및 제1 팀에 대항하는 제2 팀의 팀 위치 데이터셋을 제1 신경망 모델(M1)에 입력할 수 있다. 타겟 이벤트 구간에서 제2 팀이 볼 소유권을 갖는 경우, 전자 장치(100)는 타겟 플레이어의 위치 데이터셋 및 제2 팀의 팀 위치 데이터셋을 제1 신경망 모델(M1)에 입력할 수 있다.
제1 신경망 모델(M1)을 이용한 타겟 이벤트 유형 예측의 정확도를 향상시키기 위해서, 제1 신경망 모델(M1)에는 추가적인 정보가 입력될 수 있다. 예를 들어, 전자 장치(100)는 제1 신경망 모델(M1)에 타겟 이벤트 구간에 대응되는 볼 위치 데이터셋이나 타겟 플레이어의 역할 정보를 입력할 수 있다. 타겟 플레이어의 역할 정보는, 타겟 플레이어의 포지션(예로, 공격수)을 의미할 수 있다. 또한, 전자 장치(100)는 타겟 플레이어가 속한 제1 팀의 식별 정보 및/또는 제1 팀에 대항하는 제2 팀의 식별 정보를 제1 신경망 모델(M1)에 입력할 수 있다.
한편, 제1 신경망 모델(M1)에 대해서는 도 7을 참조하여 보다 상세히 후술한다.
도 6은 본 개시의 일 실시예에 따른 스프린터의 속력 데이터를 나타내는 그래프이다.
도 6을 참조하면, 스프린트 구간(60)은 제1 시간 구간(61), 제2 시간 구간(62) 및 제3 시간 구간(63)을 포함할 수 있다. 제1 시간 구간(61)은 스프린터의 순간 속력이 임계 시간 이상 동안 임계 속력(sth) 이상으로 유지되는 시간 구간일 수 있다. 제2 시간 구간(62)은 스프린터의 스프린트 의도가 발생한 시점(t1)으로부터 제1 시간 구간(61)의 시작점(t2)까지의 시간 구간일 수 있다. 제3 시간 구간(63)은 스프린터의 순간 속력이 임계 시간보다 작아지게 되는 시점(t3)으로부터, 시점(t3)으로부터 기설정된 시간 후의 시점(t4)까지의 시간 구간일 수 있다.
전술한 바와 같이, 제1 시간 구간(61)은 스프린터의 순간 속력이 임계 시간 동안 기설정된 범위 이내로 유지되는 시간 구간으로 정의될 수 있다. 여기서, 기설정된 범위는 하한 임계값과 상한 임계값에 의해 정의될 수 있다. 하한 임계값은 임계 속력(sth)이 될 수 있다.
한편, 전자 장치(100)가 획득한 속력 데이터는 노이즈를 포함할 수 있다. 예컨대, 스프린터의 순간 속력이 제1 시간 구간(61)에서 매우 짧은 시간(예로, 0.1초) 동안 순간적으로 임계 속력(sth)보다 작아졌다가 임계 속력(sth)보다 다시 커질 수 있다. 이 때, 전자 장치(100)는 스프린터의 순간 속력의 급감을 노이즈로 판단하여 무시할 수 있다. 즉, 스프린터의 순간 속력이 임계 속력(sth)보다 작아 졌음에도 불구하고, 전자 장치(100)는 제1 시간 구간(61) 전체를 하나의 스프린트 구간으로 판단할 수 있다.
도 7은 본 개시의 일 실시예에 따른 신경망 모델을 이용한 타겟 이벤트의 유형을 획득하는 방법을 설명하기 위한 도면이다.
도 7을 참조하면, 전자 장치(100)는 타겟 플레이어의 위치 데이터셋(71), 제1 팀 위치 데이터셋(72), 제2 팀 위치 데이터셋(73) 또는 볼 위치 데이터셋(74) 중 적어도 하나를 제1 신경망 모델(M1)에 입력하여 타겟 이벤트의 유형(75)을 획득할 수 있다. 제1 신경망 모델(M1)은 타겟 플레이어의 위치 데이터셋(71), 제1 팀 위치 데이터셋(72), 제2 팀 위치 데이터셋(73) 또는 볼 위치 데이터셋(74) 중 적어도 하나에 기초하여 타겟 이벤트의 유형(75)을 획득하도록 학습된 모델일 수 있다.
제1 실시예에 따르면, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 타겟 플레이어의 위치 데이터셋(71) 및 복수의 제2 팀 위치 데이터셋(73)을 제1 신경망 모델(M1)에 입력할 수 있다. 각 제2 팀 위치 데이터셋(73)은, 타겟 이벤트 구간 내 대응되는 시점에서 타겟 플레이어가 속한 제1 팀에 대항하는 제2 팀의 팀 위치 데이터셋을 의미한다.
제2 실시예에 따르면, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 타겟 플레이어의 위치 데이터셋(71), 복수의 제1 팀 위치 데이터셋(72) 및 복수의 제2 팀 위치 데이터셋(73)을 제1 신경망 모델(M1)에 입력할 수 있다. 각 제1 팀 위치 데이터셋(72)은, 타겟 이벤트 구간 내 대응되는 시점에서 타겟 플레이어가 속한 제1 팀의 팀 위치 데이터셋을 의미한다.
제3 실시예에 따르면, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 타겟 플레이어의 위치 데이터셋(71), 복수의 제1 팀 위치 데이터셋(72), 복수의 제2 팀 위치 데이터셋(73) 및 볼 위치 데이터셋(74)을 제1 신경망 모델(M1)에 입력할 수 있다.
한편, 제1 신경망 모델(M1)은 입력된 데이터를 처리하고, 처리 결과를 바탕으로 입력된 데이터 중 일부만 이용하여 타겟 이벤트의 유형(75)을 추론할 수 있다. 예컨대, 제1 신경망 모델(M1)은 볼 소유권을 판단하는 볼 소유권 판단 모듈과 이벤트 유형 예측 모듈을 포함할 수 있다. 볼 소유권 판단 모듈은, 복수의 제1 팀 위치 데이터셋(72), 복수의 제2 팀 위치 데이터셋(73) 및 볼 위치 데이터셋(74)을 기초로 볼 소유권을 판단할 수 있다. 이벤트 유형 예측 모듈은, 볼 소유권 판단 모듈에 의해 판단된 볼 소유권에 기초하여 타겟 이벤트의 유형을 예측할 수 있다. 예를 들어, 타겟 이벤트 구간에서 타겟 플레이어가 속한 제1 팀이 볼을 소유한 경우, 이벤트 유형 예측 모듈은 타겟 플레이어의 위치 데이터셋(71), 복수의 제1 팀 위치 데이터셋(72) 및 복수의 제2 팀 위치 데이터셋(73)을 기초로 타겟 이벤트의 유형을 예측할 수 있다. 타겟 이벤트 구간에서 제2 팀이 볼을 소유한 경우, 이벤트 유형 예측 모듈은 타겟 플레이어의 위치 데이터셋(71) 및 복수의 제2 팀 위치 데이터셋(73)을 기초로 타겟 이벤트의 유형을 예측할 수 있다.
한편, 도 7에서는 볼 위치 데이터셋(74)이 제1 신경망 모델(M1)로 입력되는 것으로 도시하였으나, 다른 실시예에 따르면 볼 위치 데이터셋(74)은 제1 신경망 모델(M1) 내부에서 획득될 수 있다. 예컨대, 제1 신경망 모델(M1)은 복수의 팀 위치 데이터셋에 기초하여 볼 위치를 예측하도록 학습된 볼 위치 예측 모듈을 포함할 수 있다.
도 8은 본 개시의 일 실시예에 따른 볼의 위치를 획득하는 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 전자 장치(100)는 팀 위치 데이터셋(81)을 제2 신경망 모델(M2)에 입력하여 볼의 위치(82)를 획득할 수 있다. 구체적으로, 전자 장치(100)는 타겟 이벤트 구간 내 복수의 시점에 각각 대응되는 복수의 팀 위치 데이터셋(81)을 제2 신경망 모델(M2)에 입력할 수 있다. 제2 신경망 모델(M2)은 미리 정해진 시간 길이의 세그먼트 단위로 복수의 시점에 각각 대응되는 복수의 팀 위치 데이터셋(81)을 입력 받아 볼의 위치(82)를 예측하도록 학습될 수 있다. 제2 신경망 모델(M2)에 의해 예측된 볼의 위치(82)는 제1 신경망 모델(M1)의 입력 데이터로 이용될 수 있다. 또는, 제2 신경망 모델(M2)은 제1 신경망 모델(M1) 내부에 임베딩될 수 있다.
도 9는 본 개시의 일 실시예에 따른 타겟 이벤트에 대응되는 타겟 장면을 제공하는 방법을 나타내는 순서도이다.
도 9를 참조하면, 전자 장치(100)는 스포츠 세션에 대한 비디오 피드를 획득할 수 있다(S910). 비디오 피드는 스포츠 세션의 전부 또는 일부에 대한 영상일 수 있다. 예를 들어, 비디오 피드는 레알 마드리드 대 바르셀로나 매치의 중계 영상일 수 있다. 전자 장치(100)는 외부 장치 또는 외부 서버로부터 비디오 피드를 수신할 수 있다. 전자 장치(100)는 수신한 비디오 피드를 메모리(120)에 저장할 수 있다.
전자 장치(100)는 스포츠 세션에서 발생한 타겟 이벤트의 유형을 예측할 수 있다(S920). 예를 들어, 타겟 이벤트는 스프린트 이벤트일 수 있다. 이 때, 전자 장치(100)는 스프린트 이벤트의 유형을 예측할 수 있다. 타겟 이벤트의 유형을 예측하는 방법에 대해서는 도 3을 참조하여 전술하였는바 그 상세한 설명은 생략하도록 한다.
전자 장치(100)는 비디오 피드로부터 타겟 이벤트에 대응되는 타겟 장면을 추출할 수 있다(S930). 예를 들어, 전자 장치(100)는 비디오 피드에서 '리오넬 메시'가 스프린트하는 장면을 추출할 수 있다. 전자 장치(100)는 타겟 이벤트에 대응되는 시간 정보(예로, 타임 스탬프)를 기초로 타겟 장면을 식별할 수 있다.
전자 장치(100)는 예측된 타겟 이벤트의 유형과 추출된 타겟 장면을 관련 지어 저장할 수 있다(S940). 전자 장치(100)는 타겟 이벤트에 대응되는 타임 스탬프를 기초로 타겟 이벤트의 유형과 타겟 장면을 매칭시켜 타겟 이벤트 로그를 생성할 수 있다. 전자 장치(100)는 타겟 이벤트 로그를 메모리(120)에 저장할 수 있다.
타겟 이벤트 로그는, 타겟 이벤트의 유형 이외에도 타겟 이벤트와 관련된 다양한 정보를 포함할 수 있다. 예를 들어, 타겟 이벤트 로그는, 타겟 이벤트를 수행한 타겟 플레이어의 식별 정보, 소속 팀 및 포지션과 관련된 데이터를 포함할 수 있다. 타겟 이벤트가 스프린트 이벤트인 경우, 타겟 이벤트 로그는, 타겟 플레이어가 스프린트한 거리와 관련된 데이터를 포함할 수 있다. 또한, 타겟 이벤트 로그는, 타겟 이벤트의 결과에 관한 데이터를 포함할 수 있다. 타겟 이벤트의 결과는 성공 또는 실패를 의미할 수 있다. 타겟 이벤트 로그는, 타겟 장면을 출력하는 어플리케이션 또는 웹 페이지를 실행하기 위한 링크를 포함할 수 있다.
전자 장치(100)는 예측된 타겟 이벤트의 유형과 추출된 타겟 장면을 사용자에게 제공할 수 있다(S950). 전자 장치(100)는 타겟 이벤트의 유형을 비롯한 타겟 이벤트에 대한 정보와 타겟 장면을 재생하기 위한 링크가 기록된 타겟 이벤트 로그를 사용자 단말로 전송할 수 있다. 사용자는 타겟 장면을 재생하기 위한 링크를 선택하여 타겟 장면을 시청할 수 있다.
사용자에게 제공되는 타겟 장면에는 예측된 타겟 이벤트의 유형이 표시될 수 있다. 또한, 타겟 장면에서 타겟 이벤트를 수행한 플레이어에 관한 시각적 지시자가 표시될 수 있다. 예를 들어, 타겟 장면에서 타겟 플레이어에 하이라이트가 표시되거나, 타겟 플레이어의 이동 궤적이 표시될 수 있다.
도 10은 본 개시의 일 실시예에 따른 비디오 피드로부터 타겟 장면을 추출하는 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 비디오 피드(VF)는 제1 프레임(101), 제3 프레임(103), 제5 프레임(105)를 비롯한 복수의 프레임을 포함할 수 있다. 예를 들어, 비디오 피드(VF)는 축구 경기를 촬영한 영상이며, 추출하고자 하는 타겟 장면은 스프린트 이벤트에 대응되는 스프린트 장면일 수 있다.
전자 장치(100)는 스프린트 이벤트를 식별할 수 있다. 예를 들어, 전자 장치(100)는 비디오 피드(VF)에 포함된 플레이어들이 착용한 플레이어 추적 장치(T)에 의해 측정된 속력 데이터에 기초하여 스프린트 이벤트를 식별할 수 있다.
전자 장치(100)는 스프린트 이벤트에 대응되는 스프린트 구간을 정의할 수 있다. 예를 들어, 스프린트 구간은 스프린터의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간, 스프린터가 스프린트를 의도한 시점으로부터 제1 시간 구간의 시작점까지의 제2 시간 구간, 및 제1 시간 구간의 끝점으로부터 제1 시간 구간의 끝점으로부터 기설정된 시간 후인 시점까지의 제3 시간 구간을 포함할 수 있다.
전자 장치(100)는 스프린트 구간의 시작점 및 끝점을 기초로 비디오 피드(VF)로부터 스프린트 장면(106)을 추출할 수 있다. 예를 들어, 스프린트 장면(106)은 제2 프레임(102), 제3 프레임(103) 및 제4 프레임(104)을 포함할 수 있다.
도 11은 본 개시의 일 실시예에 따른 스프린트 장면을 나타내는 도면이다.
도 11을 참조하면, 스프린트 장면에서 스프린트하는 플레이어(1)(즉, 스프린터) 주변에는 스프린터(1)를 강조하기 위한 하이라이트가 표시될 수 있다. 예를 들어, 스프린터(1) 주변에 바운딩 박스(111)가 표시될 수 있다. 또한, 스프린트 장면에는 스프린트 유형을 나타내는 텍스트(115)가 표시될 수 있다.
스프린트 장면에는 스프린터(1)의 이동 궤적을 나타내는 인디케이터(112)가 표시될 수 있다. 인디케이터(112)는 제1 인디케이터(113)와 제2 인디케이터(114)를 포함할 수 있다. 제1 인디케이터(113) 및 제2 인디케이터(114)는 서로 다른 시각적 특성을 가질 수 있다. 예를 들어, 제1 인디케이터(113) 및 제2 인디케이터(114)는 굵기, 형태, 색상, 디자인 또는 패턴이 상이할 수 있다.
제1 인디케이터(113) 및 제2 인디케이터(114)가 표시되는 영역은 스프린터(1)의 속력에 따라 결정될 수 있다. 예를 들어, 스프린터(1)가 기설정된 범위 이내의 속력으로 이동한 영역에는 제1 인디케이터(113)가 표시될 수 있다. 반면에, 스프린터(1)가 기설정된 범위 밖의 속력으로 이동한 영역에는 제2 인디케이터(114)가 표시될 수 있다.
한편, 스프린트 유형에 따라 표시되는 인디케이터의 시각적 특징이 달라질 수 있다. 스프린트 유형은 크게는 공격 스프린트와 수비 스프린트로 나눠질 수 있다. 공격 스프린트는, 스프린터의 팀이 공격 상황(즉, 스프린터의 팀이 볼 소유권을 갖는 상태)일 때 수행되는 스프린트를 의미한다. 수비 스프린트는, 스프린터의 팀이 수비 상황(즉, 스프린터의 팀의 상대팀이 볼 소유권을 갖는 상태)일 때 수행되는 스프린트를 의미한다. 예를 들어, 스프린트 유형이 공격 스프린트일 때는 제1 인디케이터가 표시되며, 스프린트 유형이 수비 스프린트일 때는 제2 인디케이터가 표시될 수 있다. 이 때, 제1 인디케이터의 시각적 특징과 제2 인디케이터의 시각적 특징은 상이할 수 있다. 물론, 공격 스프린트 또는 수비 스프린트 내에서도 세부 유형에 따라 인디케이터의 시각적 특징이 달라질 수 있다.
한편, 전자 장치(100)는 상술한 각종 인디케이터를 표시하기 위해 스프린트 장면에 대한 영상 처리를 수행할 수 있다.
도 12는 본 개시의 일 실시예에 따른 타겟 이벤트 로그를 나타내는 표이다. 구체적으로, 도 12는 스포츠 세션이 축구 경기이고 타겟 이벤트가 스프린트 이벤트일 때의 타겟 이벤트 로그(1200)를 나타낸다.
도 12를 참조하면, 타겟 이벤트 로그(1200)는 축구 경기에 대한 정보, 스프린터에 대한 정보 및 스프린트 이벤트에 대한 정보를 포함할 수 있다.
축구 경기에 대한 정보는, 축구 경기가 있었던 날짜(1201) 및 스프린터가 속한 팀의 상대팀의 식별 정보(1202)를 포함할 수 있다. 스프린터에 대한 정보는, 스프린터의 이름(1203), 포지션(1204) 및 소속팀의 식별 정보를 포함할 수 있다.
스프린트 이벤트에 대한 정보는, 각 스프린트 이벤트에서 스프린터가 뛴 거리(1206), 스프린트 이벤트 구간에서 볼 소유권(1207)을 포함할 수 있다. 스프린터의 팀이 볼을 소유한 경우 In-possession(줄여서 In-pos)로 기재하였고, 스프린터의 팀의 상대팀이 볼을 소유한 경우 Out-possession(줄여서 Out-pos)로 기재하였다.
스프린트 이벤트에 대한 정보는, 스프린트 구간의 시작점(1208)과 끝점(1209), 스프린트 이벤트의 유형(1210), 스프린트 이벤트의 결과(1211) 및 스프린트 구간에 대응되는 비디오 피드에 대한 정보를 포함할 수 있다. 비디오 피드에 대한 정보는 비디오 피드를 실행시키기 위한 링크(1212)를 포함할 수 있다.
스프린트 이벤트의 유형(1210)의 일 예로, 'Run with ball'이 있다. 'Run with ball'은, 공을 달고 뛰는 움직임을 의미한다. 스프린트 이벤트의 유형(1210) 다른 일 예로는 'Covering'이 있다. 'Covering'은, 공을 가지거나 가질 상대 선수가 골 사이드로 향하지 못하도록 스프린터가 골 사이드로 위치하는 움직임을 의미한다. 스프린트 이벤트의 유형(1210) 또 다른 일 예로는 'Break into Box'가 있다. 'Break into Box'는, 측면에 위치한 동료가 볼을 가지고 있을 때 상대 페널티박스 안의 상대 골대 부근으로 향하면서 측면에서 오는 크로스를 받아 득점을 노리는 움직임을 의미한다.
전자 장치(100)는 타겟 이벤트 로그(1200)를 사용자에게 제공할 수 있다. 사용자는 타겟 이벤트 로그(1200)의 적어도 일부를 수정할 수 있다. 예를 들어, 사용자는 스프린트 이벤트의 유형(1210)을 수정할 수 있다. 전술한 바와 같이, 스프린트 이벤트의 유형(1210)은 제1 신경망 모델(M1)에 의해 예측될 수 있으며, 이에 따라 일부 오차를 포함할 수 있다. 사용자는 링크(1212)를 통해 비디오 피디를 실행시켜 제1 신경망 모델(M1)에 의해 예측된 스프린트 이벤트의 유형(1210)이 정확한 지 판단할 수 있다.
사용자가 사용자 단말에 스프린트 이벤트의 유형(1210)을 수정하기 위한 명령을 입력하면, 사용자가 입력된 명령은 통신 인터페이스를 통해 전자 장치(100)로 전송될 수 있다. 이 때, 전자 장치(100)는 사용자가 입력한 명령에 기초하여 스프린트 이벤트의 유형(1210)을 수정 및 업데이트할 수 있다. 전자 장치(100)는 스프린트 이벤트의 유형(1210)이 수정된 타겟 이벤트 로그(1200)를 메모리(120)에 저장할 수 있다.
한편, 도 12에서는 전자 장치(100)가 타겟 이벤트 로그(1200)를 사용자에게 제공하고, 사용자가 타겟 이벤트 로그(1200)에 포함된 스프린트 이벤트의 유형(1210)을 수정하는 실시예를 설명하였다. 다만, 이는 일 실시예에 불과하며, 전자 장치(100)는 어떠한 형태로도 타겟 이벤트의 유형을 사용자에게 제공할 수 있고, 사용자가 반드시 타겟 이벤트 로그를 통해서만 타겟 이벤트의 유형을 수정할 수 있는 것은 아님을 밝혀 둔다.
도 13은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 나타내는 순서도이다.
도 13을 참조하면, 전자 장치(100)는 스포츠 세션에 참가한 복수의 플레이어의 속력에 기초하여 타겟 이벤트를 식별하고, 식별된 타겟 이벤트에 대한 정보를 획득할 수 있다(S1310). 식별된 타겟 이벤트에 대한 정보는, 타겟 이벤트에 대응되는 시간 정보 및 타겟 이벤트를 수행한 타겟 플레이어에 대한 정보를 포함할 수 있다.
전자 장치(100)는 타겟 이벤트의 시간 구간에 포함된 복수의 시점에 각각 대응되는 복수의 위치 데이터셋을 획득할 수 있다(S1320). 각 위치 데이터셋은, 대응되는 시점에서 복수의 플레이어 식별자에 각각 할당된 복수의 위치 값을 포함할 수 있다.
전자 장치(100)는 복수의 위치 데이터셋으로부터 복수의 팀 위치 데이터셋을 생성할 수 있다(S1330). 복수의 팀 위치 데이터셋은, 제1 팀에 해당하는 플레이어 식별자에 할당된 위치 값들로부터 생성되며 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제1 팀 위치 데이터셋을 포함할 수 있다. 복수의 팀 위치 데이터셋은, 제2 팀에 해당하는 플레이어 식별자에 할당된 위치 값들로부터 생성되며 제2 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제2 팀 위치 데이터셋을 포함할 수 있다.
전자 장치(100)는 복수의 팀 위치 데이터셋에 기초하여 타겟 이벤트의 시간 구간에서의 볼 소유권을 판단할 수 있다(S1340). 복수의 팀 위치 데이터셋 및 볼 위치 데이터셋을 기초로 볼 소유권을 예측하도록 학습된 제3 신경망 모델(M3)을 이용하여 타겟 이벤트의 시간 구간(또는, 타겟 이벤트 구간)에서의 볼 소유권을 판단할 수 있다. 전자 장치(100)는 타겟 이벤트 구간에 대응되는 복수의 팀 위치 데이터셋 및 볼 위치 데이터셋을 제3 신경망 모델(M3)에 입력하여 타겟 이벤트 구간에서의 볼 소유권을 판단할 수 있다.
한편, 본 개시에서 볼 소유권은, 플레이어의 볼 소유권이라고 특정하지 않는 한 일반적으로 팀의 볼 소유권을 의미한다고 할 수 있다. 특정 팀이 “볼을 소유”한다는 것은, 그 팀의 플레이어가 볼을 제어할 수 있는 상태에 있음을 의미한다. 한편, 제3 신경망 모델(M3)이 출력은, 두 팀이 볼을 소유할 확률을 나타내는 확률값들 일 수 있다. 가령, 제1 팀이 볼을 소유할 확률이 80%이고, 제2 팀이 볼을 소유할 확률이 20%임을 지시한다면, 전자 장치(100)는 제1 팀이 볼을 소유한다고 판단할 수 있다.
한편, 제3 신경망 모델(M3)은 복수의 팀 위치 데이터셋을 미리 정해진 시간 길이에 대응되는 세그먼트 단위로 입력 받는 순환신경망 계열의 신경망 모델일 수 있다. 제3 신경망 모델(M3)에 대한 보다 상세한 설명은 도 15를 참조하여 후술하도록 한다.
전자 장치(100)는 복수의 팀 위치 데이터셋 및 볼 소유권에 기초하여 타겟 이벤트의 유형을 획득할 수 있다(S1350). 타겟 이벤트 구간에서 타겟 플레이어가 속한 제1 팀이 볼 소유권을 갖는 경우, 전자 장치(100)는 공격 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 공격 이벤트 분류 모델을 이용하여 타겟 이벤트의 유형을 획득할 수 있다. 구체적으로, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 타겟 플레이어의 위치값들, 복수의 제1 팀 위치 데이터셋 및 복수의 제2 팀 위치 데이터셋을 공격 이벤트 분류 모델에 입력할 수 있다. 여기서, 제1 팀 위치 데이터셋은, 타겟 플레이어가 속한 제1 팀과 관련된 팀 위치 데이터셋을 의미한다. 제2 팀 위치 데이터셋은, 제1 팀의 상대팀인 제2 팀과 관련된 팀 위치 데이터셋을 의미한다.
타겟 이벤트의 시간 구간에서 제2 팀이 볼 소유권을 갖는 경우, 전자 장치(100)는 수비 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 수비 이벤트 분류 모델을 이용하여 타겟 이벤트의 유형을 획득할 수 있다. 구체적으로, 전자 장치(100)는 타겟 플레이어의 위치값 및 복수의 제2 팀 위치 데이터셋을 수비 이벤트 분류 모델에 입력할 수 있다.
이처럼, 타겟 이벤트의 유형을 획득하기 위한 신경망 모델은 공격 이벤트 분류 모델 및 수비 이벤트 분류 모델로 구성되는 듀얼 네트워크로 구현될 수 있다. 이 경우, 볼 소유권에 따라 이벤트의 유형을 획득하기 위해 이용되는 신경망 모델의 종류와 각 신경망 모델로 입력하는 데이터의 종류가 달라질 수 있다. 전자 장치(100)는 볼 소유권에 기초하여 최적의 신경망 모델을 선택하고, 선택된 신경망 모델을 이용하여 타겟 이벤트의 유형을 획득할 수 있다. 다만, 이는 일 실시예에 불과하며, 타겟 이벤트의 유형을 획득하기 위한 신경망 모델은 공격 상황에 해당하는 타겟 이벤트와 수비 상황에 해당하는 타겟 이벤트 모두를 분류할 수 있는 하나의 모델로 구현될 수도 있다.
한편, 전자 장치(100)는 보다 정확한 결과를 획득하기 위하여 볼 위치 데이터셋을 신경망 모델에 추가적으로 입력할 수 있다. 예를 들어, 전자 장치(100)는 공격 이벤트 분류 모델 및/또는 수비 이벤트 분류 모델에 타겟 이벤트 구간에서의 볼 위치를 반영하는 볼 위치 데이터셋을 추가적으로 입력할 수 있다.
도 14는 본 개시의 일 실시예에 따른 신경망 모델을 이용한 볼 소유권을 획득하는 방법을 설명하기 위한 도면이다.
도 14를 참조하면, 전자 장치(100)는 제1 팀 위치 데이터셋(141), 제2 팀 위치 데이터셋(142) 및 볼 위치 데이터셋(143)을 제3 신경망 모델(M3)에 입력하여 볼 소유권(144)을 획득할 수 있다. 구체적으로, 전자 장치(100)는 특정 시간 구간(예로, 타겟 이벤트 구간)에 대응되는 복수의 제1 팀 위치 데이터셋(141) 및 복수의 제2 팀 위치 데이터셋(142)을 제3 신경망 모델(M3)에 입력할 수 있다. 또한, 볼 위치 데이터셋(143)은 특정 시간 구간에서의 볼의 위치를 나타내는 복수의 위치값일 수 있다.
제3 신경망 모델(M3)이 출력은, 각 팀이 볼을 소유할 확률을 나타내는 확률값들 일 수 있다. 제3 신경망 모델(M3)이 출력은 볼을 소유한 팀의 식별 정보를 포함할 수 있다.
도 15는 본 개시의 일 실시예에 따른 제3 신경망 모델의 구조를 설명하기 위한 도면이다.
도 15를 참조하면, 제3 신경망 모델(M3)은 제1 신경망(NN1), 제2 신경망(NN2) 및 제3 신경망(NN3)을 포함할 수 있다. 제1 신경망(NN1)은 복수의 프레임에 각각 대응되는 입력 데이터(151-1, 151-2, ..., 151-100)를 기초로 복수의 제1 특징 벡터(152-1, 152-2, ..., 152-100)를 출력할 수 있다. 각 프레임에 대응되는 입력 데이터는 복수의 팀의 팀 위치 데이터셋 및 볼 위치 데이터를 포함할 수 있다. 예를 들어, 제1 신경망(NN1)은 제1 프레임에 대응되는 제1 입력 데이터(151-1)에 기초하여 제1 프레임에 대응되는 제1 특징 벡터(152-1)를 출력할 수 있다. 제1 신경망(NN1)은 컨볼루션 신경망(Convolutional Neural Network, CNN)일 수 있다.
한편, 도 15에서는 설명의 편의상 입력 데이터(151-1, 151-2, ..., 151-100)가 프레임 단위로 제3 신경망 모델(M3)에 입력되는 것으로 도시하였으나 이는 일 실시예에 불과하며, 입력 데이터(151-1, 151-2, ..., 151-100)는 미리 정해진 시간 길이의 세그먼트 단위로 제3 신경망 모델(M3)에 입력될 수 있다. 이 때, 각 시간 구간 별 입력 데이터 중 일부는 오버랩될 수 있다.
제2 신경망(NN2)은 복수의 프레임에 각각 대응되는 복수의 제1 특징 벡터(152-1, 152-2, ..., 152-100)에 기초하여 복수의 제2 특징 벡터(153-1, 153-2, ..., 153-100)를 출력할 수 있다. 예를 들어, 제2 신경망(NN2)은 제1 프레임에 대응되는 제1 특징 벡터(152-1)에 기초하여 제1 프레임에 대응되는 제2 특징 벡터(153-1)를 출력할 수 있다. 제2 신경망(NN2)은 순방향 네트워크 및 역방향 네트워크를 포함하는 양방향 롱 숏텀 메모리(Long Short-Term Memory, LSTM) 네트워크를 비롯한 다양한 순환 신경망 계열 네트워크가 이용될 수 있다.
제3 신경망(NN3)은 복수의 프레임에 각각 대응되는 복수의 제2 특징 벡터(153-1, 153-2, ..., 153-100)에 기초하여 각 프레임에서의 팀의 볼 소유 정보(154-1, 154-2, ..., 154-100)를 출력할 수 있다. 팀의 볼 소유 정보란, 각 팀이 볼을 소유할 확률을 의미할 수 있다. 예를 들어, 제3 신경망(NN3)은 제1 프레임에 대응되는 제2 특징 벡터(153-1)에 기초하여 제1 프레임에서의 팀의 볼 소유 정보(154-1)를 출력할 수 있다. 제3 신경망(NN3)은 심층 신경망(Deep Neural Network, DNN)일 수 있다.
도 16은 본 개시의 일 실시예에 따른 타겟 이벤트의 유형을 획득하는 방법을 설명하기 위한 도면이다.
도 16을 참조하면, 전자 장치(100)는 복수의 팀 위치 데이터셋(161) 및 볼 위치 데이터셋(162)을 획득할 수 있다. 전자 장치(100)는 복수의 팀 위치 데이터셋(161) 및 볼 위치 데이터셋(162)을 기초로 타겟 이벤트 구간에서의 볼 소유권을 획득할 수 있다.
타겟 이벤트를 수행한 타겟 플레이어가 속한 제1 팀이 타겟 이벤트 구간에서 볼을 소유한 경우, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 복수의 팀 위치 데이터셋(161) 및 타겟 플레이어의 위치 데이터셋(163)을 공격 이벤트 분류 모델(164)에 입력하여 공격 이벤트의 유형(166)을 획득할 수 있다. 예를 들어, 타겟 이벤트가 스프린트 이벤트인 경우, 공격 이벤트는 공격 스프린트를 의미할 수 있다. 공격 스프린트 예시적인 유형으로는, 공과 함께 달리는 움직임인 'Run with ball', 상대 수비 뒷 공간으로 달리는 움직임 중 스루패스를 받아 직접적으로 상대 골대 부근으로 향하면서 득점을 노리는 움직임인 'Penetrate' 등이 있을 수 있다. 한편, 전자 장치(100)는 볼 위치 데이터셋(162)을 추가적으로 공격 이벤트 분류 모델(164)에 입력할 수 있다.
제1 팀의 상대팀인 제2 팀이 타겟 이벤트 구간에서 볼을 소유한 경우, 전자 장치(100)는 타겟 이벤트 구간에 대응되는 복수의 팀 위치 데이터셋(161) 및 타겟 플레이어의 위치 데이터셋(163)을 수비 이벤트 분류 모델(165)에 입력하여 수비 이벤트의 유형(166)을 획득할 수 있다. 예를 들어, 타겟 이벤트가 스프린트 이벤트인 경우, 수비 이벤트는 수비 스프린트를 의미할 수 있다. 수비 스프린트 예시적인 유형으로는, 공을 갖는 상대 선수가 드리블이나 패싱으로 공을 전진시키지 못하게 상대 선수에 가깝게 접근하는 움직임인 'Pressing', 공을 소유한 채로 움직이는 상대 선수의 공을 빼앗기 위한 움직임인 'Chase the Opponent with Ball' 등이 있을 수 있다. 한편, 전자 장치(100)는 볼 위치 데이터셋(162)을 추가적으로 수비 이벤트 분류 모델(165)에 입력할 수 있다.
공격 이벤트 분류 모델(164) 및 수비 이벤트 분류 모델(165)은 제1 신경망 모델(M1) 내부에 임베딩되는 형태로 구현될 수 있다. 이 경우, 제1 신경망 모델(M1)은 복수의 팀 위치 데이터셋(161) 및 볼 위치 데이터셋(162)을 기초로 볼 소유권을 판단하고, 볼 소유권에 대응되는 분류 모델에 입력 데이터를 입력할 수 있다.
도 17은 본 개시의 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
도 17을 참조하면, 전자 장치(100)는 통신 인터페이스(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 예를 들어, 전자 장치(100)는 서버일 수 있다. 다만 이는 일 실시예에 불과하며 전자 장치(100)는 개인용 컴퓨터일 수 있다.
통신 인터페이스(110)는 적어도 하나의 통신 회로를 포함하며, 다양한 유형의 외부 기기 또는 외부 서버와 통신을 수행할 수 있다. 예를 들어, 통신 인터페이스(110)는 외부 장치로부터 플레이어에 대한 위치 정보를 수신할 수 있다. 외부 장치는 서버일 수 있다. 외부 장치는 플레이어 추적 장치(T)로부터 수신된 위치 정보를 저장하고 있을 수 있다. 또는, 외부 장치는 플레이어에 대한 위치 정보에 기초하여 플레이어의 위치 데이터를 획득하고, 획득된 위치 데이터를 저장하고 있을 수 있다. 통신 인터페이스(110)는 플레이어 추적 장치(T)로부터 플레이어에 대한 위치 정보를 수신할 수 있다.
통신 인터페이스(110)는 와이파이 통신 모듈, 셀룰러 통신모듈, 3G(3세대) 이동통신 모듈, 4G(4세대) 이동통신 모듈, 4세대 LTE(Long Term Evolution) 통신 모듈, 5G(5세대) 이동통신 모듈 또는 유선 이더넷(Ethernet) 중 적어도 하나를 포함할 수 있다.
메모리(120)는 전자 장치(100)의 구성요소들의 전반적인 동작을 제어하기 위한 운영체제(OS: Operating System) 및 전자 장치(100)의 구성요소와 관련된 명령 또는 데이터를 저장할 수 있다. 메모리(120)는 복수의 신경망 모델에 대한 정보를 저장할 수 있다. 복수의 신경망 모델에 대한 정보는 복수의 신경망 모델 각각에 대응되는 파라미터에 대한 정보, 복수의 신경망 모델의 학습을 위한 학습 데이터를 포함할 수 있다. 메모리(120)는 비휘발성 메모리(ex: 하드 디스크, SSD(Solid state drive), 플래시 메모리) 또는 휘발성 메모리 등으로 구현될 수 있다.
프로세서(130)는 메모리(120)와 전기적으로 연결되어 전자 장치(100)의 전반적인 기능 및 동작을 제어할 수 있다. 프로세서(130)는 메모리(120)에 저장된 인스트럭션(instruction)을 실행함으로써 전자 장치(100)를 제어할 수 있다.
예를 들어, 프로세서(130)는 스포츠 세션 내 복수의 시점(time point)에 대응되는 플레이어의 위치 데이터셋(줄여서 위치 데이터셋)을 획득할 수 있다. 플레이어 위치 데이터셋은, 복수의 플레이어의 위치를 나타내는 위치 값들을 포함할 수 있다. 스포츠 세션은, 매치 세션 및 트레이닝 세션과 같이 스포츠와 관련된 다양한 이벤트에 대한 세션을 포함할 수 있다. 복수의 시점(time point)에 대한 복수의 위치 값은, 시간에 따른 복수의 플레이어 각각의 위치를 나타내는 필드 내 좌표를 포함할 수 있다.
프로세서(130)는 다양한 방법으로 복수의 위치 값을 획득할 수 있다. 일 예로, 프로세서(130)는 통신 인터페이스(110)를 통해 외부 장치로부터 복수의 위치 값을 수신할 수 있다. 외부 장치는 플레이어 추적 장치(T)에 의해 획득된 위치 정보에 기초하여 획득한 위치 값을 저장하는 외부 서버일 수 있다. 다른 일 예로, 프로세서(130)는 플레이어 추적 장치(T)로부터 플레이어의 위치 정보를 수신할 수 있다. 프로세서(130)는 수신된 위치 정보에 기초하여 위치 값을 획득할 수 있다.
프로세서(130)는 플레이어 위치 데이터셋으로부터 팀 위치 데이터셋을 생성할 수 있다. 팀 위치 데이터셋은 팀에 속하는 플레이어들의 경기장에서의 배치 상태를 반영할 수 있다. 팀 위치 데이터셋은 순열 불변성(permutation invariant)일 수 있다.
프로세서(130)는 복수의 플레이어의 속력 데이터를 획득할 수 있다. 복수의 플레이어의 속력 데이터는 복수의 플레이어가 각각 착용한 플레이어 추적 장치(T)에 의해 획득될 수 있다. 예를 들어, 복수의 플레이어의 속력 데이터는 플레이어 추적 장치(T)에 포함된 GPS 센서에 의해 획득될 수 있다.
프로세서(130)는 복수의 플레이어의 속력 데이터에 기초하여 타겟 이벤트를 식별할 수 있다. 예를 들어, 제1 시간 구간에서 플레이어의 속력이 기설정된 속력 범위 이내로 임계 시간 이상 유지되면, 프로세서(130)는 제1 시간 구간에서 타겟 이벤트가 발생했다고 판단할 수 있다. 또는, 플레이어의 속력이 제1 시간 구간에서 임계 속력 이상이면, 프로세서(130)는 제1 시간 구간에서 타겟 이벤트가 발생했다고 판단할 수 있다.
프로세서(130)는 타겟 이벤트에 대한 정보를 획득할 수 있다. 타겟 이벤트에 대한 정보는, 타겟 이벤트에 대응되는 시간 정보 및 타겟 이벤트를 수행한 플레이어에 대한 정보를 포함할 수 있다. 예를 들어, 프로세서(130)는 타겟 이벤트가 식별된 타임 스탬프를 획득할 수 있다. 프로세서(130)는 식별된 타겟 이벤트에 대응되는 플레이어 식별자를 식별할 수 있다.
프로세서(130)는 타겟 이벤트에 대응되는 시간 정보에 기초하여 복수의 위치 데이터셋으로부터 타겟 이벤트에 대응되는 복수의 위치 데이터셋을 식별할 수 있다. 프로세서(130)는 타겟 이벤트 구간에 대응되는 타임 스탬프를 기초로 타겟 이벤트에 대응되는 복수의 위치 데이터셋을 식별할 수 있다.
프로세서(130)는 복수의 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 획득할 수 있다. 프로세서(130)는 복수의 위치 데이터셋으로부터 복수의 팀 위치 데이터셋을 생성할 수 있다. 프로세서(130)는 복수의 팀 위치 데이터셋과 타겟 이벤트를 수행한 플레이어의 위치값을 신경망 모델에 입력하여 타겟 이벤트의 유형을 획득할 수 있다.
프로세서(130)는 타겟 이벤트 구간을 정의할 수 있다. 예를 들어, 타겟 이벤트 구간은, 타겟 이벤트를 수행한 플레이어의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간, 플레이어에 의해 상기 타겟 이벤트가 의도된 시점으로부터 제1 시간 구간의 시작점까지의 제2 시간 구간, 및 제1 시간 구간의 끝점으로부터 제1 시간 구간의 끝점으로부터 기설정된 시간 후인 시점까지의 제3 시간 구간을 포함할 수 있다. 이 때, 프로세서(130)는 제1 시간 구간동안 타겟 이벤트를 수행한 플레이어가 이동한 거리에 기초하여 임계 시간을 조절할 수 있다. 예를 들어, 플레이어가 이동한 거리가 클수록, 프로세서(130)는 임계 시간은 낮출 수 있다. 한편, 프로세서(130)는 타겟 이벤트를 수행한 플레이어의 가속도에 기초하여 타겟 이벤트가 의도된 시점을 판단할 수 있다. 예를 들어, 프로세서(130)는 타겟 플레이어의 가속도가 기설정된 값보다 커지게 되는 시점을 타겟 이벤트에 대한 의도 발생 시점으로 판단할 수 있다.
프로세서(130)는 타겟 이벤트 구간에서의 볼 소유권에 기초하여 타겟 이벤트의 유형을 획득할 수 있다. 예를 들어, 타겟 이벤트 구간에서 타겟 플레이어가 속한 제1 팀이 볼 소유권을 갖는 경우, 프로세서(130)는 공격 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제1 신경망 모델을 이용하여, 타겟 플레이어의 위치값, 제1 팀 위치 데이터셋 및 제2 팀 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 획득할 수 있다. 타겟 이벤트 구간에서 제2 팀이 볼 소유권을 갖는 경우, 프로세서(130)는 수비 상황에 해당하는 타겟 이벤트의 유형을 획득하도록 학습된 제2 신경망 모델을 이용하여, 타겟 플레이어의 위치값 및 제2 팀 위치 데이터셋에 기초하여 타겟 이벤트의 유형을 획득할 수 있다.
프로세서(130)는 복수의 팀 위치 데이터셋 및 볼 위치 데이터셋에 기초하여 볼 소유권을 획득할 수 있다. 예를 들어, 프로세서(130)는 복수의 팀 위치 데이터셋 및 볼 위치 데이터셋을 미리 정해진 시간 길이의 세그먼트 단위로 신경망 모델에 입력하여 볼 소유권을 획득할 수 있다.
프로세서(130)는 타겟 이벤트 구간에 대응되는 비디오 피드를 사용자에게 제공할 수 있다. 프로세서(130)는 스포츠 세션에 대한 비디오 피드로부터 타겟 이벤트에 대응되는 타겟 장면을 추출할 수 있다. 프로세서(130)는 타겟 장면을 표시하도록 사용자 단말로 명령을 전송할 수 있다. 또한, 프로세서(130)는 타겟 장면을 실행시키기 위한 링크를 사용자 단말로 전송할 수 있다. 타겟 장면은 프로세서(130)가 판단한 타겟 이벤트의 유형과 함께 사용자에게 제공될 수 있다. 사용자는 프로세서(130)가 판단한 타겟 이벤트의 유형을 수정하기 위한 명령을 입력할 수 있다. 사용자가 입력한 명령에 기초하여, 프로세서(130)는 타겟 이벤트의 유형을 업데이트할 수 있다.
한편, 본 개시에 따른 인공지능과 관련된 기능은 프로세서(130)와 메모리(120)를 통해 동작된다. 프로세서(130)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리(120)에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공지능 모델은 학습을 통해 만들어질 수 있다. 인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다.
인공 신경망은 심층 신경망(DNN: Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), GAN (Generative Adversarial Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.
이상에서 설명된 다양한 실시예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시예들이 프로세서 자체로 구현될 수 있다. 소프트웨어로 구현되는 경우, 본 명세서에서 설명되는 절차 및 기능과 같은 실시예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
상술한 본 개시의 다양한 실시예들에 따른 처리 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 프로세서에 의해 실행되었을 때 상술한 다양한 실시예에 따른 처리 동작을 특정 기기가 수행하도록 할 수 있다.
비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상에서는 본 개시의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될것이다.

Claims (15)

  1. 전자 장치에 의해 수행되는, 스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법에 있어서,
    상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하는 단계;
    상기 복수의 플레이어의 모션 데이터를 획득하는 단계;
    상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트의 시간 구간 및 상기 타겟 이벤트를 수행한 플레이어에 대한 정보를 포함함-를 획득하는 단계;
    상기 타겟 이벤트의 시간 구간에서의 상황 정보를 획득하는 단계; 및
    상기 타겟 이벤트의 유형을 추론하도록 학습된 신경망 모델을 이용하여, 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 예측하는 단계를 포함하고,
    상기 상황 정보는,
    상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 위치 데이터셋, 및 복수의 팀 위치 데이터셋을 포함하고,
    상기 복수의 팀 위치 데이터셋은,
    상기 타겟 이벤트를 수행한 상기 플레이어가 속한 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제1 팀 위치 데이터셋, 및 상기 제1 팀의 상대팀인 제2 팀의 플레이어들의 상기 경기장에서의 배치 상태를 반영하는 복수의 제2 팀 위치 데이터셋을 포함하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  2. 제1 항에 있어서,
    상기 상황 정보를 획득하는 단계는,
    상기 복수의 위치 데이터셋으로부터 상기 복수의 팀 위치 데이터셋을 생성하는 단계를 포함하고,
    상기 타겟 이벤트의 유형을 예측하는 단계는,
    상기 상황 정보를 상기 신경망 모델에 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  3. 제2 항에 있어서,
    상기 스포츠 세션에 이용되는 볼의 위치를 획득하는 단계;를 더 포함하고,
    상기 타겟 이벤트의 유형을 예측하는 단계는,
    상기 타겟 이벤트의 시간 구간에서의 상기 볼의 위치를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  4. 제2 항에 있어서,
    상기 타겟 이벤트의 유형을 예측하는 단계는,
    상기 타겟 이벤트를 수행한 상기 플레이어의 역할 정보를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  5. 제1 항에 있어서,
    상기 타겟 이벤트의 시간 구간은,
    상기 타겟 이벤트를 수행한 상기 플레이어의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간,
    상기 플레이어에 의해 상기 타겟 이벤트가 의도된 시점으로부터 상기 제1 시간 구간의 시작점까지의 제2 시간 구간, 및
    상기 제1 시간 구간에 후속하며 미리 정해진 시간 길이를 갖는 제3 시간 구간을 포함하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  6. 제5 항에 있어서,
    상기 임계 시간은,
    상기 제1 시간 구간동안 상기 플레이어가 이동한 거리에 기초하여 조절되는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  7. 제5 항에 있어서,
    상기 타겟 이벤트가 의도된 시점은,
    상기 플레이어의 가속도에 기초하여 판단되는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 방법.
  8. 제1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
  9. 스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치에 있어서,
    적어도 하나의 인스트럭션을 저장하는 메모리; 및
    프로세서;를 포함하고,
    상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써,
    상기 스포츠 세션 내 복수의 시점(time point)에 각각 대응되는 복수의 위치 데이터셋-각 위치 데이터셋은, 대응되는 시점에서 플레이어들의 위치값을 포함함-을 획득하고,
    상기 복수의 플레이어의 모션 데이터를 획득하고,
    상기 모션 데이터에 기초하여 상기 타겟 이벤트를 식별하고, 상기 타겟 이벤트에 대한 정보-상기 정보는, 상기 타겟 이벤트의 시간 구간 및 상기 타겟 이벤트를 수행한 상기 플레이어에 대한 정보를 포함함-를 획득하고,
    상기 타겟 이벤트의 시간 구간에서의 상황 정보를 획득하고,
    상기 타겟 이벤트의 유형을 추론하도록 학습된 신경망 모델을 이용하여, 상기 상황 정보에 기초하여 상기 타겟 이벤트의 유형을 예측하고,
    상기 상황 정보는,
    상기 타겟 이벤트를 수행한 상기 플레이어의 위치를 반영하는 위치 데이터셋, 및 복수의 팀 위치 데이터셋을 포함하고,
    상기 복수의 팀 위치 데이터셋은,
    상기 타겟 이벤트를 수행한 상기 플레이어가 속한 제1 팀의 플레이어들의 경기장에서의 배치 상태를 반영하는 복수의 제1 팀 위치 데이터셋, 및 상기 제1 팀의 상대팀인 제2 팀의 플레이어들의 상기 경기장에서의 배치 상태를 반영하는 복수의 제2 팀 위치 데이터셋을 포함하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  10. 제9 항에 있어서,
    상기 프로세서는,
    상기 복수의 위치 데이터셋으로부터 상기 복수의 팀 위치 데이터셋을 생성하고,
    상기 상황 정보를 상기 신경망 모델에 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  11. 제10 항에 있어서,
    상기 프로세서는,
    상기 스포츠 세션에 이용되는 볼의 위치를 획득하고,
    상기 타겟 이벤트의 시간 구간에서의 상기 볼의 위치를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  12. 제10 항에 있어서,
    상기 프로세서는,
    상기 타겟 이벤트를 수행한 상기 플레이어의 역할 정보를 상기 신경망 모델에 추가적으로 입력하여 상기 타겟 이벤트의 유형을 예측하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  13. 제9 항에 있어서,
    상기 타겟 이벤트의 시간 구간은,
    상기 타겟 이벤트를 수행한 상기 플레이어의 순간 속력이 기설정된 범위 이내로 임계 시간 이상 동안 유지되는 제1 시간 구간,
    상기 플레이어에 의해 상기 타겟 이벤트가 의도된 시점으로부터 상기 제1 시간 구간의 시작점까지의 제2 시간 구간, 및
    상기 제1 시간 구간에 후속하며 미리 정해진 시간 길이를 갖는 제3 시간 구간을 포함하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  14. 제13 항에 있어서,
    상기 프로세서는,
    상기 제1 시간 구간동안 상기 플레이어가 이동한 거리에 기초하여 상기 임계 시간을 조절하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
  15. 제13 항에 있어서,
    상기 프로세서는,
    상기 플레이어의 가속도에 기초하여 상기 타겟 이벤트가 의도된 시점을 판단하는
    스포츠 세션 내 타겟 이벤트의 유형을 예측하는 전자 장치.
KR1020220146204A 2022-11-04 2022-11-04 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치 KR102627521B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220146204A KR102627521B1 (ko) 2022-11-04 2022-11-04 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치
PCT/KR2022/017310 WO2024096167A1 (ko) 2022-11-04 2022-11-07 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220146204A KR102627521B1 (ko) 2022-11-04 2022-11-04 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치

Publications (1)

Publication Number Publication Date
KR102627521B1 true KR102627521B1 (ko) 2024-01-24

Family

ID=89717866

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220146204A KR102627521B1 (ko) 2022-11-04 2022-11-04 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치

Country Status (1)

Country Link
KR (1) KR102627521B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180066474A (ko) * 2016-12-09 2018-06-19 한국전자통신연구원 모션 기반 축구 이벤트 검출 장치 및 방법
US20180314895A1 (en) * 2013-11-08 2018-11-01 Performance Lab Technologies Limited Classification of Activity Derived From Multiple Locations
KR20220066759A (ko) * 2020-11-16 2022-05-24 주식회사 핏투게더 선수 추적 방법, 선수 추적 장치 및 선수 추적 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180314895A1 (en) * 2013-11-08 2018-11-01 Performance Lab Technologies Limited Classification of Activity Derived From Multiple Locations
KR20180066474A (ko) * 2016-12-09 2018-06-19 한국전자통신연구원 모션 기반 축구 이벤트 검출 장치 및 방법
KR20220066759A (ko) * 2020-11-16 2022-05-24 주식회사 핏투게더 선수 추적 방법, 선수 추적 장치 및 선수 추적 시스템

Similar Documents

Publication Publication Date Title
US10713494B2 (en) Data processing systems and methods for generating and interactive user interfaces and interactive game systems based on spatiotemporal analysis of video content
US10395409B2 (en) Method and system for real-time virtual 3D reconstruction of a live scene, and computer-readable media
US9616329B2 (en) Adaptive learning system for video game enhancement
US20210370176A1 (en) Method and apparatus for controlling movement of virtual object, terminal, and storage medium
US11839794B2 (en) Method for evaluating athlete, system and device performing the same
KR101678136B1 (ko) 운동 궤적 분석을 이용한 훈련 방법 및 장치
JP6677319B2 (ja) スポーツ動作解析支援システム、方法およびプログラム
JPWO2016098415A1 (ja) 情報処理装置、情報処理方法、およびプログラム
WO2019188714A1 (ja) 推定処理装置、推定モデル生成装置、推定モデル、推定方法およびプログラム
US20190005331A1 (en) Apparatus and method for detecting event based on deterministic finite automata in soccer video
JP7314605B2 (ja) 表示制御装置、表示制御方法及び表示制御プログラム
KR101790456B1 (ko) 시뮬레이션 장치, 시뮬레이션 방법 및 컴퓨터 판독가능한 기록 매체
CN115634446A (zh) 作为游戏控制器的锻炼或体育器材
KR102627521B1 (ko) 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치
KR102284802B1 (ko) 스포츠 경기에 관련된 선수의 상태 정보를 제공하는 장치 및 방법
KR20240065635A (ko) 스포츠 세션 내 타겟 이벤트에 대한 정보를 제공하는 방법 및 이를 수행하는 전자 장치
KR20240065636A (ko) 스포츠 세션 내 타겟 이벤트의 유형을 획득하는 방법 및 이를 수행하는 전자 장치
KR102624650B1 (ko) 스포츠 이벤트를 검출하는 방법 및 이를 수행하는 시스템
JP6677320B2 (ja) スポーツ動作解析支援システム、方法およびプログラム
US20220339538A1 (en) System and Method for Individual Player and Team Simulation
KR102542857B1 (ko) 스포츠 볼의 위치를 예측하는 방법, 이를 수행하는 전자 장치 및 시스템
US20100203937A1 (en) Game device, method of controlling a game device, and information storage medium
JP2018033939A (ja) 指標を算出する方法、評価値を算出する方法、プログラム、および記録媒体
JP6186061B1 (ja) 指標を算出する方法、評価値を算出する方法、プログラム、および記録媒体
US20230031622A1 (en) Live Possession Value Model

Legal Events

Date Code Title Description
GRNT Written decision to grant