KR102211135B1 - Apparatus and method for analyzing basketball match based on multiple neural networks - Google Patents

Apparatus and method for analyzing basketball match based on multiple neural networks Download PDF

Info

Publication number
KR102211135B1
KR102211135B1 KR1020200087198A KR20200087198A KR102211135B1 KR 102211135 B1 KR102211135 B1 KR 102211135B1 KR 1020200087198 A KR1020200087198 A KR 1020200087198A KR 20200087198 A KR20200087198 A KR 20200087198A KR 102211135 B1 KR102211135 B1 KR 102211135B1
Authority
KR
South Korea
Prior art keywords
frame
neural network
basketball
information
team
Prior art date
Application number
KR1020200087198A
Other languages
Korean (ko)
Other versions
KR102211135B9 (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 KR1020200087198A priority Critical patent/KR102211135B1/en
Application granted granted Critical
Publication of KR102211135B1 publication Critical patent/KR102211135B1/en
Publication of KR102211135B9 publication Critical patent/KR102211135B9/en

Links

Images

Classifications

    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06K9/00724
    • G06K9/00751
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • G06V20/42Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items of sport video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • G06V20/47Detecting features for summarising video content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8549Creating video summaries, e.g. movie trailer

Abstract

An objective of the present invention is to provide a technique for automatically generating highlight videos of players. According to one embodiment of the present invention, the apparatus for analyzing a basketball game based on multiple neural networks comprises: an operation of acquiring a game video including a plurality of frames to set information for a first team, a second team, and a basketball court becoming analysis targets of the game video; an operation of inputting the game video into a first neural network trained to specify objects including a basketball, a goal post, and a player in a frame and determine positions to generate first information for the positions of goal posts, a basketball, and players included in the frames of the game video; an operation of inputting the game video into a second neural network trained to distinguish different uniforms in a frame to generate second information specifying a uniform of the first team and a uniform of the second team included in the frames of the game video and specifying positions; an operation of inputting a plurality of continuous frames in the game video into a third neural network trained to determine whether a shot is successful from the plurality of frames to generate third information on whether a shot is successful for the plurality of continuous frames; and a step of generating analysis information for the game video based on the first, second, and third information.

Description

다중 신경망 모델 기반의 농구 경기 분석 장치 및 방법{APPARATUS AND METHOD FOR ANALYZING BASKETBALL MATCH BASED ON MULTIPLE NEURAL NETWORKS}Basketball game analysis device and method based on multiple neural network models {APPARATUS AND METHOD FOR ANALYZING BASKETBALL MATCH BASED ON MULTIPLE NEURAL NETWORKS}

본 발명은 다중 신경망 모델 기반의 농구 경기 분석 장치 및 방법에 관한 것이다. The present invention relates to a basketball game analysis apparatus and method based on a multiple neural network model.

스마트폰, 스마트 TV 등과 같은 컴퓨팅 기능을 구비한 스마트 디바이스의 발전에 따라, 영상을 소비하는 사용자들에게 제공되는 서비스의 관점은 영상의 화질에만 집중하였던 종래의 서비스 범위를 넘어, 현재는 영상 자체의 제공뿐만 아니라 영상으로부터 수집할 수 있는 정보를 가공한 새로운 정보를 영상에 접목하여 효과적인 영상 정보를 제공하는 기능의 관점으로 확대되고 있다. 이에 따라, 사용자에게 제공하는 영상 서비스의 질과 범위를 향상시킬 수 있는 다양한 애플리케이션과 플랫폼이 등장하고 있다.With the development of smart devices equipped with computing functions such as smartphones and smart TVs, the view of services provided to users who consume images has gone beyond the range of conventional services that focused only on image quality. In addition to providing, it is expanding into a function of providing effective image information by grafting new information processed into images that can be collected from images. Accordingly, various applications and platforms that can improve the quality and range of video services provided to users are emerging.

한편, 일반인들의 휴가 및 여가 시간이 확대됨에 따라, 영상 소비자에게 제공되는 영상의 종류는 다양한 스포츠 영역으로도 확산되고 있다. 특히, 농구는 2개의 팀을 구성하는 선수들이 볼을 패스하거나 드리블하여 상대방의 골포스트에 농구공을 넣어 득점을 겨루는 대표적인 인기 스포츠 종목이다. On the other hand, as vacation and leisure time of ordinary people expand, the types of images provided to video consumers are spreading to various sports areas. In particular, basketball is a popular sporting event in which players constituting two teams pass or dribble the ball to put a basketball on the opponent's goal post to compete for a goal.

기존의 농구 경기 영상 서비스는 영상이 송출되는 화면의 일부에 경기가 진행됨에 따른 각 팀의 점수가 출력되고, 간헐적으로 단편적 하이라이트 영상이 제공되나, 이러한 정보는 수동적인 집계 및 편집 방식을 사용하고 있어 그 정보가 일방적이며 제한적으로 제공되고 있는 실정이다.In the existing basketball game video service, the score of each team as the game progresses is output on a part of the screen where the video is transmitted, and a fragmentary highlight video is provided intermittently, but this information is using a manual aggregation and editing method. The information is unilateral and limited.

한국 공개특허공보 제10-2018-0122843호: 앱 기반 AI 축구 경기 분석 제공 방법, 이를 위한 축구 분석 앱, 그리고 앱 기반 AI 축구 경기 분석 제공 프로그램을 기록한 컴퓨터로 판독가능한 기록매체Korean Patent Laid-Open Publication No. 10-2018-0122843: A computer-readable recording medium recording an app-based AI soccer match analysis providing method, a soccer analysis app for this, and an app-based AI soccer match analysis providing program

본 발명의 실시예에서 해결하고자 하는 과제는 농구 경기의 분석에 필요한 다양한 요소들을 판별하는 다중 신경망 모델을 생성하고, 이러한 신경망 모델을 이용해 농구 경기 영상 내에서 팀의 득점, 리바운드, 어시스트 등 농구 경기와 관련된 정보를 분석하면서, 선수의 하이라이트 영상을 자동으로 생성하는 기술을 제공하고자 한다. The problem to be solved in the embodiment of the present invention is to create a multi-neural network model that determines various elements necessary for analysis of a basketball game, and use this neural network model to play basketball games such as scoring, rebound, and assist of the team within the basketball game image. While analyzing related information, we intend to provide a technology that automatically generates highlights of players.

다만, 본 발명의 실시예가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.However, the technical problems to be achieved by the embodiments of the present invention are not limited to the above-mentioned problems, and various technical problems may be derived from the contents to be described below within a range that is obvious to a person skilled in the art.

본 발명의 일 실시예에 따른 다중 신경망 모델 기반의 농구 경기 분석 장치는 소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고, 상기 프로세서가 수행하는 동작은 농구 경기를 포함하는 복수의 학습용 프레임에 농구공, 골포스트 및 선수를 특정하는 클래스가 레이블링된 제1 학습 데이터, 상기 학습용 프레임 내 제1 색상의 유니폼에 제1 클래스가 레이블링되고 제2 색상의 유니폼에 제2 클래스가 레이블링된 제2 학습 데이터, 상기 복수의 프레임 중 연속된 복수의 프레임에 대한 골의 성공 여부를 특정하는 클래스가 레이블링된 제3 학습 데이터를 생성하는 동작; 복수의 프레임을 포함하는 경기 영상을 획득하여, 상기 경기 영상의 분석 대상이 되는 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정하는 동작; 상기 제1 학습 데이터에 포함된 학습용 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제1 신경망에 상기 경기 영상을 입력하여, 상기 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하는 동작; 상기 제2 학습 데이터에 포함된 학습용 프레임 내에서 상기 제1 클래스를 판별하도록 학습된 제1 서브모델 및 상기 제2 클래스를 판별하도록 학습된 제2 서브모델을 포함하는 CNN(Convolution Neural Network) 기반 제2 신경망에 대해, 상기 경기 영상에 포함된 프레임에 상기 제1 팀의 유니폼에 상기 제1 클래스를 레이블링 한 학습 데이터를 상기 제1 서브모델에 추가 학습시키고, 상기 경기 영상에 포함된 프레임에 상기 제2 팀의 유니폼에 상기 제2 클래스를 레이블링한 학습 데이터를 상기 제2 서브모델에 추가 학습시킨 후, 상기 경기 영상을 입력하여 상기 경기 영상의 프레임 내에 포함된 상기 제1 팀의 유니폼의 위치 및 상기 제2 팀의 유니폼의 위치에 대한 제2 정보를 생성하는 동작;
상기 제3 학습 데이터에 포함된 학습용 프레임에 대한 골의 성공 여부를 특정하는 클래스를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제3 신경망에 상기 경기 영상 중의 연속된 복수의 프레임을 입력하여, 상기 연속된 복수의 프레임에 대한 골 성공 여부에 대한 제3 정보를 생성하는 동작; 및 상기 제3 정보를 기초로 골 성공 여부에 대한 정보를 포함하는 제1 프레임을 판별하고, 상기 제1 프레임에 대해 판별된 상기 제1 정보에서 마지막으로 농구공을 보유한 제1 선수를 특정하고, 상기 제1 프레임에 대해 판별된 상기 제2 정보에서 상기 제1 선수의 팀을 특정하여, 상기 제1 프레임 이전 소정 개수의 프레임 및 상기 제1 프레임 이후 소정 개수의 프레임을 연결하여 상기 제1 선수의 하이라이트 영상을 생성하는 동작을 포함할 수 있다.
According to an embodiment of the present invention, an apparatus for analyzing a basketball game based on a multi-neural network model includes: one or more memories storing instructions for performing a predetermined operation; And at least one processor connected to be operable with the at least one memory and configured to execute the instructions, wherein the operation performed by the processor specifies a basketball, a goal post, and a player in a plurality of learning frames including a basketball game. First training data labeled with a class to be learned, second training data labeled with a first class on a uniform of a first color in the training frame, and labeled with a second class on a uniform of a second color, and continuous among the plurality of frames Generating third learning data labeled with a class specifying whether or not a goal is successful for a plurality of frames; Acquiring a game image including a plurality of frames, and setting information on the first team, the second team, and the stadium to be analyzed for the game image; By inputting the game image into a first neural network based on a Convolution Neural Network (CNN) that has been learned to identify an object including a basketball, a goal post, and a player within the learning frame included in the first training data and determine the location, Generating first information on the position of a goal post, a basketball, and a player included in the frame of the game image; A CNN (Convolution Neural Network)-based system including a first sub-model trained to determine the first class and a second sub-model trained to determine the second class within a training frame included in the second training data 2 For the neural network, learning data obtained by labeling the first class on the uniform of the first team in the frame included in the game image is additionally learned to the first sub-model, and the frame included in the game image is 2 After additionally learning the training data labeled with the second class on the team's uniform to the second sub-model, input the game image to the position of the uniform of the first team included in the frame of the game image and the Generating second information on the position of the uniform of the second team;
By inputting a plurality of consecutive frames in the game image to a third neural network based on a convolution neural network (CNN) that is trained to determine the success of a goal for a frame for training included in the third training data, the Generating third information on whether a goal is successful for a plurality of consecutive frames; And determining a first frame including information on whether or not a goal is successful based on the third information, and specifying a first player who finally holds a basketball from the first information determined for the first frame, The team of the first player is specified from the second information determined for the first frame, and a predetermined number of frames before the first frame and a predetermined number of frames after the first frame are connected to the first player. It may include an operation of generating a highlight image.

또한, 상기 분석 정보를 생성하는 동작은 상기 제3 정보를 기초로 골 성공 여부에 대한 정보를 포함하는 제1 프레임을 판별하는 동작; 상기 제1 정보를 기초로 상기 제1 프레임 이전에 마지막으로 농구공을 보유한 제1 선수를 판별하는 동작; 상기 제2 정보를 기초로 상기 제1 선수의 팀을 판별하는 동작; 및 상기 판별된 팀 및 상기 제1 선수의 득점을 기록하는 동작을 포함할 수 있다. In addition, the generating of the analysis information may include determining a first frame including information on whether a goal is successful based on the third information; Determining a first player who last held a basketball before the first frame based on the first information; Determining a team of the first player based on the second information; And recording the score of the determined team and the first player.

또한, 상기 분석 정보를 생성하는 동작은 상기 제1 프레임 이전 소정 개수의 프레임 및 상기 제1 프레임 이후 소정 개수의 프레임을 연결하여 상기 제1 선수의 하이라이트 영상을 생성하는 동작을 포함할 수 있다. In addition, the generating of the analysis information may include generating a highlight image of the first player by connecting a predetermined number of frames before the first frame and a predetermined number of frames after the first frame.

또한, 상기 분석 정보를 생성하는 동작은 상기 제1 정보를 기초로 상기 제1 프레임 이전에 상기 제1 선수가 농구공을 보유하기 시작한 제2 프레임을 판별하는 동작; 및 상기 제2 프레임으로부터 상기 제1 프레임까지 연결된 프레임을 포함하는 상기 제1 선수의 하이라이트 영상을 생성하는 동작을 포함할 수 있다. In addition, generating the analysis information may include determining a second frame in which the first player starts to hold a basketball ball before the first frame based on the first information; And generating a highlight image of the first player including a frame connected from the second frame to the first frame.

또한, 상기 제1 정보는 농구공의 위치와 선수의 위치가 소정 거리 이하인 경우, 상기 소정 거리 이하에 위치하는 선수가 농구공을 보유한 것으로 판별한 정보를 포함할 수 있다. In addition, when the position of the basketball ball and the position of the player are less than or equal to a predetermined distance, the first information may include information that determines that a player located within the predetermined distance has the basketball.

또한, 상기 제3 정보를 생성하는 동작은 상기 제1 정보를 기초로 골포스트의 위치와 농구공의 위치가 소정 거리 이하로 가까워진 경우 동작하도록 설정될 수 있다. In addition, the operation of generating the third information may be set to operate when the position of the goal post and the position of the basketball ball are closer to a predetermined distance or less based on the first information.

또한, 상기 제1 신경망은 프로세서가 농구 경기에 대한 복수의 프레임을 획득하고 농구공, 골포스트 및 선수를 특정하는 클래스를 상기 프레임에 레이블링하여 학습 데이터를 생성하는 동작; 및 CNN(Convolution Neural Network) 알고리즘 기반으로 설계된 모델에 상기 학습 데이터에 포함된 프레임 각각에 레이블링된 클래스와의 상관 관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관 관계를 기초로 프레임 내에서 농구공, 골포스트 및 선수를 특정하고 위치를 판별하는 모델을 생성하는 동작을 수행하여 생성될 수 있다. In addition, the first neural network generates training data by obtaining, by a processor, a plurality of frames for a basketball game and labeling a class specifying a basketball, a goal post, and a player on the frame; And by learning the weight of the model for deriving a correlation with the class labeled in each frame included in the training data in a model designed based on the Convolution Neural Network (CNN) algorithm, basketball within the frame based on the correlation It can be generated by performing an operation to specify the ball, the goal post, and the player and to create a model to determine the location.

또한, 상기 제2 신경망은 프로세서가 프레임 내에서 제1 색상의 유니폼을 구별하도록 학습된 제1 서브모델 및 제2 색상의 유니폼을 구별하도록 학습된 제2 서브모델을 생성하는 동작; 및 상기 경기 영상에 포함된 프레임에 상기 제1 팀의 유니폼에 제1 클래스를 레이블링 한 학습 데이터를 제1 서브모델에 추가 학습시키고, 상기 경기 영상에 포함된 프레임에 상기 제2 팀의 유니폼에 제2 클래스를 레이블링한 학습 데이터를 제2 서브모델에 추가 학습시키는 동작을 수행하여 생성되고, 상기 제2 신경망은 상기 제1 서브모델 및 상기 제2 서브모델을 기초로 상기 경기 영상의 프레임 내에 판별된 유니폼이 상기 제1 팀 또는 상기 제2 팀에 속할 확률을 판별할 수 있다. In addition, the second neural network generates, by the processor, a first sub-model trained to distinguish uniforms of a first color and a second sub-model trained to distinguish uniforms of a second color in a frame; And learning data obtained by labeling the first class on the uniform of the first team in the frame included in the game image to the first sub-model, and adding the frame included in the game image to the uniform of the second team. 2 is generated by performing an operation of additionally learning the class-labeled training data to a second sub-model, and the second neural network is determined within the frame of the game image based on the first sub-model and the second sub-model. It is possible to determine a probability that the uniform belongs to the first team or the second team.

또한, 상기 제3 신경망은 프로세서가 농구 경기에 대한 복수의 프레임을 획득하고 상기 복수의 프레임 중 연속된 복수의 프레임에 대해 골의 성공 여부에 대한 클래스를 레이블링한 학습 데이터를 생성하는 동작; 및 CNN(Convolution Neural Network) 알고리즘 기반으로 설계된 모델에 상기 학습 데이터에 포함된 연속된 프레임에 레이블링된 클래스와의 상관 관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관 관계를 기초로 연속된 복수의 프레임 내에서 골 성공 여부를 판별하는 모델을 생성하는 동작을 수행하여 생성될 수 있다. In addition, the third neural network, the processor obtaining a plurality of frames for the basketball game and generating learning data labeling a class for success or failure of a goal for a plurality of consecutive frames among the plurality of frames; And a model designed based on a Convolution Neural Network (CNN) algorithm, by learning the weight of the model that derives a correlation with a class labeled in a continuous frame included in the training data, based on the correlation. It can be generated by performing an operation of generating a model that determines whether or not the goal is successful within the frame of.

본 발명의 일 실시예에 따른 다중 신경망 모델 기반의 농구 경기 분석 방법은 농구 경기를 포함하는 복수의 학습용 프레임에 농구공, 골포스트 및 선수를 특정하는 클래스가 레이블링된 제1 학습 데이터, 상기 학습용 프레임 내 제1 색상의 유니폼에 제1 클래스가 레이블링되고 제2 색상의 유니폼에 제2 클래스가 레이블링된 제2 학습 데이터, 상기 복수의 프레임 중 연속된 복수의 프레임에 대한 골의 성공 여부를 특정하는 클래스가 레이블링된 제3 학습 데이터를 생성하는 단계; 복수의 프레임을 포함하는 경기 영상을 획득하여, 상기 경기 영상의 분석 대상이 되는 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정하는 단계; 상기 제1 학습 데이터에 포함된 학습용 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제1 신경망에 상기 경기 영상을 입력하여, 상기 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하는 단계; 상기 제2 학습 데이터에 포함된 학습용 프레임 내에서 상기 제1 클래스를 판별하도록 학습된 제1 서브모델 및 상기 제2 클래스를 판별하도록 학습된 제2 서브모델을 포함하는 CNN(Convolution Neural Network) 기반 제2 신경망에 대해, 상기 경기 영상에 포함된 프레임에 상기 제1 팀의 유니폼에 상기 제1 클래스를 레이블링 한 학습 데이터를 상기 제1 서브모델에 추가 학습시키고, 상기 경기 영상에 포함된 프레임에 상기 제2 팀의 유니폼에 상기 제2 클래스를 레이블링한 학습 데이터를 상기 제2 서브모델에 추가 학습시킨 후, 상기 경기 영상을 입력하여 상기 경기 영상의 프레임 내에 포함된 상기 제1 팀의 유니폼의 위치 및 상기 제2 팀의 유니폼의 위치에 대한 제2 정보를 생성하는 단계;상기 제3 학습 데이터에 포함된 학습용 프레임에 대한 골의 성공 여부를 특정하는 클래스를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제3 신경망에 상기 경기 영상 중의 연속된 복수의 프레임을 입력하여, 상기 연속된 복수의 프레임에 대한 골 성공 여부에 대한 제3 정보를 생성하는 단계; 및 상기 제3 정보를 기초로 골 성공 여부에 대한 정보를 포함하는 제1 프레임을 판별하고, 상기 제1 프레임에 대해 판별된 상기 제1 정보에서 마지막으로 농구공을 보유한 제1 선수를 특정하고, 상기 제1 프레임에 대해 판별된 상기 제2 정보에서 상기 제1 선수의 팀을 특정하여, 상기 제1 프레임 이전 소정 개수의 프레임 및 상기 제1 프레임 이후 소정 개수의 프레임을 연결하여 상기 제1 선수의 하이라이트 영상을 생성하는 단계를 포함할 수 있다. A basketball game analysis method based on a multi-neural network model according to an embodiment of the present invention includes first training data in which a basketball ball, a goal post, and a class specifying a player are labeled in a plurality of training frames including a basketball game, and the training frame Second learning data, in which a first class is labeled on a uniform of my first color and a second class is labeled on a uniform of a second color, a class specifying whether or not a goal is successful for a plurality of consecutive frames among the plurality of frames Generating the labeled third training data; Acquiring a game image including a plurality of frames, and setting information on a first team, a second team, and a stadium to be analyzed for the game image; By inputting the game image into a first neural network based on a Convolution Neural Network (CNN) that has been learned to identify an object including a basketball, a goal post, and a player within the learning frame included in the first training data and determine the location, Generating first information on positions of a goal post, a basketball, and a player included in the frame of the game image; A CNN (Convolution Neural Network)-based system including a first sub-model trained to determine the first class and a second sub-model trained to determine the second class within a training frame included in the second training data 2 For the neural network, learning data obtained by labeling the first class on the uniform of the first team in the frame included in the game image is additionally learned to the first sub-model, and the frame included in the game image is 2 After additionally learning the training data labeled with the second class on the team's uniform to the second sub-model, input the game image to the position of the uniform of the first team included in the frame of the game image and the Generating second information on the location of the uniform of the second team; Convolution Neural Network (CNN)-based system learned to determine the success or failure of a goal for the training frame included in the third training data 3 generating third information on whether a goal is successful for the plurality of consecutive frames by inputting a plurality of consecutive frames of the game image to a neural network; And determining a first frame including information on whether or not a goal is successful based on the third information, and specifying a first player who finally holds a basketball from the first information determined for the first frame, The team of the first player is specified from the second information determined for the first frame, and a predetermined number of frames before the first frame and a predetermined number of frames after the first frame are connected to the first player. It may include generating a highlight image.

본 발명의 실시예에 따르면, 다양한 객체를 판별하는 신경망 모델, 각 선수가 속한 팀을 구별하는 신경망 모델, 득점 여부를 판별하는 신경망 모델, 경기장 내에 포함된 객체들의 2차원 위치 정보 분석 알고리즘 등을 통해 농구 경기에 대한 상황과 흐름을 분석하기 위한 정보들을 추출하고, 추출된 정보들을 종합적으로 분석하여 가공한 농구 경기 관련 정보 및 하이라이트 영상을 제공할 수 있다. According to an embodiment of the present invention, through a neural network model for discriminating various objects, a neural network model for discriminating a team to which each player belongs, a neural network model for determining whether or not to score, and an algorithm for analyzing 2D location information of objects included in the stadium, etc. It is possible to extract information for analyzing the situation and flow of a basketball game, and provide the processed basketball game related information and highlight images by comprehensively analyzing the extracted information.

이 외에, 본 문서를 통해 직접적 또는 간접적으로 파악되는 다양한 효과들이 제공될 수 있다.In addition to this, various effects that are directly or indirectly identified through this document can be provided.

도 1은 본 발명의 일 실시예에 따른 농구 경기 분석 장치가 다중 신경망 모델을 이용하여 농구 경기를 분석하는 모습을 나타낸 예시도이다.
도 2는 본 발명의 일 실시예에 따른 농구 경기 분석 장치의 기능 블록도이다.
도 3은 본 발명의 일 실시예에 따른 경기 영상에 포함된 객체를 판별하는 제1 신경망의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 경기 영상에 포함된 각 선수가 속한 팀을 구별하는 제2 신경망 모델의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 경기 영상에 포함된 연속된 프레임으로부터 득점 여부를 판별하는 제3 신경망 모델의 예시도이다.
도 6은 본 발명의 제1 실시예에 따른 농구 경기 분석 방법의 동작 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 농구 경기 분석 장치가 하이라이트 영상을 생성하는 동작의 예시도이다.
도 8은 본 발명의 제2 실시예에 따른 농구 경기 분석 방법의 동작 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 농구 경기 분석 장치가 경기장 맵 내에 포함된 객체들의 움직임 정보를 분석하여 농구 영상을 분석하는 동작의 예시도이다.
1 is an exemplary view showing a basketball game analysis apparatus according to an embodiment of the present invention using a multiple neural network model to analyze a basketball game.
2 is a functional block diagram of a basketball game analysis apparatus according to an embodiment of the present invention.
3 is an exemplary diagram of a first neural network for determining an object included in a game image according to an embodiment of the present invention.
4 is an exemplary diagram of a second neural network model for distinguishing a team to which each player belongs in a game image according to an embodiment of the present invention.
5 is an exemplary diagram of a third neural network model for determining whether to score a score from consecutive frames included in a game image according to an embodiment of the present invention.
6 is an operation flowchart of a basketball game analysis method according to the first embodiment of the present invention.
7 is an exemplary diagram of an operation of generating a highlight image by the apparatus for analyzing a basketball game according to an embodiment of the present invention.
8 is an operation flowchart of a basketball game analysis method according to a second embodiment of the present invention.
9 is an exemplary diagram of an operation of analyzing a basketball image by analyzing motion information of objects included in a stadium map by the basketball game analysis apparatus according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.  그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.Advantages and features of the present invention,  , and a method of achieving them will become apparent with reference to the embodiments described later in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various forms,   only these embodiments make the disclosure of the present invention complete, and   those having ordinary knowledge in the technical field to which the present invention pertains. It is provided to fully inform the person of the scope of the invention, and the scope of the invention is only defined by the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다.  그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다.  그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, a detailed description of known functions or configurations will be omitted except when actually necessary in describing the embodiments of the present invention. In addition, terms to be described later are terms defined in consideration of functions in an embodiment of the present invention, which may vary according to the intention or custom of users or operators. Therefore, the definition should be made based on the contents throughout this specification.

도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.The functional blocks shown in the drawings and described below are only examples of possible implementations. In other implementations, other functional blocks may be used without departing from the spirit and scope of the detailed description. Also, although one or more functional blocks of the present invention are represented as individual blocks, one or more of the functional blocks of the present invention may be a combination of various hardware and software configurations that perform the same function.

또한 어떤 구성 요소들을 포함한다는 표현은 개방형의 표현으로서 해당 구성 요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성 요소들을 배제하는 것으로 이해되어서는 안 된다.In addition, the expression of including certain constituent elements is an open expression and simply refers to the existence of the constituent elements, and should not be understood as excluding additional constituent elements.

나아가 어떤 구성 요소가 다른 구성 요소에 연결되어 있다거나 접속되어 있다고 언급될 때에는, 그 다른 구성 요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 한다. Further, when a component is connected to or is referred to as being connected to another component, it should be understood that it may be directly connected or connected to the other component, but other components may exist in the middle.

또한 '제1, 제2' 등과 같은 표현은 복수의 구성들을 구분하기 위한 용도로만 사용된 표현으로써, 구성들 사이의 순서나 기타 특징들을 한정하지 않는다. In addition, expressions such as'first, second', etc. are used only for distinguishing a plurality of elements, and do not limit the order or other features between the elements.

이하에서는 도면들을 참조하여 본 발명의 실시예들에 대해 설명하도록 한다. Hereinafter, embodiments of the present invention will be described with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 농구 경기 분석 장치(100)가 다중 신경망 모델을 이용하여 농구 경기를 분석하는 모습을 나타낸 예시도이다. 1 is an exemplary view showing a basketball game analysis apparatus 100 according to an embodiment of the present invention analyzing a basketball game using a multiple neural network model.

도 1을 참조하면, 본 발명의 일 실시예에 따른 농구 경기 분석 장치(100)는 농구 경기의 분석에 필요한 다양한 요소들을 판별하는 다중 신경망 모델을 이용하여 농구 경기 영상 내에서 팀의 득점, 리바운드, 어시스트 등 농구 경기와 관련된 경기 분석 정보를 생성하고, 선수의 하이라이트 영상을 자동으로 생성할 수 있다. Referring to FIG. 1, a basketball game analysis apparatus 100 according to an embodiment of the present invention uses a multi-neural network model to determine various elements necessary for analysis of a basketball game, It is possible to generate game analysis information related to a basketball game such as an assist, and automatically generate a highlight video of a player.

본 발명의 실시예에 따르면, 경기 영상의 프레임에 포함된 공/선수/골포스트를 포함하는 객체를 판별하는 제1 신경망 모델, 경기 영상의 프레임에 포함된 각 선수가 속한 팀을 구별하는 제2 신경망 모델, 경기 영상의 연속된 프레임으로부터 득점 여부를 판별하는 제3 신경망 모델을 생성할 수 있다. According to an embodiment of the present invention, a first neural network model for discriminating an object including a ball/player/goal post included in a frame of a game image, and a second neural network model for discriminating a team to which each player included in a frame of the game image belongs. A neural network model and a third neural network model for determining whether a score is scored from consecutive frames of a game image may be generated.

또한, 경기장 내에 포함된 객체들의 2차원 위치 정보 분석 알고리즘을 통해 농구 경기에 대한 상황과 흐름을 분석하기 위한 정보들을 추출할 수 있다. 이에 따라, 본 발명의 실시예는 추출된 정보들을 종합적으로 분석하여 농구 경기 관련 정보 및 하이라이트 영상을 제공하며, 이러한 목적을 달성하기 위한 실시예들을 설명하기로 한다. In addition, information for analyzing the situation and flow of a basketball game may be extracted through an algorithm for analyzing 2D location information of objects included in the stadium. Accordingly, an embodiment of the present invention provides basketball game related information and a highlight image by comprehensively analyzing the extracted information, and embodiments for achieving this purpose will be described.

도 2는 본 발명의 일 실시예에 따른 농구 경기 분석 장치(100)의 기능 블록도이다. 2 is a functional block diagram of an apparatus 100 for analyzing a basketball game according to an embodiment of the present invention.

도 2를 참조하면, 일 실시 예에 따른 농구 경기 분석 장치(100)는 메모리(110), 프로세서(120), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)를 포함할 수 있다. 2, the basketball game analysis apparatus 100 according to an embodiment may include a memory 110, a processor 120, an input interface 130, a display unit 140, and a communication interface 150. have.

메모리(110)는 학습 데이터 DB(111), 신경망 모델(113) 및 명령어 DB(115)를 포함할 수 있다. The memory 110 may include a training data DB 111, a neural network model 113, and a command DB 115.

학습 데이터 DB(111)는 복수의 이미지 프레임(이하, '프레임'으로 지칭)을 포함하는 경기 영상을 포함할 수 있다. 경기 영상은 외부 서버, 외부 DB를 통해 획득된 경기 영상 또는 인터넷 상에서 획득된 경기 영상을 포함할 수 있다. 경기 영상은 농구 경기를 촬영한 영상으로서 경기 영상을 구성하는 프레임은 농구 경기를 구성하는 복수의 객체를 포함할 수 있다. 예를 들어, 객체는 경기장(ex. 경기장 범위, 경기장 선, 골포스트 등), 농구공, 제1 팀의 선수, 제2 팀의 선수 및 심판 등을 포함할 수 있다. 프레임은 다수의 픽셀(ex. 가로 M개, 세로 N개 행렬 형태로 구성된 M*N 개의 픽셀)로 구성될 수 있고, 각각의 픽셀은 R (Red), G(Green), B(Blue)의 고유 색상을 나타내는 RGB 원소값 (x, y, z) 또는 HSV 정보(색상, 명도, 채도)로 구성된 픽셀 정보를 포함할 수 있다. The training data DB 111 may include a game image including a plurality of image frames (hereinafter referred to as'frames'). The game image may include a game image acquired through an external server, an external DB, or a game image acquired on the Internet. The game image is an image of a basketball game, and a frame constituting the game image may include a plurality of objects constituting the basketball game. For example, the object may include a stadium (eg, stadium range, stadium line, goal post, etc.), basketball, players of the first team, players of the second team, and referees. A frame can be composed of a number of pixels (ex.M*N pixels composed of a matrix of M horizontally and N vertically), and each pixel is composed of R (Red), G (Green), and B (Blue). Pixel information composed of RGB element values (x, y, z) or HSV information (hue, brightness, saturation) representing a unique color may be included.

신경망 모델(113)은 경기 영상의 프레임에 포함된 농구공/선수/골포스트를 포함하는 객체를 판별하는 제1 신경망 모델, 경기 영상의 프레임에 포함된 각 선수가 속한 팀을 구별하는 제2 신경망 모델, 경기 영상의 연속된 프레임으로부터 득점 여부를 판별하는 제3 신경망 모델을 포함할 수 있다. 제1 신경망 모델 내지 제3 신경망 모델은 상술한 각 목적에 따라 프레임부터 분석할 정보를 특정하는 클래스를 판별하도록 CNN(Convolution Neural Network) 기반 인공지능 알고리즘으로 학습된 인공지능 모델일 수 있다. 인공지능 모델은 후술할 프로세서(120)의 동작에 의해 생성되어 메모리(110)에 저장될 수 있다. The neural network model 113 is a first neural network model that identifies an object including a basketball/player/goal post included in a frame of a game image, and a second neural network that identifies a team to which each player included in the frame of the game image belongs. It may include a model and a third neural network model for determining whether to score a score from consecutive frames of the game image. The first neural network model to the third neural network model may be an artificial intelligence model trained by an artificial intelligence algorithm based on a convolution neural network (CNN) to determine a class specifying information to be analyzed from a frame according to the above-described purposes. The artificial intelligence model may be generated by an operation of the processor 120 to be described later and stored in the memory 110.

명령어 DB(115)는 프로세서(120)의 동작을 수행시킬 수 있는 명령어들을 저장할 수 있다. 예를 들어, 명령어 DB(115)는 후술할 프로세서(120)의 동작들과 대응되는 동작을 수행하도록 하는 컴퓨터 코드를 저장할 수 있다. The instruction DB 115 may store instructions capable of performing an operation of the processor 120. For example, the instruction DB 115 may store computer code for performing operations corresponding to operations of the processor 120 to be described later.

프로세서(120)는 농구 경기 분석 장치(100)가 포함하는 구성들, 메모리(110), 입력 인터페이스(130), 디스플레이부(140) 및 통신 인터페이스(150)의 전반적인 동작을 제어할 수 있다. 프로세서(120)는 레이블링 모듈(121), 학습 모듈(123), 정보 분석 모듈(125) 및 제어 모듈(127)을 포함할 수 있다. 프로세서(120)는 메모리(110)에 저장된 명령어들을 실행해 레이블링 모듈(121), 학습 모듈(123), 정보 분석 모듈(125) 및 제어 모듈(127)을 구동시킬 수 있고, 레이블링 모듈(121), 학습 모듈(123), 정보 분석 모듈(125) 및 제어 모듈(127)에 의해 수행되는 동작은 프로세서(120)에 의해 수행되는 동작으로 이해될 수 있다. The processor 120 may control components included in the basketball game analysis apparatus 100, the memory 110, the input interface 130, the display unit 140, and the overall operation of the communication interface 150. The processor 120 may include a labeling module 121, a learning module 123, an information analysis module 125, and a control module 127. The processor 120 may drive the labeling module 121, the learning module 123, the information analysis module 125, and the control module 127 by executing instructions stored in the memory 110, and the labeling module 121 The operation performed by the learning module 123, the information analysis module 125, and the control module 127 may be understood as an operation performed by the processor 120.

레이블링 모듈(121)은 신경망 학습의 목적에 따라 프레임부터 분석할 정보를 특정한 클래스를 판별하도록, 각 프레임에 특정 클래스 정보를 레이블링(labeling)한 학습 데이터를 생성하여 학습 데이터 DB(111)에 저장할 수 있다. The labeling module 121 may generate training data by labeling specific class information in each frame and store it in the training data DB 111 so as to determine a specific class from which information to be analyzed from a frame is analyzed according to the purpose of neural network training. have.

예를 들어, 레이블링 모듈(121)은 프레임에 포함된 객체를 판별하는 제1 신경망 모델의 학습을 위해, 프레임에 포함된 농구공, 선수, 골포스트의 위치에 바운딩 박스(bounding box)를 생성하고 해당 바운딩 박스에 포함된 객체를 특정하는 클래스를 레이블링하여 학습 데이터를 생성할 수 있다. For example, the labeling module 121 creates a bounding box at the positions of a basketball, a player, and a goal post included in the frame for training of a first neural network model that determines an object included in the frame. Training data can be generated by labeling a class that specifies an object included in the corresponding bounding box.

예를 들어, 레이블링 모듈(121)은 프레임에 포함된 객체 중 선수로 판별된 객체가 속한 팀을 구별하는 제2 신경망 모델의 학습을 위해, 프레임에 포함된 제1 팀 선수의 유니폼 및 제2 팀 선수의 유니폼의 위치에 바운딩 박스(bounding box)를 생성하고, 해당 바운딩 박스에 포함된 객체를 특정하는 클래스를 레이블링하여 학습 데이터를 생성할 수 있다. For example, the labeling module 121 includes a first team player's uniform and a second team included in the frame for learning a second neural network model that identifies the team to which the object identified as a player belongs among the objects included in the frame. Learning data can be generated by creating a bounding box at the position of the player's uniform and labeling a class that specifies an object included in the bounding box.

예를 들어, 레이블링 모듈(121)은 득점 여부를 판별하는 제3 신경망 모델의 학습을 위해, 골포스트 위치에 농구공이 위치하는 장면을 포함하는 연속된 프레임에 대해 골의 성공 여부를 특정하는 클래스(ex. 골/노골)를 레이블링하여 학습 데이터를 생성할 수 있다. For example, the labeling module 121 is a class that specifies the success of a goal in a continuous frame including a scene in which a basketball is positioned at a goal post position for training a third neural network model to determine whether or not a goal is scored ( ex.gol/nogol) can be labeled to generate learning data.

학습 모듈(123)은 CNN 기반의 인공지능 알고리즘으로 설계된 모델(ex. 도 3, 도 4, 도 5의 모델)에 학습 데이터를 입력하여, 학습 데이터에 포함된 프레임과 프레임에 레이블링된 클래스와의 상관 관계를 도출하는 가중치를 학습시킴으로써, 가중치의 상관 관계를 기초로 새롭게 입력되는 경기 영상의 프레임에 대한 정보를 판별하는 신경망 모델을 생성할 수 있다. The learning module 123 inputs training data into a model designed with a CNN-based artificial intelligence algorithm (ex. the models in FIGS. 3, 4, and 5), and matches the frame included in the training data and the class labeled in the frame. By learning the weights for deriving the correlation, a neural network model for discriminating information on a frame of a newly input game image based on the correlation of the weights can be generated.

예를 들어, 학습 모듈(123)은 CNN 기반의 인공지능 알고리즘을 기초로 설계된 신경망의 입력 레이어에 학습 데이터에 포함된 경기 영상의 프레임이 입력되도록 설정하고, 출력 레이어에 프레임에 레이블링된 클래스 정보 및 바운딩 박스 정보가 입력되도록 설정하여, 학습 데이터에 포함된 경기 영상의 프레임과 해당 프레임에 레이블링된 클래스와의 상관 관계, 또는 학습 데이터에 포함된 경기 영상의 프레임과 해당 프레임에 레이블링된 바운딩 박스의 상관 관계를 도출하도록 신경망의 가중치를 학습시켜 제1 신경망 모델 내지 제3 신경망 모델을 생성할 수 있다.For example, the learning module 123 sets a frame of a game image included in the training data to be input to an input layer of a neural network designed based on a CNN-based artificial intelligence algorithm, and class information labeled with the frame in the output layer and By setting the bounding box information to be input, the correlation between the frame of the game video included in the training data and the class labeled on the frame, or the correlation between the frame of the game video included in the training data and the bounding box labeled with the frame A first neural network model to a third neural network model may be generated by learning the weights of the neural network to derive the relationship.

도 3은 본 발명의 일 실시예에 따른 경기 영상에 포함된 객체를 판별하는 제1 신경망의 예시도이다.3 is an exemplary diagram of a first neural network for determining an object included in a game image according to an embodiment of the present invention.

도 3을 참조하면, 학습 모듈(123)은 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 설계된 제1 신경망에 프레임에 포함된 객체를 특정하는 클래스 및 위치에 대한 바운딩 박스의 레이블링이 완료된 학습 데이터를 이용하여, 제1 신경망이 새로운 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하도록 학습시킬 수 있다. Referring to Figure 3, the learning module 123 is a first neural network designed to specify the object including a basketball, a goal post, and a player within the frame and to determine the position of the class and position specifying the object included in the frame. The first neural network may be trained to generate first information on the positions of a goal post, a basketball, and a player included in a frame of a new game image, by using the training data for which the labeling of the bounding box is completed.

이를 위해, 학습 모듈(123)은 농구공, 골포스트 및 선수를 특정하는 클래스와, 객체의 위치에 바운딩 박스가 레이블링된 프레임(ex. 도 3(b))을 포함하는 경기 영상을 학습 데이터 DB(111)로부터 획득하여, YOLO 알고리즘 기반으로 설계된 모델(ex. 도 3(a))이 해당 학습 데이터를 학습하도록 제어할 수 있다. 이에 따라, 학습 모듈(123)은 프레임과 프레임 내에 레이블링된 클래스와의 상관 관계를 도출하는 제1 신경망 모델의 가중치를 학습시킴으로써, 학습된 가중치의 상관 관계를 기초로 새로운 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고, 객체들의 위치를 판별하는 제1 신경망 모델을 생성할 수 있다. To this end, the learning module 123 provides a training data DB for a game image including a class specifying a basketball, a goal post, and a player, and a frame in which a bounding box is labeled at the position of the object (ex. FIG. 3(b)). Obtained from (111), the model designed based on the YOLO algorithm (ex. FIG. 3(a)) can be controlled to learn the corresponding training data. Accordingly, the learning module 123 learns the weight of the first neural network model that derives the correlation between the frame and the class labeled in the frame, so that a basketball and a goal within a new frame are based on the correlation of the learned weight. An object including a post and a player may be specified, and a first neural network model may be generated to determine the positions of the objects.

한편, 농구 경기는 2개의 팀으로 구성되는데, 객체를 판별하는 제1 신경망 모델은 '선수'에 대한 객체를 판별할 뿐, 판별된 '선수'의 팀을 구분하기 어렵다는 문제가 있다. 이에 따라, 본 발명의 실시예는 팀 자체를 구분하기 위한 기능의 제2 신경망 모델을 추가로 사용할 수 있다. On the other hand, the basketball game consists of two teams, and the first neural network model for determining the object only determines the object for the'player', and it is difficult to distinguish the team of the identified'player'. Accordingly, the embodiment of the present invention may additionally use a second neural network model having a function for classifying the team itself.

도 4는 본 발명의 일 실시예에 따른 경기 영상에 포함된 각 선수가 속한 팀을 구별하는 제2 신경망 모델의 예시도이다. 4 is an exemplary diagram of a second neural network model for distinguishing a team to which each player belongs in a game image according to an embodiment of the present invention.

도 4를 참조하면, 학습 모듈(123)은 프레임 내에서 제1 색상의 유니폼을 구별하도록 학습된 제1 서브모델 및 제2 색상의 유니폼을 구별하도록 학습된 제2 서브모델을 포함하는 제2 신경망 모델을 생성할 수 있다. 즉, 제1 서브모델 및 제2 서브모델은 각각 한 가지의 클래스만을 구별하는 별도의 신경망으로 구성될 수 있다. 제1 서브모델 및 제2 서브모델 각각은 CNN 기반의 신경망 구성을 사용할 수 있고, 오직 1개의 클래스만 빠르게 학습하도록 기능하는 목적을 위해 도 4에 도시된 서브모델 내부의 신경망 구성을 사용할 수 있다. 이처럼 한 개의 팀 자체를 분류하기 위해 특화된 도 4의 제2 신경망 모델의 구성을 Teamy Network 로 지칭할 수 있다. Referring to FIG. 4, the learning module 123 is a second neural network including a first sub-model learned to distinguish uniforms of a first color within a frame and a second sub-model learned to distinguish uniforms of a second color. You can create a model. That is, each of the first submodel and the second submodel may be configured as a separate neural network that distinguishes only one class. Each of the first and second submodels may use a CNN-based neural network configuration, and for the purpose of functioning to quickly learn only one class, a neural network configuration inside the submodel shown in FIG. 4 may be used. In this way, the configuration of the second neural network model of FIG. 4 specialized to classify one team itself may be referred to as a Teamy Network.

학습 모듈(123)은 프레임 내에서 제1 색상의 유니폼을 포함하는 객체를 특정하고 해당 객체의 위치를 판별하도록 설계된 제1 서브모델에, 프레임에 포함된 제1 색상의 유니폼을 특정하는 클래스 및 위치에 대한 바운딩 박스의 레이블링이 완료된 학습 데이터를 입력하여, 1차적으로 제1 서브모델이 제1 색상(ex. 빨강)에 해당하는 한 가지 색상의 유니폼에 대한 클래스를 판별하도록 학습시킬 수 있다. The learning module 123 is a first sub-model designed to specify an object including a uniform of a first color within a frame and to determine the position of the object, and a class and a position specifying the uniform of the first color included in the frame. By inputting training data for which the labeling of the bounding box is completed, the first sub-model may be primarily trained to determine a class for a uniform of one color corresponding to the first color (eg, red).

학습 모듈(123)은 프레임 내에서 제2 색상의 유니폼을 포함하는 객체를 특정하고 해당 객체의 위치를 판별하도록 설계된 제2 서브모델에, 프레임에 포함된 제2 색상의 유니폼을 특정하는 클래스 및 위치에 대한 바운딩 박스의 레이블링이 완료된 학습 데이터를 입력하여, 1차적으로 제2 서브모델이 제2 색상(ex. 파랑)에 해당하는 한 가지 색상의 유니폼에 대한 클래스를 판별하도록 학습시킬 수 있다.The learning module 123 is a class and position that specifies the uniform of the second color included in the frame in a second sub-model designed to specify the object including the uniform of the second color in the frame and determine the location of the object. By inputting the training data for which the labeling of the bounding box is completed, the second sub-model may be primarily trained to determine the class for the uniform of one color corresponding to the second color (eg, blue).

다만, 농구 경기는 팀마다 유니폼의 색상이 다양하여, 하나의 색상만 구별되도록 학습된 서브모델이 전혀 다른 새로운 색상을 구별하기 어렵다는 문제가 있다. 또한, 서브모델이 다양한 색상을 구별하도록 여러 색상의 유니폼에 대한 클래스를 학습시킨다고 하더라도, 학습에 사용되지 않은 색상의 유니폼이 입력되면 정확한 구별을 하기 어려울 뿐 더러, 다양한 색상을 학습시킨 신경망은 레이어의 구성 및 파라미터가 복잡하기 때문에 새로운 색상에 대한 신속한 학습이 어려울 수 있다. However, in a basketball game, uniform colors are varied for each team, and thus, it is difficult to distinguish a completely different new color by a sub-model that is learned to distinguish only one color. In addition, even if the sub-model learns classes for uniforms of multiple colors to distinguish various colors, it is difficult to accurately distinguish when uniforms of colors not used for training are input. In addition, neural networks that have learned various colors are Because the configuration and parameters are complex, it can be difficult to quickly learn a new color.

이러한 점을 해결하기 위해, 본 발명의 실시예는 제1 서브모델 및 제2 서브모델이 하나의 색상만 구별하도록 1차적으로 학습시킨 이후, 실제 분석할 경기 영상의 프레임에 포함된 제1 팀의 유니폼에 제1 클래스를 레이블링하고 및 제2 팀의 유니폼에 제2 클래스를 레이블링하여, 제1 서브모델 및 제2 서브모델 각각에 2차적으로 기 설정된 시간 동안 또는 기 설정된 횟수만큼만 빠르게 학습시킬 수 있다. In order to solve this problem, the embodiment of the present invention first learns that the first sub-model and the second sub-model distinguish only one color, and then the first team included in the frame of the game image to be analyzed. By labeling the first class on the uniform and the second class on the uniform of the second team, each of the first and second submodels can be secondarily trained for a preset time or only a preset number of times. .

이 경우, 제1 서브모델은 본래 제1 색상(ex. 빨강)에 해당하는 1가지의 클래스만 학습하도록 기 학습되어 있기 때문에, 추가로 학습된 제1 팀의 유니폼의 색상(ex. 노랑)이 제1 색상(ex. 빨강)과 다르더라도, 추가 학습에 의해 제1 팀의 유니폼(ex. 노랑) 또한 제1 색상(ex. 빨강)이라고 인식할 수 있다. 마찬가지로, 제2 서브모델은 본래 제2 색상(ex. 파랑)에 해당하는 1가지의 클래스만 학습하도록 기 학습되어 있기 때문에, 추가로 학습된 제2 팀의 유니폼(ex. 초록)의 색상이 제2 색상(ex. 파랑)과 다르더라도, 추가 학습에 의해 제2 팀의 유니폼(ex. 초록) 또한 제2 색상(ex. 파랑)이라고 인식할 수 있다. In this case, since the first sub-model is originally learned to learn only one class corresponding to the first color (ex. red), the additionally learned color of the uniform of the first team (ex. yellow) is Even if it is different from the first color (ex. red), the uniform of the first team (ex. yellow) may also be recognized as the first color (ex. red) through additional learning. Likewise, since the second sub-model is originally learned to learn only one class corresponding to the second color (ex. blue), the additionally learned color of the uniform (ex. green) of the second team is eliminated. Even if it is different from the 2 color (ex. blue), the uniform of the second team (ex. green) can also be recognized as the second color (ex. blue) through additional learning.

따라서, 2차적으로 학습된 제2 신경망 모델에, 제1 팀의 유니폼이 노랑색이고, 제2 팀의 유니폼이 초록색에 해당하는 경기 영상을 입력하였을 때, 각 서브모델이 제1 색상 또는 제2 색상으로 분류하는 객체들을 각각 제1 팀의 선수 또는 제2 팀의 선수로 구별하여, 제1 신경망이 분류한 선수에 해당하는 객체의 팀을 구별할 수 있다. Therefore, when a game image in which the uniform of the first team is yellow and the uniform of the second team is green is input to the second neural network model that is secondarily learned, each sub-model is assigned a first color or a second color. Each of the objects classified as is a player of a first team or a player of a second team, and a team of an object corresponding to the player classified by the first neural network can be distinguished.

구체적으로, 분석 대상인 경기 영상의 프레임은 제1 서브모델 및 제2 서브모델에 동일하게 입력되고, 입력된 경기 영상의 프레임 내에 판별된 유니폼을 포함하는 객체가 제1 팀 또는 제2 팀에 속할 확률이 각각의 서브모델에서 출력되면, 정보 분석 모듈(125)은 특정 객체에 대해 제1 서브모델 및 제2 서브모델이 판정한 클래스에 속하는 확률 중 높은 확률을 출력한 서브모델이 판정하는 팀으로 각 선수의 팀을 구별할 수 있다. Specifically, the frame of the game image to be analyzed is equally input to the first sub-model and the second sub-model, and the probability that the object including the uniform determined in the frame of the input game image belongs to the first team or the second team. When output from each of these sub-models, the information analysis module 125 is a team determined by the sub-model that outputs a high probability among the probabilities belonging to the class determined by the first sub-model and the second sub-model for a specific object. The player's team can be identified.

도 5는 본 발명의 일 실시예에 따른 경기 영상에 포함된 연속된 프레임으로부터 득점 여부를 판별하는 제3 신경망 모델의 예시도이다. 5 is an exemplary diagram of a third neural network model for determining whether to score a score from consecutive frames included in a game image according to an embodiment of the present invention.

도 5를 참조하면, 학습 모듈(123)은 골포스트 근처에 농구공이 위치하는 장면을 포함하는 복수의 연속된 프레임과, 해당 연속된 프레임에서 득점 성공 여부에 대한 클래스가 레이블링된 학습 데이터를 학습 데이터 DB(111)로부터 획득할 수 있다. 학습 모듈(123)은 CNN 알고리즘 기반으로 설계된 신경망에 연속된 프레임(ex. 도 5의 경우 3개의 프레임)을 입력 레이어에 입력하고, 레이블링된 클래스(ex. 골/노골)를 출력 레이어에 입력하여 학습시킬 수 있다. 이에 따라, 학습 모듈(123)은 연속된 프레임과 득점 성공 여부에 대한 상관 관계를 도출하는 제3 신경망 모델의 가중치를 학습시킴으로써, 학습된 가중치의 상관 관계를 기초로 연속된 복수의 프레임 내에서 골 성공 여부를 판별하는 제3 신경망 모델을 생성할 수 있다. Referring to FIG. 5, the learning module 123 uses a plurality of consecutive frames including a scene in which a basketball is located near a goal post, and learning data labeled with a class indicating whether a score is successful in the corresponding continuous frame. It can be obtained from the DB 111. The learning module 123 inputs consecutive frames (ex. 3 frames in the case of Fig. 5) to the neural network designed based on the CNN algorithm into the input layer, and inputs the labeled classes (ex. goal/nogol) to the output layer. You can learn. Accordingly, the learning module 123 learns the weight of the third neural network model that derives the correlation between successive frames and the success of the score, so that the goal within a plurality of consecutive frames is based on the correlation of the learned weights. A third neural network model that determines whether or not it is successful can be created.

이러한 CNN 기반 알고리즘은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 머신러닝 알고리즘을 포함한다. 본 발명의 실시예는 YOLO, ResNet, LeNet-5, AlexNet, VGG-F, VGG-M, VGG-S, VGG-16, VGG-19, GoogLeNet, SENet, R-CNN, Fast R-CNN, Faster R-CNN, Siamese Network, Spectral Clustering, 또는 SSD의 알고리즘에 따라 설계된 인공지능 모델, 또는 상술한 예시 모델의 레이어 및 파라미터를 일부 변경한 모델(ex. 도 3, 도 4, 도 5의 설계 모델)을 설계하여 학습을 진행할 수 있다. These CNN-based algorithms include machine learning algorithms that define and solve various problems dealt with in the field of artificial intelligence. Examples of the present invention are YOLO, ResNet, LeNet-5, AlexNet, VGG-F, VGG-M, VGG-S, VGG-16, VGG-19, GoogLeNet, SENet, R-CNN, Fast R-CNN, Faster An artificial intelligence model designed according to an algorithm of R-CNN, Siamese Network, Spectral Clustering, or SSD, or a model in which the layers and parameters of the above-described exemplary model are partially changed (ex. the design models of FIGS. 3, 4, and 5) You can design and proceed with learning.

인공지능 모델은 시냅스의 결합으로 네트워크를 형성한 노드들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공지능 모델은 모델을 구성하는 레이어 사이의 가중치인, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다.The artificial intelligence model may refer to an overall model with problem-solving capabilities, which is composed of nodes that form a network by combining synapses. The artificial intelligence model may be defined by a learning process that updates model parameters, which is a weight between layers constituting the model, and an activation function that generates an output value.

모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 레이어 연결의 가중치와 뉴런의 편향 등이 포함된다. 그리고, 하이퍼 파라미터는 머신러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(Learning Rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다.Model parameters refer to parameters determined through learning, and include weights of layer connection and bias of neurons. In addition, the hyper parameter refers to a parameter that must be set before learning in a machine learning algorithm, and includes a learning rate, repetition number, mini-batch size, and initialization function.

인공지능 모델의 학습 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공지능 모델의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다. The learning objective of the artificial intelligence model can be seen as determining the model parameters that minimize the loss function. The loss function can be used as an index to determine an optimal model parameter in the learning process of an artificial intelligence model.

정보 분석 모듈(125)은 경기 영상에 대해 제1 신경망 모델 내지 제3 신경망 모델이 생성한 정보를 기초로, 경기 영상에 대한 다양한 분석 정보를 생성할 수 있다. 이하, 경기 영상에 대해 제1 신경망이 판별한 농구공, 골포스트, 선수에 대한 객체의 클래스와 객체의 위치에 대한 정보를 제1 정보로 지칭한다. 경기 영상에 대해 제2 신경망이 판별한 객체의 팀 클래스와 객체의 위치에 대한 정보를 제2 정보로 지칭한다. 경기 영상에 대해 제3 신경망이 판별한 득점의 성공 여부에 대한 정보를 제3 정보로 지칭한다. The information analysis module 125 may generate various analysis information for the game image based on information generated by the first neural network model to the third neural network model for the game image. Hereinafter, information on the object class and the location of the object for the basketball, goal post, and player determined by the first neural network for the game image will be referred to as first information. Information on the team class of the object and the location of the object determined by the second neural network for the game image is referred to as second information. Information on whether or not the score determined by the third neural network for the game image is successful is referred to as third information.

정보 분석 모듈(125)은 제1 정보 내지 제3 정보를 종합 분석하여 득점, 리바운드, 어시스트 등과 같은 경기 진행과 관련된 정보를 생성하여 메모리(110)에 기록 및 저장할 수 있다. 정보 분석 모듈(125)의 자세한 동작은 도 6 및 도 7과 함께 후술한다. The information analysis module 125 may comprehensively analyze the first information to the third information to generate information related to the progress of the game, such as a score, a rebound, and an assist, and record and store the information in the memory 110. Detailed operations of the information analysis module 125 will be described later with reference to FIGS. 6 and 7.

제어 모듈(127)은 상술한 레이블링 모듈(121), 학습 모듈(123) 및 정보 분석 모듈(125)의 동작을 제어하며, 구체적으로 도 6 내지 도 9에 도시된 동작을 수행할 수 있다. The control module 127 controls the operation of the labeling module 121, the learning module 123, and the information analysis module 125 described above, and may specifically perform the operations illustrated in FIGS. 6 to 9.

도 6은 본 발명의 제1 실시예에 따른 농구 경기 분석 방법의 동작 흐름도이다. 농구 경기 분석 방법의 동작은 제어 모듈(127)의 제어에 따라 동작되는 것으로 이해될 수 있다.6 is an operation flowchart of a basketball game analysis method according to the first embodiment of the present invention. It can be understood that the operation of the basketball game analysis method is operated under the control of the control module 127.

도 6을 참조하면, 제어 모듈(127)은 분석 대상이 되는 경기 영상을 획득하여, 경기 영상 내 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정할 수 있다. 예를 들어, 제어 모듈(127)은 경기 영상 내에 제1 팀의 유니폼 색상, 제2 팀의 유니폼 색상, 경기장의 범위, 각 선수 정보 등을 설정할 수 있다(S310). Referring to FIG. 6, the control module 127 may acquire a game image to be analyzed and set information on a first team, a second team, and a stadium in the game image. For example, the control module 127 may set the uniform color of the first team, the color of the uniform of the second team, the range of the stadium, and information of each player in the game image (S310).

제어 모듈(127)은 제1 신경망에 경기 영상을 입력하여, 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성할 수 있다(S320). The control module 127 may input the game image to the first neural network to generate first information on the positions of the goal post, basketball, and player included in the frame of the game image (S320).

제어 모듈(127)은 제2 신경망에 경기 영상을 입력하여, 경기 영상의 프레임 내에 포함된 제1 팀의 유니폼 및 제2 팀의 유니폼을 특정하고 위치를 특정하는 제2 정보를 생성할 수 있다(S330). The control module 127 may input the game image to the second neural network to specify the uniform of the first team and the uniform of the second team included in the frame of the game image and generate second information for specifying the location ( S330).

제어 모듈(127)은 제2 신경망에 경기 영상 중의 연속된 복수의 프레임을 입력하여, 연속된 복수의 프레임으로부터 득점 성공 여부에 대한 제3 정보를 생성할 수 있다(S340). 이때 제어 모듈(127) 제1 정보를 기초로 골포스트의 위치와 농구공의 위치가 소정 거리 이하로 가까워진 경우에만 제3 신경망이 동작하도록 설정하여 불필요한 연산을 최소화할 수 있다. The control module 127 may input a plurality of consecutive frames of the game image to the second neural network, and generate third information on whether or not the score is successful from the plurality of consecutive frames (S340). At this time, based on the first information, the control module 127 sets the third neural network to operate only when the position of the goal post and the position of the basketball are close to a predetermined distance or less, thereby minimizing unnecessary operations.

제어 모듈(127)은 정보 분석 모듈(125)이 제1 정보, 제2 정보 및 제3 정보를 기초로 경기 영상에 대한 분석 정보를 생성하도록 도 7과 같이 제어할 수 있다(S350). The control module 127 may control the information analysis module 125 to generate analysis information for the game image based on the first information, the second information, and the third information as shown in FIG. 7 (S350).

도 7은 본 발명의 일 실시예에 따른 농구 경기 분석 장치(100)가 하이라이트 영상을 생성하는 동작의 예시도이다. 7 is an exemplary diagram of an operation of generating a highlight image by the apparatus 100 for analyzing a basketball game according to an embodiment of the present invention.

도 7을 참조하면, 정보 분석 모듈(125)은 경기 영상이 입력되면 제1 신경망이 생성한 제1 정보, 제2 신경망이 생성한 제2 정보, 제3 신경망이 생성한 제3 정보를 분석하여, 농구 경기 중 득점 성공 여부를 판별할 수 있다(S401). Referring to FIG. 7, the information analysis module 125 analyzes first information generated by a first neural network, second information generated by a second neural network, and third information generated by a third neural network when a game image is input. , It is possible to determine whether or not the goal is successful during a basketball game (S401).

정보 분석 모듈(125)은 경기 영상을 구성하는 프레임의 득점 성공 여부에 대해 판별된 제3 정보를 기초로, 경기 영상에 포함된 프레임 중 득점 성공 장면이 포함된 프레임을 판별하고, 해당 프레임을 제1 프레임으로 특정할 수 있다(S402).The information analysis module 125 determines a frame including a scored success scene among frames included in the game image, based on the third information determined as to whether or not the frame constituting the game image has succeeded in scoring, and provides a corresponding frame. It can be specified as one frame (S402).

정보 분석 모듈(125)은 제1 프레임에 대해 농구공, 선수, 골포스트의 위치가 판별된 제1 정보를 이용하여, 제1 프레임 이전에 마지막으로 농구공을 보유한 제1 선수를 판별할 수 있다(S403). 이때 정보 분석 모듈(125)은 농구공의 판별 위치와 선수의 판별 위치가 소정 거리 이하인 경우, 소정 거리 이하에 위치하는 선수(ex. 도 6의 노란색 바운딩 박스의 위치와 제일 가까운 빨간색 바운딩 박스의 선수)가 농구공을 보유한 것으로 판별할 수 있다. The information analysis module 125 may determine the first player who last holds the basketball ball before the first frame by using the first information in which the positions of the basketball, player, and goal post are determined for the first frame. (S403). At this time, when the discrimination position of the basketball ball and the discrimination position of the player are less than or equal to a predetermined distance, the information analysis module 125 is a player located within a predetermined distance (ex. a player in the red bounding box closest to the position of the yellow bounding box of FIG. ) Can be determined to have a basketball.

정보 분석 모듈(125)은 프레임에 포함된 각 선수가 속한 팀에 대해 판별된 제2 정보를 기초로, 제1 선수가 속한 팀(ex. 도 6의 빨간색 바운딩에 속하는 선수의 팀)을 판별할 수 있다(S404). The information analysis module 125 may determine the team to which the first player belongs (ex. the team of the player belonging to the red bounding in FIG. 6) based on the second information determined for the team to which each player included in the frame belongs. Can be (S404).

정보 분석 모듈(125)은 판별된 팀 및 제1 선수의 득점을 메모리(110)에 기록하여 각 팀의 점수를 카운팅할 수 있다(S405). The information analysis module 125 may count the scores of each team by recording the scores of the determined team and the first player in the memory 110 (S405).

또한, 정보 분석 모듈(125)은 제1 선수에 대한 득점 하이라이트 영상을 생성할 수 있다(S406). 예를 들어, 정보 분석 모듈(125)은 제1 프레임 이전 소정 개수의 프레임 및 제1 프레임 이후 소정 개수의 프레임을 연결하여 제1 선수의 하이라이트 영상을 생성할 수 있다. 또한, 정보 분석 모듈(125)은 프레임에서 농구공과 선수에 대한 객체의 위치가 판별된 제1 정보를 기초로 제1 프레임 이전에 제1 선수가 농구공을 보유하기 시작한 제2 프레임을 판별하고, 제2 프레임으로부터 제1 프레임까지 연결된 프레임을 포함하는 영상을 별도로 생성하거나, 제2 프레임으로부터 제1 프레임까지 영상이 재생되도록 재생 위치를 제어하여 제1 선수의 하이라이트 영상을 생성할 수 있다. In addition, the information analysis module 125 may generate a score highlight image for the first player (S406). For example, the information analysis module 125 may generate a highlight image of the first player by connecting a predetermined number of frames before the first frame and a predetermined number of frames after the first frame. In addition, the information analysis module 125 determines a second frame in which the first player starts to hold the basketball ball before the first frame based on the first information in which the position of the basketball ball and the object relative to the player is determined in the frame, An image including a frame connected from the second frame to the first frame may be separately generated, or a highlight image of the first player may be generated by controlling a playback position so that the image is played from the second frame to the first frame.

이후, 정보 분석 모듈(125)은 제1 프레임 이후 다음 프레임의 골 장면을 검출하는 동작을 다시 수행하여(S407), 경기 영상이 종료되지 않았다면, S402 동작을 재수행하고 경기 영상이 종료되었다면 제1 실시예에 따른 농구 경기 분석 방법의 동작을 완료할 수 있다(S408). Thereafter, the information analysis module 125 performs the operation of detecting the goal scene of the next frame after the first frame again (S407), and if the game video is not finished, re-performs the operation S402, and if the game video is finished, executes the first. The operation of the basketball game analysis method according to the example may be completed (S408).

도 8은 본 발명의 제2 실시예에 따른 농구 경기 분석 방법의 동작 흐름도이다. 농구 경기 분석 방법의 동작은 제어 모듈(127)의 제어에 따라 동작되는 것으로 이해될 수 있다.8 is an operation flowchart of a basketball game analysis method according to a second embodiment of the present invention. It can be understood that the operation of the basketball game analysis method is operated under the control of the control module 127.

도 8을 참조하면, 제어 모듈(127)은 분석 대상이 되는 경기 영상을 획득하여, 경기 영상 내 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정할 수 있다. 예를 들어, 제어 모듈(127)은 경기 영상 내에 제1 팀의 유니폼 색상, 제2 팀의 유니폼 색상, 경기장의 범위 등을 설정할 수 있다(S510). Referring to FIG. 8, the control module 127 may acquire a game image to be analyzed and set information on a first team, a second team, and a stadium in the game image. For example, the control module 127 may set the uniform color of the first team, the uniform color of the second team, the range of the stadium, and the like in the game image (S510).

제어 모듈(127)은 경기 영상에서 제1 팀의 선수, 제2 팀의 선수, 및 농구공의 위치 정보를 판별할 수 있다(S520). 예를 들어, 제어 모듈(127)은 경기 영상의 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 학습된 제1 신경망에 경기 영상을 입력하여, 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하고, 프레임 내에서 서로 다른 유니폼을 구별하도록 학습된 제2 신경망에 경기 영상을 입력하여, 경기 영상의 프레임 내에 포함된 제1 팀의 유니폼 및 제2 팀의 유니폼을 특정하고 위치를 판별하는 제2 정보를 생성하여, 농구공, 선수, 골포스트에 대해 판별된 객체에 대한 제1 정보와, 판별된 객체 중 선수로 판별된 객체의 팀을 구별하는 제2 정보를 기초로 제1 팀의 선수, 제2 팀의 선수 및 농구공의 위치 정보를 생성할 수 있다. The control module 127 may determine the location information of the player of the first team, the player of the second team, and the basketball ball from the game image (S520). For example, the control module 127 inputs the game image to the first neural network that is learned to determine the position and specifies the object including the basketball, the goal post, and the player within the frame of the game image, Generates first information on the position of the goal post, basketball, and player included in the frame, and inputs the game image to the second neural network that is learned to distinguish different uniforms within the frame. By specifying the uniform of the 1st team and the uniform of the 2nd team and generating second information to determine the location, first information about the object identified for the basketball, player, and goal post, and the player among the identified objects A player of the first team, a player of the second team, and location information of a basketball ball may be generated based on the second information for distinguishing the team of the object.

제어 모듈(127)은 S510 단계에서 설정된 경기장에 대한 정보를 기초로 경기장을 수직으로 바라보는 관점으로 2차원화한 경기장 맵(ex. 도 9(b))을 생성하고, S520에서 생성된 제1 팀 선수의 위치 정보, 제2 팀 선수의 위치 정보 및 농구공의 위치 정보가 경기 영상이 재생됨에 따라 움직이며 변화하는 좌표를 포함하는 움직임 정보를 경기장 맵에 매핑시킬 수 있다(S540). 이때 좌표는 제1 정보에 의해 특정된 객체의 3차원 좌표값을 2차원화한 좌표를 포함할 수 있고, 농구공/선수/골포스트에 대한 객체 중 선수에 대한 객체는 제2 정보를 통해 선수가 속한 팀이 구별될 수 있다. 이에 따라, 움직임 정보는 제1 팀의 선수의 움직임을 특정하는 제1 좌표, 제2 팀의 선수의 움직임을 특정하는 제2 좌표, 농구공의 움직임을 특정하는 제3 좌표를 포함할 수 있고, 제1 좌표 내지 제3 좌표는 경기장 맵에서 각 객체의 위치를 특정하는 2차원 원소 정보를 포함할 수 있다. 경기장 맵은 2차원 좌표의 정보들로 구성될 수 있으며, 경기장 맵을 구성하는 2차원 좌표 정보는 경기장의 구역, 경기장의 골포스트 위치, 경기장의 크기 정보 등을 포함할 수 있다. The control module 127 generates a two-dimensional stadium map (ex. FIG. 9(b)) in which the stadium is viewed vertically based on the information on the stadium set in step S510, and the first generated in S520 The location information of the team player, the location information of the second team player, and the location information of the basketball ball may be mapped to the stadium map with motion information including coordinates that change as the game image is played (S540). At this time, the coordinates may include coordinates obtained by two-dimensionalizing the three-dimensional coordinate value of the object specified by the first information, and the object for the player among the objects for the basketball/player/goal post is the player through the second information. The team to which the member belongs can be identified. Accordingly, the motion information may include a first coordinate specifying the movement of the player of the first team, a second coordinate specifying the movement of the player of the second team, and a third coordinate specifying the movement of the basketball ball, The first to third coordinates may include 2D element information specifying the location of each object in the stadium map. The stadium map may be composed of 2D coordinate information, and the 2D coordinate information constituting the stadium map may include a stadium area, a goal post location of the stadium, and size information of the stadium.

제어 모듈(127)은 경기장 맵과 움직임 정보의 관계를 기초로 경기 영상에 대한 분석 정보를 생성할 수 있다(S540). The control module 127 may generate analysis information for the game image based on the relationship between the stadium map and the motion information (S540).

도 9는 본 발명의 일 실시예에 따른 농구 경기 분석 장치(100)가 경기장 맵 내에 포함된 객체들의 움직임 정보를 분석하여 농구 영상을 분석하는 동작의 예시도이다. 9 is an exemplary diagram of an operation of analyzing a basketball image by analyzing motion information of objects included in a stadium map by the basketball game analysis apparatus 100 according to an embodiment of the present invention.

도 9를 참조하면, 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표가 경기장 맵의 골포스트 좌표 내에 체류하는 체류 시간을 판별하여, 체류 시간이 기 설정된 시간 이상인 경우 골로 판정하고, 기 설정된 시간 이하인 경우 골이 아닌 것으로 판정할 수 있다. 또한, 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표가 경기장 맵의 골포스트 좌표 부근에 체류하는 형태를 판별하여, 체류 형태가 득점에 해당하는 형태(ex. 골포스트에 체류 후 골포스트 부근에서 정지)인 경우 골로 판정하고, 득점에 해당하지 않는 형태(ex. 회전, 회전 후 이탈, 정지 후 이탈 등)인 경우 골이 아닌 것으로 판정할 수 있다. 또한,Referring to FIG. 9, the control module 127 determines the residence time at which the third coordinate for the position of the basketball ball stays within the goal post coordinates of the stadium map, and determines the residence time as a goal when the residence time is greater than or equal to a preset time. If it is less than the set time, it can be judged as not a goal. In addition, the control module 127 determines the form in which the third coordinate of the position of the basketball ball stays near the goal post coordinates of the stadium map, and the form of stay corresponds to the score (ex. Goal after staying at the goal post) If it is stopped near the post), it is judged as a goal, and if it is in a form that does not correspond to a score (ex. rotation, departure after rotation, departure after stop, etc.), it may be judged as not a goal. Also,

이에 따라, 제어 모듈(127)은 체류 시간이 기 설정된 시간 이상이거나 체류 형태가 득점에 해당하는 경우, 제1 팀 선수의 위치에 대한 제1 좌표 및 제2 팀 선수의 위치에 대한 제2 좌표를 기초로 농구공이 득점되기 전 마지막으로 농구공을 보유한 제1 선수를 판별하고, 팀을 구분하는 제2 정보를 기초로 제1 선수가 속한 팀을 판별할 수 있다. 이에 따라, 제어 모듈(127)은 판별된 팀과 제1 선수의 득점을 기록하고, 제1 선수의 득점에 대한 개인 기록을 카운팅할 수 있다. Accordingly, the control module 127 determines the first coordinates for the position of the first team player and the second coordinates for the position of the second team player when the stay time is longer than a preset time or the stay type corresponds to a score. A first player who has the basketball ball last before the basketball is scored based on the basis may be determined, and the team to which the first player belongs may be determined based on the second information for dividing the team. Accordingly, the control module 127 may record the scores of the determined team and the first player, and count personal records for the scores of the first player.

이때 제어 모듈(127)은 제1 팀 선수의 위치에 대한 제1 좌표 및 제2 팀 선수의 위치에 대한 제2 좌표를 기초로, 제1 선수 이전에 농구공을 보유한 제2 선수를 판별하고, 팀을 구분하는 제2 정보를 기초로 제2 선수의 팀을 판별할 수 있다. 이에 따라, 제1 선수와 제2 선수가 같은 팀으로 판별되면, 제2 선수를 어시스트를 기록한 선수로 판별하여, 제2 선수에 대한 어시스트 정보를 기록하고 제2 선수의 어시스트에 대한 개인 기록을 카운팅할 수 있다.At this time, the control module 127 determines a second player who has a basketball before the first player, based on the first coordinate for the position of the first team player and the second coordinate for the position of the second team player, The team of the second player may be determined based on the second information for dividing the team. Accordingly, when the first player and the second player are determined to be the same team, the second player is determined as the player who recorded the assist, and assist information for the second player is recorded, and the personal record for the second player’s assist is counted. can do.

또한, 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표가 경기장 맵의 골포스트 좌표 내에 체류하는 체류 시간이 기 설정된 시간 이하이거나 체류 형태가 득점이 아닌 경우 골이 아닌 것으로 판정할 수 있다. 이에 따라, 제어 모듈(127)은 득점이 아닌 것으로 판정된 경우, 제1 팀 선수의 위치에 대한 제1 좌표 및 제2 팀 선수의 위치에 대한 제2 좌표를 기초로, 상기 체류 시간 이후 농구공을 보유한 제3 선수를 판별하고, 팀을 구분하는 제2 정보를 기초로 제3 선수가 속한 팀을 판별할 수 있다. 이에 따라, 제어 모듈(127)은 제3 선수에 대한 리바운드 정보를 기록하고 제3 선수의 리바운드에 대한 개인 기록을 카운팅할 수 있다. In addition, the control module 127 may determine that it is not a goal if the third coordinate for the position of the basketball ball is within the goal post coordinates of the stadium map, when the dwell time is less than or equal to a preset time or the type of stay is not a score. . Accordingly, when it is determined that the score is not a score, the control module 127 is based on the first coordinate for the position of the first team player and the second coordinate for the position of the second team player, and the basketball after the stay time It is possible to determine a third player having a and determine a team to which the third player belongs based on the second information for classifying the team. Accordingly, the control module 127 may record rebound information for the third player and count personal records for the third player's rebound.

상술한 제2 실시예에서 제어 모듈(127)은 제1 좌표와 제3 좌표의 거리가 소정 거리 이하인 경우, 소정 거리 이하에 위치하는 제1 좌표에 해당하는 선수가 농구공을 보유한 것으로 판별할 수 있다. 또한, 제2 좌표와 제3 좌표의 거리가 소정 거리 이하인 경우, 소정 거리 이하에 위치하는 제2 좌표에 해당하는 선수가 농구공을 보유한 것으로 판별할 수 있다.In the second embodiment described above, when the distance between the first coordinate and the third coordinate is less than or equal to the predetermined distance, the control module 127 may determine that the player corresponding to the first coordinate located at or less than the predetermined distance has the basketball. have. In addition, when the distance between the second coordinate and the third coordinate is less than or equal to a predetermined distance, it may be determined that a player corresponding to the second coordinate located at or less than the predetermined distance has the basketball.

상술한 제2 실시예의 경우에도 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표와 골포스트 좌표의 관계를 기초로 경기 영상에 대한 분석 정보를 생성할 수 있다. 예를 들어, 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표가 경기장 맵의 골포스트 좌표 내에 체류하는 시점의 제1 프레임 이전 소정 개수의 프레임 및 체류하는 시점 이후 소정 개수의 프레임을 연결하여 하이라이트 영상을 생성할 수 있다. 또한, 제어 모듈(127)은 농구공의 위치에 대한 제3 좌표가 경기장 맵의 골포스트 좌표 내에 체류하는 시점의 제1 프레임 이전의 프레임에서, 농구공이 골포스트에 체류하기 전 농구공을 선수가 보유한 시점의 제2 프레임을 판별하고, 제2 프레임으로부터 제1 프레임까지 연결된 프레임을 포함하는 영상을 생성하거나, 제2 프레임으로부터 제1 프레임까지 영상이 재생되도록 재생 위치를 제어하여 하이라이트 영상을 생성할 수 있다.Even in the case of the second embodiment described above, the control module 127 may generate analysis information for the game image based on the relationship between the third coordinate for the position of the basketball ball and the goal post coordinate. For example, the control module 127 connects a predetermined number of frames before the first frame at the point where the third coordinate for the position of the basketball ball is within the goal post coordinates of the stadium map and a predetermined number of frames after the point of stay. Thus, a highlight image can be generated. In addition, the control module 127 is a frame before the first frame at the time when the third coordinate for the position of the basketball ball stays within the goal post coordinates of the stadium map, before the basketball stays at the goal post, The second frame of the owned viewpoint is determined, and an image including a frame connected from the second frame to the first frame is generated, or a highlight image is generated by controlling the playback position so that the image is played from the second frame to the first frame. I can.

입력 인터페이스(130)는 사용자의 입력을 수신할 수 있다. 예를 들면, 프레임에 대한 클래스를 레이블링하는 경우 사용자의 입력을 수신할 수 있다. The input interface 130 may receive a user's input. For example, when labeling a class for a frame, it can receive user input.

디스플레이부(140)는 디스플레이 패널을 포함하여 프로세서(120)가 분석한 농구 경기에 대한 분석 정보를 농구 경기 영상과 함께 출력하는 하드웨어 구성을 포함할 수 있다. The display unit 140 may include a hardware configuration including a display panel and outputting analysis information on a basketball game analyzed by the processor 120 together with a basketball game image.

통신 인터페이스(150)는 외부 장치(ex. 외부 DB 서버, 사용자 단말 등)와 통신하여 정보를 송수신 할 수 있게 한다. 이를 위해, 통신 인터페이스(150)는 무선 통신모듈 또는 유선 통신모듈을 포함할 수 있다.The communication interface 150 communicates with an external device (eg, an external DB server, a user terminal, etc.) to transmit and receive information. To this end, the communication interface 150 may include a wireless communication module or a wired communication module.

상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The embodiments of the present invention described above can be implemented through various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.In the case of hardware implementation, the method according to embodiments of the present invention includes one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), and Programmable Logic Devices (PLDs). , Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드 등이 기록된 컴퓨터 프로그램은 컴퓨터 판독 가능 기록 매체 또는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation by firmware or software, the method according to the embodiments of the present invention may be implemented in the form of a module, procedure, or function that performs the functions or operations described above. A computer program in which software codes and the like are recorded may be stored in a computer-readable recording medium or a memory unit and driven by a processor. The memory unit may be located inside or outside the processor, and may exchange data with the processor through various known means.

또한 본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 인코딩 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방법으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.In addition, combinations of each block of the block diagram attached to the present invention and each step of the flowchart may be performed by computer program instructions. Since these computer program instructions can be mounted on the encoding processor of a general-purpose computer, special purpose computer or other programmable data processing equipment, the instructions executed by the encoding processor of the computer or other programmable data processing equipment are each block of the block diagram or Each step of the flow chart will create a means to perform the functions described. These computer program instructions can also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular way, so that the computer-usable or computer-readable memory It is also possible to produce an article of manufacture containing instruction means for performing the functions described in each block of the block diagram or each step of the flow chart. Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operating steps are performed on a computer or other programmable data processing equipment to create a computer-executable process to create a computer or other programmable data processing equipment. It is also possible for the instructions to perform the processing equipment to provide steps for performing the functions described in each block of the block diagram and each step of the flowchart.

더불어 각 블록 또는 각 단계는 특정된 논리적 기능을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or each step may represent a module, segment, or part of code including one or more executable instructions for executing a specified logical function. It should also be noted that in some alternative embodiments, the functions mentioned in blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially simultaneously, or the blocks or steps may sometimes be performed in the reverse order depending on the corresponding function.

이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.As such, those skilled in the art to which the present invention pertains will be able to understand that the present invention can be implemented in other specific forms without changing the technical spirit or essential features thereof. Therefore, the embodiments described above are illustrative in all respects and should be understood as non-limiting. The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. .

Claims (11)

다중 신경망 모델 기반의 농구 경기 분석 장치에 있어서,
소정의 동작을 수행하도록 하는 명령어들을 저장하는 하나 이상의 메모리; 및 상기 하나 이상의 메모리와 동작 가능 하도록 연결되어 상기 명령어들을 실행하도록 설정된 하나 이상의 프로세서를 포함하고,
상기 프로세서가 수행하는 동작은,
농구 경기를 포함하는 복수의 학습용 프레임에 농구공, 골포스트 및 선수를 특정하는 클래스가 레이블링된 제1 학습 데이터, 상기 학습용 프레임 내 제1 색상의 유니폼에 제1 클래스가 레이블링되고 제2 색상의 유니폼에 제2 클래스가 레이블링된 제2 학습 데이터, 상기 복수의 프레임 중 연속된 복수의 프레임에 대한 골의 성공 여부를 특정하는 클래스가 레이블링된 제3 학습 데이터를 생성하는 동작;
복수의 프레임을 포함하는 경기 영상을 획득하여, 상기 경기 영상의 분석 대상이 되는 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정하는 동작;
상기 제1 학습 데이터에 포함된 학습용 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제1 신경망에 상기 경기 영상을 입력하여, 상기 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하는 동작;
상기 제2 학습 데이터에 포함된 학습용 프레임 내에서 상기 제1 클래스를 판별하도록 학습된 제1 서브모델 및 상기 제2 클래스를 판별하도록 학습된 제2 서브모델을 포함하는 CNN(Convolution Neural Network) 기반 제2 신경망에 대해, 상기 경기 영상에 포함된 프레임에 상기 제1 팀의 유니폼에 상기 제1 클래스를 레이블링 한 학습 데이터를 상기 제1 서브모델에 추가 학습시키고, 상기 경기 영상에 포함된 프레임에 상기 제2 팀의 유니폼에 상기 제2 클래스를 레이블링한 학습 데이터를 상기 제2 서브모델에 추가 학습시킨 후, 상기 경기 영상을 입력하여 상기 경기 영상의 프레임 내에 포함된 상기 제1 팀의 유니폼의 위치 및 상기 제2 팀의 유니폼의 위치에 대한 제2 정보를 생성하는 동작;
상기 제3 학습 데이터에 포함된 학습용 프레임에 대한 골의 성공 여부를 특정하는 클래스를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제3 신경망에 상기 경기 영상 중의 연속된 복수의 프레임을 입력하여, 상기 연속된 복수의 프레임에 대한 골 성공 여부에 대한 제3 정보를 생성하는 동작; 및
상기 제3 정보를 기초로 골 성공 여부에 대한 정보를 포함하는 제1 프레임을 판별하고, 상기 제1 프레임에 대해 판별된 상기 제1 정보에서 마지막으로 농구공을 보유한 제1 선수를 특정하고, 상기 제1 프레임에 대해 판별된 상기 제2 정보에서 상기 제1 선수의 팀을 특정하여, 상기 제1 프레임 이전 소정 개수의 프레임 및 상기 제1 프레임 이후 소정 개수의 프레임을 연결하여 상기 제1 선수의 하이라이트 영상을 생성하는 동작을 포함하는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
In the basketball game analysis apparatus based on a multiple neural network model,
One or more memories for storing instructions for performing a predetermined operation; And one or more processors connected to be operable with the one or more memories and configured to execute the instructions,
The operation performed by the processor,
First learning data in which a class specifying a basketball, a goal post, and a player is labeled on a plurality of learning frames including a basketball game, a first class is labeled on a uniform of a first color in the learning frame, and a uniform of a second color Generating second training data labeled with a second class and third training data labeled with a class specifying whether a goal is successful for a plurality of consecutive frames among the plurality of frames;
Acquiring a game image including a plurality of frames, and setting information on the first team, the second team, and the stadium to be analyzed for the game image;
By inputting the game image into a first neural network based on a Convolution Neural Network (CNN) that has been learned to identify an object including a basketball, a goal post, and a player within the learning frame included in the first training data and determine the location, Generating first information on the position of a goal post, a basketball, and a player included in the frame of the game image;
A CNN (Convolution Neural Network)-based system including a first sub-model trained to determine the first class and a second sub-model trained to determine the second class within a training frame included in the second training data 2 For the neural network, learning data obtained by labeling the first class on the uniform of the first team in the frame included in the game image is additionally learned to the first sub-model, and the frame included in the game image is 2 After additionally learning the training data labeled with the second class on the team's uniform to the second sub-model, input the game image to the position of the uniform of the first team included in the frame of the game image and the Generating second information on the position of the uniform of the second team;
By inputting a plurality of consecutive frames in the game image to a third neural network based on a convolution neural network (CNN) that is trained to determine the success of a goal for a frame for training included in the third training data, the Generating third information on whether a goal is successful for a plurality of consecutive frames; And
A first frame including information on whether or not a goal is successful is determined based on the third information, and a first player who has a basketball last is specified from the first information determined for the first frame, and the By specifying the team of the first player from the second information determined for the first frame, and connecting a predetermined number of frames before the first frame and a predetermined number of frames after the first frame to highlight the first player Including the operation of generating an image,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 하이라이트 영상을 생성하는 동작은,
상기 판별된 팀 및 상기 제1 선수의 득점을 기록하는 동작을 포함하는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The operation of generating the highlight image,
Including the operation of recording the score of the determined team and the first player,
Basketball game analysis device based on multiple neural network models.
삭제delete 제1항에 있어서,
상기 하이라이트 영상을 생성하는 동작은,
상기 제1 정보를 기초로 상기 제1 프레임 이전에 상기 제1 선수가 농구공을 보유하기 시작한 제2 프레임을 판별하는 동작; 및
상기 제2 프레임으로부터 상기 제1 프레임까지 연결된 프레임을 포함하는 상기 제1 선수의 하이라이트 영상을 생성하는 동작을 포함하는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The operation of generating the highlight image,
Determining a second frame in which the first player has started to hold a basketball before the first frame based on the first information; And
Including the operation of generating a highlight image of the first player including a frame connected from the second frame to the first frame,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 제1 정보는,
농구공의 위치와 선수의 위치가 소정 거리 이하인 경우, 상기 소정 거리 이하에 위치하는 선수가 농구공을 보유한 것으로 판별한 정보를 포함하는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The first information,
When the position of the basketball ball and the position of the player are less than or equal to a predetermined distance, including information determined that the player located at the predetermined distance or less possesses the basketball,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 제3 정보를 생성하는 동작은,
상기 제1 정보를 기초로 골포스트의 위치와 농구공의 위치가 소정 거리 이하로 가까워진 경우 동작하도록 설정된,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The operation of generating the third information,
Set to operate when the position of the goal post and the position of the basketball ball are closer to a predetermined distance or less based on the first information,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 제1 신경망은 프로세서가,
CNN(Convolution Neural Network) 알고리즘 기반으로 설계된 모델에 상기 학습 데이터에 포함된 프레임 각각에 레이블링된 클래스와의 상관 관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관 관계를 기초로 프레임 내에서 농구공, 골포스트 및 선수를 특정하고 위치를 판별하는 모델을 생성하는 동작을 수행하여 생성되는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The first neural network is a processor,
By learning the weight of the model that derives a correlation with a class labeled in each frame included in the training data in a model designed based on a convolution neural network (CNN) algorithm, a basketball ball within a frame based on the correlation , Generated by performing an action to create a model that specifies the goal post and the player and determines the location,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 제2 신경망은,
상기 제1 서브모델 및 상기 제2 서브모델을 기초로 상기 경기 영상의 프레임 내에 판별된 유니폼이 상기 제1 팀 또는 상기 제2 팀에 속할 확률을 판별하는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The second neural network,
Determining a probability that the uniform determined in the frame of the game image belongs to the first team or the second team based on the first sub-model and the second sub-model,
Basketball game analysis device based on multiple neural network models.
제1항에 있어서,
상기 제3 신경망은 프로세서가,
CNN(Convolution Neural Network) 알고리즘 기반으로 설계된 모델에 상기 학습 데이터에 포함된 연속된 프레임에 레이블링된 클래스와의 상관 관계를 도출하는 상기 모델의 가중치를 학습시킴으로써, 상기 상관 관계를 기초로 연속된 복수의 프레임 내에서 골 성공 여부를 판별하는 모델을 생성하는 동작을 수행하여 생성되는,
다중 신경망 모델 기반의 농구 경기 분석 장치.
The method of claim 1,
The third neural network is a processor,
By learning the weight of the model that derives a correlation with a class labeled in a continuous frame included in the training data in a model designed based on a convolution neural network (CNN) algorithm, based on the correlation Created by performing an operation to create a model that determines whether or not the goal is successful within the frame,
Basketball game analysis device based on multiple neural network models.
다중 신경망 모델 기반의 농구 경기 분석 장치가 수행하는 다중 신경망 모델 기반의 농구 경기 분석 방법에 있어서,
농구 경기를 포함하는 복수의 학습용 프레임에 농구공, 골포스트 및 선수를 특정하는 클래스가 레이블링된 제1 학습 데이터, 상기 학습용 프레임 내 제1 색상의 유니폼에 제1 클래스가 레이블링되고 제2 색상의 유니폼에 제2 클래스가 레이블링된 제2 학습 데이터, 상기 복수의 프레임 중 연속된 복수의 프레임에 대한 골의 성공 여부를 특정하는 클래스가 레이블링된 제3 학습 데이터를 생성하는 단계;
복수의 프레임을 포함하는 경기 영상을 획득하여, 상기 경기 영상의 분석 대상이 되는 제1 팀, 제2 팀 및 경기장에 대한 정보를 설정하는 단계;
상기 제1 학습 데이터에 포함된 학습용 프레임 내에서 농구공, 골포스트 및 선수를 포함하는 객체를 특정하고 위치를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제1 신경망에 상기 경기 영상을 입력하여, 상기 경기 영상의 프레임 내에 포함된 골포스트, 농구공 및 선수의 위치에 대한 제1 정보를 생성하는 단계;
상기 제2 학습 데이터에 포함된 학습용 프레임 내에서 상기 제1 클래스를 판별하도록 학습된 제1 서브모델 및 상기 제2 클래스를 판별하도록 학습된 제2 서브모델을 포함하는 CNN(Convolution Neural Network) 기반 제2 신경망에 대해, 상기 경기 영상에 포함된 프레임에 상기 제1 팀의 유니폼에 상기 제1 클래스를 레이블링 한 학습 데이터를 상기 제1 서브모델에 추가 학습시키고, 상기 경기 영상에 포함된 프레임에 상기 제2 팀의 유니폼에 상기 제2 클래스를 레이블링한 학습 데이터를 상기 제2 서브모델에 추가 학습시킨 후, 상기 경기 영상을 입력하여 상기 경기 영상의 프레임 내에 포함된 상기 제1 팀의 유니폼의 위치 및 상기 제2 팀의 유니폼의 위치에 대한 제2 정보를 생성하는 단계;
상기 제3 학습 데이터에 포함된 학습용 프레임에 대한 골의 성공 여부를 특정하는 클래스를 판별하도록 학습된 CNN(Convolution Neural Network) 기반 제3 신경망에 상기 경기 영상 중의 연속된 복수의 프레임을 입력하여, 상기 연속된 복수의 프레임에 대한 골 성공 여부에 대한 제3 정보를 생성하는 단계; 및
상기 제3 정보를 기초로 골 성공 여부에 대한 정보를 포함하는 제1 프레임을 판별하고, 상기 제1 프레임에 대해 판별된 상기 제1 정보에서 마지막으로 농구공을 보유한 제1 선수를 특정하고, 상기 제1 프레임에 대해 판별된 상기 제2 정보에서 상기 제1 선수의 팀을 특정하여, 상기 제1 프레임 이전 소정 개수의 프레임 및 상기 제1 프레임 이후 소정 개수의 프레임을 연결하여 상기 제1 선수의 하이라이트 영상을 생성하는 단계를 포함하는,
다중 신경망 모델 기반의 농구 경기 분석 방법.
In a basketball game analysis method based on a multi-neural network model performed by a basketball game analysis apparatus based on a multi-neural network model,
First learning data in which a class specifying a basketball, a goal post, and a player is labeled on a plurality of learning frames including a basketball game, a first class is labeled on a uniform of a first color in the learning frame, and a uniform of a second color Generating second training data labeled with a second class, and third training data labeled with a class specifying whether a goal is successful for a plurality of consecutive frames among the plurality of frames;
Acquiring a game image including a plurality of frames, and setting information on a first team, a second team, and a stadium to be analyzed for the game image;
By inputting the game image into a first neural network based on a Convolution Neural Network (CNN) that has been learned to identify an object including a basketball, a goal post, and a player within the learning frame included in the first training data and determine the location, Generating first information on positions of a goal post, a basketball, and a player included in the frame of the game image;
A CNN (Convolution Neural Network)-based system including a first sub-model trained to determine the first class and a second sub-model trained to determine the second class within a training frame included in the second training data 2 For the neural network, learning data obtained by labeling the first class on the uniform of the first team in the frame included in the game image is additionally learned to the first sub-model, and the frame included in the game image is 2 After additionally learning the training data labeled with the second class on the team's uniform to the second sub-model, input the game image to the position of the uniform of the first team included in the frame of the game image and the Generating second information on the position of the uniform of the second team;
By inputting a plurality of consecutive frames in the game image to a third neural network based on a convolution neural network (CNN) that is trained to determine the success of a goal for a frame for training included in the third training data, the Generating third information on whether a goal is successful for a plurality of consecutive frames; And
A first frame including information on whether or not a goal is successful is determined based on the third information, and a first player who has a basketball last is specified from the first information determined for the first frame, and the By specifying the team of the first player from the second information determined for the first frame, and connecting a predetermined number of frames before the first frame and a predetermined number of frames after the first frame to highlight the first player Including the step of generating an image,
Basketball game analysis method based on multiple neural network models.
제10항의 방법을 프로세서가 수행하도록 하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable recording medium for causing a processor to perform the method of claim 10.
KR1020200087198A 2020-07-15 2020-07-15 Apparatus and method for analyzing basketball match based on multiple neural networks KR102211135B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200087198A KR102211135B1 (en) 2020-07-15 2020-07-15 Apparatus and method for analyzing basketball match based on multiple neural networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200087198A KR102211135B1 (en) 2020-07-15 2020-07-15 Apparatus and method for analyzing basketball match based on multiple neural networks

Publications (2)

Publication Number Publication Date
KR102211135B1 true KR102211135B1 (en) 2021-02-02
KR102211135B9 KR102211135B9 (en) 2021-02-02

Family

ID=74559584

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200087198A KR102211135B1 (en) 2020-07-15 2020-07-15 Apparatus and method for analyzing basketball match based on multiple neural networks

Country Status (1)

Country Link
KR (1) KR102211135B1 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020078449A (en) * 2001-04-09 2002-10-18 (주)버추얼미디어 An Appratus and Method for Automatic Soccer Video Analysis
KR20020078707A (en) * 2001-04-09 2002-10-19 (주)버추얼미디어 An Apparatus and Method for Automatic Extraction of Statistical Information from Sports Video
CN105701460A (en) * 2016-01-07 2016-06-22 王跃明 Video-based basketball goal detection method and device
KR20170107287A (en) * 2016-03-15 2017-09-25 한국전자통신연구원 Apparatus and method for recognizing sports player from broadcast sports video
KR20180063777A (en) * 2016-12-02 2018-06-12 (주) 지티씨솔루션 Soccer information analysis apparatus and the method thereof
KR20180093582A (en) * 2017-02-14 2018-08-22 한국전자통신연구원 Method and apparatus for indexing event sections from video using end-to-end learning
CN108681712A (en) * 2018-05-17 2018-10-19 北京工业大学 A kind of Basketball Match Context event recognition methods of fusion domain knowledge and multistage depth characteristic
KR20180122843A (en) 2017-05-04 2018-11-14 라온시큐어(주) Methods and system for verifying authenticity of qr code
KR20200044207A (en) * 2018-10-11 2020-04-29 장수진 System for providing football content provision system based on team power evaluation using Artificial Intelligence, and technical evaluation server using Artificial Intelligence, football digital content providing server for the same

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020078449A (en) * 2001-04-09 2002-10-18 (주)버추얼미디어 An Appratus and Method for Automatic Soccer Video Analysis
KR20020078707A (en) * 2001-04-09 2002-10-19 (주)버추얼미디어 An Apparatus and Method for Automatic Extraction of Statistical Information from Sports Video
CN105701460A (en) * 2016-01-07 2016-06-22 王跃明 Video-based basketball goal detection method and device
KR20170107287A (en) * 2016-03-15 2017-09-25 한국전자통신연구원 Apparatus and method for recognizing sports player from broadcast sports video
KR20180063777A (en) * 2016-12-02 2018-06-12 (주) 지티씨솔루션 Soccer information analysis apparatus and the method thereof
KR20180093582A (en) * 2017-02-14 2018-08-22 한국전자통신연구원 Method and apparatus for indexing event sections from video using end-to-end learning
KR20180122843A (en) 2017-05-04 2018-11-14 라온시큐어(주) Methods and system for verifying authenticity of qr code
CN108681712A (en) * 2018-05-17 2018-10-19 北京工业大学 A kind of Basketball Match Context event recognition methods of fusion domain knowledge and multistage depth characteristic
KR20200044207A (en) * 2018-10-11 2020-04-29 장수진 System for providing football content provision system based on team power evaluation using Artificial Intelligence, and technical evaluation server using Artificial Intelligence, football digital content providing server for the same
KR102123738B1 (en) * 2018-10-11 2020-06-16 장수진 System for providing football content provision system based on team power evaluation using Artificial Intelligence, and technical evaluation server using Artificial Intelligence, football digital content providing server for the same

Also Published As

Publication number Publication date
KR102211135B9 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
KR102211480B1 (en) Apparatus and method for analyzing basketball match based on 2d coordinates
US11532172B2 (en) Enhanced training of machine learning systems based on automatically generated realistic gameplay information
US11023736B2 (en) Methods and systems of spatiotemporal pattern recognition for video content development
US11380101B2 (en) Data processing systems and methods for generating interactive user interfaces and interactive game systems based on spatiotemporal analysis of video content
US11373405B2 (en) Methods and systems of combining video content with one or more augmentations to produce augmented video
TWI742079B (en) Gesture-based interactive method and device
US11861906B2 (en) Data processing systems and methods for enhanced augmentation of interactive video content
US11120271B2 (en) Data processing systems and methods for enhanced augmentation of interactive video content
TW201814445A (en) Performing operations based on gestures
US20180157974A1 (en) Data-driven ghosting using deep imitation learning
Ghosh et al. Towards structured analysis of broadcast badminton videos
CN108090561A (en) Storage medium, electronic device, the execution method and apparatus of game operation
Cuevas et al. Techniques and applications for soccer video analysis: A survey
US20220335720A1 (en) Data processing systems and methods for generating interactive user interfaces and interactive game systems based on spatiotemporal analysis of video content
US11568617B2 (en) Full body virtual reality utilizing computer vision from a single camera and associated systems and methods
CN112827168B (en) Target tracking method, device and storage medium
US20230021533A1 (en) Method and apparatus for generating video with 3d effect, method and apparatus for playing video with 3d effect, and device
WO2020063835A1 (en) Model generation
Rahman et al. Deepgrip: cricket bowling delivery detection with superior cnn architectures
KR102211135B1 (en) Apparatus and method for analyzing basketball match based on multiple neural networks
CN107133561A (en) Event-handling method and device
Draschkowitz et al. Using video analysis and machine learning for predicting shot success in table tennis
KR102430742B1 (en) Apparatus and method for developing space analysis model based on data augmentation
JP7470997B2 (en) Putting Guide System
Vorstandlechner et al. Digital Playbook-A Teaching Tool for American Football

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]