KR20180107042A - Method for clustering and sharing images, and system and application implementing the same method - Google Patents

Method for clustering and sharing images, and system and application implementing the same method Download PDF

Info

Publication number
KR20180107042A
KR20180107042A KR1020180110547A KR20180110547A KR20180107042A KR 20180107042 A KR20180107042 A KR 20180107042A KR 1020180110547 A KR1020180110547 A KR 1020180110547A KR 20180110547 A KR20180110547 A KR 20180110547A KR 20180107042 A KR20180107042 A KR 20180107042A
Authority
KR
South Korea
Prior art keywords
image
images
server
user terminal
clustering
Prior art date
Application number
KR1020180110547A
Other languages
Korean (ko)
Other versions
KR102023687B1 (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 KR1020180110547A priority Critical patent/KR102023687B1/en
Publication of KR20180107042A publication Critical patent/KR20180107042A/en
Application granted granted Critical
Publication of KR102023687B1 publication Critical patent/KR102023687B1/en

Links

Images

Classifications

    • G06F17/30268
    • 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/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
    • 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/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • 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
    • G06F17/30247
    • G06F17/30277

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A method of clustering images of a server operated by at least one processor includes: extracting at least one image included in each web document of a plurality of web documents and contents describing the image; determining one representative image representative of redundant images when the duplicated images are present among the images extracted from the web documents, and connecting image description contents corresponding to each of the redundant images to the representative image; determining image information including an image description tag and a time stamp of the representative image from the image description contents connected to the representative image, and mapping the image information with the representative image to store the mapped image in an image repository; and extracting images associated with the clustering keyword from the image repository upon an image clustering request according to a clustering keyword, and clustering at least some of the extracted images based on the similarity of the extracted images to generate at least one cluster event.

Description

이미지 군집화 및 공유 방법, 그리고 이를 구현한 시스템 및 어플리케이션{METHOD FOR CLUSTERING AND SHARING IMAGES, AND SYSTEM AND APPLICATION IMPLEMENTING THE SAME METHOD}METHOD FOR CLUSTERING AND SHARING IMAGES, AND SYSTEM AND APPLICATION IMPLEMENTING THE SAME METHOD,

본 발명은 이미지 군집화에 관한 것이다.The present invention relates to image clustering.

뉴스, 블로그 등의 웹페이지에는 다양한 이미지들이 게시되고, 사용자 단말에서 촬영된 사진들이 소셜미디어서비스 등의 다양한 공유 플랫폼에서 빠르게 업로드되고 있다. 이렇게 다양한 이미지들이 존재하는 웹은 거대한 이미지 저장소가 되어, 사용자는 원하는 이미지를 검색할 수 있다. Various images are posted on web pages such as news and blogs, and photographs taken at user terminals are quickly uploaded on various sharing platforms such as social media services. The web with such various images becomes a huge image storage, and the user can search the desired image.

하지만, 동일 이미지들이 중복적으로 다른 웹페이지에서 존재하거나, 동일 이벤트에서 촬영된 유사 이미지들 대량으로 존재한다. 따라서, 제대로 분류되지 않은 수많은 이미지들 중에서 사용자가 원하는 결과를 얻기 위해서, 사용자는 검색어를 정제하여 검색해야 하고, 이를 위해 사용자는 인물이나 이벤트에 대한 사전지식이 있어야 한다. 또한, 이미지의 최신성을 반영하기 어려워 검색 시기에 따라 검색 결과가 크게 달라지지 않을 수 있다. 최근에는 이미지를 이벤트별로 분류하여 제공하려는 시도가 있으나, 여전히 이벤트 내에서 이미지들이 나열되어 노출되는 정도라서, 시간 순서대로 이미지를 노출하는 종래 기술과 차별성이 없다. 따라서, 사용자에게 유의미한 방식으로 이미지들을 분류하고 공유하는 방법이 요구된다.However, the same images exist in duplicate in different web pages, or there are a large number of similar images captured at the same event. Therefore, in order to obtain a desired result among a large number of images that are not properly classified, the user must refine the search word and search for it. For this, the user must have prior knowledge of the person or event. Also, since it is difficult to reflect the latestness of the image, the search result may not change greatly depending on the search time. In recent years, there has been an attempt to classify and provide images by event, but the images are still listed and exposed in the event, so that there is no difference from the prior art in which images are exposed in chronological order. Therefore, there is a need for a method of classifying and sharing images in a meaningful manner to the user.

본 발명이 해결하고자 하는 과제는 다양한 출처의 다양한 이미지를 시간, 이벤트, 인물 등의 속성별로 분류하고, 이미지를 설명하는 태그를 통해 이미지를 군집화하는 방법 그리고 이를 구현한 시스템 및 어플리케이션을 제공하는 것이다. 또한, 본 발명이 해결하고자 하는 과제는 군집된 이미지들을 기초로 공유할 수 있는 콘텐트를 생성하는 공유 방법, 그리고 이를 구현한 시스템 및 어플리케이션을 제공하는 것이다.An object of the present invention is to classify various images of various sources according to attributes such as time, event, and character, to cluster images through tags for describing images, and to provide a system and an application for implementing the methods. In addition, a problem to be solved by the present invention is to provide a sharing method of generating content that can be shared based on clustering images, and a system and an application that implement the sharing method.

한 실시예에 따라 적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 군집화 방법으로서, 복수의 웹문서에서 각 웹문서에 포함된 적어도 하나의 이미지와 해당 이미지를 설명하는 내용을 추출하는 단계, 상기 복수의 웹문서로부터 추출한 이미지들 중에 중복 이미지들이 존재하는 경우, 상기 중복 이미지들을 대표하는 하나의 대표 이미지를 결정하고, 상기 대표 이미지에 상기 중복 이미지들 각각에 대응된 이미지 설명 내용들을 연결하는 단계, 상기 대표 이미지에 연결된 복수의 이미지 설명 내용들로부터 상기 대표 이미지의 이미지 설명 태그 및 타임스탬프를 포함하는 이미지 정보를 결정하고, 상기 이미지 정보와 상기 대표 이미지를 매핑하여 이미지 저장소에 저장하는 단계, 그리고 군집화 키워드에 따른 이미지 군집화 요청이 있으면, 상기 이미지 저장소에서 상기 군집화 키워드에 연관된 이미지들을 추출하고, 추출한 이미지들의 유사도를 기초로 상기 추출한 이미지들 중 적어도 일부를 군집하여 적어도 하나의 군집이벤트를 생성하는 단계를 포함한다.There is provided a method of image clustering of a server operated by at least one processor according to an embodiment, comprising the steps of: extracting at least one image included in each web document and contents describing the image in a plurality of web documents; Determining one representative image representative of the overlapping images if there are duplicated images among the images extracted from the web document and connecting image description contents corresponding to each of the overlapping images to the representative image; Determining image information including an image description tag and a time stamp of the representative image from a plurality of image description contents linked to the image, mapping the image information and the representative image and storing the image information in an image repository, If there is an image clustering request, In the image store it comprises a step of extracting an image associated with the keyword grouping and generates at least one event cluster by cluster at least a portion of the extracted image on the basis of the similarity of the extracted image.

상기 이미지 저장소에 저장하는 단계는 상기 복수의 이미지 설명 내용에서 등장하는 키워드들을 기초로 상기 이미지 설명 태그를 결정하고, 상기 중복 이미지들이 포함된 웹문서들의 작성일을 기초로 상기 대표 이미지의 타임스탬프를 결정할 수 있다.Wherein the step of storing in the image repository determines the image description tag based on keywords appearing in the plurality of image description contents, and determines a time stamp of the representative image based on the creation date of the web documents including the redundant images .

상기 군집이벤트를 생성하는 단계는 상기 이미지 저장소에 저장된 이미지들의 이미지 설명 태그를 기초로 상기 이미지 저장소에서 상기 군집화 키워드에 연관된 이미지들을 추출할 수 있다.The generating the cluster event may extract images associated with the clustering keyword in the image repository based on the image description tags of the images stored in the image repository.

상기 군집이벤트를 생성하는 단계는 상기 이미지 저장소에 저장된 이미지들의 타임스탬프를 기초로 검색 기간에 작성된 이미지들을 상기 검색 이미지들로 추출할 수 있다.The generating the cluster event may extract the images created in the search period on the basis of the time stamps of the images stored in the image storage, as the search images.

상기 군집이벤트를 생성하는 단계는 상기 군집이벤트로 묶인 이미지들의 이미지 설명 태그들 또는 이미지 설명 내용들로부터 상기 군집이벤트의 명칭과 상기 군집이벤트에 연관된 태그들을 추출할 수 있다.The generating of the cluster event may extract the name of the cluster event and the tags associated with the cluster event from the image description tags or the image description contents of the images grouped by the cluster event.

상기 이미지 군집화 방법은 임의 웹문서로부터 추출한 특정 이미지 설명 내용에 동명이인이나 중의적 표현의 인물 정보가 포함된 경우, 상기 특정 이미지 설명 내용으로부터 적어도 한 명의 후보 인물을 추출하는 단계, 상기 특정 이미지 설명 내용과 각 후보 인물의 인물정보를 기초로 각 후보 인물이 상기 임의 웹문서에서 추출된 특정 이미지 내 인물인지를 평가하는 단계, 그리고 각 후보 인물의 평가 점수를 기초로 상기 특정 이미지 내 인물을 결정하고, 결정한 인물 식별정보를 상기 특정 이미지에 태깅하는 단계를 더 포함할 수 있다.Wherein the image clustering method comprises the steps of: extracting at least one candidate from the specific image description content when the specific image description content extracted from an arbitrary web document includes person information of the same name or a subordinate expression; Evaluating whether each candidate is a person in a specific image extracted from the arbitrary web document based on the content and the person information of each candidate person, and determining the person in the specific image based on the evaluation score of each candidate person , And tagging the determined person identification information to the specific image.

상기 이미지 군집화 방법은 사용자 단말로 상기 적어도 하나의 군집이벤트로 군집된 이미지들을 전송하는 단계를 더 포함하고, 상기 군집된 이미지들은 상기 사용자 단말의 인터페이스 화면에서 군집이벤트별로 구분되어 표시되고, 동일 군집이벤트에 속한 이미지들에서 복수의 등장 인물이 존재하는 경우, 상기 인터페이스 화면에서 등장인물별로 분류되어 표시될 수 있다.The image clustering method may further include transmitting images clustered into the at least one cluster event to a user terminal, wherein the cluster images are displayed on the interface screen of the user terminal according to cluster events, If a plurality of characters are present in the images belonging to the user, the user can be classified and displayed by the characters in the interface screen.

상기 군집이벤트로 군집된 이미지들을 전송하는 단계는 상기 군집된 이미지들이 랜덤하게 넘어가거나 또는 표시 순서에 따라 순차적으로 넘어가면서 상기 인터페이스 화면에 표시되는 콘텐트를 생성하며, 상기 콘텐트를 상기 사용자 단말로 전송할 수 있다.The step of transmitting the clustered images may include generating the content displayed on the interface screen by randomly moving the clustered images or sequentially moving in accordance with the display order and transmitting the content to the user terminal have.

다른 실시예에 따라 적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서, 단일 이벤트로 군집된 복수 이미지들의 공유 요청을 입력받는 단계, 상기 복수 이미지들 각각의 등장 인물을 확인하고, 동일한 등장 인물로 분류된 이미지들 내에서의 인물 움직임을 추정하여 해당 등장 인물의 이미지들을 정렬하는 단계, 그리고 사용자 단말로, 정렬된 상기 복수 이미지들을 전송하는 단계를 포함한다.A method of sharing an image of a server operated by at least one processor in accordance with another embodiment, the method comprising: receiving a share request of a plurality of images clustered into a single event; identifying a character of each of the plurality of images; Estimating a person's movement within the images classified into the images, sorting the images of the characters, and transmitting the sorted plurality of images to the user terminal.

상기 정렬하는 단계는 동일한 등장 인물로 분류된 이미지들 내의 모든 이미지쌍에 대한 좌표들의 광학 흐름(Optical Flow)을 계산하고, 계산 결과를 기초로 상기 인물 움직임을 연속적으로 만드는 순서로 이미지들을 정렬할 수 있다.The aligning step may calculate the optical flow of the coordinates for all image pairs in the images classified to the same character and arrange the images in order to make the person movements consecutive based on the calculation result have.

상기 정렬하는 단계는 상기 복수 이미지들에서 복수의 인물이 등장하는 경우, 등장 인물별로 상기 복수 이미지들을 분류하며, 등장 인물별로 분류된 이미지들을 정렬할 수 있다.The sorting step may classify the plurality of images according to the characters when the plurality of characters appear in the plurality of images, and sort the images classified by the characters.

상기 복수 이미지들을 전송하는 단계는 상기 복수 이미지들이 랜덤하게 넘어가거나 또는 표시 순서에 따라 순차적으로 넘어가면서 상기 사용자 단말의 인터페이스 화면에 표시되는 콘텐트를 생성하는 단계, 그리고 상기 콘텐트를 상기 사용자 단말로 전송하는 단계를 포함할 수 있다.The transmitting of the plurality of images may include generating the content to be displayed on the interface screen of the user terminal while randomly moving the plurality of images or sequentially moving in accordance with the display order and transmitting the content to the user terminal Step < / RTI >

상기 복수 이미지들을 전송하는 단계는 상기 단일 이벤트 또는 상기 복수 이미지들에 연관된 적어도 하나의 태그를 상기 사용자 단말로 더 전송할 수 있다.The transmitting of the plurality of images may further transmit to the user terminal at least one tag associated with the single event or the plurality of images.

또 다른 실시예에 따라 적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서, 이미지 저장소에서, 입력 이미지와 동일하거나 유사한 적어도 하나의 저장 이미지를 검색하는 단계, 상기 저장 이미지에 매핑된 이미지 설명 정보를 이용하여 상기 입력 이미지에 연관된 태그 목록을 생성하는 단계, 그리고 사용자 단말로, 상기 입력 이미지의 공유 정보와 상기 태그 목록을 전송하는 단계를 포함하고, 상기 이미지 저장소는 복수의 웹문서에서 추출된 각 이미지와 해당 이미지를 설명하는 이미지 설명 정보를 매핑하여 관리할 수 있다.A method of image sharing of a server operated by at least one processor in accordance with yet another embodiment, the method comprising: retrieving, in an image repository, at least one stored image that is the same as or similar to the input image; Generating a tag list associated with the input image, and transmitting the shared information of the input image and the tag list to a user terminal, wherein the image repository comprises: The image can be managed by mapping the image description information describing the image.

상기 입력 이미지는 상기 사용자 단말로부터 공유 요청된 링크 정보에서 스크래핑된 이미지일 수 있다.The input image may be a scraped image from link information requested to be shared from the user terminal.

상기 입력 이미지의 정보와 상기 태그 목록은 상기 사용자 단말의 인터페이스 화면에 표시되고, 상기 입력 이미지의 공유 정보는 썸네일 형태의 콘텐트일 수 있다.The information of the input image and the tag list may be displayed on an interface screen of the user terminal, and the sharing information of the input image may be a content of a thumbnail format.

또 다른 실시예에 따라 적어도 하나의 프로세서에 의해 동작하는 사용자 단말의 이미지 공유 방법으로서, 검색 요청된 검색 키워드를 서버로 전송하는 단계, 상기 서버로부터 상기 검색 키워드에 관련된 적어도 하나의 군집이벤트와 각 군집이벤트에 연관된 적어도 하나의 태그를 수신하는 단계, 그리고 제1 인터페이스 화면에, 각 군집이벤트에 군집된 이미지들과 적어도 하나의 태그를 군집이벤트별로 구분하여 표시하는 단계를 포함한다. 각 군집이벤트에 군집된 이미지들과 적어도 하나의 태그는 복수의 웹문서에서 추출된 이미지들과 해당 이미지를 설명하는 이미지 설명 정보로부터 획득된 정보이다.A method of sharing an image of a user terminal operated by at least one processor in accordance with yet another embodiment, the method comprising: transmitting a search keyword requested to be searched to a server; receiving at least one community event associated with the search keyword from the server, Receiving at least one tag associated with the event, and displaying on the first interface screen the images clustered in each cluster event and at least one tag by cluster event. Clusters of images and at least one tag in each cluster event are information obtained from images extracted from a plurality of web documents and image description information describing the images.

상기 이미지 공유 방법은 상기 제1 인터페이스화면에서 입력받은 임의 군집이벤트에 대한 공유 요청을 상기 서버로 전송하는 단계, 상기 서버로부터 상기 임의 군집이벤트에 군집된 복수 이미지들을 수신하는 단계, 그리고 제2 인터페이스 화면에, 수신한 상기 복수 이미지들을 표시하는 단계를 더 포함할 수 있다.Wherein the image sharing method comprises: transmitting a sharing request for an arbitrary cluster event received from the first interface screen to the server; receiving a plurality of images clustered in the random cluster event from the server; And displaying the received plurality of images on the display unit.

상기 복수 이미지들은 등장 인물의 움직임을 연속적으로 만드는 순서로 정렬되고, 상기 복수 이미지들에서 복수의 인물이 등장하는 경우, 상기 복수 이미지들은 등장 인물별로 정렬될 수 있다.The plurality of images are arranged in order to continuously make the movements of the characters, and when a plurality of characters appear in the plurality of images, the plurality of images can be sorted by characters.

상기 복수 이미지들을 표시하는 단계는 상기 복수 이미지들이 랜덤하게 넘어가거나 또는 표시 순서에 따라 순차적으로 넘어가면서 표시되는 형태로 생성된 콘텐트를 상기 제2 인터페이스 화면에 표시할 수 있다.The step of displaying the plurality of images may display the generated content on the second interface screen in such a manner that the plurality of images are randomly moved or sequentially displayed according to the display order.

본 발명의 실시예에 따르면 다양한 출처의 다양한 이미지를 시간, 이벤트, 인물 등의 속성별로 군집화할 수 있다. 본 발명의 실시예에 따르면 웹에 쏟아져나오는 대량의 이미지들을 가공하여 공유할 수 있는 콘텐트를 생성할 수 있다. 본 발명의 실시예에 따르면 사용자는 관심있는 키워드로부터 유의미한 콘텐트를 얻을 수 있고, 정렬된 이미지들을 통해 이미지 검색 결과를 시각적으로 빠르게 확인할 수 있다.According to the embodiment of the present invention, various images of various sources can be clustered according to attributes such as time, event, person, and the like. According to the embodiment of the present invention, it is possible to generate a content that can be processed and shared by a large amount of images pouring into the web. According to the embodiment of the present invention, the user can obtain meaningful content from the keyword of interest, and visually and quickly confirm the image search result through the sorted images.

도 1은 본 발명의 한 실시예에 따른 시스템의 개략적인 구성도이다.
도 2는 본 발명의 한 실시예에 따른 이미지 저장소에 이미지들을 저장하는 방법을 설명하는 흐름도이다.
도 3은 본 발명의 한 실시예에 따른 이미지 저장 방법을 설명하는 예시 도면이다.
도 4는 본 발명의 한 실시예에 따른 이미지 군집화 방법의 흐름도이다.
도 5는 본 발명의 한 실시예에 따른 이미지 군집화 방법을 설명하는 예시 도면이다.
도 6은 본 발명의 한 실시예에 따른 사용자 단말에 제공되는 군집된 이미지의 예시 도면이다.
도 7은 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법의 흐름도이다.
도 8은 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법을 이용한 서비스의 예시이다.
도 9와 도 10 각각은 본 발명의 한 실시예에 따른 군집 이미지 공유 방법을 설명하는 도면이다.
도 11은 본 발명의 한 실시예에 따른 메신저 서비스에서의 웹문서 공유를 위한 시스템을 설명하는 도면이다.
1 is a schematic configuration diagram of a system according to an embodiment of the present invention.
2 is a flow diagram illustrating a method for storing images in an image repository in accordance with an embodiment of the present invention.
3 is an exemplary diagram illustrating an image storing method according to an embodiment of the present invention.
4 is a flowchart of an image clustering method according to an embodiment of the present invention.
5 is an exemplary diagram for explaining an image clustering method according to an embodiment of the present invention.
6 is an exemplary diagram of a grouped image provided to a user terminal in accordance with an embodiment of the present invention.
FIG. 7 is a flowchart of a method of identifying an image according to an exemplary embodiment of the present invention.
FIG. 8 illustrates an example of a service using a method of identifying an image according to an exemplary embodiment of the present invention.
9 and 10 are views for explaining a cluster image sharing method according to an embodiment of the present invention.
11 is a diagram illustrating a system for sharing web documents in a messenger service according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when an element is referred to as " comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise. Also, the terms " part, " " module, " and " module ", etc. in the specification mean a unit for processing at least one function or operation and may be implemented by hardware or software or a combination of hardware and software have.

도 1은 본 발명의 한 실시예에 따른 시스템의 개략적인 구성도이다.1 is a schematic configuration diagram of a system according to an embodiment of the present invention.

도 1을 참고하면, 시스템(10)은 본 발명에서 설명하는 기능이 구현된 서버(100) 그리고 서버(100)와 통신하는 사용자 단말(200)을 포함한다. 시스템(10)은 서버(100)에 의해 가공된 이미지들이 저장되는 이미지 저장소(300)를 포함한다. 사용자 단말(200)은 본 발명에서 설명하는 기능을 제공하도록 프로그램된 어플리케이션을 탑재하고, 어플리케이션을 통해 서버(100)에서 제공되는 정보를 표시하고, 사용자에 의해 입력된 정보를 서버(100)로 전송한다.Referring to FIG. 1, a system 10 includes a server 100 in which the functions described in the present invention are implemented, and a user terminal 200 in communication with the server 100. The system 10 includes an image storage 300 in which images processed by the server 100 are stored. The user terminal 200 is provided with an application programmed to provide functions described in the present invention, displays information provided by the server 100 through the application, transmits the information input by the user to the server 100 do.

서버(100)는 적어도 하나의 프로세서에 의해 본 발명에서 설명하는 동작을 실행한다. 서버(100)는 다양한 출처의 다양한 이미지를 시간, 이벤트, 인물 등의 속성별로 분류하고, 이미지 속성을 설명하는 태그를 통해 이미지를 군집화한다. 서버(100)는 군집된 이미지들을 기초로 공유할 수 있는 컨텐트를 생성하고, 사용자 단말(200)의 검색 요청에 대한 이미지 검색 결과를 제공한다. 서버(100)의 동작 방법은 다음에서 자세히 설명한다.The server 100 executes the operations described in the present invention by at least one processor. The server 100 classifies various images of various sources according to attributes such as time, event, and personality, and clusters the images through tags describing image attributes. The server 100 generates content that can be shared based on the clustered images and provides an image search result for the search request of the user terminal 200. [ The operation method of the server 100 will be described in detail below.

사용자 단말(200)은 컴퓨터 판독 가능한 저장 매체에 저장되는 어플리케이션, 그리고 프로세서, 메모리, 디스플레이, 통신 모듈 등의 하드웨어를 포함한다. 어플리케이션은 본 발명에서 예를 들어 설명한 동작을 실행하기 위한 명령어들을 포함한다. 프로세서는 어플리케이션을 구동하여 프로그램된 동작을 실행한다. 디스플레이는 어플리케이션에서 제공하는 사용자 인터페이스 화면을 표시하고, 사용자 입력을 수신할 수 있고, 예를 들면 터치 입력을 수신할 수 있다. 통신 모듈은 통신망을 통해 서버(100)와 통신한다.User terminal 200 includes applications stored on a computer-readable storage medium, and hardware such as a processor, memory, display, communication module, and the like. The application includes instructions for performing the operations described, for example, in the present invention. The processor runs the application and executes the programmed operation. The display may display a user interface screen provided by the application, receive the user input, and receive the touch input, for example. The communication module communicates with the server 100 through a communication network.

사용자 단말(200)은 다양한 형태로 구현될 수 있고, 예를 들면, 스마트폰과 같은 모바일 단말, 스마트패드와 같은 패드형 단말, 랩탑 컴퓨터 등 각종 형태의 컴퓨터, 웨어러블 디바이스, TV 단말 등의 형태로 구현될 수 있다. The user terminal 200 may be implemented in various forms, for example, in the form of a mobile terminal such as a smart phone, a pad type terminal such as a smart pad, various types of computers such as a laptop computer, a wearable device, Can be implemented.

도 2는 본 발명의 한 실시예에 따른 이미지 저장소에 이미지들을 저장하는 방법을 설명하는 흐름도이고, 도 3은 본 발명의 한 실시예에 따른 이미지 저장 방법을 설명하는 예시 도면이다.FIG. 2 is a flowchart illustrating a method of storing images in an image storage according to an exemplary embodiment of the present invention, and FIG. 3 is an exemplary view illustrating an image storing method according to an embodiment of the present invention.

도 2를 참고하면, 서버(100)는 다수의 웹문서에서 각 웹문서에 포함된 적어도 하나의 이미지와 해당 이미지를 설명하는 내용을 추출한다(S110). 웹문서(또는, 간단히 '문서'라고도 함)는 뉴스, 블로그, 소셜미디어서비스 등의 웹에 공개된 디지털 문서로서, 서버(100)가 네트워크를 통해 접근 가능한 모든 문서를 포함한다. 웹문서는 적어도 하나의 이미지와 텍스트로 작성되는데, 동일/유사 이미지가 복수의 웹문서에서 추출될 수 있다. 웹문서에 포함된 이미지와 텍스트는 서로 상관관계가 있으므로, 서버(100)는 텍스트에서 이미지에 관계된 내용 또는 이미지를 설명하는 내용을 추출할 수 있다. 이미지를 설명하는 내용은 이미지가 추출된 문서에서 등장하는 제목(title)이나 문서에 포함된 단어, 어절 등은 문서의 메타데이터 등으로부터 추출될 수 있다.Referring to FIG. 2, the server 100 extracts at least one image included in each web document from a plurality of web documents and content describing the corresponding image (S110). A web document (or simply, a document) is a digital document published on the Web such as a news, a blog, or a social media service, and includes all the documents that the server 100 can access via the network. A web document is composed of at least one image and text, and the same / similar image can be extracted from a plurality of web documents. Since the image and the text included in the web document are correlated with each other, the server 100 can extract contents related to the image or contents describing the image in the text. Contents describing the image can be extracted from the title of the document from which the image is extracted, the words included in the document, the word phrase, and the like from the metadata of the document.

서버(100)는 이미지별로 해당 이미지를 설명하는 내용을 태깅한다(S120). The server 100 tags content describing the image for each image (S120).

서버(100)는 추출한 이미지들의 중복여부를 판단하여, 중복 이미지들을 추출한다(S130). 중복이미지 추출 방법은 다양한 이미지 처리 기술 중에서 선택될 수 있다. 예를 들면, 서버(100)는 각 이미지를 나타내는 특징값(예를 들면, 128비트 해쉬값)을 비교하여, 중복 이미지들을 판별할 수 있다.The server 100 determines whether the extracted images are duplicated and extracts redundant images (S130). The redundant image extraction method can be selected from various image processing techniques. For example, the server 100 can compare duplicate images by comparing feature values (e.g., 128-bit hash values) representing each image.

서버(100)는 중복 이미지들 중에서 대표 이미지를 결정하고, 대표 이미지에 중복 이미지들 각각에 태깅된 이미지 설명 내용들을 연결한다(S140). 즉, 단일 이미지에 복수의 웹문서 정보가 연결된 이미지 정보를 생성한다. 서버(100)는 중복 이미지들 중에서 작성일이 가장 빠른 이미지 또는 품질이 가장 좋은 이미지를 대표 이미지로 결정할 수 있으나, 이외에도 다양한 방법으로 대표 이미지를 선정할 수 있다.The server 100 determines a representative image among the redundant images, and connects the tagged image description contents to each of the redundant images (S140). That is, image information in which a plurality of pieces of web document information are linked to a single image is generated. The server 100 can determine an image having the highest creation date or an image having the highest quality among the redundant images as the representative image, but the representative image can also be selected in various ways.

서버(100)는 복수의 이미지 설명 내용들을 기초로 대표 이미지의 이미지 설명 태그 및 대표 이미지의 타임스탬프를 결정하고, 대표 이미지에 이미지 설명 태그 및 타임스탬프를 매핑하여 이미지 저장소(300)에 저장한다(S150). 이미지 설명 태그는 동일 이미지를 설명하는 복수의 문서에서 빈번하게 등장하는 단어들로부터 획득될 수 있다. 이렇게 복수의 문서에서 빈번하게 등장하는 이미지 설명 태그는 해당 이미지를 가장 대표하는 설명으로 볼 수 있다. 서버(100)는 중복 이미지들이 포함된 웹문서 중에서 가장 빠른 작성일을 대표 이미지의 타임스탬프로 결정할 수 있다. 또는 서버(100)는 웹문서에 특정 이벤트 시간(예를 들면, 음반 발매일, 공연일, 이벤트 일정 등)이 기재된 경우, 문서 내용을 기초로 대표 이미지의 타임스탬프를 결정할 수 있다. 당일 발생한 이벤트에 대한 뉴스 등은 대부분의 당일 작성되나, 웹문서는 이미 발생한 이벤트에 대한 내용을 포함할 수도 있고, 앞으로 발생할 이벤트에 대한 내용을 포함할 수 있기 때문에 웹문서 작성일 대신 실제 이벤트 발생일을 타임스탬프로 사용할 수도 있다.The server 100 determines a time stamp of an image description tag and a representative image of the representative image based on a plurality of image description contents, maps an image description tag and a time stamp to the representative image, and stores the image description tag and the time stamp in the image storage 300 S150). An image description tag may be obtained from frequently appearing words in a plurality of documents describing the same image. The image description tag, which frequently appears in multiple documents, is the most representative description of the image. The server 100 can determine the earliest creation date among the web documents including the redundant images as the time stamp of the representative image. Alternatively, the server 100 may determine the timestamp of the representative image based on the document contents when a specific event time (for example, a music release date, a performance date, an event schedule, etc.) is described in the web document. News about the event that occurred on that day is written most of the day, but since the web document can include contents about already occurred event and contents about future events, It can also be used as a timestamp.

도 3을 참고하면, N개의 문서에 이미지#1이 포함되어 있고, 각 문서에 이미지#1을 설명하는 내용들이 포함된 경우, 서버(100)는 동일한 이미지#1을 중심으로 복수의 웹문서들을 연결한다. 그리고, 서버(100)는 웹문서들에 포함된 이미지 설명 내용들 중 빈번하게 등장하는 단어(예를 들면, 레드벨벳, 앨범)를 이미지 설명 태그로 추출하고, 웹문서들 중 가장 빠른 작성일을 이미지#1의 타임스탬프로 추출할 수 있다. 문서1에 이미지#2가 더 포함된 경우, 서버(100)는 이미지#2를 중심으로 복수의 웹문서들을 연결한다.Referring to FIG. 3, when N documents include image # 1 and each document includes contents describing image # 1, server 100 generates a plurality of web documents around the same image # 1 Connect. Then, the server 100 extracts frequently appearing words (for example, red velvet, album) among the image description contents included in the web documents with the image description tag, It can be extracted with the time stamp of # 1. When document # 1 further includes image # 2, server 100 links a plurality of web documents around image # 2.

이미지 저장소(300)에 저장되는 대표 이미지#1, 이미지 설명 태그 및 타임스탬프는 표 1과 같이 저장될 수 있다. 대표 이미지는 특징값 및/또는 이미지 파일로 저장될 수 있다.The representative image # 1, the image description tag, and the time stamp, which are stored in the image storage 300, can be stored as shown in Table 1. The representative image may be stored as a feature value and / or an image file.

대표
이미지
representation
image
이미지
설명 태그/
타임스탬프
image
Description Tag /
Timestamp
웹문서들에 포함된 이미지 설명 내용들Image descriptions included in web documents
이미지#1Image # 1 레드벨벳
앨범
2016.09.21
Red velvet
album
2016.09.21
문서1: 레드벨벳 새 앨범 출시 임박(2016.09.22)
문서2: 레드벨벳 스타일 대 변신(2016.09.21)
문서3: 레드벨벳 새 앨범으로 돌아왔어요(2016.09.21)
문서4: 레드벨벳 스타일 바꾼 새 앨범(2016.09.25)

문서N: 상큼발랄 레드벨벳 새로운 노래(2016.09.21)
Document 1: Red Velvet is about to release new album (2016.09.22)
Document 2: Transforming the Red Velvet Style (2016.09.21)
Document 3: Red Velvet is back with new album (2016.09.21)
Document 4: Red Velvet Style New Album (2016.09.25)
...
Document N: A fresh red velvet new song (2016.09.21)
이미지#2Image # 2 -- --

다음에서, 동일/유사 이미지들을 시간/인물/이벤트 종류 등의 군집화 기준에 따라 군집하는 방법에 대해 설명한다.도 4는 본 발명의 한 실시예에 따른 이미지 군집화 방법의 흐름도이고, 도 5는 본 발명의 한 실시예에 따른 이미지 군집화 방법을 설명하는 예시 도면이며, 도 6은 본 발명의 한 실시예에 따른 사용자 단말에 제공되는 군집된 이미지의 예시 도면이다.4 is a flowchart of an image clustering method according to an embodiment of the present invention. FIG. 5 is a flowchart illustrating a method of clustering images according to an embodiment of the present invention. FIG. 6 is an exemplary diagram of a grouped image provided to a user terminal according to an embodiment of the present invention. FIG. 6 is a diagram illustrating an image clustering method according to an embodiment of the present invention.

도 4를 참고하면, 서버(100)는 군집화 키워드를 포함하는 이미지 군집화 요청을 입력받는다(S210). 서버(100)는 사용자 단말(200)로부터 검색 키워드에 대한 이미지 검색을 요청받으면, 검색 키워드를 군집화 키워드로 적용하여 이미지 군집화 작업을 시작할 수 있다. 또는 서버(100)는 특정 키워드에 대한 이미지 군집화 작업을 주기적으로 하거나, 특정 이벤트가 발생할 때마다 해당 이벤트에 대한 이미지 군집화 작업을 미리 할 수 있다. Referring to FIG. 4, the server 100 receives an image clustering request including a clustering keyword (S210). When the server 100 receives an image search request for a search keyword from the user terminal 200, the server 100 may apply the search keyword as a clustering keyword to start image clustering. Alternatively, the server 100 may periodically perform an image clustering operation for a specific keyword, or may perform an image clustering operation for the event whenever a specific event occurs.

서버(100)는 웹문서로부터 추출된 이미지에 이미지 설명 태그 및 타임스탬프가 매핑되어 저장된 이미지 저장소(300)에서 군집화 키워드에 연관된 이미지들을 추출한다(S220). 이때, 서버(100)는 타임스탬프가 특정 검색 기간(예를 들면, 오늘, 오늘부터 3일 전, 오늘부터 일주일 전, 오늘부터 한달 전, 오늘부터 일년 전, 과거의 특정 기간 등)에 작성된 이미지들을 추출한다. 검색 기간은 사용자 또는 서버에 의해 설정될 수 있다. 한편, 서버(100)는 이미지 군집화 전에, 다량의 웹문서로부터 추출된 이미지에 이미지 설명 태그 및 타임스탬프를 매핑하여 이미지 저장소(300)에 저장하고, 이미지 군집화할 때, 이미지 저장소(300)에서 군집화 키워드에 연관된 이미지를 추출하는 것으로 가정한다. 하지만, 서버(100)는 이미지 군집화하면서, 웹문서로부터 추출된 이미지에 이미지 설명 태그 및 타임스탬프를 매핑하고, 이를 이미지 저장소(300)에 저장할 수 있다. In operation S220, the server 100 extracts images related to the clustering keyword from the image storage 300 in which the image description tag and the time stamp are mapped to the image extracted from the web document. At this time, the server 100 displays the image created in the specific search period (for example, three days before today, three days before today, one week before today, one month before today, one year before today, . The search period can be set by the user or the server. Meanwhile, the server 100 maps an image description tag and a time stamp to an image extracted from a large amount of web documents before image clustering, and stores the image description tags and the time stamp in the image storage 300. In the image clustering, It is assumed that the image associated with the keyword is extracted. However, the server 100 may map the image description tag and the time stamp to the image extracted from the web document, and store it in the image repository 300, while image clustering is performed.

서버(100)는 군집화 키워드와 연관되어 있는 이미지들을 타임스탬프 순서로 정렬한다(S230). 도 5의 (a)를 참고하면, 군집화 키워드와 연관되어 있는 이미지들은 웹문서에 존재하는 중복 이미지들이 단일 이미지로 정리된 이미지 저장소(300)에서 추출되므로, 이미지 저장소(300)에서 추출된 이미지들은 동일하지 않은 이미지들로 구성된다. 예를 들어, 서버(100)는 군집화 키워드에 대한 검색 기간이 11월1일부터 11월3일인 경우, 타임스탬프가 11월1일인 M장의 이미지(1101_image_1~1101_image_m), 타임스탬프가 11월2일인 N장의 이미지(1102_image_1~1102_image_n), 타임스탬프가 11월3일인 K장의 이미지(1103_image_1~1103_image_k)를 시간 순서대로 정렬한다. 각 이미지는 뉴스, 블로그, 까페 등의 웹문서에서 추출된 이미지이고, 이미지 설명 태그가 메타데이터로 태깅되어 있다. 또한 각 이미지는 이미지명(title)이나 이미지 출처 등이 부가적으로 태깅되어 있을 수 있다.The server 100 arranges the images associated with the clustering keywords in the time stamp order (S230). 5A, the images associated with the clustering keyword are extracted from the image storage 300 in which the duplicate images existing in the web document are arranged into a single image, so that the images extracted from the image storage 300 It is composed of unequal images. For example, when the retrieval period for the clustering keyword is November 1 to November 3, the server 100 displays M images (1101_image_1 to 1101_image_m) whose timestamp is November 1, the time stamp is November 2 N images (1102_image_1 to 1102_image_n), and K images (1103_image_1 to 1103_image_k) whose time stamp is November 3 are arranged in chronological order. Each image is an image extracted from web documents such as news, blog, and cafe, and the image description tag is tagged with metadata. In addition, each image may be additionally tagged with an image title or an image source.

서버(100)는 타임스탬프 순서로 정렬된 이미지들의 유사도를 기초로 이미지를 묶어 적어도 하나의 군집이벤트를 생성한다(S240). 이미지들의 유사도는 이미지간 유사도 또는 이미지에 태깅된 이미지 설명 태그의 유사도를 포함할 수 있다. 도 5의 (b)를 참고하면, 서버(100)는 타임스탬프가 11월1일인 M장의 이미지 중에서, 유사도가 기준값 이상인 이미지들을 묶어 군집이벤트#1 및 군집이벤트#2를 생성하고, 타임스탬프가 11월2일인 N장의 이미지들 중 유사도가 기준값 이상인 이미지들을 묶어 군집이벤트#3을 생성하며, 타임스탬프가 11월3일인 K장의 이미지들 중 유사도가 기준값 이상인 이미지들을 묶어 군집이벤트#4를 생성할 수 있다. 이때, 서버(100)는 정렬된 이미지들 중에서 어느 군집이벤트에도 속하지 않는 이미지를 제외하거나, 단일 이미지 그대로 검색 결과 이미지로 노출할 수도 있다.The server 100 generates at least one cluster event by grouping the images based on the similarity of images arranged in the order of time stamp (S240). The similarity of the images may include similarity between images or similarity of the image description tag tagged in the image. Referring to FIG. 5B, the server 100 generates a cluster event # 1 and a cluster event # 2 by grouping images having a similarity value equal to or higher than the reference value out of M images of November 1st with a timestamp of 1 November, 3 is generated by grouping images having the similarity value equal to or higher than the reference value among the images of the Nth chapter on Nov. 2, and a cluster event # 4 is generated by grouping images having similarity of the reference value or higher among the K images having a time stamp of November 3 . At this time, the server 100 may exclude images that do not belong to any cluster event among the sorted images, or may expose a single image as a search result image as it is.

한편, 단계 S230과 단계 S240에서, 서버(100)가 구분된 시간 단위(예를 들면, 1일 단위)로 이미지들을 묶기 위해 타임스탬프 순서로 이미지들을 정렬하는 것으로 설명하였다. 하지만, 타임스탬프 순서(예를 들면, 오늘, 어제, 그저께)로 정렬하여 이미지들을 미리 구분할 필요 없이, 서버(100)는 특정 검색 기간(예를 들면, 오늘부터 3일 전)에 작성된 이미지들을 추출하고, 추출한 이미지들 전체를 유사도 기반으로 묶을 수 있다.On the other hand, in step S230 and step S240, it is described that the server 100 arranges images in time stamp order to bundle images in units of time (for example, one day unit) that are separated. However, the server 100 can extract images created in a specific search period (for example, three days before today) without having to sort the images in a timestamp order (for example, today, yesterday, And all the extracted images can be grouped based on similarity.

서버(100)는 각 군집이벤트에 이벤트명칭 및 군집 태그를 매핑한다(S250). 서버(100)는 해당 군집에 속한 이미지들의 이미지 설명 태그를 분석하여 군집을 대표하는 이벤트 명칭(예를 들면, ooo의 시구, ooo의 리허설, ooo의 경기, 영화 ooo 시사회 등)을 만들고, 해당 군집에 속한 이미지들의 이미지 설명 태그를 분석하여 군집을 대표하는 군집 태그를 만든다. 군집 태그는 해당 군집에 속한 이미지들의 이미지 설명 태그를 모두 포함하거나, 해당 군집에 속한 이미지들의 이미지 설명 태그 중 상위 다빈도 태그를 포함할 수 있다. 서버(100)는 이미지 설명 태그 이외에도, 이미지 설명 태그에 연관된 키워드들을 군집 태그로 결정하거나, 검색 키워드에 연관된 정보로부터 추출된 키워드들을 군집 태그로 결정할 수 있다. 예를 들어, 서버(100)는 검색 키워드가 인물인 경우, 해당 인물의 출연 영화/출연 방송 등과 이에 대한 동의어/유사어를 추출하고, 추출한 정보로부터 검색 키워드나 군집이벤트와 연관성이 높다고 판단되는 키워드를 군집 태그로 결정할 수 있다. 군집 태그 중 적어도 일부는 군집된 이미지와 함께 사용자 단말(200)에 표시될 수 있다. 군집이벤트별 군집된 이미지, 이벤트명칭 및 군집 태그는 이미지 저장소(300)에 저장된다.The server 100 maps an event name and a cluster tag to each cluster event (S250). The server 100 analyzes the image description tags of the images belonging to the community to create an event name representing the community (for example, a city ooo, a rehearsal for ooo, a competition for ooo, a movie ooo preview, etc.) We analyze the image description tags of the images belonging to the cluster and construct a cluster tag that represents the cluster. The cluster tag may include all the image description tags of the images belonging to the cluster or may include the upper cluster tag among the image description tags of the images belonging to the cluster. In addition to the image description tag, the server 100 may determine the keywords associated with the image description tag as cluster tags, or may determine the keywords extracted from the information associated with the search keywords as cluster tags. For example, when the search keyword is a character, the server 100 extracts a feature film / feature broadcast of the character and a synonym / similar word therefrom, and extracts a keyword, which is determined to be highly related to the search keyword or the cluster event, It can be decided by a cluster tag. At least some of the cluster tags may be displayed on the user terminal 200 together with the clustered images. The clustered images, event names, and cluster tags for each cluster event are stored in the image repository 300.

서버(100)는 사용자 단말(200)로 특정 군집이벤트나 군집 태그로 군집된 이미지들을 전송한다(S260). 군집된 이미지들은 사용자 단말(200)의 사용자 인터페이스 화면에 표시된다.The server 100 transmits the clustered images to the user terminal 200 using a specific cluster event or a cluster tag (S260). The clustered images are displayed on the user interface screen of the user terminal 200.

도 6의 (a)를 참고하면, 사용자 단말(200)은 군집이벤트별로 이미지들을 사용자 인터페이스 화면(400)에 표시하는데, 복수의 군집이벤트가 존재하는 경우, 시간 순으로 표시할 수 있다. 예를 들어, 사용자 인터페이스 화면(400a)은 군집이벤트별로 이벤트 명칭(410), 군집된 이미지(420), 적어도 하나의 태그(430)를 표시한다. 태그는 군집이벤트에 대응된 태그 또는 군집이벤트와 연관된 태그일 수 있다. 사용자 인터페이스 화면(400)은 군집이벤트별로 공유 버튼(440), 날짜(450) 등을 더 표시할 수 있다. 사용자 인터페이스 화면(400)은 군집이벤트 검색에 사용된 검색 키워드명칭(460)을 더 표시할 수 있다. 사용자가 태그(430)를 선택하면, 사용자 단말(200)은 태그(430)에 관련된 검색 결과를 공유 화면(예를 들면, 메신저 어플리케이션의 채팅방 화면)에 표시할 수 있다.Referring to FIG. 6A, the user terminal 200 displays images on the user interface screen 400 for each cluster event. When there are a plurality of cluster events, the user terminal 200 can display the images in chronological order. For example, the user interface screen 400a displays an event name 410, a clustered image 420, and at least one tag 430 for each cluster event. The tag may be a tag associated with the clustering event or a tag associated with the clustering event. The user interface screen 400 may further display a share button 440, a date 450, and the like for each cluster event. The user interface screen 400 may further display a search keyword name 460 used in cluster event search. When the user selects the tag 430, the user terminal 200 can display the search result related to the tag 430 on the shared screen (for example, the chat screen of the instant messenger application).

도 6의 (b)를 참고하면, 사용자가 공유 버튼(440)을 선택하면, 사용자 단말(200)은 공유 버튼(440)에 해당하는 군집이벤트를 공유 화면(예를 들면, 메신저 어플리케이션의 채팅방 화면)(400b)에 표시할 수 있다. 이때, 공유된 군집이벤트는 군집된 이미지 전체를 공유 화면에 표시할 수 있으나, 썸네일 형태나, 군집된 이미지들이 자동/수동으로 순차적으로 또는 랜덤하게(randomly) 넘어가면서 표시되는(재생되는) 콘텐트(앞으로, '움직이는 이미지 콘텐트' 또는 '요약형 콘텐트'라고 함)(470)로 표시될 수 있다. 6B, when the user selects the sharing button 440, the user terminal 200 transmits a community event corresponding to the sharing button 440 to a shared screen (for example, a chat screen of the instant messenger application 440) ) 400b. At this time, the shared clustering event may display the entire clustering image on the shared screen. However, the shared clustering event may include a thumbnail form or a content (clustering) that is displayed (played) randomly or randomly (Hereinafter, referred to as 'moving image content' or 'summary content') 470.

공유 화면(400b)은 공유된 콘텐트와 함께, 공유된 콘텐트에 관련된 태그들을 함께 표시할 수 있다. The sharing screen 400b may display the tags associated with the shared content together with the shared content.

도 7은 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법의 흐름도이고, 도 8은 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법을 이용한 서비스의 예시이다.FIG. 7 is a flowchart illustrating a method of identifying an image according to an exemplary embodiment of the present invention. FIG. 8 is an illustration of a service using a method of identifying an image according to an exemplary embodiment of the present invention.

도 7을 참고하면, 뉴스, 블로그, 소셜미디어서비스 등에 수많은 웹문서들이 존재하는데, 서버(100)는 웹문서에서 추출한 이미지들이 중복되는 경우, 중복 이미지들 중에서 대표 이미지를 결정하고, 대표 이미지에 중복 이미지들 각각에 태깅된 이미지 설명 내용들을 연결한다. 하지만, 이미지 설명 내용은 텍스트이므로, 동명이인이나 중의적 표현이 존재하는 경우, 이미지 검색 결과가 부정확할 수 있다. 이미지 분류기를 통해 인물을 분류할 수 있으나, 인물 수가 지속적으로 늘어나기 때문에, 학습 기반 이미지 분류기는 확장성이 높지 않다. 따라서, 서버(100)는 이미지와 함께 추출된 이미지 설명 내용을 기초로 이미지 내 인물을 다음과 같이 확인한다.Referring to FIG. 7, there are a number of web documents such as news, blogs, and social media services. When the images extracted from the web document are overlapped, the server 100 determines a representative image among the redundant images, Connect the tagged image description to each of the images. However, since the content of the image description is text, the image search result may be inaccurate if the same name or ambiguous expression exists. Although the image classifier can classify a person, the learning-based image classifier is not scalable because the number of people is constantly increasing. Accordingly, the server 100 confirms the person in the image as follows based on the image description content extracted together with the image.

서버(100)는 인물별로 인물정보를 관리한다(S310). 인물정보는 인물 이미지의 특징값, 인물에 부여된 고유의 인물 식별정보(ID), 인물을 식별할 수 있는 부가 정보(예를 들면, 직업 등)를 포함한다. 한편, 서버(100)는 직접 인물정보를 관리하지 않고, 외부의 인물 데이터베이스를 사용할 수 있다.The server 100 manages person information for each person (S310). The person information includes a feature value of the person image, unique person identification information (ID) assigned to the person, and additional information (e.g., job, etc.) that can identify the person. On the other hand, the server 100 can use an external person database without directly managing the person information.

서버(100)는 웹문서에서 추출된 이미지와 이미지 설명 내용을 입력받으면, 이미지 설명 내용으로부터 후보 인물을 추출한다(S320). 만약, 이미지 설명 내용으로부터 이미지 내 인물 확인이 불필요하거나, 특정 인물임이 확실한 경우, 다음의 인물 확인 절차를 생략하고, 곧바로 추출 이미지에 이미지 설명 태그를 태깅하는 절차를 수행할 수 있다.When the server 100 receives the image extracted from the web document and the image description, the server 100 extracts a candidate from the image description (S320). If it is not necessary to check the person in the image from the image description, or if it is certain that the person is a specific person, the following person identification procedure may be omitted and a procedure of tagging the image description tag directly on the extracted image may be performed.

서버(100)는 이미지 설명 내용에 포함된 키워드들과 후보 인물의 인물정보를 기초로 후보 인물이 이미지 내 인물인지를 평가한다(S330). 서버(100)는 인물 데이터베이스, 영화 데이터베이스, TV프로그램 데이터베이스 등 다양한 API를 매쉬업(Mash-up)하여 후보 인물이 이미지 내 인물인지를 평가할 수 있다.The server 100 evaluates whether the candidate person is a person in the image based on the keywords included in the image description content and the person information of the candidate person (S330). The server 100 may mash up various APIs such as a person database, a movie database, and a TV program database to evaluate whether a candidate is a person in the image.

서버(100)는 후보 인물의 평가 점수를 기초로 이미지 내 인물을 확인한다(S340). 후보 인물이 복수인 경우, 서버(100)는 각 후보 인물의 평가 점수를 기초로 이미지 내 인물을 결정할 수 있다. 서버(100)는 정확성을 높이기 위해 확인된 인물의 이미지 특징값과, 웹문서에서 추출한 이미지의 특징값을 비교하여 최종적으로 인물을 결정할 수 있다.The server 100 confirms the person in the image based on the evaluation score of the candidate character (S340). When there are a plurality of candidate persons, the server 100 can determine the person in the image based on the evaluation score of each candidate person. The server 100 can finally determine the person by comparing the image feature value of the identified person with the feature value of the image extracted from the web document to improve the accuracy.

서버(100)는 확인된 인물ID를 이미지의 이미지 설명 태그에 추가한다(S350).The server 100 adds the identified person ID to the image description tag of the image (S350).

예를 들어, 서버(100)가 어느 웹문서에서 추출된 인물 이미지와 함께, '김범수, 유희열의 스케치북에서 입담 뽑내'라는 이미지 설명 내용을 입력받는 경우, 이미지 설명 내용에 포함된 인물명 '김범수'을 기초로 후보 인물(가수 김범수, 아나운서 김범수, 경영인 김범수)을 추출한다.For example, when the server 100 receives image description contents such as 'Kim Beom-soo and Yoo Hee-yul in a sketch book' together with a portrait image extracted from a web document, a person name 'Kim Beom-su' Based on the candidates (singer Kim Bum-soo, announcer Kim Bum-soo, executive Kim Bum-soo) is extracted.

서버(100)는 이미지 설명 내용에 포함된 키워드(예를 들면, 음악 방송 프로그램명인 '유희열의 스케치북' 등)와 후보 인물의 인물정보를 기초로 후보 인물들 중에서 이미지 설명 내용에 부합하는 정도를 평가한 후, 점수가 가장 높은 '가수 김범수'를 이미지 내 인물로 확인할 수 있다. 이때, 평가 기준 및 평가 방법은 다양하게 설정될 수 있다. The server 100 evaluates the degree of matching with the image description content among the candidates based on the keyword included in the image description content (e.g., a sketchbook of 'Yu Hee Yeol', which is a music broadcast program name) and the character information of the candidate character After that, you can see the highest number of 'singer Kim Bum Soo' in the image. At this time, the evaluation standard and the evaluation method can be set variously.

이러한, 이미지 내 인물 확인 방법을 통해, 서버(100)는 도 2에서 설명한 이미지 저장소에 웹문서에서 추출한 이미지들을 저장할 때, 정확한 인물정보를 태깅하여 저장할 수 있다. 서버(100)는 사용자 단말(200)에 군집된 이미지를 제공할 때, 정확한 인물정보로 이미지들을 군집화할 수 있다. 따라서, 사용자가 인물명 태그(예를 들면, #김범수)를 입력하여 검색 요청하는 경우, 서버(100)는 가수 김범수로 군집된 이미지와 아나운서 김범수로 군집된 이미지를 구분하여 제공할 수 있다.When the server 100 stores the images extracted from the web document in the image repository described with reference to FIG. 2, the server 100 can store the accurate person information by tagging. When the server 100 provides the clustered image to the user terminal 200, the server 100 may cluster the images with accurate person information. Accordingly, when the user inputs a person name tag (e.g., # Kim Bum-soo) and requests a search, the server 100 can separately provide an image clustered by Kim Bum-su and an image clustered by an announcer Kim Bum-soo.

도 8을 참고하면, 지금까지 설명한 서버(100)의 이미지 내 인물 확인 방법은 이미지에 포함된 인물 확인 서비스에 적용될 수 있다. Referring to FIG. 8, the person identification method in the image of the server 100 described above can be applied to the person identification service included in the image.

예를 들어, 서버(100)는 이미지 내 인물 확인을 요청받을 수 있다. 사용자가 인물 확인을 요청하는 방법은 다양할 수 있다. 한 실시예에 따르면, 사용자는 이미지가 포함된 웹문서를 보다가 해당 웹문서에 포함된 이미지가 누구인지 궁금한 경우, 웹문서나 웹문서의 링크 정보(URL)를 서버(100)로 전송하여 웹문서에 포함된 이미지의 인물 확인을 요청할 수 있다. 그러면, 서버(100)는 웹문서의 이미지에 도 8과 같은 인물 확인 정보를 부가하여 사용자 단말(200)에 표시할 수 있다. 다른 실시예에 따르면, 사용자는 인물 확인하고자 하는 이미지를 서버(100)로 전송하여 이미지의 인물 확인을 요청할 수 있다.For example, the server 100 may be requested to confirm the person in the image. The way in which a user requests a person confirmation may vary. According to one embodiment, when a user browses a web document containing an image and wonders who the image is included in the web document, the user transmits link information (URL) of the web document or the web document to the server 100, You can request confirmation of the person in the image included in the document. Then, the server 100 may add the person identification information as shown in FIG. 8 to the image of the web document and display the same on the user terminal 200. According to another embodiment, the user may send an image to the server 100 to request identification of the image.

이미지에 복수의 인물이 포함된 경우, 서버(100)는 각 인물이 누구인지 평가하고, 평가 결과를 기초로 인물명을 확인할 수 있다. When a plurality of persons are included in the image, the server 100 can evaluate who each person is and can confirm the person's name based on the evaluation result.

서버(100)는 이미지와 함께 이미지 설명 내용이 함께 입력되는 경우, 이미지 설명 내용으로부터 후보 인물을 결정하고, 좁혀진 후보 인물의 이미지 특징값과 입력 이미지의 특징값을 비교하여 복수의 인물 각각을 평가한다. 예를 들어, 이미지 함께 '트와이스 OO 무대'라는 이미지 설명 내용이 입력되는 경우, 서버(100)는 이미지 설명 내용을 기초로 후보 인물을 '트와이스 멤버'로 결정하고, 이미지 내 인물이 트와이스 멤버 각각일 가능성을 점수로 평가할 수 있다. When the image description content is input together with the image, the server 100 determines a candidate character from the image description content, and compares the image feature value of the narrowed candidate character with the feature value of the input image to evaluate each of the plurality of characters . For example, when image description content called 'Twice OO Stage' is input together with the image, the server 100 determines the candidate person as a 'Twice member' based on the image description content, The possibility of each member can be evaluated with a score.

이미지만 입력되더라도, 서버(100)는 이미지 저장소(300)에서 입력 이미지와 동일한 저장 이미지를 찾는다. 그리고 서버(100)는 저장 이미지에 대응된 이미지 설명 태그나 이미지 설명 내용들을 기초로 후보 인물을 결정하고, 좁혀진 후보 인물의 이미지 특징값과 입력 이미지의 특징값을 비교하여 복수의 인물 각각을 평가할 수 있다. Even if only the image is input, the server 100 searches the image storage 300 for the same stored image as the input image. Then, the server 100 determines a candidate character based on the image description tag or image description contents corresponding to the stored image, and compares the image feature value of the narrowed candidate character with the feature value of the input image to evaluate each of the plurality of characters have.

이미지 저장소(300)에서 입력 이미지와 동일한 저장 이미지가 없는 경우, 서버(100)는 이미지 저장소(300)에 저장된 인물 이미지들의 특징값과 입력 이미지의 인물별 특징값을 비교하여 복수의 인물 각각을 평가할 수 있다. If there is no stored image identical to the input image in the image repository 300, the server 100 compares the characteristic values of the person images stored in the image repository 300 with the characteristic values of the input image to evaluate each of the plurality of persons .

사용자 단말(200)은 도 8과 같이, 인물명과 함께 평가점수를 더 보여줄 수 있다. 인물명 각각은 태그로 생성되어, 사용자가 인터페이스 화면에서 해당 인물명 또는 인물명 태그를 선택하면, 사용자 단말(200)은 선택한 인물명 태그에 관련된 검색 결과를 표시할 수 있다.The user terminal 200 may display the rating score together with the character name as shown in FIG. Each of the person names is generated as a tag, and when the user selects a corresponding person name or a person name tag on the interface screen, the user terminal 200 can display a search result related to the selected person name tag.

도 9와 도 10 각각은 본 발명의 한 실시예에 따른 군집 이미지 공유 방법을 설명하는 도면이다.9 and 10 are views for explaining a cluster image sharing method according to an embodiment of the present invention.

도 9와 도 10을 참고하면, 서버(100)는 군집된 이미지들을 사용자들이 공유할 수 있는 형태의 콘텐트로 생성하여, 사용자 단말(200)에 제공한다. 서버(100)는 군집된 이미지들이 연속적으로 재생되는 '움직이는 이미지 콘텐트' 또는 '요약형 콘텐트'를 사용자 단말(200)에 제공할 수 있다. 사용자가 콘텐트를 공유하는 서비스는 다양할 수 있으나, 여기서는 메신저 어플리케이션의 채팅방 화면에서 대화자들과 군집된 이미지들을 공유하는 것을 예로 들어 설명한다. Referring to FIGs. 9 and 10, the server 100 generates clustering images in the form of content that can be shared by users, and provides them to the user terminal 200. FIG. The server 100 may provide a 'moving image content' or 'summary content' to the user terminal 200 in which the clustering images are continuously played back. Although the service in which users share contents may be various, here, an example of sharing crowded images with chatters on the chat room screen of the messenger application will be described.

먼저, 서버(100)가 군집된 이미지들을 이용하여 요약형 콘텐트를 생성하는 방법에 대해 설명한다.First, a description will be given of a method of generating summary type content using the clustered images of the server 100.

도 9를 참고하면, 서버(100)는 군집이벤트에 포함된 군집된 이미지를 가져온다(S410). Referring to FIG. 9, the server 100 fetches a clustered image included in the cluster event (S410).

서버(100)는 군집된 이미지 각각에서 등장 인물을 확인하고, 등장 인물별로 정렬한다(S420). The server 100 identifies the characters in each of the crowded images and arranges them by characters (S420).

서버(100)는 등장 인물별로 정렬된 동일 인물 이미지들 중에서, 동일 인물 이미지들 사이의 움직임을 확인한다(S430). 서버(100)는 이미지 좌표의 광학 흐름(Optical Flow)을 추적해 움직임을 찾을 수 있다.The server 100 confirms the movement among the same person images among the same person images sorted by the characters (S430). The server 100 can track the optical flow of the image coordinates to find the motion.

서버(100)는 동일 인물이 등장하는 이미지 내의 모든 이미지쌍에 대한 좌표들의 광학 흐름으로부터 모든 이미지쌍에 대한 연속적 움직임 점수를 계산한다(S440). 두 이미지의 많은 좌표들이 같은 방향으로 연속적으로 움직일 때, 움직임 점수가 높게 계산된다. 서버(100)는 N개의 이미지로부터 획득가능한 모든 이미지쌍의 관계를 NxN 행렬로 저장할 수 있다.The server 100 calculates a continuous motion score for all image pairs from the optical flow of coordinates for all image pairs in the image in which the same person appears (S440). When many coordinates of two images move in succession in the same direction, the motion score is calculated high. The server 100 may store the relationship of all image pairs obtainable from the N images as an NxN matrix.

서버(100)는 모든 이미지쌍의 움직임 점수를 기초로 이미지 내의 움직임 방향을 추정하고, 움직임이 연속적인 순서로 이미지들을 순차적으로 배치한다(S450). 예를 들면, 군집이벤트에 포함된 인물#1의 이미지들이 IMG1부터 IMG5인 경우, 서버(100)는 IMG1와 IMG2, IMG1과 IMG3, IMG1과 IMG4, IMG1과 IMG5, IMG2와 IMG3, IMG1와 IMG4, IMG2와 IMG5, IMG3과 IMG4, IMG3과 IMG5, IMG4과 IMG5의 움직임 점수를 기초로 움직임이 연속적인 순서(인물 움직임을 연속적으로 만드는 순서), 즉 IMG2, IMG3, IMG1, IMG5, IMG4를 찾고, 이 순서대로 이미지들을 배치한다.The server 100 estimates the motion direction in the image based on the motion scores of all the image pairs, and sequentially arranges the images in a continuous sequence of motion (S450). For example, when the images of the person # 1 included in the cluster event are from IMG1 to IMG5, the server 100 transmits IMG1, IMG2, IMG1 and IMG3, IMG1 and IMG4, IMG1 and IMG5, IMG2 and IMG3, IMG1 and IMG4, IMG2, IMG3, IMG1, IMG5, and IMG4, based on the motion scores of IMG2 and IMG5, IMG3 and IMG4, IMG3 and IMG5, IMG4 and IMG5, Place the images in order.

서버(100)는 순차적으로 배치된 이미지들이 연속적으로(랜덤하게 또는 순차적으로) 넘어가면서 표시되는 요약형 콘텐트(움직이는 이미지 콘텐트)를 생성한다(S460). 광학 흐름을 기초로 인물 움직임을 자연스럽게 만드는 순서로 이미지가 배치되므로, 배치된 이미지들이 연속적으로(랜덤하게 또는 순차적으로) 넘어가면 인물이 자연스럽게 움직이는 것처럼 보인다. 요약형 콘텐트는 도 6의 (b)와 같이 메신저 어플리케이션의 채팅방에 전송되어 공유될 수 있다. The server 100 generates summary content (moving image content) that is sequentially displayed (sequentially or sequentially) sequentially arranged images (S460). Because the images are arranged in a sequence that makes the movement of figures based on the optical flow, the characters seem to move naturally when the images are moved consecutively (randomly or sequentially). The summary type content may be transmitted to the chat room of the messenger application and shared as shown in FIG. 6 (b).

요약형 콘텐트는 다양한 템플릿 중에서 선택되어 생성될 수 있다. 예를 들면, 요약형 콘텐트는 단일 등장 인물의 이미지가 순서대로 이어지는 템플릿으로 생성될 수 있다. 요약형 콘텐트는 군집이벤트에 복수의 등장 인물이 존재하는 경우, 복수의 등장 인물의 요약형 콘텐트를 연결하여 생성될 수 있다. Summary type content can be selected and created from various templates. For example, the abstracted content may be generated as a template with images of a single character in sequence. The summary type content can be generated by connecting summary characters of a plurality of characters when a plurality of characters are present in a cluster event.

서버(100)가 군집된 이미지들 중 복수의 이미지들을 선택하여 요약형 콘텐트를 생성할 수 있고, 또는 서버(100)가 사용자 단말(200)로부터 선택된 복수의 이미지들이나 사용자 단말(200)로부터 선택된 등장 인물을 기초로 요약형 콘텐트를 생성할 수 있다.The server 100 may select a plurality of images from the clustered images to generate summary content or the server 100 may generate a plurality of images selected from the user terminal 200, You can generate summary content based on a person.

다음으로, 사용자 단말(200)이 서버(100)로부터 수신한 군집이벤트에 관련된 콘텐트를 화면에 표시하는 방법에 대해 설명한다.Next, a method of displaying the content related to the cluster event received from the server 100 on the screen will be described.

도 10의 (a)를 참고하면, 사용자 단말(200)은 서버(100)로부터 군집이벤트로 군집된 복수의 이미지들을 수신하여, 검색 결과 화면(500a)에 표시한다. 사용자 단말(200)은 검색 키워드에 대한 군집이벤트를 서버(100)로 요청할 수 있다. 이때, 사용자가 검색 키워드는 직접 입력해서 군집이벤트를 요청하거나, 임의 인터페이스 화면에 표시된 검색 키워드를 선택하여 군집이벤트를 요청할 수 있다. 사용자 인터페이스 화면(500a)은 군집이벤트 이외에도 다른 컬렉션에도 검색 키워드에 관련된 검색 결과가 존재하는 경우, 카드뷰 형식으로 다른 컬렉션을 더 표시할 수 있다. Referring to FIG. 10 (a), the user terminal 200 receives a plurality of images clustered from cluster events from the server 100 and displays the images on the search result screen 500a. The user terminal 200 may request the server 100 for a cluster event for the search keyword. At this time, the user can request a cluster event by directly inputting the search keyword, or can request a cluster event by selecting a search keyword displayed on the arbitrary interface screen. In the user interface screen 500a, if there are search results related to search keywords in other collections in addition to the clustering event, another collection can be displayed in the card view format.

검색 결과 화면(500a)은 복수의 이미지들의 대표 이미지들(510)을 표시할 수 있다. 이때, 검색 결과 화면(500a)은 군집이벤트에 관련된 태그(520)(예를 들면, #TWICE, #쯔위, #무대, #엠카운트다운 등)를 표시할 수 있다. 그리고, 사용자 인터페이스 화면(500a)은 공유 버튼(530)을 표시할 수 있다. 사용자 인터페이스 화면(500a)은 이미지 펼쳐보기 버튼(540)을 표시할 수 있다. The search result screen 500a may display representative images 510 of a plurality of images. At this time, the search result screen 500a may display a tag 520 (for example, #TWICE, # #, # stage, #M countdown, etc.) related to the cluster event. The user interface screen 500a may display the sharing button 530. [ The user interface screen 500a may display the image expansion view button 540. [

도 10의 (b)를 참고하면, 검색 결과 화면(500a)의 이미지 펼쳐보기 버튼(540)이 선택되면, 검색 결과 화면(500b)에 숨겨져 있던 군집이벤트의 이미지들이 펼쳐져 표시된다. 이때, 이미지들은 인물별로 정렬되고, 동일 인물 이미지에서도 움직임 방향(동선)에 따라 정렬되어 표시된다. 한편, 도 10의 (a)에서, 어느 대표 이미지를 선택하면, 해당 대표 이미지에 연결된 이미지들만이 펼쳐서 보일 수 있다.Referring to FIG. 10B, when the image unfolding view button 540 of the search result screen 500a is selected, the images of the clustering events hidden in the search result screen 500b are expanded and displayed. At this time, the images are sorted by the persons, and the images of the same person are displayed according to the movement direction (copper line). On the other hand, in FIG. 10 (a), when a representative image is selected, only the images linked to the representative image can be expanded and displayed.

공유 버튼(530)이 선택되는 경우, 서버(100)는 복수의 이미지들을 요약형 콘텐트로 생성하여 사용자 단말(200)로 전송할 수 있다. 또는, 사용자가 검색 결과 화면(500a나 500b)에서 군집이벤트에 포함된 이미지들에 대한 요약형 콘텐트 생성을 요청할 수 있는 버튼(미도시)을 선택하는 경우, 서버(100)는 복수의 이미지들을 요약형 콘텐트로 생성하여 사용자 단말(200)로 전송할 수 있다. 군집이벤트에 포함된 이미지들 중 사용자가 이미지들을 선택하여 요약형 콘텐트를 생성할 수 있도록, 검색 결과 화면(500a나 500b)은 이미지 선택 버튼(미도시)을 더 포함할 수 있다.When the sharing button 530 is selected, the server 100 may generate a plurality of images as summary contents and transmit them to the user terminal 200. Alternatively, when the user selects a button (not shown) that can request summary content generation for the images included in the cluster event on the search result screen 500a or 500b, the server 100 may summarize the plurality of images Type content and transmit the generated content to the user terminal 200. The search result screen 500a or 500b may further include an image selection button (not shown) so that the user can select the images included in the cluster event and generate the summary type content.

도 10의 (c)를 참고하면, 사용자 단말(200)은 서버(100)로부터 군집이벤트의 요약형 콘텐트(610)를 수신하여 공유 화면(예를 들면, 채팅방 화면)(600)에 표시할 수 있다. 사용자가 요약형 콘텐트(610)를 탭하는 등의 선택을 하면, 요약형 콘텐트(610)에 포함된 이미지들이 순서에 따라 연속적으로(랜덤하게 또는 순차적으로) 넘어가면서 표시된다. 공유 화면(600)은 요약형 콘텐트(610)와 함께 요약형 콘텐트에 관련된 태그(620)(예를 들면, #TWICE, #쯔위, #무대 등)를 함께 표시할 수 있다. Referring to FIG. 10C, the user terminal 200 receives the summary content 610 of the clustering event from the server 100 and displays the summary content 610 on the shared screen (for example, the chatting screen) 600 have. When the user makes a selection, such as tapping the summary content 610, the images included in the summary content 610 are displayed sequentially (randomly or sequentially) sequentially over the images. The sharing screen 600 may display the tags 620 (e.g., # TWO, #, #, etc.) associated with the summary content with the summary content 610. [

추천 태그나 대표 태그가 선택되면, 사용자 단말(200)은 해당하는 검색 결과를 공유 화면(600) 또는 별도의 인터페이스 화면에 표시할 수 있다.When the recommendation tag or the representative tag is selected, the user terminal 200 can display the corresponding search result on the sharing screen 600 or a separate interface screen.

도 11은 본 발명의 한 실시예에 따른 메신저 서비스에서의 웹문서 공유를 위한 시스템을 설명하는 도면이다.11 is a diagram illustrating a system for sharing web documents in a messenger service according to an embodiment of the present invention.

도 11을 참고하면, 서버(100)가 사용자 단말(200)의 메신저 어플리케이션을 통해 콘텐트를 공유하는 것을 가정하고 설명한다. 서버(100)는 메신저 서비스에서 제공하는 기능에 따라 메시징 서버(10), 이미지 분석 서버(12), 스크랩 서버(14) 등으로 분리될 수 있고, 메시징 서버(10), 이미지 분석 서버(12), 그리고 스크랩 서버(14) 사이의 연동 방법과, 이들이 사용자 단말(200)과 통신하는 방법은 연동 규칙이나 서비스 시나리오에 따라 다양하게 설계변경될 수 있다. 한편, 서버(100)는 메시징 서버(10), 이미지 분석 서버(12), 스크랩 서버(14) 중 적어도 하나를 포함하고, 서버(100)에 포함되지 않은 서버 기능은 외부의 서버 시스템(예를 들면, 제3자에 의해 운용되는 시스템)과 연동하여 외부의 서버 시스템으로부터 제공받을 수 있다. Referring to FIG. 11, it is assumed that the server 100 shares content through a messenger application of the user terminal 200. FIG. The server 100 can be divided into a messaging server 10, an image analysis server 12, a scrap server 14 and the like according to the functions provided by the messenger service, and the messaging server 10, the image analysis server 12, And the scrap server 14 and how they communicate with the user terminal 200 can be variously modified according to the interworking rule or the service scenario. The server 100 includes at least one of a messaging server 10, an image analysis server 12 and a scrap server 14. A server function not included in the server 100 includes an external server system A system operated by a third party), and can be provided from an external server system.

채팅방 화면(700)에 특정 링크(URL) 정보(710)가 입력되면, 사용자 단말(200)은 스크랩 서버(14)로 특정 링크(URL) 정보를 전달하고, 스크랩 서버(14)는 특정 링크(URL) 정보에 해당하는 콘텐트 서버에 접속하여 해당 콘텐트를 스크래핑한다. 스크래핑한 콘텐트는 이미지와 해당 웹문서에 포함된 이미지 설명 정보(예를 들면, 웹문서 제목)를 포함한다. The user terminal 200 transmits the specific link (URL) information to the scrap server 14 and the scrap server 14 transmits the specific link (URL) information to the specific link (URL) URL) information, and scrapes the corresponding content. The scraped content includes an image and image description information (e.g., a web document title) included in the web document.

스크랩 서버(14)는 스크래핑한 콘텐트를 이미지 분석 서버(12)로 전송하여, 공유 콘텐트를 요청한다.The scrap server 14 sends the scraped content to the image analysis server 12 to request the shared content.

이미지 분석 서버(12)는 스크래핑된 이미지 내 인물 등장 여부, 얼굴의 위치, 사물의 위치 등의 정보를 분석해 썸네일을 생성한다. 그리고, 이미지 분석 서버(12)는 이미지 저장소(300)에서 스크래핑된 이미지와 동일/유사 이미지를 추출한다. 여기서, 이미지 저장소(300)는 표 1과 같이, 이미지별로 이미지 설명 태그나 웹문서들에 포함된 이미지 설명 내용들을 저장하고 있다. 따라서, 이미지 분석 서버(12)는 이미지 저장소(300)에서, 추출된 동일/유사 이미지에 매핑된 이미지 설명 태그나 웹문서들에 포함된 이미지 설명 내용들을 기초로 스크래핑된 이미지에 연관된 태그 목록을 생성할 수 있다.The image analysis server 12 analyzes the information such as the appearance of a person in a scraped image, the position of a face, the position of an object, and generates a thumbnail. The image analysis server 12 then extracts the same / similar image as the scraped image in the image repository 300. Here, as shown in Table 1, the image storage 300 stores image description tags and image description contents included in web documents for each image. Accordingly, the image analysis server 12 generates the tag list associated with the scraped image based on the image description tags mapped to the extracted same / similar images or the image description contents included in the web documents in the image storage 300 can do.

스크래핑한 콘텐트의 썸네일과 태그 목록은 스크랩 서버(14)를 통해 사용자 단말(200)로 전달될 수 있다.The thumbnail and tag list of the scraped content may be delivered to the user terminal 200 via the scrap server 14.

채팅방 화면(700)은 링크(URL) 정보(710)에서 스크래핑된 콘텐트의 썸네일(720)과 태그 목록에 포함된 적어도 하나의 태그(730)를 표시한다. 태그(730)가 선택되면, 사용자 단말(200)은 태그(730)해당하는 검색 결과를 채팅창 화면(700) 또는 별도의 인터페이스 화면에 표시할 수 있다.The chat room screen 700 displays a thumbnail 720 of the scraped content in the link (URL) information 710 and at least one tag 730 included in the tag list. When the tag 730 is selected, the user terminal 200 can display the search result corresponding to the tag 730 on the chat window screen 700 or a separate interface screen.

이와 같이, 본 발명의 실시예에 따르면 다양한 출처의 다양한 이미지를 시간, 이벤트, 인물 등의 속성별로 군집화할 수 있다. 본 발명의 실시예에 따르면 웹에 쏟아져나오는 대량의 이미지들을 가공하여 공유할 수 있는 콘텐트를 생성할 수 있다. 본 발명의 실시예에 따르면 사용자는 관심있는 키워드로부터 유의미한 콘텐트를 얻을 수 있고, 정렬된 이미지들을 통해 이미지 검색 결과를 시각적으로 빠르게 확인할 수 있다.As described above, according to the embodiment of the present invention, various images of various sources can be clustered according to attributes such as time, event, and person. According to the embodiment of the present invention, it is possible to generate a content that can be processed and shared by a large amount of images pouring into the web. According to the embodiment of the present invention, the user can obtain meaningful content from the keyword of interest, and visually and quickly confirm the image search result through the sorted images.

이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.The embodiments of the present invention described above are not implemented only by the apparatus and method, but may be implemented through a program for realizing the function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

Claims (7)

적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서,
단일 이벤트로 군집된 복수 이미지들의 공유 요청을 입력받는 단계,
상기 복수 이미지들 각각에 포함된 인물 식별 정보를 기초로 각 이미지에 포함된 등장 인물을 식별하고, 상기 복수 이미지들 중 동일한 등장 인물을 포함하는 이미지들 내에서의 인물 움직임 변화를 추정하여 해당 등장 인물의 이미지들을 정렬하는 단계, 그리고
사용자 단말로, 정렬된 상기 복수 이미지들을 전송하는 단계를 포함하고,
상기 정렬하는 단계는
동일한 등장 인물을 포함하는 이미지들 내의 모든 이미지쌍에 대한 좌표들의 광학 흐름(Optical Flow)을 계산하고, 계산 결과를 기초로 상기 인물 움직임을 연속적으로 만드는 순서로 이미지들을 정렬하는 이미지 공유 방법.
A method of image sharing of a server operated by at least one processor,
Receiving a sharing request of a plurality of images clustered into a single event,
Identifying a character included in each image based on the character identification information included in each of the plurality of images, estimating a character movement change in images including the same character among the plurality of images, Aligning the images of
And transmitting the plurality of ordered images to a user terminal,
The aligning step
Calculating an optical flow of coordinates for all image pairs in the images including the same character and arranging the images in order to make the person movements consecutive based on the calculation result.
제1항에서,
상기 정렬하는 단계는
상기 복수 이미지들에서 복수의 인물이 등장하는 경우, 등장 인물별로 상기 복수 이미지들을 분류하며, 등장 인물별로 분류된 이미지들을 정렬하는 이미지 공유 방법.
The method of claim 1,
The aligning step
And sorting the plurality of images by the characters and sorting the images classified by the characters if a plurality of characters appear in the plurality of images.
제1항에서,
상기 복수 이미지들을 전송하는 단계는
상기 복수 이미지들이 랜덤하게 넘어가거나 또는 표시 순서에 따라 순차적으로 넘어가면서 상기 사용자 단말의 인터페이스 화면에 표시되는 콘텐트를 생성하는 단계, 그리고
상기 콘텐트를 상기 사용자 단말로 전송하는 단계
를 포함하는 이미지 공유 방법.
The method of claim 1,
Wherein the transmitting the plurality of images comprises:
Generating the content displayed on the interface screen of the user terminal while the plurality of images are randomly moved or sequentially moved according to the display order; and
Transmitting the content to the user terminal
/ RTI >
제1항에서,
상기 복수 이미지들을 전송하는 단계는
상기 단일 이벤트 또는 상기 복수 이미지들에 연관된 적어도 하나의 태그를 상기 사용자 단말로 더 전송하는 이미지 공유 방법.
The method of claim 1,
Wherein the transmitting the plurality of images comprises:
Wherein the at least one tag associated with the single event or the plurality of images is further transmitted to the user terminal.
적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서,
이미지 저장소에서, 입력 이미지와 동일하거나 유사한 적어도 하나의 저장 이미지를 검색하는 단계,
상기 저장 이미지에 매핑된 이미지 설명 정보를 이용하여 상기 입력 이미지에 연관된 태그 목록을 생성하는 단계, 그리고
사용자 단말로, 상기 입력 이미지의 공유 정보와 상기 태그 목록을 전송하는 단계를 포함하고,
상기 이미지 저장소는 복수의 웹문서에서 추출된 각 이미지와 각 이미지를 설명하는 이미지 설명 정보를 매핑하여 관리하는, 이미지 공유 방법.
A method of image sharing of a server operated by at least one processor,
Retrieving, in the image repository, at least one stored image that is the same as or similar to the input image,
Generating a tag list associated with the input image using image description information mapped to the stored image; and
Transmitting, to a user terminal, sharing information of the input image and the tag list,
Wherein the image repository maps and manages each image extracted from a plurality of web documents and image description information describing each image.
제5항에서,
상기 입력 이미지는 상기 사용자 단말로부터 공유 요청된 링크 정보에서 스크래핑된 이미지인, 이미지 공유 방법.
The method of claim 5,
Wherein the input image is a scraped image from link information requested to be shared from the user terminal.
제5항에서,
상기 입력 이미지의 정보와 상기 태그 목록은 상기 사용자 단말의 인터페이스 화면에 표시되고,
상기 입력 이미지의 공유 정보는 썸네일 형태의 콘텐트인 이미지 공유 방법.
The method of claim 5,
Wherein the information of the input image and the tag list are displayed on an interface screen of the user terminal,
Wherein the shared information of the input image is thumbnail-shaped content.
KR1020180110547A 2018-09-14 2018-09-14 Method for sharing images, and system and application implementing the same method KR102023687B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180110547A KR102023687B1 (en) 2018-09-14 2018-09-14 Method for sharing images, and system and application implementing the same method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180110547A KR102023687B1 (en) 2018-09-14 2018-09-14 Method for sharing images, and system and application implementing the same method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020170012259A Division KR101934108B1 (en) 2017-01-25 2017-01-25 Method for clustering and sharing images, and system and application implementing the same method

Publications (2)

Publication Number Publication Date
KR20180107042A true KR20180107042A (en) 2018-10-01
KR102023687B1 KR102023687B1 (en) 2019-09-20

Family

ID=63878030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180110547A KR102023687B1 (en) 2018-09-14 2018-09-14 Method for sharing images, and system and application implementing the same method

Country Status (1)

Country Link
KR (1) KR102023687B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070009338A (en) * 2005-07-15 2007-01-18 (주)첫눈 Image search method and apparatus considering a similarity among the images
KR101191172B1 (en) * 2012-02-15 2012-10-15 (주)올라웍스 Method, apparatus and computer-readable recording medium for managing images in image database
KR101354721B1 (en) * 2012-05-21 2014-01-29 주식회사 다음커뮤니케이션 Search system and method of search service
KR20160039516A (en) * 2014-10-01 2016-04-11 엘지전자 주식회사 Mobile terminal and method for controlling the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070009338A (en) * 2005-07-15 2007-01-18 (주)첫눈 Image search method and apparatus considering a similarity among the images
KR101191172B1 (en) * 2012-02-15 2012-10-15 (주)올라웍스 Method, apparatus and computer-readable recording medium for managing images in image database
KR101354721B1 (en) * 2012-05-21 2014-01-29 주식회사 다음커뮤니케이션 Search system and method of search service
KR20160039516A (en) * 2014-10-01 2016-04-11 엘지전자 주식회사 Mobile terminal and method for controlling the same

Also Published As

Publication number Publication date
KR102023687B1 (en) 2019-09-20

Similar Documents

Publication Publication Date Title
Wang et al. Event driven web video summarization by tag localization and key-shot identification
US8385660B2 (en) Mixed media reality indexing and retrieval for repeated content
KR102017853B1 (en) Method and apparatus for searching
US9367757B2 (en) Content extracting device, content extracting method and program
CN106383887B (en) Method and system for collecting, recommending and displaying environment-friendly news data
KR101934108B1 (en) Method for clustering and sharing images, and system and application implementing the same method
US20230244707A1 (en) Management of event summary types
CN112486917A (en) Method and system for automatically generating information-rich content from multiple microblogs
JP2018509664A (en) Model generation method, word weighting method, apparatus, device, and computer storage medium
Kim et al. TwitterTrends: a spatio-temporal trend detection and related keywords recommendation scheme
Ang et al. LifeConcept: an interactive approach for multimodal lifelog retrieval through concept recommendation
JP6144968B2 (en) Information presenting apparatus, method, and program
Chen et al. Exploiting aesthetic features in visual contents for movie recommendation
KR20220022065A (en) Sharing Methods for Clustering User Searched Image and Implementation Thereof
KR102023687B1 (en) Method for sharing images, and system and application implementing the same method
KR20230051995A (en) Realistic extended reality content management platform
JPWO2015063873A1 (en) Information search system and information search method
CN111753861B (en) Automatic image labeling system and method for active learning
CN115130453A (en) Interactive information generation method and device
US20190318199A1 (en) Classification and comparison of event related data objects
KR20220023385A (en) Sharing Methods for Clustering User Searched Image and Implementation Thereof
Ye et al. DLMSearch: Diversified landmark search by photo
US20240311396A1 (en) Information processing apparatus, information processing system, information processing method, and non-transitory recording medium
KR101575819B1 (en) Video search and offering method
KR102009158B1 (en) System for ascertaining the truth behind history plays in real time using the annals of the joseon dynasty

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant