KR102302368B1 - Operating method of server and user device for providing linked service and user device thereof - Google Patents

Operating method of server and user device for providing linked service and user device thereof Download PDF

Info

Publication number
KR102302368B1
KR102302368B1 KR1020190095603A KR20190095603A KR102302368B1 KR 102302368 B1 KR102302368 B1 KR 102302368B1 KR 1020190095603 A KR1020190095603 A KR 1020190095603A KR 20190095603 A KR20190095603 A KR 20190095603A KR 102302368 B1 KR102302368 B1 KR 102302368B1
Authority
KR
South Korea
Prior art keywords
frame
user device
server
analysis result
meta information
Prior art date
Application number
KR1020190095603A
Other languages
Korean (ko)
Other versions
KR20210017005A (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 KR1020190095603A priority Critical patent/KR102302368B1/en
Publication of KR20210017005A publication Critical patent/KR20210017005A/en
Application granted granted Critical
Publication of KR102302368B1 publication Critical patent/KR102302368B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7837Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7847Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
    • G06F16/7857Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content using texture
    • G06K9/00744
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

일 실시예에 따르면, 영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐하여 분석하고, 분석 결과를 서버에게 전송하며, 분석 결과에 기초하여 서버에서 결정된 연계 서비스를 수신하여 사용자에게 제공하는 사용자 장치의 동작 방법 및 사용자 장치를 제공할 수 있다.According to an embodiment, an operation of a user device that captures and analyzes any one frame included in the image content, transmits the analysis result to the server, and receives a linked service determined by the server based on the analysis result and provides it to the user Methods and user devices may be provided.

Description

연계 서비스 제공을 위한 서버, 사용자 장치의 동작 방법 및 그 사용자 장치{OPERATING METHOD OF SERVER AND USER DEVICE FOR PROVIDING LINKED SERVICE AND USER DEVICE THEREOF}A server for providing linked services, a method of operating a user device, and a user device thereof

실시예들은 연계 서비스 제공을 위한 서버, 사용자 장치의 동작 방법 및 그 사용자 장치에 관한 것이다.Embodiments relate to a server for providing a linked service, a method of operating a user device, and a user device thereof.

정보 통신 기술의 발전에 의해 IP(Internet Protocol) 통신망을 방송 송출 매체로 사용하여 실시간 방송 컨텐츠, 또는 주문형 방송 컨텐츠를 제공하는 IPTV(Internet Protocol Television) 방송 시스템이 상용화되고 있다. IPTV 방송 시스템은 사용자와의 양방향 통신 및 인터넷을 통한 각종 부가 기능들에 의해 TV 화면에 나타난 대상과 관련된 다양한 정보를 제공할 수 있다. 다만, 빠른 화면 전환, 등장 인물들의 표정 변화 등에 의한 인식률 저하로 인해 사용자가 요청하는 시점에 명확하게 이미지 검색 요청을 처리하거나, 연계 서비스를 제공하는 데에 어려움이 있다. With the development of information and communication technology, an IPTV (Internet Protocol Television) broadcasting system that provides real-time broadcasting contents or on-demand broadcasting contents using an IP (Internet Protocol) communication network as a broadcasting transmission medium is being commercialized. The IPTV broadcasting system can provide various information related to an object displayed on a TV screen through interactive communication with a user and various additional functions through the Internet. However, it is difficult to clearly process an image search request or provide a linked service at the time the user requests due to a decrease in the recognition rate due to rapid screen switching and changes in facial expressions of characters.

일 실시예에 따르면, 사용자가 시청 중인 장면에 대한 영상 인식 및/또는 영상 분석을 통해 시청자에게 다양한 연계 서비스를 제공할 수 있다. According to an embodiment, various linked services may be provided to viewers through image recognition and/or image analysis of a scene the user is watching.

일 실시예에 따르면, 사용자 장치는 사용자가 시청 중인 영상 컨텐츠의 어느 하나의 프레임을 캡쳐(capture)하여 분석하고, 분석 결과를 서버에게 전송함으로써 서버에서 결정된 연계 서비스를 빠르게 사용자에게 제공할 수 있다. According to an embodiment, the user device captures and analyzes any one frame of the image content that the user is watching, and transmits the analysis result to the server, so that the linked service determined by the server can be quickly provided to the user.

일 실시예에 따르면, 사용자 장치가 프레임을 분석한 결과 및/또는 메타 정보에 따라 해당 프레임과 관련된 쇼핑 정보, 및 여행 정보 등과 같은 다양한 연계 서비스 및/또는 맞춤형 서비스를 사용자가 원하는 시점에 제공할 수 있다.According to an embodiment, the user device may provide various linked services and/or customized services such as shopping information and travel information related to the frame at a time desired by the user according to the result of analyzing the frame and/or meta information. have.

일 실시예에 따르면, 사용자 장치의 동작 방법은 영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐(capture)하는 단계; 상기 프레임을 분석하는 단계; 상기 분석 결과를 서버에게 전송하는 단계; 상기 분석 결과에 기초하여 상기 서버에서 결정된 연계 서비스를 수신하는 단계; 및 상기 연계 서비스를 사용자에게 제공하는 단계를 포함한다.According to an embodiment, a method of operating a user device includes: capturing any one frame included in image content; analyzing the frame; transmitting the analysis result to a server; receiving a linked service determined by the server based on the analysis result; and providing the linked service to the user.

상기 프레임을 분석하는 단계는 엣지 컴퓨팅(edge computing) 기법에 의해 상기 프레임을 분석하는 단계를 포함할 수 있다. The analyzing of the frame may include analyzing the frame by an edge computing technique.

상기 프레임을 분석하는 단계는 상기 프레임에 포함된 적어도 하나의 객체를 인식하는 단계를 포함할 수 있다. The analyzing of the frame may include recognizing at least one object included in the frame.

상기 적어도 하나의 객체를 인식하는 단계는 GPU(Graphics Processing Unit) 및 NPU(neural process unit) 중 적어도 하나를 이용하여 상기 프레임을 실시간으로 분석함으로써 상기 적어도 하나의 객체를 인식하는 단계를 포함할 수 있다. Recognizing the at least one object may include recognizing the at least one object by analyzing the frame in real time using at least one of a graphics processing unit (GPU) and a neural process unit (NPU). .

상기 프레임을 실시간으로 분석함으로써 상기 적어도 하나의 객체를 인식하는 단계는 딥 러닝에 기반한 제1 신경망 을 이용하여 상기 프레임에 포함된 적어도 하나의 객체의 특징을 분류(classify)하는 단계; 및 상기 분류된 특징을 상기 영상 컨텐츠에 포함된 복수의 프레임들에 걸쳐 히스토그램 값으로 누적함으로써 상기 적어도 하나의 객체를 인식하는 단계를 포함할 수 있다.Recognizing the at least one object by analyzing the frame in real time may include: classifying a feature of the at least one object included in the frame using a first neural network based on deep learning; and recognizing the at least one object by accumulating the classified feature as a histogram value over a plurality of frames included in the image content.

상기 적어도 하나의 객체를 인식하는 단계는 상기 복수의 프레임들에 걸쳐 히스토그램 값으로 누적된 상기 특징의 스코어(score)를 산출하는 단계를 포함할 수 있다. Recognizing the at least one object may include calculating a score of the feature accumulated as a histogram value over the plurality of frames.

상기 사용자 장치의 동작 방법은 상기 프레임에 대응하는 메타 정보를 추출하는 단계를 더 포함하고, 상기 분석 결과를 서버에게 전송하는 단계는 상기 분석 결과 및 상기 메타 정보를 상기 서버에게 전송하는 단계를 포함할 수 있다. The method of operating the user device may further include extracting meta information corresponding to the frame, and transmitting the analysis result to the server may include transmitting the analysis result and the meta information to the server. can

상기 메타 정보를 추출하는 단계는 전자 프로그램 가이드(EPG) 및 VOD 편성 정보 중 적어도 하나에 기초하여 상기 프레임에 대응하는 상기 메타 정보를 추출하는 단계를 포함할 수 있다. The extracting of the meta information may include extracting the meta information corresponding to the frame based on at least one of an electronic program guide (EPG) and VOD programming information.

상기 메타 정보를 추출하는 단계는 미리 학습된 제2 신경망을 이용하여 상기 프레임에 대응하는 상기 메타 정보를 추출하는 단계를 포함할 수 있다. The extracting of the meta information may include extracting the meta information corresponding to the frame using a pre-trained second neural network.

상기 연계 서비스를 수신하는 단계는 상기 분석 결과가 상기 서버의 검색 엔진으로 인가됨에 따라 상기 서버에서 결정된 상기 연계 서비스를 수신하는 단계를 포함할 수 있다.Receiving the link service may include receiving the link service determined by the server as the analysis result is applied to a search engine of the server.

상기 영상 컨텐츠는 TV 방송 컨텐츠, 영화 컨텐츠, 및 VOD(Video On Demand) 컨텐츠 중 어느 하나를 포함할 수 있다. The image content may include any one of TV broadcast content, movie content, and video on demand (VOD) content.

상기 분석 결과는 상기 프레임에 포함된 인물, 장면, 상품, 장소, 글자, 및 상기 프레임으로부터 분류된 특징의 스코어 중 적어도 하나를 포함할 수 있다.The analysis result may include at least one of a person, a scene, a product, a place, a character included in the frame, and a score of a feature classified from the frame.

일 실시예에 따르면, 서버의 동작 방법은 사용자 장치로부터, 상기 사용자 장치에 의해 캡쳐된 프레임의 분석 결과 및 상기 캡쳐된 프레임에 대응하는 메타 정보 중 적어도 하나를 수신하는 단계; 상기 분석 결과 및 상기 메타 정보 중 적어도 하나를 기초로, 상기 프레임에 대응하는 연계 서비스를 검색하는 단계; 및 상기 연계 서비스를 상기 사용자 장치에게 전송하는 단계를 포함한다. According to an embodiment, the method of operating a server includes: receiving, from a user device, at least one of an analysis result of a frame captured by the user device and meta information corresponding to the captured frame; searching for a linked service corresponding to the frame based on at least one of the analysis result and the meta information; and transmitting the association service to the user device.

상기 연계 서비스를 검색하는 단계는 상기 분석 결과에 포함된 스코어(score)에 대응하는 연계 서비스를 결정하도록 학습된 제3 신경망을 이용하여 상기 연계 서비스를 검색하는 단계를 포함할 수 있다. The searching for the associated service may include searching for the associated service using a third neural network trained to determine the associated service corresponding to a score included in the analysis result.

상기 서버의 동작 방법은 상기 분석 결과에 제1 가중치를 부여하는 단계; 및 상기 메타 정보에 제2 가중치를 부여하는 단계 중 적어도 하나를 더 포함할 수 있다. The method of operating the server may include: assigning a first weight to the analysis result; and assigning a second weight to the meta information.

상기 연계 서비스를 검색하는 단계는 상기 제1 가중치가 부여된 분석 결과 및 상기 제2 가중치가 부여된 메타 정보 중 적어도 하나를 기초로, 상기 프레임에 대응하는 연계 서비스를 검색하는 단계를 포함할 수 있다. The searching for the linked service may include searching for the linked service corresponding to the frame based on at least one of the first weighted analysis result and the second weighted meta information. .

일 실시예에 따르면, 사용자 장치는 영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐하는 센서; 상기 프레임을 분석하는 프로세서; 상기 분석 결과를 서버에게 전송하고, 상기 분석 결과에 기초하여 상기 서버에서 결정된 연계 서비스를 수신하는 통신 인터페이스; 및 상기 연계 서비스를 사용자에게 제공하는 디스플레이를 포함한다. According to one embodiment, the user device includes a sensor for capturing any one frame included in the image content; a processor that analyzes the frame; a communication interface for transmitting the analysis result to the server, and receiving a linked service determined by the server based on the analysis result; and a display that provides the linked service to a user.

상기 프로세서는 상기 프레임을 실시간으로 분석함으로써 상기 적어도 하나의 객체를 인식할 수 있다. The processor may recognize the at least one object by analyzing the frame in real time.

상기 프로세서는 딥 러닝에 기반한 제1 신경망을 이용하여 상기 프레임에 포함된 적어도 하나의 객체의 특징을 분류하고, 상기 분류된 특징을 상기 영상 컨텐츠에 포함된 복수의 프레임들에 걸쳐 히스토그램 값으로 누적함으로써 상기 적어도 하나의 객체를 인식할 수 있다.The processor classifies a feature of at least one object included in the frame using a first neural network based on deep learning, and accumulates the classified feature as a histogram value over a plurality of frames included in the image content. The at least one object may be recognized.

일 측에 따르면, 사용자가 시청 중인 장면에 대한 영상 인식 및/또는 영상 분석을 통해 시청자에게 다양한 연계 서비스를 제공할 수 있다. According to one side, various linked services may be provided to viewers through image recognition and/or image analysis of a scene the user is watching.

일 측에 따르면, 사용자 장치는 사용자가 시청 중인 영상 컨텐츠의 어느 하나의 프레임을 캡쳐(capture)하여 분석하고, 분석 결과를 서버에게 전송함으로써 서버에서 결정된 연계 서비스를 빠르게 사용자에게 제공할 수 있다. According to one side, the user device captures and analyzes any one frame of the image content that the user is watching, and transmits the analysis result to the server, so that the linked service determined by the server can be quickly provided to the user.

일 측에 따르면, 사용자 장치가 프레임을 분석한 결과 및/또는 메타 정보에 따라 해당 프레임과 관련된 쇼핑 정보, 및 여행 정보 등과 같은 다양한 연계 서비스 및/또는 맞춤형 서비스를 사용자가 원하는 시점에 제공할 수 있다.According to one side, the user device may provide various linked services and/or customized services such as shopping information and travel information related to the frame at a time desired by the user according to the result of analyzing the frame and/or meta information. .

도 1은 일 실시예에 따른 사용자 장치의 동작 방법을 나타낸 흐름도.
도 2는 일 실시예에 따른 사용자 장치와 서버 간의 동작 방법을 설명하기 위한 도면.
도 3 내지 도 4는 일 실시예에 따른 사용자 장치가 적어도 하나의 객체를 인식하는 방법을 설명하기 위한 도면.
도 5는 일 실시예에 따른 서버의 동작 방법을 나타낸 흐름도.
도 6은 일 실시예에 따른 제3 신경망이 연계 서비스를 결정하는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따른 사용자 장치의 블록도.
1 is a flowchart illustrating a method of operating a user device according to an embodiment;
2 is a diagram for explaining an operation method between a user device and a server according to an embodiment;
3 to 4 are diagrams for explaining a method of recognizing at least one object by a user device according to an exemplary embodiment;
5 is a flowchart illustrating a method of operating a server according to an embodiment.
6 is a diagram for explaining a method for a third neural network to determine a connection service according to an embodiment;
Fig. 7 is a block diagram of a user device according to an embodiment;

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Like reference numerals in each figure indicate like elements.

아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Various modifications may be made to the embodiments described below. It should be understood that the embodiments described below are not intended to limit the embodiments, and include all modifications, equivalents or substitutes thereto.

실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in the examples are only used to describe specific examples, and are not intended to limit the examples. The singular expression includes the plural expression unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are assigned the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In the description of the embodiment, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.

도 1은 일 실시예에 따른 사용자 장치의 동작 방법을 나타낸 흐름도이다. 도 1을 참조하면, 일 실시예에 따른 사용자 장치는 영상 컨텐츠에 포함된 어느 하나의 프레임(frame)을 캡쳐(capture)한다(110). 영상 컨텐츠는 예를 들어, TV 방송 컨텐츠, 영화 컨텐츠, 및 VOD(Video On Demand) 컨텐츠 등을 포함할 수 있으며, 반드시 이에 한정되지는 않는다. 사용자 장치는 예를 들어, 영상 컨텐츠를 시청 중인 사용자가 사용자 장치와 무선으로 연결된 리모컨(Remote Control Unit; RCU)의 핫 키(hot key)를 클릭(click)하거나, 또는 사용자 장치의 화면에 표시되는 사용자 인터페이스(user interface)를 터치(touch)함에 따라 트리거(trigger)되어 사용자가 시청 중인 장면의 프레임을 캡쳐할 수 있다. 여기서, 프레임은 영상 프레임일 수 있다. 사용자 장치는 예를 들어, 스마트 폰, 스마트 TV(Smart Television), IPTV(Internet Protocol Television) 등과 같이 디스플레이 장치 및 통신 장치를 포함하고, IPTV 서비스 또는 영상 제공 서비스를 제공할 수 있는 장치일 수 있다. 사용자 장치는 예를 들어, 이미지 센서, 카메라 센서 등을 이용하여 어느 하나의 프레임을 캡쳐할 수 있다. 1 is a flowchart illustrating a method of operating a user device according to an exemplary embodiment. Referring to FIG. 1 , a user device according to an embodiment captures any one frame included in image content ( 110 ). The image content may include, for example, TV broadcast content, movie content, and video on demand (VOD) content, but is not limited thereto. The user device is, for example, when a user watching video content clicks a hot key of a remote control unit (RCU) wirelessly connected to the user device, or is displayed on the screen of the user device. By touching a user interface (user interface) is triggered (triggered), it is possible to capture the frame of the scene the user is watching. Here, the frame may be an image frame. The user device may include, for example, a display device and a communication device such as a smart phone, a smart TV (Smart Television), and an IPTV (Internet Protocol Television), and may be a device capable of providing an IPTV service or an image providing service. The user device may capture any one frame using, for example, an image sensor, a camera sensor, or the like.

사용자 장치는 프레임을 분석한다(120). 사용자 장치는 예를 들어, 엣지 컴퓨팅(edge computing) 기법에 의해 프레임을 분석할 수 있다. '엣지 컴퓨팅 기법'은 각각의 사용자 장치와 가까운 네트워크의 가장 자리에서 컴퓨팅 기능을 수행하는 기법이다. 다시 말해, 엣지 컴퓨팅 기법은 다양한 사용자 장치에서 발생하는 데이터를 클라우드와 같은 중앙 집중식 데이터 센터로 보내지 않고 데이터가 발생하는 현장 혹은 근거리에서 실시간 처리하는 방식으로 데이터 흐름의 가속화를 지원하는 컴퓨팅 방식이다. 사용자 장치는 프레임에 포함된 적어도 하나의 객체를 인식할 수 있다. 사용자 장치는 예를 들어, 도 2에 도시된 것과 같이 GPU(Graphics Processing Unit) 및 NPU(neural process unit) 중 적어도 하나를 이용하여 프레임을 실시간으로 분석함으로써 적어도 하나의 객체를 인식할 수 있다. 사용자 장치는 예를 들어, 딥 러닝에 기반한 제1 신경망을 이용하여 프레임에 포함된 적어도 하나의 객체의 특징을 분류(classify)할 수 있다. 사용자 장치는 분류된 특징을 영상 컨텐츠에 포함된 복수의 프레임들에 걸쳐 히스토그램 값으로 누적함으로써 적어도 하나의 객체를 인식할 수 있다. 사용자 장치가 적어도 하나의 객체의 특징을 분류하는 방법은 아래의 도 3을 참조하여 구체적으로 설명한다. 또한, 사용자 장치가 누적된 히스토그램 값에 의해 적어도 하나의 객체를 인식하는 방법은 아래의 도 4를 참조하여 구체적으로 설명한다. The user device analyzes the frame ( 120 ). The user device may analyze the frame by, for example, an edge computing technique. The 'edge computing technique' is a technique for performing computing functions at the edge of a network close to each user device. In other words, the edge computing technique is a computing method that supports the acceleration of data flow by processing data generated from various user devices in real time at the site or near the data center without sending it to a centralized data center such as the cloud. The user device may recognize at least one object included in the frame. For example, as shown in FIG. 2 , the user device may recognize at least one object by analyzing the frame in real time using at least one of a graphics processing unit (GPU) and a neural process unit (NPU). The user device may classify the feature of at least one object included in the frame using, for example, a first neural network based on deep learning. The user device may recognize at least one object by accumulating the classified features as histogram values over a plurality of frames included in the image content. A method for the user device to classify the characteristics of at least one object will be described in detail with reference to FIG. 3 below. Also, a method for the user device to recognize at least one object based on the accumulated histogram value will be described in detail with reference to FIG. 4 below.

실시예에 따라서, 사용자 장치는 프레임에 대응하는 메타 정보를 추출할 수도 있다. 사용자 장치는 예를 들어, 전자 프로그램 가이드(Electronic Program Guiede; EPG) 및 VOD(Video On Demand) 편성 정보 중 적어도 하나에 기초하여 프레임에 대응하는 메타 정보를 추출할 수 있다. 또는, 사용자 장치는 미리 학습된 제2 신경망을 이용하여 프레임에 대응하는 메타 정보를 추출할 수 있다. 여기서, '메타 정보'는 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 컨텐츠에 대하여 부여되는 정보일 수 있다. 메타 정보는 동영상, 소리, 문서 등과 같이 실제로 존재하거나 사용할 수 있는 데이터는 아니지만, 실제 데이터와 직, 간접적으로 연관된 정보를 제공해주는 데이터에 해당할 수 있다. 메타 정보는 예를 들어, 제목, 제공 시간, 등급, 컨텐츠의 위치와 내용, 작성자(감독 또는 제작사)에 관한 정보, 권리 조건, 이용 조건, 이용 내력 등을 포함할 수 있다. 메타 정보는 데이터를 표현하기 위해 사용될 수도 있고, 또는 데이터를 빨리 찾기 위한 인덱스 역할을 수행할 수도 있다. 서버는 메타 정보를 이용하여 검색 엔진 등을 검색함으로써 원하는 특정 정보를 쉽게 찾아낼 수 있다.According to an embodiment, the user device may extract meta information corresponding to the frame. The user device may extract meta information corresponding to the frame based on at least one of, for example, electronic program guide (EPG) and video on demand (VOD) programming information. Alternatively, the user device may extract meta information corresponding to the frame by using the second neural network learned in advance. Here, 'meta information' may be information given to content according to a certain rule in order to efficiently find and use the information that is being sought from among a large amount of information. Meta information is not data that actually exists or can be used, such as a video, sound, document, etc., but may correspond to data that provides information directly or indirectly related to actual data. The meta information may include, for example, title, provision time, rating, location and content of content, information about a creator (director or producer), rights conditions, conditions of use, history of use, and the like. Meta information may be used to represent data, or may serve as an index for quickly finding data. The server can easily find desired specific information by searching a search engine or the like using meta information.

사용자 장치는 분석 결과를 서버에게 전송한다(130). 사용자 장치가 프레임에 대응하는 메타 정보를 추출한 경우, 사용자 장치는 분석 결과 및 메타 정보를 서버에게 전송할 수 있다. 분석 결과는 예를 들어, 프레임에 포함된 인물, 장면, 상품, 장소, 글자, 프레임으로부터 분류된 특징의 스코어 등을 포함할 수 있다. The user device transmits the analysis result to the server (130). When the user device extracts meta information corresponding to the frame, the user device may transmit the analysis result and meta information to the server. The analysis result may include, for example, a person, a scene, a product, a place, a character included in the frame, a score of a feature classified from the frame, and the like.

사용자 장치는 분석 결과에 기초하여 서버에서 결정된 연계 서비스를 수신한다(140). 사용자 장치는 분석 결과가 서버의 검색 엔진으로 인가됨에 따라 서버에서 결정된 연계 서비스를 수신할 수 있다. The user device receives the association service determined by the server based on the analysis result ( 140 ). The user device may receive the linked service determined by the server as the analysis result is applied to the search engine of the server.

사용자 장치는 연계 서비스를 사용자에게 제공한다(150).The user device provides the association service to the user ( 150 ).

도 2는 일 실시예에 따른 사용자 장치와 서버 간의 동작 방법을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 서버(205) 및 사용자 장치(210)가 도시된다. 사용자 장치(210)는 CPU(213)와 GPU(또는 NPU)(216)를 포함할 수 있다. 2 is a diagram for explaining an operation method between a user device and a server according to an embodiment. 2 , a server 205 and a user device 210 are shown according to one embodiment. The user device 210 may include a CPU 213 and a GPU (or NPU) 216 .

예를 들어, 사용자 장치(210)가 사용자의 터치 입력 또는 클릭에 의해 트리거된 실시간 장면 인식 요청을 수신했다고 하자. CPU(213)는 실시간 장면 인식 요청에 따라 영상 컨텐츠의 어느 하나의 프레임을 캡쳐하고, 캡쳐된 프레임과 함께 실시간 장면 인식 요청을 GPU(또는 NPU)(216)에게 전송할 수 있다(220). For example, suppose that the user device 210 receives a real-time scene recognition request triggered by a user's touch input or click. The CPU 213 may capture any one frame of image content according to the real-time scene recognition request, and transmit the real-time scene recognition request together with the captured frame to the GPU (or NPU) 216 ( 220 ).

GPU(또는 NPU)(216)는 단계(220)의 요청에 응답하여 실시간으로 프레임을 인식할 수 있다(230). GPU(또는 NPU)(216)는 프레임을 분석하여 프레임에 포함된 적어도 하나의 객체를 인식할 수 있다. 이때, 실시예에 따라서, GPU(또는 NPU)(216)는 프레임 내 메타 정보를 추출할 수도 있다(240). GPU(또는 NPU)(216)는 프레임을 실시간으로 분석함으로써 적어도 하나의 객체를 인식하여 인식 결과 리스트를 갱신하고, 분석 결과에 따라 스코어링(scoring)을 진행할 수 있다(250). GPU(또는 NPU)(216)는 분석 결과 및/또는 스코어를 서버에게 전송할 수 있다. 서버(205)는 분석 결과에 기초하여 프레임에 대응하는 연계 서비스를 검색할 수 있다. 서버(205)는 사용자 장치(210) 또는 CPU(213)에게 검색 결과, 다시 말해 검색된 연계 서비스를 전달할 수 있다(260). 서버(205)는 예를 들어, 스코어가 미리 설정된 기준값보다 높거나, 또는 영상 컨텐츠의 재생 또는 방송 컨텐츠가 종료된 후에 검색 결과를 전달할 수 있다. GPU(또는 NPU)(216)의 동작을 아래의 도 3 내지 도 4를 참조하여 구체적으로 설명한다. GPU (or NPU) 216 may recognize the frame in real time in response to the request of step 220 (230). The GPU (or NPU) 216 may analyze the frame to recognize at least one object included in the frame. In this case, according to an embodiment, the GPU (or NPU) 216 may extract meta information within the frame ( 240 ). The GPU (or NPU) 216 may recognize at least one object by analyzing the frame in real time, update the recognition result list, and perform scoring according to the analysis result ( 250 ). The GPU (or NPU) 216 may transmit the analysis result and/or score to the server. The server 205 may search for a link service corresponding to the frame based on the analysis result. The server 205 may transmit the search result, that is, the searched associated service, to the user device 210 or the CPU 213 ( 260 ). For example, the server 205 may deliver the search result after the score is higher than a preset reference value or after the reproduction of the video content or the broadcast content is finished. An operation of the GPU (or NPU) 216 will be described in detail with reference to FIGS. 3 to 4 below.

도 3 내지 도 4는 실시예들에 따른 사용자 장치가 적어도 하나의 객체를 인식하는 방법을 설명하기 위한 도면이다. 3 to 4 are diagrams for explaining a method of recognizing at least one object by a user device according to embodiments.

도 3을 참조하면, 일 실시예에 따른 사용자 장치가 제1 신경망을 이용하여 프레임에 포함된 적어도 하나의 객체의 특징을 분류(classify)하는 과정이 도시된다. 제1 신경망은 예를 들어, R-CNN(Region with Convolutional Neural Network)일 수 있다. R-CNN은 영상 분류(Image classification)를 수행하는 CNN(Convolutional Neural Network)과 영상에서 객체가 존재할 영역을 제안해주는 영역 제안(region proposal) 알고리즘을 연결하여 높은 성능의 객체 검출을 수행할 수 있다. Referring to FIG. 3 , a process of classifying a feature of at least one object included in a frame by a user device using a first neural network according to an exemplary embodiment is illustrated. The first neural network may be, for example, a region with convolutional neural network (R-CNN). R-CNN can perform high-performance object detection by connecting a convolutional neural network (CNN) that performs image classification and a region proposal algorithm that suggests regions in which objects exist in an image.

사용자 장치는 캡쳐된 어느 하나의 프레임이 입력되면(310), 프레임으로부터 객체가 존재할 만한 복수 개의 후보 영역들, 다시 말해 리전 프로포절(region proposal)들을 획득할 수 있다(320).When any one captured frame is input ( 310 ), the user device may obtain a plurality of candidate regions in which an object may exist, that is, region proposals from the frame ( 320 ).

사용자 장치는 각 후보 영역들을 프레임으로부터 잘라내어 동일한 크기의 영역들(warped regions)로 만든 후, CNN을 활용해 각 영역의 적어도 하나의 특징을 추출할 수 있다(330). The user device cuts each candidate region from the frame to make warped regions of the same size, and then extracts at least one feature of each region using CNN ( 330 ).

사용자 장치는 각 영역의 적어도 하나의 특징을 분류할 수 있다(340). 사용자 장치는 각 영역의 적어도 하나의 특징에 대한 분류 결과와 바운딩 박스 리그레션(bounding box regression)을 계산할 수 있다. 사용자 장치는 바운딩 박스 리그레션을 통해 검출 정확도를 향상시킬 수 있다. The user device may classify at least one characteristic of each area ( 340 ). The user device may calculate a classification result for at least one feature of each region and a bounding box regression. The user device may improve detection accuracy through bounding box regression.

도 4를 참조하면, 일 실시예에 따른 사용자 장치가 분류된 특징을 기초로 적어도 하나의 객체를 인식하는 과정이 도시된다. 일 실시예에 따른 사용자 장치는 도 3을 통해 분류된 특징을 영상 컨텐츠에 포함된 복수의 프레임들에 걸쳐 히스토그램 값으로 누적함으로써 적어도 하나의 객체 또는 적어도 하나의 객체의 클래스를 인식할 수 있다. 사용자 장치는 복수의 프레임들에 걸쳐 히스토그램 값으로 누적된 특징의 스코어(score)를 산출할 수 있다.Referring to FIG. 4 , a process of recognizing at least one object based on a classified feature by a user device according to an exemplary embodiment is illustrated. The user device according to an embodiment may recognize at least one object or a class of at least one object by accumulating the features classified through FIG. 3 as a histogram value over a plurality of frames included in the image content. The user device may calculate a score of the accumulated feature as a histogram value over a plurality of frames.

보다 구체적으로, 사용자 장치는 분류된 특징들에 대해 클러스터링을 수행하여 클러스터 센터(center)들인 코드워드(codeword)들을 찾을 수 있다. 사용자 장치는 예를 들어, k-means clustering 기법에 의해 클러스터링을 수행할 수 있다. More specifically, the user equipment may perform clustering on the classified features to find codewords that are cluster centers. The user equipment may perform clustering by, for example, a k-means clustering technique.

사용자 장치는 코드워드들로 구성된 코드북을 생성할 수 있다. 이때, 코드북은 객체의 클래스마다 생성하는 것이 아니라 공통적으로 하나만 생성되며 모든 클래스의 코드워드들을 포함할 수 있다. 사용자 장치는 각각의 이미지들을 도 4에 도시된 것과 같이 코드워드들의 히스토그램 값으로 표현할 수 있다. 여기서, '히스토그램 값'은 각각의 코드워드가 프레임에서 몇 번 나타났는지 개수를 센 것에 해당할 수 있다. The user device may generate a codebook composed of codewords. At this time, the codebook is not generated for each class of object, but is generated in common and may include codewords of all classes. The user device may represent each image as a histogram value of codewords as shown in FIG. 4 . Here, the 'histogram value' may correspond to counting the number of times each codeword appears in a frame.

사용자 장치는 예를 들어, 객체의 클래스 별 히스토그램 값을 확률로서 해석하여 물체를 분류하는 discriminative 방법에 의해 적어도 하나의 객체 또는 적어도 하나의 객체의 클래스를 인식할 수 있다. discriminative 방법은 히스토그램 값을 특징 벡터(feature vector)로 해석하여 SVM(support vector machine)등의 분류기에 넣고 클래스 경계를 학습함으로써 객체 또는 객체의 클래스를 인식할 수 있다. The user device may recognize at least one object or a class of at least one object by a discriminative method of classifying the object by, for example, interpreting a histogram value for each class of the object as a probability. The discriminative method interprets a histogram value as a feature vector, puts it in a classifier such as a support vector machine (SVM), etc., and learns the class boundary to recognize an object or a class of an object.

도 5는 일 실시예에 따른 서버의 동작 방법을 나타낸 흐름도이다. 도 5를 참조하면, 일 실시예에 따른 서버는 사용자 장치로부터, 사용자 장치에 의해 캡쳐된 프레임의 분석 결과 및 캡쳐된 프레임에 대응하는 메타 정보 중 적어도 하나를 수신한다(510). 일 실시예에 따른 서버는 사용자가 원하는 특정 시점에 캡쳐된 프레임뿐만 아니라, 지속적인 모니터링을 통해 프레임을 자동으로 캡쳐하여 축적된 정보를 활용할 수 있다. 5 is a flowchart illustrating a method of operating a server according to an embodiment. Referring to FIG. 5 , the server according to an embodiment receives, from the user device, at least one of an analysis result of a frame captured by the user device and meta information corresponding to the captured frame ( S510 ). The server according to an embodiment may utilize information accumulated by automatically capturing frames through continuous monitoring as well as frames captured at a specific point in time desired by the user.

서버는 분석 결과 및 메타 정보 중 적어도 하나를 기초로, 프레임에 대응하는 연계 서비스를 검색한다(520). 여기서, '연계 서비스'는 사용자가 시청 중인 영상 컨텐츠 또는 해당 영상 컨텐츠에 포함된 어느 하나의 프레임에 노출된 객체와 관련성을 갖는 서비스일 수 있다. 연계 서비스는 예를 들어, 사용자가 시청 중인 드라마에서 나왔던 상품의 쇼핑 서비스, 해당 드라마에 출연한 연기자의 다른 출연작 VOD 추천, 해당 드라마에 등장한 유명 관광지에 대한 투어 서비스 등을 포함할 수 있다. 서버가 연계 서비스를 검색하는 방법은 아래의 도 6을 참조하여 구체적으로 설명한다. The server searches for a link service corresponding to the frame based on at least one of the analysis result and meta information ( 520 ). Here, the 'linked service' may be a service having a relationship with the image content that the user is watching or an object exposed to any one frame included in the image content. The linked service may include, for example, a shopping service for products that appeared in a drama that the user is watching, a VOD recommendation for an actor who appeared in the drama, and a tour service to a famous tourist destination appearing in the corresponding drama. A method for the server to search for a linked service will be described in detail with reference to FIG. 6 below.

서버는 연계 서비스를 사용자 장치에게 전송한다(530). The server transmits the association service to the user device (530).

도 6은 일 실시예에 따른 제3 신경망이 연계 서비스를 결정하는 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 일 실시예에 따른 제3 신경망의 동작이 도시된다.FIG. 6 is a diagram for describing a method for a third neural network to determine an associated service according to an embodiment. Referring to FIG. 6 , an operation of a third neural network according to an embodiment is illustrated.

서버는 예를 들어, 사용자 장치로부터 수신한 분석 결과에 포함된 스코어에 대응하는 연계 서비스를 결정하도록 미리 학습된 제3 신경망을 이용하여 연계 서비스를 검색할 수 있다. 또는 서버는 예를 들어, 분석 결과에 포함된 스코어 및 메타 정보에 대응하는 연계 서비스를 결정하도록 학습된 제4 신경망을 이용하여 연계 서비스를 검색할 수도 있다. 이때, 서버는 예를 들어, 분석 결과(보다 구체적으로는 스코어)(xo)에 제1 가중치(wo)를 부여하고, 메타 정보(x1)에 제2 가중치(w1)를 부여할 수 있다. 서버는 예를 들어, 제1 가중치가 부여된 분석 결과 및 제2 가중치가 부여된 메타 정보 중 적어도 하나를 기초로, 프레임에 대응하는 연계 서비스를 검색할 수 있다.The server may search for an association service using, for example, a third neural network trained in advance to determine an association service corresponding to a score included in an analysis result received from the user device. Alternatively, the server may search for a link service using, for example, a fourth neural network trained to determine a link service corresponding to the score and meta information included in the analysis result. In this case, for example, the server assigns a first weight (w o ) to the analysis result (more specifically, a score) (x o ), and gives a second weight (w 1 ) to the meta information (x 1 ). can The server may search for a link service corresponding to the frame, for example, based on at least one of the first weighted analysis result and the second weighted meta information.

서버는 스코어가 미리 설정된 임계값을 초과하는 경우, 스코어에 매칭된 서비스 결과를 실행할 수 있다. When the score exceeds a preset threshold, the server may execute a service result matched to the score.

도 7은 일 실시예에 따른 사용자 장치의 블록도이다. 도 7을 참조하면, 일 실시예에 따른 사용자 장치(700)는 센서(710), 프로세서(730), 통신 인터페이스(750), 및 디스플레이(770)를 포함한다. 사용자 장치(700)는 메모리(790)를 더 포함할 수 있다. 센서(710), 프로세서(730), 통신 인터페이스(750), 디스플레이(770) 및 메모리(790)는 통신 버스(705)를 통해 서로 통신할 수 있다. 7 is a block diagram of a user device according to an embodiment. Referring to FIG. 7 , a user device 700 according to an embodiment includes a sensor 710 , a processor 730 , a communication interface 750 , and a display 770 . User device 700 may further include memory 790 . Sensor 710 , processor 730 , communication interface 750 , display 770 , and memory 790 may communicate with each other via communication bus 705 .

센서(710)는 영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐한다. 센서(710)는 예를 들어, 이미지 센서, 비전 센서, 카메라 센서 중 어느 하나일 수 있다. 센서(710)는 예를 들어, 사용자 장치에 연결된 리모컨의 신호에 따라 사용자가 시청 중인 영상 컨텐츠의 어느 하나의 프레임을 캡쳐할 수 있다. The sensor 710 captures any one frame included in the image content. The sensor 710 may be, for example, any one of an image sensor, a vision sensor, and a camera sensor. The sensor 710 may, for example, capture any one frame of the image content that the user is watching according to a signal from a remote control connected to the user device.

프로세서(730)는 센서(710)가 캡쳐한 프레임을 분석한다. 프로세서(730)는 프레임을 실시간으로 분석함으로써 적어도 하나의 객체를 인식한다. 프로세서(730)는 예를 들어, 딥 러닝에 기반한 제1 신경망을 이용하여 프레임에 포함된 적어도 하나의 객체의 특징을 분류한다. 프로세서(730)는 분류된 특징을 영상 컨텐츠에 포함된 복수의 프레임들에 걸쳐 히스토그램 값으로 누적함으로써 적어도 하나의 객체를 인식한다. The processor 730 analyzes the frame captured by the sensor 710 . The processor 730 recognizes at least one object by analyzing the frame in real time. The processor 730 classifies the features of at least one object included in the frame using, for example, a first neural network based on deep learning. The processor 730 recognizes at least one object by accumulating the classified features as histogram values over a plurality of frames included in the image content.

통신 인터페이스(750)는 프로세서(730)의 분석 결과를 서버에게 전송한다. 통신 인터페이스(750)는 분석 결과에 기초하여 서버에서 결정된 연계 서비스를 수신한다. The communication interface 750 transmits the analysis result of the processor 730 to the server. The communication interface 750 receives the association service determined by the server based on the analysis result.

디스플레이(770)는 통신 인터페이스(750)가 수신한 연계 서비스를 사용자에게 제공한다. The display 770 provides a link service received by the communication interface 750 to the user.

또한, 프로세서(730)는 도 1 내지 도 4를 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(730)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다. In addition, the processor 730 may perform the at least one method described above with reference to FIGS. 1 to 4 or an algorithm corresponding to the at least one method. The processor 730 may be a hardware-implemented data processing device having a circuit having a physical structure for executing desired operations. For example, desired operations may include code or instructions included in a program. For example, a data processing device implemented as hardware includes a microprocessor, a central processing unit, a processor core, a multi-core processor, and a multiprocessor. , an Application-Specific Integrated Circuit (ASIC), and a Field Programmable Gate Array (FPGA).

프로세서(730)는 프로그램을 실행하고, 사용자 장치(700)를 제어할 수 있다. 프로세서(730)에 의하여 실행되는 프로그램 코드는 메모리(790)에 저장될 수 있다.The processor 730 may execute a program and control the user device 700 . The program code executed by the processor 730 may be stored in the memory 790 .

메모리(790)는 프로세서(730)의 분석 결과를 저장할 수 있다.The memory 790 may store an analysis result of the processor 730 .

메모리(790)는 상술한 프로세서(730)에서의 처리 과정에서 생성되는 다양한 정보들을 저장할 수 있다. 이 밖에도, 메모리(790)는 각종 데이터와 프로그램 등을 저장할 수 있다. 메모리(790)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(790)는 하드 디스크 등과 같은 대용량 저장 매체를 구비하여 각종 데이터를 저장할 수 있다.The memory 790 may store various pieces of information generated in the process of the above-described processor 730 . In addition, the memory 790 may store various data and programs. Memory 790 may include volatile memory or non-volatile memory. The memory 790 may include a mass storage medium such as a hard disk to store various data.

일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, although the present invention has been described with reference to limited embodiments and drawings, the present invention is not limited to the above embodiments, and various modifications and variations from these descriptions are provided by those skilled in the art to which the present invention pertains. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined by the following claims as well as the claims and equivalents.

700: 사용자 장치
705: 통신 버스
710: 센서
730: 프로세서
750: 통신 인터페이스
770: 디스플레이
790: 메모리
700: user device
705: communication bus
710: sensor
730: processor
750: communication interface
770: display
790: memory

Claims (20)

영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐(capture)하는 단계;
상기 프레임을 분석하는 단계;
상기 분석 결과를 서버에게 전송하는 단계;
상기 분석 결과에 기초하여 상기 서버에서 결정된 연계 서비스를 수신하는 단계; 및
상기 연계 서비스를 사용자에게 제공하는 단계
를 포함하고,
상기 프레임을 분석하는 단계는
딥 러닝에 기반한 제1 신경망을 이용하여 상기 프레임에 포함된 적어도 하나의 객체의 특징을 분류(classify)하는 단계;
상기 분류된 특징들에 대해 클러스터링을 수행하여 코드워드들을 찾는 단계;
복수의 프레임들 별로 상기 코드워드들로 구성된 코드북- 상기 코드북은 프레임 별 모든 클래스의 코드워드들을 포함함 -을 생성하는 단계; 및
상기 코드북에 포함된 객체의 클래스 별 히스토그램 값으로 누적된 스코어를 산출함으로써 상기 적어도 하나의 객체를 인식하는 단계
를 포함하는, 사용자 장치의 동작 방법.
capturing any one frame included in the image content;
analyzing the frame;
transmitting the analysis result to a server;
receiving a linked service determined by the server based on the analysis result; and
providing the linked service to the user
including,
Analyzing the frame
classifying a feature of at least one object included in the frame using a first neural network based on deep learning;
finding codewords by performing clustering on the classified features;
generating a codebook composed of the codewords for each frame, the codebook including codewords of all classes for each frame; and
Recognizing the at least one object by calculating an accumulated score with a histogram value for each class of the object included in the codebook
A method of operating a user device comprising a.
제1항에 있어서,
상기 프레임을 분석하는 단계는
엣지 컴퓨팅(edge computing) 기법에 의해 상기 프레임을 분석하는 단계
를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
Analyzing the frame
analyzing the frame by an edge computing technique
A method of operating a user device comprising a.
제1항에 있어서,
상기 프레임을 분석하는 단계는
상기 프레임에 포함된 적어도 하나의 객체를 인식하는 단계
를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
Analyzing the frame
Recognizing at least one object included in the frame
A method of operating a user device comprising a.
제3항에 있어서,
상기 적어도 하나의 객체를 인식하는 단계는
GPU(Graphics Processing Unit) 및 NPU(neural process unit) 중 적어도 하나를 이용하여 상기 프레임을 실시간으로 분석함으로써 상기 적어도 하나의 객체를 인식하는 단계
를 포함하는, 사용자 장치의 동작 방법.
4. The method of claim 3,
Recognizing the at least one object comprises:
Recognizing the at least one object by analyzing the frame in real time using at least one of a graphics processing unit (GPU) and a neural process unit (NPU)
A method of operating a user device comprising a.
삭제delete 삭제delete 제1항에 있어서,
상기 프레임에 대응하는 메타 정보를 추출하는 단계
를 더 포함하고,
상기 분석 결과를 서버에게 전송하는 단계는
상기 분석 결과 및 상기 메타 정보를 상기 서버에게 전송하는 단계
를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
extracting meta information corresponding to the frame
further comprising,
The step of transmitting the analysis result to the server is
transmitting the analysis result and the meta information to the server
A method of operating a user device comprising a.
제7항에 있어서,
상기 메타 정보를 추출하는 단계는
전자 프로그램 가이드(EPG) 및 VOD 편성 정보 중 적어도 하나에 기초하여 상기 프레임에 대응하는 상기 메타 정보를 추출하는 단계
를 포함하는, 사용자 장치의 동작 방법.
8. The method of claim 7,
The step of extracting the meta information is
extracting the meta information corresponding to the frame based on at least one of an electronic program guide (EPG) and VOD programming information;
A method of operating a user device comprising a.
제7항에 있어서,
상기 메타 정보를 추출하는 단계는
미리 학습된 제2 신경망을 이용하여 상기 프레임에 대응하는 상기 메타 정보를 추출하는 단계
를 포함하는, 사용자 장치의 동작 방법.
8. The method of claim 7,
The step of extracting the meta information is
extracting the meta information corresponding to the frame using a second neural network learned in advance
A method of operating a user device comprising a.
제1항에 있어서,
상기 연계 서비스를 수신하는 단계는
상기 분석 결과가 상기 서버의 검색 엔진으로 인가됨에 따라 상기 서버에서 결정된 상기 연계 서비스를 수신하는 단계
를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
The step of receiving the linked service is
Receiving the linked service determined by the server as the analysis result is applied to the search engine of the server
A method of operating a user device comprising a.
제1항에 있어서,
상기 영상 컨텐츠는
TV 방송 컨텐츠, 영화 컨텐츠, 및 VOD(Video On Demand) 컨텐츠 중 어느 하나를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
The video content is
A method of operating a user device, comprising any one of TV broadcast content, movie content, and video on demand (VOD) content.
제1항에 있어서,
상기 분석 결과는
상기 프레임에 포함된 인물, 장면, 상품, 장소, 글자, 상기 프레임으로부터 분류된 특징의 스코어 중 적어도 하나를 포함하는, 사용자 장치의 동작 방법.
According to claim 1,
The analysis result is
A method of operating a user device, comprising at least one of a person, a scene, a product, a place, a character included in the frame, and a score of a feature classified from the frame.
사용자 장치로부터, 상기 사용자 장치에 의해 캡쳐된 프레임의 분석 결과 및 상기 캡쳐된 프레임에 대응하는 메타 정보 중 적어도 하나를 수신하는 단계;
상기 분석 결과 및 상기 메타 정보 중 적어도 하나를 기초로, 상기 프레임에 대응하는 연계 서비스를 검색하는 단계; 및
상기 연계 서비스를 상기 사용자 장치에게 전송하는 단계
를 포함하고,
상기 분석 결과는
상기 사용자 장치가 딥 러닝에 기반한 제1 신경망을 이용하여 상기 캡쳐된 프레임에 포함된 적어도 하나의 객체의 특징을 분류하고, 상기 분류된 특징들에 대해 클러스터링을 수행하여 코드워드들을 찾고, 복수의 프레임들 별로 상기 코드워드들로 구성된 코드북- 상기 코드북은 프레임 별 모든 클래스의 코드워드들을 포함함 -을 생성하며, 상기 코드북에 포함된 객체의 클래스 별 히스토그램 값으로 누적된 스코어를 산출함으로써 상기 적어도 하나의 객체를 인식하는 것을 포함하는, 서버의 동작 방법.
receiving, from a user device, at least one of an analysis result of a frame captured by the user device and meta information corresponding to the captured frame;
searching for a linked service corresponding to the frame based on at least one of the analysis result and the meta information; and
transmitting the association service to the user device;
including,
The analysis result is
The user device classifies features of at least one object included in the captured frame using a first neural network based on deep learning, performs clustering on the classified features to find codewords, and a plurality of frames Generates a codebook composed of the codewords for each frame, the codebook includes codewords of all classes for each frame, and calculates an accumulated score with a histogram value for each class of an object included in the codebook. A method of operating a server, comprising recognizing an object.
제13항에 있어서,
상기 연계 서비스를 검색하는 단계는
상기 분석 결과에 포함된 스코어(score)에 대응하는 연계 서비스를 결정하도록 학습된 제3 신경망을 이용하여 상기 연계 서비스를 검색하는 단계
를 포함하는, 서버의 동작 방법.
14. The method of claim 13,
The step of searching for the linked service is
searching for the linked service using a third neural network trained to determine a linked service corresponding to a score included in the analysis result;
Including, the method of operation of the server.
제13항에 있어서,
상기 분석 결과에 제1 가중치를 부여하는 단계; 및
상기 메타 정보에 제2 가중치를 부여하는 단계
중 적어도 하나를 더 포함하는, 서버의 동작 방법.
14. The method of claim 13,
assigning a first weight to the analysis result; and
assigning a second weight to the meta information
Further comprising at least one of, the method of operation of the server.
제15항에 있어서,
상기 연계 서비스를 검색하는 단계는
상기 제1 가중치가 부여된 분석 결과 및 상기 제2 가중치가 부여된 메타 정보 중 적어도 하나를 기초로, 상기 프레임에 대응하는 연계 서비스를 검색하는 단계
를 포함하는, 서버의 동작 방법.
16. The method of claim 15,
The step of searching for the linked service is
searching for a linked service corresponding to the frame based on at least one of the first weighted analysis result and the second weighted meta information;
Including, the method of operation of the server.
하드웨어와 결합되어 제1항 내지 제4항 및 제7항 내지 제16항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable recording medium in combination with hardware to execute the method of any one of claims 1 to 4 and 7 to 16. 영상 컨텐츠에 포함된 어느 하나의 프레임을 캡쳐(capture)하는 센서;
상기 프레임을 분석하는 프로세서;
상기 분석 결과를 서버에게 전송하고, 상기 분석 결과에 기초하여 상기 서버에서 결정된 연계 서비스를 수신하는 통신 인터페이스; 및
상기 연계 서비스를 사용자에게 제공하는 디스플레이
를 포함하고,
상기 프로세서는
딥 러닝에 기반한 제1 신경망을 이용하여 상기 프레임에 포함된 적어도 하나의 객체의 특징을 분류하고, 상기 분류된 특징들에 대해 클러스터링을 수행하여 코드워드들을 찾고, 복수의 프레임들 별로 상기 코드워드들로 구성된 코드북- 상기 코드북은 프레임 별 모든 클래스의 코드워드들을 포함함 -을 생성하며, 상기 코드북에 포함된 객체의 클래스 별 히스토그램 값으로 누적된 스코어를 산출함으로써 상기 적어도 하나의 객체를 인식하는, 사용자 장치.
a sensor for capturing any one frame included in the image content;
a processor that analyzes the frame;
a communication interface for transmitting the analysis result to the server, and receiving a linked service determined by the server based on the analysis result; and
A display that provides the linked service to a user
including,
the processor
Classifying features of at least one object included in the frame using a first neural network based on deep learning, performing clustering on the classified features to find codewords, and selecting the codewords for each frame A codebook consisting of - the codebook includes codewords of all classes for each frame - is generated, and the at least one object is recognized by calculating an accumulated score with a histogram value for each class of the object included in the codebook. Device.
제18항에 있어서,
상기 프로세서는
상기 프레임을 실시간으로 분석함으로써 적어도 하나의 객체를 인식하는, 사용자 장치.
19. The method of claim 18,
the processor
A user device for recognizing at least one object by analyzing the frame in real time.
삭제delete
KR1020190095603A 2019-08-06 2019-08-06 Operating method of server and user device for providing linked service and user device thereof KR102302368B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190095603A KR102302368B1 (en) 2019-08-06 2019-08-06 Operating method of server and user device for providing linked service and user device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190095603A KR102302368B1 (en) 2019-08-06 2019-08-06 Operating method of server and user device for providing linked service and user device thereof

Publications (2)

Publication Number Publication Date
KR20210017005A KR20210017005A (en) 2021-02-17
KR102302368B1 true KR102302368B1 (en) 2021-09-14

Family

ID=74732480

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190095603A KR102302368B1 (en) 2019-08-06 2019-08-06 Operating method of server and user device for providing linked service and user device thereof

Country Status (1)

Country Link
KR (1) KR102302368B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100695345B1 (en) * 2005-01-03 2007-03-15 에스케이 텔레콤주식회사 Home shopping method using digital broadcasting display device with product bar-code reading function
KR20120072507A (en) * 2010-12-24 2012-07-04 주식회사 케이티 System and method for providing open market for iptv
KR101311148B1 (en) * 2012-03-05 2013-10-04 홍익대학교 산학협력단 Visual surveillance system and method for detecting object in the visual surveillance system

Also Published As

Publication number Publication date
KR20210017005A (en) 2021-02-17

Similar Documents

Publication Publication Date Title
US11166066B2 (en) Display apparatus, content recognizing method thereof, and non-transitory computer readable recording medium
US10997235B2 (en) Methods, systems, and media for generating search results based on contextual information
US9253511B2 (en) Systems and methods for performing multi-modal video datastream segmentation
US10333767B2 (en) Methods, systems, and media for media transmission and management
US11416546B2 (en) Content type detection in videos using multiple classifiers
US20160014482A1 (en) Systems and Methods for Generating Video Summary Sequences From One or More Video Segments
EP2453386B1 (en) Multimedia device, multiple image sensors having different types and method for controlling the same
US20170289624A1 (en) Multimodal and real-time method for filtering sensitive media
US8064641B2 (en) System and method for identifying objects in video
US20150319510A1 (en) Interactive viewing experiences by detecting on-screen text
US9881084B1 (en) Image match based video search
CN104113784B (en) Intelligent television system and its method
US20160007058A1 (en) System and method for video program recognition
US20140253472A1 (en) Telestration system for command processing
CN114339360B (en) Video processing method, related device and equipment
KR100896336B1 (en) System and Method for related search of moving video based on visual content
KR102664418B1 (en) Display apparatus and service providing method of thereof
KR102298066B1 (en) Method for providing image contents and image contents providing apparatus
US20150104065A1 (en) Apparatus and method for recognizing object in image
US9412049B2 (en) Apparatus and method for recognizing object using correlation between object and content-related information
KR102302368B1 (en) Operating method of server and user device for providing linked service and user device thereof
Hu et al. MmFilter: Language-guided video analytics at the edge
US11249823B2 (en) Methods and systems for facilitating application programming interface communications
KR102268218B1 (en) Operating method of cloud server and user device for image analysis, and its cloud server, user device
EP2979227B1 (en) Interactive viewing experiences by detecting on-screen text

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant