KR20220022065A - Sharing Methods for Clustering User Searched Image and Implementation Thereof - Google Patents

Sharing Methods for Clustering User Searched Image and Implementation Thereof Download PDF

Info

Publication number
KR20220022065A
KR20220022065A KR1020200102895A KR20200102895A KR20220022065A KR 20220022065 A KR20220022065 A KR 20220022065A KR 1020200102895 A KR1020200102895 A KR 1020200102895A KR 20200102895 A KR20200102895 A KR 20200102895A KR 20220022065 A KR20220022065 A KR 20220022065A
Authority
KR
South Korea
Prior art keywords
image
images
person
server
sharing
Prior art date
Application number
KR1020200102895A
Other languages
Korean (ko)
Inventor
이호익
윤순호
Original Assignee
이호익
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이호익 filed Critical 이호익
Priority to KR1020200102895A priority Critical patent/KR20220022065A/en
Publication of KR20220022065A publication Critical patent/KR20220022065A/en

Links

Images

Classifications

    • 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/55Clustering; Classification
    • 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/53Querying
    • G06F16/538Presentation of query results
    • 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/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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention provides a method for clustering and sharing a user searched image to classify various images of various sources by attibutes including time, event, and character to cluster an image through a tag explaining the image, and an implementation system thereof. A method for clustering an image of a server operated by at least one processor comprises: extracting a content for explaining at least one image and a corresponding image included in each web document in a plurality of web documents; determining one representative image representing duplication images to connect image explaining contents corresponding to the duplicaiton images with the representative image when the duplication images are included in images extracted from the plurality of web documents; determining image information including an image explianing tag and a time stamp of the representative image from a plurality of image explaining contents connected with the representative image; and extracting images associated with the clustering keyword from the image storage to cluster at least a part of the extracted images based on similarity of the extracted images and to generate at least one clustering event when an image clustering request according to the clustering keyword is generated.

Description

사용자가 검색한 이미지의 군집화 및 공유 방법과 구현 시스템 {Sharing Methods for Clustering User Searched Image and Implementation Thereof}{Sharing Methods for Clustering User Searched Image and Implementation Thereof}

본 발명은 사용자가 검색한 이미지의 군집화 및 공유 방법과 그것을 구현하는 시스템에 관한 것이다.The present invention relates to a method for clustering and sharing images searched by a user and a system for implementing the same.

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

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

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

한 실시예에 따라 적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 군집화 및 공유 방법으로서, 단일 이벤트로 군집된 복수 이미지들의 공유 요청을 입력받는 단계; 상기 복수 이미지들 각각에 포함된 인물 식별 정보를 기초로 각 이미지에 포함된 등장 인물을 식별하고, 상기 복수 이미지들 중 동일한 등장 인물을 포함하는 이미지들 내에서의 인물 움직임 변화를 추정하여 해당 등장 인물의 이미지들을 정렬하는 단계; 및 사용자 단말로, 정렬된 상기 복수 이미지들을 전송하는 단계를 포함하고, 상기 정렬하는 단계는 동일한 등장 인물을 포함하는 이미지들 내의 모든 이미지쌍에 대한 좌표들의 광학 흐름(Optical Flow)을 계산하고, 계산 결과를 기초로 상기 인물 움직임을 연속적으로 만드는 순서로 이미지들을 정렬할 수 있다.According to an embodiment, there is provided an image clustering and sharing method of a server operated by at least one processor, the method comprising: receiving a sharing request for a plurality of images clustered as a single event; A person included in each image is identified based on the person identification information included in each of the plurality of images, and a change in a person's movement in images including the same person among the plurality of images is estimated to determine the person. aligning the images of and transmitting, to a user terminal, the aligned plurality of images, wherein the aligning includes calculating an optical flow of coordinates for all image pairs in images including the same person, and calculating Based on the results, the images can be arranged in an order that makes the movement of the person continuous.

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

도 1은 본 발명의 한 실시예에 따른 시스템의 개략적인 구성도이다.
도 2는 본 발명의 한 실시예에 따른 이미지 저장소에 이미지들을 저장하는 방법을 설명하는 흐름도이다.
도 3은 본 발명의 한 실시예에 따른 이미지 군집화 방법의 흐름도이다.
도 4는 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법의 흐름도이다.
도 5는 본 발명의 실시예에 따른 화면이 표시된 단말기를 도시한 그림이다.
1 is a schematic configuration diagram of a system according to an embodiment of the present invention.
2 is a flowchart illustrating a method of storing images in an image storage according to an embodiment of the present invention.
3 is a flowchart of an image clustering method according to an embodiment of the present invention.
4 is a flowchart of a method for identifying a person in an image according to an embodiment of the present invention.
5 is a diagram illustrating a terminal on which a screen is displayed according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, with reference to the accompanying drawings, the embodiments of the present invention will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily implement them. However, the present invention may be embodied in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a part "includes" a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated. In addition, terms such as “…unit”, “…group”, and “module” described in the specification mean a unit that processes at least one function or operation, which may be implemented as hardware or software or a combination of hardware and software. there is.

도 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 communicating 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 equipped with an application programmed to provide the functions described in the present invention, displays information provided from the server 100 through the application, and 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 from various sources by attributes such as time, event, and person, and groups the images through tags that describe image attributes. The server 100 generates shareable content based on the clustered images, and provides an image search result in response to a search request of the user terminal 200 . An operation method of the server 100 will be described in detail below.

사용자 단말(200)은 컴퓨터 판독 가능한 저장 매체에 저장되는 어플리케이션, 그리고 프로세서, 메모리, 디스플레이, 통신 모듈 등의 하드웨어를 포함한다. 어플리케이션은 본 발명에서 예를 들어 설명한 동작을 실행하기 위한 명령어들을 포함한다. 프로세서는 어플리케이션을 구동하여 프로그램된 동작을 실행한다. 디스플레이는 어플리케이션에서 제공하는 사용자 인터페이스 화면을 표시하고, 사용자 입력을 수신할 수 있고, 예를 들면 터치 입력을 수신할 수 있다. 통신 모듈은 통신망을 통해 서버(100)와 통신한다.The user terminal 200 includes an application stored in a computer-readable storage medium, and hardware such as a processor, a memory, a display, and a communication module. The application includes instructions for executing the operations described for example in the present invention. The processor runs the application to execute the programmed operation. The display may display a user interface screen provided by an application and receive a user input, for example, a touch input. 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 various types of computers such as a mobile terminal such as a smart phone, a pad type terminal such as a smart pad, a laptop computer, a wearable device, a TV terminal, etc. can be implemented.

도 2는 본 발명의 한 실시예에 따른 이미지 저장소에 이미지들을 저장하는 방법을 설명하는 흐름도이고, 도 3은 본 발명의 한 실시예에 따른 이미지 저장 방법을 설명하는 예시 도면이다.2 is a flowchart illustrating a method of storing images in an image storage according to an embodiment of the present invention, and FIG. 3 is an exemplary diagram illustrating an image storage 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 and contents describing the image from a plurality of web documents ( S110 ). A web document (or simply referred to as a 'document') is a digital document published on the web, such as news, blogs, and social media services, and includes all documents accessible by the server 100 through a network. A web document is created with at least one image and text, and the same/similar image may be extracted from a plurality of web documents. Since the image and text included in the web document are correlated with each other, the server 100 may extract image-related content or content describing the image from the text. As for the description of the image, a title appearing in the document from which the image is extracted, or words and phrases included in the document may be extracted from the metadata of the document.

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

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

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

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

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

다음에서, 동일/유사 이미지들을 시간/인물/이벤트 종류 등의 군집화 기준에 따라 군집하는 방법에 대해 설명한다.도 3은 본 발명의 한 실시예에 따른 이미지 군집화 방법의 흐름도이다. 도 3을 참고하면, 서버(100)는 군집화 키워드를 포함하는 이미지 군집화 요청을 입력받는다(S210). 서버(100)는 사용자 단말(200)로부터 검색 키워드에 대한 이미지 검색을 요청받으면, 검색 키워드를 군집화 키워드로 적용하여 이미지 군집화 작업을 시작할 수 있다. 또는 서버(100)는 특정 키워드에 대한 이미지 군집화 작업을 주기적으로 하거나, 특정 이벤트가 발생할 때마다 해당 이벤트에 대한 이미지 군집화 작업을 미리 할 수 있다. Hereinafter, a method for grouping identical/similar images according to a grouping criterion such as time/person/event type, etc. will be described. FIG. 3 is a flowchart of an image grouping method according to an embodiment of the present invention. Referring to FIG. 3 , the server 100 receives an image clustering request including a clustering keyword ( S210 ). When the server 100 receives a request for an image search for a search keyword from the user terminal 200 , the server 100 may start an image clustering operation by applying the search keyword as a clustering keyword. Alternatively, the server 100 may periodically perform an image grouping operation for a specific keyword or perform an image grouping operation for a specific event in advance whenever a specific event occurs.

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

서버(100)는 군집화 키워드와 연관되어 있는 이미지들을 타임스탬프 순서로 정렬한다(S230). 도 5의 (a)를 참고하면, 군집화 키워드와 연관되어 있는 이미지들은 웹문서에 존재하는 중복 이미지들이 단일 이미지로 정리된 이미지 저장소(300)에서 추출되므로, 이미지 저장소(300)에서 추출된 이미지들은 동일하지 않은 이미지들로 구성된다. The server 100 arranges images related to the clustering keyword in timestamp order (S230). Referring to (a) of FIG. 5 , since the images related to the clustering keyword are extracted from the image storage 300 in which duplicate images existing in the web document are organized into a single image, the images extracted from the image storage 300 are It consists of images that are not identical.

서버(100)는 타임스탬프 순서로 정렬된 이미지들의 유사도를 기초로 이미지를 묶어 적어도 하나의 군집이벤트를 생성한다(S240). 이미지들의 유사도는 이미지간 유사도 또는 이미지에 태깅된 이미지 설명 태그의 유사도를 포함할 수 있다.The server 100 generates at least one cluster event by tying the images based on the similarity of the images arranged in the timestamp order (S240). The similarity of the images may include a similarity between images or a similarity of an image description tag tagged to the image.

한편, 단계 S230과 단계 S240에서, 서버(100)가 구분된 시간 단위로 이미지들을 묶기 위해 타임스탬프 순서로 이미지들을 정렬하는 것으로 설명하였다. 하지만, 타임스탬프 순서로 정렬하여 이미지들을 미리 구분할 필요 없이, 서버(100)는 특정 검색 기간에 작성된 이미지들을 추출하고, 추출한 이미지들 전체를 유사도 기반으로 묶을 수 있다.On the other hand, in steps S230 and S240, it has been described that the server 100 arranges the images in a timestamp order in order to group the images in divided time units. However, there is no need to pre-classify images by arranging them in timestamp order, and the server 100 may extract images created in a specific search period and group all of the extracted images based on similarity.

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

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

사용자 단말(200)은 군집이벤트별로 이미지들을 사용자 인터페이스 화면(400)에 표시하는데, 복수의 군집이벤트가 존재하는 경우, 시간 순으로 표시할 수 있다. 예를 들어, 사용자 인터페이스 화면(400a)은 군집이벤트별로 이벤트 명칭(410), 군집된 이미지(420), 적어도 하나의 태그(430)를 표시한다. 태그는 군집이벤트에 대응된 태그 또는 군집이벤트와 연관된 태그일 수 있다. 사용자 인터페이스 화면(400)은 군집이벤트별로 공유 버튼(440), 날짜(450) 등을 더 표시할 수 있다. 사용자 인터페이스 화면(400)은 군집이벤트 검색에 사용된 검색 키워드명칭(460)을 더 표시할 수 있다. 사용자가 태그(430)를 선택하면, 사용자 단말(200)은 태그(430)에 관련된 검색 결과를 공유 화면(예를 들면, 메신저 어플리케이션의 채팅방 화면)에 표시할 수 있다.The user terminal 200 displays images for each group event on the user interface screen 400. If a plurality of cluster events exist, they may be displayed 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 clustered event. The tag may be a tag corresponding to the cluster event or a tag associated with the cluster event. The user interface screen 400 may further display a share button 440, a date 450, and the like for each group event. The user interface screen 400 may further display a search keyword name 460 used to search for a group event. When the user selects the tag 430 , the user terminal 200 may display a search result related to the tag 430 on a sharing screen (eg, a chat room screen of a messenger application).

사용자가 공유 버튼(440)을 선택하면, 사용자 단말(200)은 공유 버튼(440)에 해당하는 군집이벤트를 공유 화면(예를 들면, 메신저 어플리케이션의 채팅방 화면)(400b)에 표시할 수 있다. 이때, 공유된 군집이벤트는 군집된 이미지 전체를 공유 화면에 표시할 수 있으나, 썸네일 형태나, 군집된 이미지들이 자동/수동으로 순차적으로 또는 랜덤하게(randomly) 넘어가면서 표시되는(재생되는) 콘텐츠(앞으로, '움직이는 이미지 콘텐츠' 또는 '요약형 콘텐츠'라고 함)(470)로 표시될 수 있다. When the user selects the share button 440 , the user terminal 200 may display a group event corresponding to the share button 440 on the sharing screen (eg, a chat room screen of a messenger application) 400b. In this case, the shared clustering event can display the entire clustered image on the shared screen, but the thumbnail form or the clustered images are automatically/manually sequentially or randomly displayed (played) content ( In the future, it may be displayed as 'moving image content' or 'summary content') 470 .

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

도 4는 본 발명의 한 실시예에 따른 이미지의 인물 확인 방법의 흐름도이다.4 is a flowchart of a method for identifying a person in an image according to an embodiment of the present invention.

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

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

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

서버(100)는 이미지 설명 내용에 포함된 키워드들과 후보 인물의 인물정보를 기초로 후보 인물이 이미지 내 인물인지를 평가한다(S330). 서버(100)는 인물 데이터베이스, 영화 데이터베이스, TV프로그램 데이터베이스 등 다양한 API를 매쉬업(Mash-up)하여 후보 인물이 이미지 내 인물인지를 평가할 수 있다.The server 100 evaluates whether the candidate person is a person in the image based on keywords included in the image description and 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 the candidate person is a person in the image.

서버(100)는 후보 인물의 평가 점수를 기초로 이미지 내 인물을 확인한다(S340). 후보 인물이 복수인 경우, 서버(100)는 각 후보 인물의 평가 점수를 기초로 이미지 내 인물을 결정할 수 있다. 서버(100)는 정확성을 높이기 위해 확인된 인물의 이미지 특징값과, 웹문서에서 추출한 이미지의 특징값을 비교하여 최종적으로 인물을 결정할 수 있다.The server 100 identifies the person in the image based on the evaluation score of the candidate person (S340). When there are a plurality of candidate persons, the server 100 may determine a person in the image based on the evaluation score of each candidate person. The server 100 may 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 in order to increase accuracy.

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

이미지 내 인물 확인 방법을 통해, 서버(100)는 도 2에서 설명한 이미지 저장소에 웹문서에서 추출한 이미지들을 저장할 때, 정확한 인물정보를 태깅하여 저장할 수 있다. 서버(100)는 사용자 단말(200)에 군집된 이미지를 제공할 때, 정확한 인물정보로 이미지들을 군집화할 수 있다. Through the method of identifying the person in the image, the server 100 may tag and store accurate person information when storing the images extracted from the web document in the image storage described with reference to FIG. 2 . When the server 100 provides the clustered image to the user terminal 200 , the server 100 may cluster the images with accurate person information.

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

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

이미지만 입력되더라도, 서버(100)는 이미지 저장소(300)에서 입력 이미지와 동일한 저장 이미지를 찾는다. 그리고 서버(100)는 저장 이미지에 대응된 이미지 설명 태그나 이미지 설명 내용들을 기초로 후보 인물을 결정하고, 좁혀진 후보 인물의 이미지 특징값과 입력 이미지의 특징값을 비교하여 복수의 인물 각각을 평가할 수 있다. Even if only an image is input, the server 100 searches for a stored image identical to the input image in the image storage 300 . And the server 100 determines a candidate person 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 person with the feature value of the input image to evaluate each of the plurality of people there is.

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

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

서버(100)는 군집된 이미지들을 사용자들이 공유할 수 있는 형태의 콘텐츠로 생성하여, 사용자 단말(200)에 제공한다. 서버(100)는 군집된 이미지들이 연속적으로 재생되는 '움직이는 이미지 콘텐츠' 또는 '요약형 콘텐츠'를 사용자 단말(200)에 제공할 수 있다. 사용자가 콘텐츠를 공유하는 서비스는 다양할 수 있으나, 여기서는 메신저 어플리케이션의 채팅방 화면에서 대화자들과 군집된 이미지들을 공유하는 것을 예로 들어 설명한다. The server 100 generates the clustered images as content that users can share and provides them to the user terminal 200 . The server 100 may provide the 'moving image content' or 'summary content' in which the clustered images are continuously reproduced to the user terminal 200 . Although there may be various services for the user to share content, the description will be given here by taking as an example sharing of images clustered with interlocutors on the chat room screen of a messenger application.

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

서버(100)는 군집이벤트에 포함된 군집된 이미지를 가져온다(S410). The server 100 brings the clustered image included in the clustering event (S410).

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

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

서버(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 continuously in the same direction, a higher motion score is calculated. The server 100 may store the relationship of all image pairs obtainable from the N images as an NxN matrix.

서버(100)는 모든 이미지쌍의 움직임 점수를 기초로 이미지 내의 움직임 방향을 추정하고, 움직임이 연속적인 순서로 이미지들을 순차적으로 배치한다(S450). The server 100 estimates the movement direction in the image based on the movement scores of all image pairs, and sequentially arranges the images in the order in which the movement is continuous ( S450 ).

서버(100)는 순차적으로 배치된 이미지들이 연속적으로(랜덤하게 또는 순차적으로) 넘어가면서 표시되는 요약형 콘텐츠(움직이는 이미지 콘텐츠)를 생성한다(S460). 광학 흐름을 기초로 인물 움직임을 자연스럽게 만드는 순서로 이미지가 배치되므로, 배치된 이미지들이 연속적으로(랜덤하게 또는 순차적으로) 넘어가면 인물이 자연스럽게 움직이는 것처럼 보인다. The server 100 generates summary content (moving image content) that is displayed while sequentially arranged images are continuously (randomly or sequentially) passed ( S460 ). The images are placed in an order that makes the movement of the person natural based on the optical flow, so if the placed images are passed sequentially (randomly or sequentially), the person appears to move naturally.

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

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

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

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

검색 결과 화면(500a)은 복수의 이미지들의 대표 이미지들(510)을 표시할 수 있다. 이때, 검색 결과 화면(500a)은 군집이벤트에 관련된 태그(520)를 표시할 수 있다. 그리고, 사용자 인터페이스 화면(500a)은 공유 버튼(530)을 표시할 수 있다. 사용자 인터페이스 화면(500a)은 이미지 펼쳐보기 버튼(540)을 표시할 수 있다. The search result screen 500a may display representative images 510 of a plurality of images. In this case, the search result screen 500a may display a tag 520 related to the swarm event. In addition, the user interface screen 500a may display a share button 530 . The user interface screen 500a may display an image unfold button 540 .

도 10의 (b)를 참고하면, 검색 결과 화면(500a)의 이미지 펼쳐보기 버튼(540)이 선택되면, 검색 결과 화면(500b)에 숨겨져 있던 군집이벤트의 이미지들이 펼쳐져 표시된다. 이때, 이미지들은 인물별로 정렬되고, 동일 인물 이미지에서도 움직임 방향(동선)에 따라 정렬되어 표시된다. Referring to FIG. 10( b ), when the image unfold button 540 of the search result screen 500a is selected, the images of the group event hidden in the search result screen 500b are unfolded and displayed. In this case, the images are arranged for each person, and even in the same person image, they are displayed aligned according to the movement direction (movement line).

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

사용자 단말(200)은 서버(100)로부터 군집이벤트의 요약형 콘텐츠(610)를 수신하여 공유 화면(예를 들면, 채팅방 화면)(600)에 표시할 수 있다. 사용자가 요약형 콘텐츠(610)를 탭하는 등의 선택을 하면, 요약형 콘텐츠(610)에 포함된 이미지들이 순서에 따라 연속적으로(랜덤하게 또는 순차적으로) 넘어가면서 표시된다. 공유 화면(600)은 요약형 콘텐츠(610)와 함께 요약형 콘텐츠에 관련된 태그(620)를 함께 표시할 수 있다. The user terminal 200 may receive the summary content 610 of the swarm event from the server 100 and display it on the shared screen (eg, chat room screen) 600 . When the user makes a selection, such as by tapping the summary content 610 , the images included in the summary content 610 are sequentially (randomly or sequentially) displayed in an order. The sharing screen 600 may display a tag 620 related to the summary content together with the summary content 610 .

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

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

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

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

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

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

본 발명은 커팅부, 제 1 트랜스퍼 및 제 2 트랜스퍼, 콤바인부를 포함할 수 있다.The present invention may include a cutting unit, a first transfer and a second transfer, and a combine unit.

커팅부는 데이터를 분할하여 복수 개의 조각들을 생성하고, 조각들의 각각에 어드레스를 부여할 수 있다. 여기서, 조각들의 어드레스는 복수 개의 문자 및 숫자의 조합으로 이루어질 수 있다.The cutting unit may generate a plurality of pieces by dividing the data, and may assign an address to each of the pieces. Here, the addresses of the pieces may be composed of a combination of a plurality of letters and numbers.

또한, 커팅부는 각각의 어드레스를 고려하여 조합 규칙을 생성할 수 있다. 여기서, 조합 규칙은 복수 개의 데이터 조각들을 각각의 어드레스를 바탕으로 하여 분할되기 이전의 데이터로 조합할 수 있도록 하는 규칙을 의미한다.Also, the cutting unit may generate a combination rule in consideration of each address. Here, the combination rule refers to a rule that allows a plurality of data pieces to be combined into data before being divided based on each address.

제 1 트랜스퍼는 복수 개의 데이터 조각들을 임의의 순서로 전송할 수 있다. 여기서, 복수 개의 데이터 조각들은 각각 부여된 어드레스와 함께 전송될 수 있다.The first transfer may transmit a plurality of data pieces in an arbitrary order. Here, a plurality of data pieces may be transmitted together with an assigned address, respectively.

제 2 트랜스퍼는 제 1 트랜스퍼에 의해 전송된 복수 개의 데이터 조각들에 대응되는 조합 규칙을 전송할 수 있다. 여기서, 제 2 트랜스퍼는 제 1 트랜스퍼에 의한 복수 개의 데이터 조각들의 전송에 대하여 시차를 두고 조합 규칙을 전송하는 것이 바람직할 수 있다. The second transfer may transmit a combination rule corresponding to the plurality of data pieces transmitted by the first transfer. Here, it may be preferable that the second transfer transmits the combination rule with a time difference with respect to the transmission of the plurality of data pieces by the first transfer.

이상 본 명세서에서 설명한 기능적 동작과 본 주제에 관한 실시형태들은 본 명세서에서 개시한 구조들 및 그들의 구조적인 등가물을 포함하여 디지털 전자 회로나 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어에서 혹은 이들 중 하나 이상의 조합에서 구현 가능하다.The functional operations described in this specification and the embodiments related to the present subject matter can be implemented in a digital electronic circuit, computer software, firmware or hardware, including the structures disclosed herein and structural equivalents thereof, or in a combination of one or more thereof Do.

본 명세서에서 기술하는 주제의 실시형태는 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 데이터 처리 장치에 의한 실행을 위하여 또는 그 동작을 제어하기 위하여 유형의 프로그램 매체 상에 인코딩되는 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 유형의 프로그램 매체는 전파형 신호이거나 컴퓨터로 판독 가능한 매체일 수 있다. 전파형 신호는 컴퓨터에 의한 실행을 위하여 적절한 수신기 장치로 전송하기 위한 정보를 인코딩하기 위하여 생성되는 예컨대 기계가 생성한 전기적, 광학적 혹은 전자기 신호와 같은 인공적으로 생성된 신호이다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조합 혹은 이들 중 하나 이상의 조합일 수 있다.Embodiments of the subject matter described herein are one or more computer program products, ie one or more modules directed to computer program instructions encoded on a tangible program medium for execution by or for controlling the operation of a data processing device. can be implemented. A tangible program medium may be a radio wave signal or a computer-readable medium. A radio wave signal is an artificially generated signal, eg a machine-generated electrical, optical or electromagnetic signal, that is generated to encode information for transmission to an appropriate receiver device for execution by a computer. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a combination of materials that affect a machine-readable radio wave signal, or a combination of one or more of these.

컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다.A computer program (also known as a program, software, software application, script or code) may be written in any form of any programming language, including compiled or interpreted language or a priori or procedural language, and may be written as a stand-alone program or module; It can be deployed in any form, including components, subroutines, or other units suitable for use in a computer environment.

컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다.A computer program does not necessarily correspond to a file in a file system. A program may be in a single file provided to the requested program, or in multiple interacting files (eg, files that store one or more modules, subprograms, or portions of code), or portions of files that hold other programs or data. (eg, one or more scripts stored within a markup language document).

컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터 또는 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.The computer program may be deployed to be executed on one computer or multiple computers located at one site or distributed over a plurality of sites and interconnected by a communication network.

부가적으로, 본 명세서에서 기술하는 논리 흐름과 구조적인 블록도는 개시된 구조적인 수단의 지원을 받는 대응하는 기능과 단계의 지원을 받는 대응하는 행위 및/또는 특정한 방법을 기술하는 것으로, 대응하는 소프트웨어 구조와 알고리즘과 그 등가물을 구축하는 데에도 사용 가능하다. Additionally, the logic flows and structural block diagrams described herein describe corresponding acts and/or specific methods supported by corresponding functions and steps supported by the disclosed structural means, and corresponding software. It can also be used to build structures and algorithms and their equivalents.

본 명세서에서 기술하는 프로세스와 논리 흐름은 입력 데이터 상에서 동작하고 출력을 생성함으로써 기능을 수행하기 위하여 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래머블 프로세서에 의하여 수행 가능하다.The processes and logic flows described herein may be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output.

컴퓨터 프로그램의 실행에 적합한 프로세서는, 예컨대 범용 및 특수 목적의 마이크로프로세서 양자 및 어떤 종류의 디지털 컴퓨터의 어떠한 하나 이상의 프로세서라도 포함한다. 일반적으로, 프로세서는 읽기 전용 메모리나 랜덤 액세스 메모리 혹은 양자로부터 명령어와 데이터를 수신할 것이다. Processors suitable for the execution of computer programs include, for example, both general and special purpose microprocessors and any one or more processors of any kind of digital computer. Typically, the processor will receive instructions and data from read-only memory, random access memory, or both.

컴퓨터의 핵심적인 요소는 명령어와 데이터를 저장하기 위한 하나 이상의 메모리 장치 및 명령을 수행하기 위한 프로세서이다. 또한, 컴퓨터는 일반적으로 예컨대 자기, 자기광학 디스크나 광학 디스크와 같은 데이터를 저장하기 위한 하나 이상의 대량 저장 장치로부터 데이터를 수신하거나 그것으로 데이터를 전송하거나 혹은 그러한 동작 둘 다를 수행하기 위하여 동작가능 하도록 결합되거나 이를 포함할 것이다. 그러나, 컴퓨터는 그러한 장치를 가질 필요가 없다.A key element of a computer is one or more memory devices for storing instructions and data and a processor for executing instructions. In addition, a computer is generally operably coupled to receive data from, or transmit data to, one or more mass storage devices for storing data, such as, for example, magnetic, magneto-optical disks or optical disks, or to perform both such operations. or will include However, the computer need not have such a device.

본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. The present description sets forth the best mode of the invention, and provides examples to illustrate the invention, and to enable any person skilled in the art to make or use the invention. The specification thus prepared does not limit the present invention to the specific terms presented.

따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 요컨대 본 발명이 의도하는 효과를 달성하기 위해 도면에 도시된 모든 기능 블록을 별도로 포함하거나 도면에 도시된 모든 순서를 도시된 순서 그대로 따라야만 하는 것은 아니며, 그렇지 않더라도 얼마든지 청구항에 기재된 본 발명의 기술적 범위에 속할 수 있다는 점을 밝힌다.Accordingly, although the present invention has been described in detail with reference to the above-described examples, those skilled in the art can make modifications, changes, and modifications to the examples without departing from the scope of the present invention. In short, in order to achieve the intended effect of the present invention, it is not necessary to separately include all the functional blocks shown in the drawings or follow all the orders shown in the drawings. indicate that it may be within the scope

Claims (7)

적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서,
단일 이벤트로 군집된 복수 이미지들의 공유 요청을 입력받는 단계;
상기 복수 이미지들 각각에 포함된 인물 식별 정보를 기초로 각 이미지에 포함된 등장 인물을 식별하고, 상기 복수 이미지들 중 동일한 등장 인물을 포함하는 이미지들 내에서의 인물 움직임 변화를 추정하여 해당 등장 인물의 이미지들을 정렬하는 단계; 및
사용자 단말로, 정렬된 상기 복수 이미지들을 전송하는 단계를 포함하고,
상기 정렬하는 단계는
동일한 등장 인물을 포함하는 이미지들 내의 모든 이미지쌍에 대한 좌표들의 광학 흐름(Optical Flow)을 계산하고, 계산 결과를 기초로 상기 인물 움직임을 연속적으로 만드는 순서로 이미지들을 정렬하는 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
An image sharing method of a server operated by at least one processor, comprising:
receiving a request to share a plurality of images clustered in a single event;
A person included in each image is identified based on the person identification information included in each of the plurality of images, and a change in a person's movement is estimated in images including the same person among the plurality of images to determine the corresponding person aligning the images of and
sending, to a user terminal, the aligned plurality of images;
The sorting step is
A user characterized by calculating the optical flow of coordinates for all image pairs in images containing the same character, and arranging the images in an order that makes the character movement successively based on the calculation result How to cluster and share retrieved images.
제 1항에 있어서,
상기 복수 이미지들을 전송하는 단계는
상기 복수 이미지들이 랜덤하게 넘어가거나 또는 표시 순서에 따라 순차적으로 넘어가면서 상기 사용자 단말의 인터페이스 화면에 표시되는 콘텐츠를 생성하는 단계; 및
상기 콘텐츠를 상기 사용자 단말로 전송하는 단계를 포함하는 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
The method of claim 1,
The step of transmitting the plurality of images is
generating content displayed on an interface screen of the user terminal while the plurality of images are passed randomly or sequentially according to a display order; and
A method for grouping and sharing images searched by a user, comprising the step of transmitting the content to the user terminal.
제 1항에 있어서,
상기 복수 이미지들을 전송하는 단계는
상기 단일 이벤트 또는 상기 복수 이미지들에 연관된 적어도 하나의 태그를 상기 사용자 단말로 더 전송하는 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
The method of claim 1,
The step of transmitting the plurality of images is
The method for grouping and sharing images searched by a user, characterized in that the single event or at least one tag associated with the plurality of images is further transmitted to the user terminal.
제 1항에 있어서,
상기 정렬하는 단계는
상기 복수 이미지들에서 복수의 인물이 등장하는 경우, 등장 인물별로 상기 복수 이미지들을 분류하며, 등장 인물별로 분류된 이미지들을 정렬하는 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
The method of claim 1,
The sorting step is
When a plurality of people appear in the plurality of images, the method for clustering and sharing images searched by a user, characterized in that, classifying the plurality of images for each person, and arranging the classified images for each person.
적어도 하나의 프로세서에 의해 동작하는 서버의 이미지 공유 방법으로서,
이미지 저장소에서, 입력 이미지와 동일하거나 유사한 적어도 하나의 저장 이미지를 검색하는 단계;
상기 저장 이미지에 매핑된 이미지 설명 정보를 이용하여 상기 입력 이미지에 연관된 태그 목록을 생성하는 단계; 및
사용자 단말로, 상기 입력 이미지의 공유 정보와 상기 태그 목록을 전송하는 단계를 포함하고,
상기 이미지 저장소는 복수의 웹문서에서 추출된 각 이미지와 각 이미지를 설명하는 이미지 설명 정보를 매핑하여 관리하는 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
An image sharing method of a server operated by at least one processor, comprising:
retrieving, in the image repository, at least one stored image identical to or similar to the input image;
generating a tag list associated with the input image by using image description information mapped to the stored image; and
Transmitting, to a user terminal, the sharing information of the input image and the tag list,
wherein the image storage maps and manages each image extracted from a plurality of web documents and image description information describing each image.
제 5항에 있어서,
상기 입력 이미지의 정보와 상기 태그 목록은 상기 사용자 단말의 인터페이스 화면에 표시되고,
상기 입력 이미지의 공유 정보는 썸네일 형태의 콘텐츠인 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법
6. The method of claim 5,
The information of the input image and the tag list are displayed on the interface screen of the user terminal,
A method for clustering and sharing images searched by a user, characterized in that the sharing information of the input image is content in the form of a thumbnail.
제 5항에 있어서,
상기 입력 이미지는 상기 사용자 단말로부터 공유 요청된 링크 정보에서 스크래핑된 이미지인 것을 특징으로 하는 사용자가 검색한 이미지의 군집화 및 공유 방법.
6. The method of claim 5,
The input image is a grouping and sharing method of images searched by a user, characterized in that the image scraped from the link information requested to share from the user terminal.
KR1020200102895A 2020-08-17 2020-08-17 Sharing Methods for Clustering User Searched Image and Implementation Thereof KR20220022065A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200102895A KR20220022065A (en) 2020-08-17 2020-08-17 Sharing Methods for Clustering User Searched Image and Implementation Thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200102895A KR20220022065A (en) 2020-08-17 2020-08-17 Sharing Methods for Clustering User Searched Image and Implementation Thereof

Publications (1)

Publication Number Publication Date
KR20220022065A true KR20220022065A (en) 2022-02-24

Family

ID=80474616

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200102895A KR20220022065A (en) 2020-08-17 2020-08-17 Sharing Methods for Clustering User Searched Image and Implementation Thereof

Country Status (1)

Country Link
KR (1) KR20220022065A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117612254A (en) * 2023-11-23 2024-02-27 广州大学 Shared bicycle commute behavior based identification method, system, equipment and medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117612254A (en) * 2023-11-23 2024-02-27 广州大学 Shared bicycle commute behavior based identification method, system, equipment and medium

Similar Documents

Publication Publication Date Title
US10380249B2 (en) Predicting future trending topics
US8385660B2 (en) Mixed media reality indexing and retrieval for repeated content
CN108885623B (en) Semantic analysis system and method based on knowledge graph
US8073263B2 (en) Multi-classifier selection and monitoring for MMR-based image recognition
US10776885B2 (en) Mutually reinforcing ranking of social media accounts and contents
CN110020185A (en) Intelligent search method, terminal and server
KR20150083874A (en) Adjusting content delivery based on user submissions
CN102945269A (en) Context awareness tagging interface
US8306965B2 (en) System and method for generating expertise based search results
US20120041940A1 (en) System and method for adding identity to web rank
US20230244707A1 (en) Management of event summary types
CN113297457B (en) High-precision intelligent information resource pushing system and pushing method
CN110232126B (en) Hot spot mining method, server and computer readable storage medium
KR20150046431A (en) Auto-learning system and method for derive effective marketing
WO2017107010A1 (en) Information analysis system and method based on event regression test
US20130132368A1 (en) Large scale analytical reporting from web content
KR101934108B1 (en) Method for clustering and sharing images, and system and application implementing the same method
KR20220022065A (en) Sharing Methods for Clustering User Searched Image and Implementation Thereof
JPWO2015140922A1 (en) Information processing system, information processing method, and information processing program
JP6140835B2 (en) Information search system and information search method
US11314793B2 (en) Query processing
US8046675B2 (en) Method of creating graph structure from time-series of attention data
KR20220023385A (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
KR20220053398A (en) Service System for Connecting and Recommending Clothing Products by Using AI