KR20160026544A - System and method for video search - Google Patents
System and method for video search Download PDFInfo
- Publication number
- KR20160026544A KR20160026544A KR1020140115636A KR20140115636A KR20160026544A KR 20160026544 A KR20160026544 A KR 20160026544A KR 1020140115636 A KR1020140115636 A KR 1020140115636A KR 20140115636 A KR20140115636 A KR 20140115636A KR 20160026544 A KR20160026544 A KR 20160026544A
- Authority
- KR
- South Korea
- Prior art keywords
- search
- query
- moving picture
- related data
- user
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/73—Querying
- G06F16/738—Presentation of query results
Abstract
Description
개시되는 실시예들은 동영상 검색 기술에 관한 것으로서, 더욱 상세하게는 다양한 운영 환경에 배치될 수 있는 동영상 검색 시스템 및 그러한 시스템에서 수행될 수 있는 동영상 검색 방법과 관련된다.The disclosed embodiments relate to a moving image search technology, and more particularly to a moving image search system that can be placed in various operating environments and a moving image search method that can be performed in such a system.
카메라와 같은 촬영 장치 내지 동영상 소스에 의해 포착된 동영상에서 객체 또는 이벤트를 검출하기 위한 다양한 동영상 분석 기법들이 존재한다. 이러한 기법들은 검출된 객체 또는 이벤트를 기반으로 특정한 상황이 촬영된 동영상에 대한 검색을 가능하게 한다. 예를 들어, 최근 도로, 주차장, 학교, 공항, 기차역 등과 같은 여러 시설에서 널리 사용되고 있는 폐쇄회로 TV(Closed-Circuit Television: CCTV) 시스템은 방대한 양의 동영상 데이터를 유지하면서 사용자에게 동영상 검색 기능을 제공한다.There are various video analysis techniques for detecting an object or an event in a moving image captured by a photographing device or a moving image source such as a camera. These techniques make it possible to search for a moving picture in which a specific situation is photographed based on the detected object or event. For example, Closed-Circuit Television (CCTV) systems, widely used in many facilities such as roads, parking lots, schools, airports, and train stations, provide users with video search functions while maintaining vast amounts of video data. do.
그러나, 기존의 동영상 검색 시스템들은 검색 쿼리의 유형들을 미리 설정하며, 사용자는 그 외의 유형의 쿼리를 이용할 수 없다. 또한, 이러한 시스템들에서는, 여러 대의 동영상 소스로부터 유래하는 동영상들 간에 존재할 수 있는 연관성에 기반한 검색이 곤란하다. 결국, 동영상 데이터베이스가 거대하더라도 그 활용 폭은 제한적일 수밖에 없다.However, existing video retrieval systems pre-set the types of search queries, and users can not use other types of queries. Also, in such systems, it is difficult to search based on the associations that may exist between moving images originating from multiple moving image sources. In the end, even if the video database is huge, its utilization rate is limited.
따라서, 종래의 동영상 검색 시스템의 한계를 극복하고 더욱 효율적인 동영상 검색 기능을 개발할 필요가 있다.Accordingly, there is a need to overcome the limitations of the conventional moving image search system and to develop a more efficient moving image search function.
개시되는 실시예들은 사용자에 의해 지정된 복합적인 검색 룰을 이용하여 동영상 검색을 효율적으로 수행하기 위한 기법을 제공한다.The disclosed embodiments provide a technique for efficiently performing video search using a complex search rule designated by a user.
예시적인 실시예에 따르면, 동영상 검색을 위한 복수의 검색 조건 및 상기 복수의 검색 조건 간의 관계를 지정하는 사용자 입력을 수신하고, 상기 복수의 검색 조건 및 상기 관계를 이용하여 쿼리(query)를 생성하는 사용자 클라이언트 모듈; 및 상기 쿼리를 이용하여 동영상 관련 데이터를 획득하고, 상기 동영상 관련 데이터를 분석하여 상기 쿼리에 매칭되는 동영상에 관한 정보를 상기 사용자 클라이언트 모듈에 제공하는 분석 모듈을 포함하는 동영상 검색 시스템이 제공된다.According to an exemplary embodiment, there is provided an apparatus for receiving a user input that specifies a plurality of search conditions for a moving image search and a relationship between the plurality of search conditions, and generating a query using the plurality of search conditions and the relationship User client module; And an analysis module for acquiring moving picture related data using the query, analyzing the moving picture related data, and providing information about the moving picture matched with the query to the user client module.
상기 동영상 관련 데이터는 복수의 동영상의 메타데이터를 포함할 수 있다.The moving image related data may include metadata of a plurality of moving images.
상기 메타데이터는 상기 복수의 동영상으로부터 추출 가능한 객체 및 이벤트 중 적어도 하나의 메타데이터를 포함 할 수 있다.The metadata may include at least one of an object and an event that can be extracted from the plurality of moving images.
상기 분석 모듈은 또한 상기 쿼리를 이용하여 데이터베이스 관리 모듈로부터 상기 동영상 관련 데이터를 획득할 수 있다.The analysis module may also obtain the moving picture related data from the database management module using the query.
상기 분석 모듈은 또한 상기 데이터베이스 관리 모듈에 질의하기 위한 포맷으로 상기 쿼리를 변환할 수 있다.The analysis module may also convert the query into a format for querying the database management module.
상기 분석 모듈은 또한 상기 쿼리를 파싱(parsing)하여 특정 검색 조건을 추출할 수 있고, 상기 동영상 관련 데이터는 상기 특정 검색 조건을 만족할 수 있다.The analysis module may further extract a specific search condition by parsing the query, and the moving image related data may satisfy the specific search condition.
상기 분석 모듈은 또한 상기 동영상 관련 데이터를 분석하기 위해 CEP(Complex Event Processing) 엔진을 이용할 수 있다.The analysis module may also use a CEP (Complex Event Processing) engine to analyze the moving picture related data.
상기 사용자 클라이언트 모듈은 또한 상기 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공할 수 있다.The user client module may also provide a user interface for receiving the user input.
상기 사용자 클라이언트 모듈은 또한 상기 복수의 검색 조건 및 상기 관계를 상기 사용자 인터페이스에 표현할 수 있다.The user client module may also express the plurality of search conditions and the relationship in the user interface.
상기 사용자 클라이언트 모듈은 또한 상기 정보를 이용하여 상기 매칭되는 동영상을 획득할 수 있다.The user client module may also obtain the matching moving image using the information.
다른 예시적인 실시예에 따르면, 동영상 검색을 위한 복수의 검색 조건 및 상기 복수의 검색 조건 간의 관계를 지정하는 사용자 입력을 수신하는 단계; 상기 복수의 검색 조건 및 상기 관계를 이용하여 쿼리를 생성하는 단계; 상기 쿼리를 이용하여 동영상 관련 데이터를 획득하는 단계; 및 상기 동영상 관련 데이터를 분석하여 상기 쿼리에 매칭되는 동영상에 관한 정보를 상기 사용자 클라이언트 모듈에 제공하는 단계를 포함하는 동영상 검색 방법이 제공된다.According to another exemplary embodiment, there is provided a method comprising: receiving a user input specifying a plurality of search conditions for a moving image search and a relationship between the plurality of search conditions; Generating a query using the plurality of search conditions and the relationship; Acquiring moving picture related data using the query; And analyzing the moving picture related data and providing information on the moving picture matched with the query to the user client module.
상기 동영상 관련 데이터는 복수의 동영상의 메타데이터를 포함할 수 있다.The moving image related data may include metadata of a plurality of moving images.
상기 메타데이터는 상기 복수의 동영상으로부터 추출 가능한 객체 및 이벤트 중 적어도 하나의 메타데이터를 포함할 수 있다.The metadata may include at least one of an object and an event that can be extracted from the plurality of moving images.
상기 동영상 검색 방법은, 상기 쿼리를 이용하여 데이터베이스 관리 모듈로부터 상기 동영상 관련 데이터를 획득하는 단계를 더 포함할 수 있다.The moving picture searching method may further include obtaining the moving picture related data from the database management module using the query.
상기 동영상 검색 방법은 상기 데이터베이스 관리 모듈에 질의하기 위한 포맷으로 상기 쿼리를 변환하는 단계를 더 포함할 수 있다.The moving image search method may further include converting the query into a format for querying the database management module.
상기 동영상 검색 방법은 상기 쿼리를 파싱하여 특정 검색 조건을 추출하는 단계를 더 포함할 수 있고, 상기 동영상 관련 데이터는 상기 특정 검색 조건을 만족할 수 있다.The moving image search method may further include extracting a specific search condition by parsing the query, and the moving image related data may satisfy the specific search condition.
상기 동영상 검색 방법은 상기 동영상 관련 데이터를 분석하기 위해 CEP(Complex Event Processing) 엔진을 이용하는 단계를 더 포함할 수 있다.The moving picture search method may further include using a complex event processing (CEP) engine to analyze the moving picture related data.
상기 동영상 검색 방법은 상기 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공하는 단계를 더 포함할 수 있다.The moving picture search method may further include providing a user interface for receiving the user input.
상기 동영상 검색 방법은 상기 복수의 검색 조건 및 상기 관계를 상기 사용자 인터페이스에 표현하는 단계를 더 포함할 수 있다.The moving picture search method may further include displaying the plurality of search conditions and the relation in the user interface.
상기 동영상 검색 방법은 상기 정보를 이용하여 상기 매칭되는 동영상을 획득하는 단계를 더 포함할 수 있다.The moving image searching method may further include obtaining the matching moving image using the information.
또 다른 예시적인 실시예에 따르면, 하드웨어와 결합되어, 상기 동영상 검색 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램이 제공된다.According to yet another exemplary embodiment, there is provided a computer program stored on a medium for executing the motion picture retrieval method, in combination with hardware.
소정의 실시예들에 따르면, 복수의 검색 조건 및 그 검색 조건들 간의 관계를 지정함으로써, 사용자는 원하는 동영상을 획득할 수 있다.According to some embodiments, by specifying a plurality of search conditions and a relationship between the search conditions, the user can obtain a desired video.
소정의 실시예들에 따르면, 다수의 동영상 간의 상호관계에 따라 복합적인 쿼리를 생성할 수 있고, 사용자는 자신이 원하는 유형의 쿼리를 편리하게 정의할 수 있다.According to some embodiments, a composite query can be generated according to a correlation between a plurality of moving images, and a user can conveniently define a query of a desired type.
도 1은 예시적인 실시예에 따른 동영상 검색 시스템을 도시한 도면,
도 2는 예시적인 실시예에 따라 동영상 검색 시스템이 적용되는 운영 환경을 설명하기 위한 도면,
도 3은 예시적인 실시예에 따른 그래픽 사용자 인터페이스를 도시한 도면,
도 4는 예시적인 실시예에 따라 사용자에 의해 정의된 검색 룰을 도식적으로 표현하는 도면,
도 5는 예시적인 실시예에 따른 동영상 검색 과정을 도시한 도면.1 illustrates a moving picture search system according to an exemplary embodiment;
2 is a diagram illustrating an operating environment to which a moving picture search system is applied according to an exemplary embodiment;
3 illustrates a graphical user interface in accordance with an exemplary embodiment;
4 is a diagrammatic representation of a search rule defined by a user according to an exemplary embodiment;
FIG. 5 illustrates a moving image search process according to an exemplary embodiment; FIG.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to provide a comprehensive understanding of the methods, apparatus, and / or systems described herein. However, this is merely an example and the present invention is not limited thereto.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intention or custom of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification. The terms used in the detailed description are intended only to describe embodiments of the invention and should in no way be limiting. Unless specifically stated otherwise, the singular forms of the expressions include plural forms of meanings. In this description, the expressions "comprising" or "comprising" are intended to indicate certain features, numbers, steps, operations, elements, parts or combinations thereof, Should not be construed to preclude the presence or possibility of other features, numbers, steps, operations, elements, portions or combinations thereof.
도 1은 예시적인 실시예에 따른 동영상 검색 시스템을 도시한다.1 shows a moving picture search system according to an exemplary embodiment.
도 1에 도시된 바와 같이, 예시적인 동영상 검색 시스템(100)은 사용자 클라이언트 모듈(110), 분석 모듈(120), 데이터베이스 관리 모듈(130) 및 동영상 스토리지 관리 모듈(140)를 포함한다. 동영상 검색 시스템(100)의 각 모듈은 하드웨어로 구현될 수 있다. 예컨대, 이러한 하드웨어는 프로세서, 프로세서에 의해 액세스 가능한 컴퓨터 판독 가능 저장 매체(가령, 휘발성 메모리, 비휘발성 메모리 및/또는 스토리지 디바이스), 입력 디바이스(가령, 마우스와 같은 포인팅 디바이스, 키보드, 터치 입력 디바이스 및/또는 음성 입력 디바이스), 출력 디바이스(가령, 모니터와 같은 디스플레이 디바이스, 스피커 및/또는 프린터), 입력 디바이스 및 출력 디바이스를 위한 인터페이스를 제공하는 입출력 인터페이스 및/또는 외부의 컴퓨팅 장치와의 통신을 위한 네트워크 인터페이스를 포함할 수 있다. 몇몇 실시예들에 따르면, 사용자 클라이언트 모듈(110), 분석 모듈(120), 데이터베이스 관리 모듈(130) 및 동영상 스토리지 관리 모듈(140) 중 적어도 몇몇은 상이한 컴퓨팅 장치들에 포함되거나 구현될 수 있다. 몇몇 다른 실시예들에 따르면, 사용자 클라이언트 모듈(110), 분석 모듈(120), 데이터베이스 관리 모듈(130) 및 동영상 스토리지 관리 모듈(140)는 하나의 컴퓨팅 장치 내에 포함되거나 구현될 수 있다.1, the exemplary
사용자 클라이언트 모듈(110)은 동영상 검색 시스템(100)의 사용자가 행하는 입력을 수신하도록 구성된다. 특히, 사용자는 향상된 동영상 검색을 위한 검색 룰(search rule)을 정의하고자 하는 경우, 검색 룰의 요소들(예컨대, 검색 조건들 및 그 검색 조건들 간의 관계)을 지정하는 입력을 사용자 클라이언트 모듈(110)에 제공할 수 있다. 이를 위해, 사용자는 입력 디바이스를 이용한 다양한 타입의 동작들(예컨대, 마우스와 같은 포인팅 디바이스를 이용한 클릭(click), 호버링(hovering) 및 드래그 앤 드롭(drag and drop) 등의 동작들, 그리고 키보드를 이용하여 텍스트를 기입하는 것과 하나의 키 또는 둘 이상의 키의 조합을 누르는 것 등의 동작들) 중 적어도 하나를 취할 수 있다.The user client module 110 is configured to receive input made by a user of the motion
예를 들어, 사용자가 추적하고자 하는 상황을 정의하는 데에 여러 동영상들이 촬영한 장면들에 나타나는 객체, 이벤트 및 이들의 관계가 필요한 경우, 위와 같은 검색 룰이 유용할 수 있다. 따라서, 이하에서 설명되는 바와 같이, 동영상 검색 시스템(100)은 그러한 복잡한 상황을 촬영한 동영상을 편리하게 검색하는 방안을 제공할 수 있다.For example, the above search rule may be useful when the user wants to define the situation to be tracked, and objects, events and their relationships appear in scenes shot by several videos. Therefore, as described below, the moving
또한, 사용자 클라이언트 모듈(110)은 위와 같은 사용자 정의 기반의 검색 룰을 나타내는 동영상 검색 쿼리(video search query)를 생성하도록 구성된다. 예를 들어, 사용자 클라이언트 모듈(110)은 사용자에 의해 지정된 검색 조건들 및 그 검색 조건들 간의 관계를 이용하여 XML(eXtended Markup Language)와 같은 특정 포맷을 갖는 쿼리를 생성할 수 있다. 나아가, 사용자 클라이언트 모듈(110)은 생성된 쿼리를 분석 모듈(120)에 제공할 수 있다.In addition, the user client module 110 is configured to generate a video search query indicating the above-described user-defined search rule. For example, the user client module 110 may generate a query having a specific format such as XML (eXtended Markup Language) using the search conditions specified by the user and the relationship between the search conditions. Further, the user client module 110 may provide the generated query to the
몇몇 실시예들에서, 사용자 클라이언트 모듈(110)은 사용자 입력을 수신하는 데에 적합한 사용자 인터페이스를 제공하도록 구성될 수 있다. 이러한 사용자 인터페이스는 검색 룰의 요소들을 지정하는 데 이용될 수 있다. 또한, 사용자 클라이언트 모듈(110)은 검색 룰의 요소들을 사용자 인터페이스에 표현할 수 있다. 일 예로서, 사용자 클라이언트 모듈(110)은 도 3에 도시된 사용자 인터페이스(300)를 제공할 수 있다. In some embodiments, the user client module 110 may be configured to provide a user interface suitable for receiving user input. This user interface can be used to specify the elements of the search rule. In addition, the user client module 110 may represent elements of the search rule in a user interface. As an example, the user client module 110 may provide the
분석 모듈(120)은 사용자 클라이언트 모듈(110)에 의해 생성된 쿼리를 이용하여 동영상 관련 데이터(video-related data)를 획득하도록 구성된다. 또한, 분석 모듈(120)은 획득된 동영상 관련 데이터를 분석하여 쿼리에 매칭되는 동영상에 관한 정보를 포함하는 분석 결과를 생성하도록 구성된다. 이런 점에서, 분석 모듈(120)이 분석을 위해 획득한 동영상 관련 데이터는 이하에서 "분석 대상 데이터"라고 지칭될 수도 있다.The
데이터베이스 관리 모듈(130)에는 다수의 동영상에 관한 데이터가 저장되어 있다. 또한, 데이터베이스 관리 모듈(130)은 저장된 데이터의 검색을 수행하도록 구성된다. 따라서, 구체적인 예로서, 분석 모듈(120)은 다음과 같이 분석 대상 데이터를 데이터베이스 관리 모듈(130)로부터 수집할 수 있다.The
분석 모듈(120)은 사용자 클라이언트 모듈(110)로부터 수신된 쿼리를 이용하여 데이터베이스 관리 모듈(130)에 분석 대상 데이터에 대한 검색을 요청할 수 있다. 몇몇 실시예들에 따르면, 분석 모듈(120)은 쿼리로부터 특정 조건(예컨대, 쿼리가 나타내는 검색 룰의 특정 검색 조건)을 추출할 수 있고, 그 조건을 만족하는 분석 대상 데이터에 대한 검색을 데이터베이스 관리 모듈(130)에 요청할 수 있다. 이를 위해, 분석 모듈(120)은 쿼리를 파싱(parsing)하여 그러한 검색을 위한 특정 조건을 추출하고, 데이터베이스 관리 모듈(130)에 질의하는 데 적합한 포맷(예컨대, SQL(Structured Query Language) 타입 또는 이와 유사한 타입)으로 쿼리를 변환할 수 있다.The
요청된 검색을 위해, 데이터베이스 관리 모듈(130)은 데이터베이스 관리 모듈(130) 내에 저장된 데이터에서 몇몇 동영상에 관한 데이터를 식별할 수 있다. 이러한 식별은 분석 모듈(120)에 의해 추출된 특정 조건(예컨대, 동영상들이 촬영된 특정 시구간)에 기반할 수 있다. 또한, 데이터베이스 관리 모듈(130)은 식별된 데이터를 분석 대상 데이터로서 분석 모듈(120)에 제공할 수 있다.For the requested search, the
몇몇 실시예들에서, 데이터베이스 관리 모듈(130)이 상당한 수의 동영상에 관한 데이터를 효율적으로 관리하고 검색 결과를 신속히 제공할 수 있도록, 데이터베이스 관리 모듈(130)에는 각 동영상의 메타데이터가 동영상 관련 데이터로서 저장될 수 있다. 예를 들어, 각 동영상의 메타데이터는 그 동영상과 관련된 정보를 제공하는 다양한 타입의 항목들을 포함할 수 있다. 동영상의 메타데이터 항목의 전형적인 예들은 그 동영상으로부터 추출 가능한 어떤 특징 부분(가령, 객체, 이벤트 등)을 나타내는 항목 및 그 동영상의 다른 다양한 양상들(가령, 그 동영상의 생성 수단, 그 동영상의 프레임의 생성 시각 및 날짜 등)을 나타내는 항목들을 포함한다. 또한, 분석 모듈(120)이 쿼리를 파싱하여 특정 조건을 추출하고 그 조건을 만족하는 분석 대상 데이터를 데이터베이스 관리 모듈(130)에 요청하는 경우, 데이터베이스 관리 모듈(130)은 그 조건을 만족하는 여러 개의 메타데이터의 그룹(이하, "메타데이터 클러스터"라고도 지칭됨)을 분석 모듈(120)에 전송할 수 있다. 이에 따라, 데이터베이스 관리 모듈(130)은 훨씬 적은 양의 동영상 관련 데이터를 이용하여 동영상 검색에 필요한 데이터베이스를 구축할 수 있고, 더욱 빠르게 분석 대상 데이터를 분석 모듈(120)에 제공할 수 있다.In some embodiments, in order for the
앞서 언급된 바와 같이 분석 모듈(120)이 데이터베이스 관리 모듈(130)로부터 분석 대상 데이터를 획득한 경우, 분석 모듈(120)은 쿼리를 이용하여 분석 대상 데이터를 분석할 수 있다. 이러한 분석을 통해, 분석 모듈(120)은 쿼리가 나타내는 검색 룰을 만족하는 동영상 관련 데이터를 분석 대상 데이터로부터 식별할 수 있다. 이어서, 분석 모듈(120)은 식별된 동영상 관련 데이터를 이용하여 분석 결과를 생성할 수 있다. 이와 같이, 분석 모듈(120)에 의해 생성된 분석 결과는 데이터베이스 관리 모듈(130)로부터의 검색 결과보다 더욱 정제될 수 있다.As described above, when the
몇몇 실시예들에서, 위 분석 결과는 쿼리에 매칭되는 동영상에 관한 정보(예컨대, 그 동영상을 촬영한 동영상 소스(가령, 카메라)가 어느 것인지에 관한 정보, 그 동영상에서 검색 룰로써 묘사된 상황이 출현한 시각 및 그 상황이 사라진 시각에 관한 정보 및/또는 그 동영상으로부터 추출 가능한 더 적은 양의 영상(가령, 썸네일(thumbnail) 정지 영상 및/또는 썸네일 동영상))를 포함할 수 있다. 따라서, 그러한 정보는 분석 모듈(120)이 쿼리에 매칭되는 동영상을 (예컨대, 동영상 스토리지 관리 모듈(140)로부터) 획득하는 데 유용할 수 있다. 예를 들어, 데이터베이스 관리 모듈(130)로부터 분석 모듈(120)에 메타데이터 클러스터가 전송된 경우, 분석 모듈(120)은 쿼리에 매칭되는 동영상의 메타데이터를 메타데이터 클러스터로부터 식별할 수 있고, 그 동영상을 획득하는 데 이용 가능한 위 정보를 식별된 메타데이터를 기반으로 도출할 수 있다.In some embodiments, the result of the analysis may include information about the video that matches the query (e.g., information about which video source (e.g., camera) the video was taken from, the situation depicted as a search rule in the video, (E.g., thumbnail still images and / or thumbnail videos) that can be extracted from the video and / or the video at a time and the situation where the situation disappeared. Thus, such information may be useful for the
몇몇 실시예들에 따르면, 분석 모듈(120)은 여러 동영상 소스로부터 도출 가능한 데이터를 조합하여 더욱 복잡한 상황을 추론하는 데 적합한 CEP(Complex Event Processing) 엔진을 활용하여 분석 대상 데이터를 분석할 수 있다.According to some embodiments,
나아가, 분석 모듈(120)은 생성된 분석 결과를 사용자 클라이언트 모듈(110)에 제공할 수 있다. 사용자 클라이언트 모듈(110)은 수신된 분석 결과를 이용하여 동영상 스토리지 관리 모듈(140)에 쿼리에 매칭되는 동영상을 요청할 수 있다. 동영상 스토리지 관리 모듈(140)에는 하나 또는 복수의 동영상 소스(예컨대, CCTV 시스템에서 사용되는 적어도 하나의 카메라)에 의해 포착된 동영상들이 저장되어 있다. 또한, 사용자 클라이언트 모듈(110)에 의한 요청에 따라, 동영상 스토리지 관리 모듈(140)은 저장된 동영상들을 검색하여 사용자 클라이언트 모듈(110)에게 요청된 동영상을 전송할 수 있다.Further, the
동영상 검색 시스템(100)은 다양한 운영 환경들에 배치될 수 있다. 통상의 기술자는 동영상 검색 시스템(100)이 배치되는 실제 환경을 고려하여 동영상 검색 시스템의 구현을 맞출 수 있을 것이다. 다만, 도 2 내지 도 4를 참조하여, 이하에서는 동영상 검색 시스템(100)이 예시적인 운영 환경에서 어떻게 동작하는지에 관한 더욱 구체적인 예를 설명한다.The
도 2는 예시적인 실시예에 따라 동영상 검색 시스템이 적용되는 운영 환경을 설명하기 위한 도면이다.2 is a diagram for explaining an operating environment in which a moving image search system is applied according to an exemplary embodiment.
도 2에 도시된 바와 같이, 예시적인 운영 환경(200)은 도로(210) 상의 횡단보도(220) 주위에 설치된 두 개의 CCTV 용 카메라(230 및 235)를 포함한다. 도로(210)의 표면에는 도로(210) 상에서 반대되는 두 방향의 주행을 위한 차선들을 구분하는 중앙선(215)이 마킹되어 있다. 카메라(230) 인근에 설치된 신호등(255)은 도 2에서 좌측 방향의 주행을 위한 차선 상에서 주행하는 차량(예컨대, 차량(260))의 운전자가 볼 수 있는 교통 신호(예컨대, 적색 신호, 황색 신호 또는 녹색 신호)를 디스플레이한다. 마찬가지로, 카메라(235) 인근에 설치된 신호등(250)은 도 2에서 우측 방향의 주행을 위한 차선 상에서 주행하는 차량(예컨대, 차량(265))의 운전자가 볼 수 있는 교통 신호(예컨대, 적색 신호, 황색 신호 또는 녹색 신호)를 디스플레이한다. 설명의 편의상, 신호등(250 및 255)이 정상적으로 동작하는 경우, 신호등(250 및 255)은 동시에 동일한 교통 신호를 디스플레이한다고 가정한다.2, the
카메라들(230 및 235)은 각각 장면(240) 및 장면(250)을 촬영하도록 구성된다. 비록 도 2에 도시되지는 않았으나, 카메라들(230 및 235)은 도 1의 동영상 검색 시스템(100)과 통신 가능하게 연결된다. 이에 따라, 카메라들(230 및 235)에 의해 포착된 동영상들은 동영상 스토리지 관리 모듈(140)에 저장될 수 있다. 또한, 그 동영상들과 관련된 각종 정보는 메타데이터로서 데이터베이스 관리 모듈(130)에 저장될 수 있다.
카메라(230)가 촬영하는 장면(240)은 신호등(250)을 포함한다. 마찬가지로, 카메라(235)가 촬영하는 장면(245)은 신호등(255)을 포함한다. 도 2에서 도로(210)를 따라 좌측으로 주행하는 차량(260)은 장면(240)에서 나타날 수 있다. 마찬가지로, 도 2에서 도로(210)를 따라 우측으로 주행하는 차량(265)은 장면(245)에서 나타날 수 있다. 따라서, 카메라(230)에 의해 포착된 동영상으로부터 장면(240)에 진입한 객체(예컨대, 차량(260))나 신호등(250)이 적색 신호를 디스플레이하는 이벤트가 검출될 수 있다. 마찬가지로, 카메라(235)에 의해 포착된 동영상으로부터 장면(240)에 진입한 객체(예컨대, 차량(265))나 신호등(255)이 적색 신호를 디스플레이하는 이벤트가 검출될 수 있다. 나아가, 횡단보도(220)를 어떤 객체(예컨대, 차량)이 통과하는 이벤트가 위 동영상들 중 적어도 하나로부터 검출될 수 있다.The
이러한 운영 환경(200)에서, 동영상 검색 시스템(100)은 교통 신호를 위반한 차량이 촬영된 동영상을 사용자에게 다음과 같이 제공할 수 있다.In this
예를 들어, 동영상 검색 시스템(100)의 사용자 클라이언트 모듈(110)은 도 3에 도시된 사용자 인터페이스(300)를 시각적으로 노출할 수 있다. 사용자 인터페이스(300)는 예시적인 실시예에 따른 동영상 검색 메커니즘을 지원하는 윈도우 타입의 그래픽 사용자 인터페이스이다. 도 3에 도시된 바와 같이, 사용자 인터페이스(300)는 팔레트 영역(palette area)(310), 속성 영역(property area)(330) 및 드로잉 영역(drawing area)(350)을 포함한다. 팔레트 영역(310)은 인터페이스 요소들(320-1 내지 320-4)을 포함할 수 있다. 속성 영역(330)은 인터페이스 요소들(340-1 내지 340-n)을 포함할 수 있다. 드로잉 영역(350)은 검색 룰의 시각적 표현을 제공할 수 있다. 나아가, 사용자 인터페이스(300)는 하나 이상의 탭(예컨대, 탭들(360 및 365))을 포함할 수 있다. 사용자가 탭(360)을 선택하는 경우 드로잉 영역(350)에 표현되는 검색 룰은 사용자가 탭(365)을 선택하는 경우 드로잉 영역(350)에 표현되는 검색 룰과 상이할 수 있다.For example, the user client module 110 of the
도 4에 도시된 표현(400)에 따라 검색 룰을 워크플로우(workflow) 형태로 정의하기 위해, 사용자는 사용자 인터페이스(300)를 이용하여 다음과 같은 동작들을 취할 수 있다.In order to define a search rule in the form of a workflow in accordance with the
- 사용자는 팔레트 영역(310)의 인터페이스 요소(320-1)를 마우스로 클릭할 수 있다. 이러한 동작에 응답하여, 사용자 클라이언트 모듈(110)은 카메라(230)의 선택을 위한 인터페이스 요소 및 카메라(235)의 선택을 위한 인터페이스 요소를 팔레트 영역(310)에 디스플레이할 수 있다. 사용자가 카메라(230)의 선택을 위한 인터페이스 요소를 드래그(drag)하여 드로잉 영역(350)에 드롭(drop)하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현(410)을 드로잉 영역(350)에 디스플레이할 수 있다. 사용자가 카메라(235)의 선택을 위한 인터페이스 요소를 드래그하여 드로잉 영역(350)에 드롭하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현(420)을 드로잉 영역(350)에 디스플레이할 수 있다.The user may click on the interface element 320-1 of the
- 사용자는 팔레트 영역(310)의 인터페이스 요소(320-2)를 마우스로 클릭할 수 있다. 이러한 동작에 응답하여, 사용자 클라이언트 모듈(110)은 이벤트 필터의 선택을 위한 인터페이스 요소 및 객체 필터의 선택을 위한 인터페이스 요소를 팔레트 영역(310)에 디스플레이할 수 있다. 사용자가 이벤트 필터의 선택을 위한 인터페이스 요소를 드래그하여 드로잉 영역(350)에 드롭하는 동작을 2회 행하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현들(430 및 440)을 드로잉 영역(350)에 디스플레이할 수 있다. 사용자가 객체 필터의 선택을 위한 인터페이스 요소를 드래그(drag)하여 드로잉 영역(350)에 드롭(drop)하는 동작을 행하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현(450)을 드로잉 영역(350)에 디스플레이할 수 있다.The user may click on the interface element 320-2 of the
- 사용자는 팔레트 영역(310)의 인터페이스 요소(320-3)를 마우스로 클릭할 수 있다. 이러한 동작에 응답하여, 사용자 클라이언트 모듈(110)은 여러 인터페이스 요소들을 팔레트 영역(310)에 디스플레이할 수 있다. 각 인터페이스 요소는 다양한 논리 관계(예컨대, AND 관계, OR 관계 및 다른 논리 관계들) 중 상이한 하나의 선택을 위한 인터페이스 요소이다. 예를 들어, 사용자가 AND 관계의 선택을 위한 인터페이스 요소를 드래그하여 드로잉 영역(350)에 드롭하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현(460)을 드로잉 영역(350)에 디스플레이할 수 있다.The user can click on the interface element 320-3 of the
- 사용자는 팔레트 영역(310)의 인터페이스 요소(320-4)를 마우스로 클릭할 수 있다. 이러한 동작에 응답하여, 사용자 클라이언트 모듈(110)은 여러 인터페이스 요소들을 팔레트 영역(310)에 디스플레이할 수 있다. 각 인터페이스 요소는 다양한 연결 관계(예컨대, 일대일 연결 관계, 일대다 연결 관계, 검색 룰을 나타내는 워크플로우의 종단점을 지정하는 연결 관계 등) 중 상이한 하나의 선택을 위한 인터페이스 요소이다. 예를 들어, 사용자가 일대일 관계의 선택을 위한 인터페이스 요소를 드래그하여 드로잉 영역(350)의 적절한 위치에 드롭하는 동작을 5회 반복하는 경우, 사용자 클라이언트 모듈(110)은 그래픽 표현들(470-1 내지 470-5)이 도 4에 도시된 바와 마찬가지 방식으로 드로잉 영역(350)에 그래픽 표현들(470-1 내지 470-5)을 디스플레이할 수 있다. 또한, 사용자가 종단점을 지정하는 연결 관계의 선택을 위한 인터페이스 요소를 드래그하여 드로잉 영역(350)에 디스플레이된 그래픽 표현(460)의 우측 모서리의 위치에 드롭하는 경우, 사용자 클라이언트 모듈(110)은 도 4의 그래픽 표현(470-6)과 함께 도 4의 그래픽 표현(480)을 드로잉 영역(350)에 디스플레이할 수 있다.The user can click on the interface element 320-4 of the
- 사용자는 드로잉 영역(350)에 디스플레이된 그래픽 표현들(410, 420, 430, 440 및 450) 각각을 클릭할 수 있다. 이러한 동작에 응답하여, 사용자 클라이언트 모듈(110)은 속성 영역(330)의 인터페이스 요소들(340-1 내지 340-n) 중 하나를 그래픽 표현이 나타내는 요소의 속성을 설정하기 위한 인터페이스 요소로서 디스플레이하거나 활성화시킬 수 있다. 예를 들어, 사용자가 카메라들(230 및 235) 각각에 의해 포착된 동영상에 대하여 특정 시구간을 검색 조건으로 지정하고자 하는 경우, 사용자는 그래픽 표현들(410 및 420)을 각각 클릭하고 원하는 시구간을 입력할 수 있다. 또한, 사용자가 카메라(230)에 의해 포착된 동영상에 대하여 어떤 객체가 횡단보도(220)를 통과하는 것 및 그 객체가 차량임을 검색 조건들로 지정하고자 하는 경우, 사용자는 그래픽 표현(430)을 클릭하여 원하는 이벤트로서 횡단보도(220)의 통과를 입력할 수 있고 그래픽 표현(450)을 클릭하여 원하는 객체로서 차량을 입력할 수 있다. 나아가, 사용자가 카메라(235)에 의해 포착된 동영상에 대하여 신호등(255)의 적색 신호를 검색 조건으로 지정하고자 하는 경우, 사용자는 그래픽 표현(440)을 클릭하고 신호등(255)이 적색 신호를 디스플레이하는 것을 원하는 이벤트로서 입력할 수 있다. 이러한 동작들에 응답하여, 사용자 클라이언트 모듈(110)은 그래픽 표현들(415, 425, 435, 445 및 455)를 드로잉 영역(350)에 디스플레이할 수 있다.The user may click on each of the
- 이와 같이 검색 룰이 워크플로우 형태로 모델링된 후, 드로잉 영역(350)에는 최종적으로 도 4에 도시된 검색 룰의 표현(400)이 디스플레이된다. 완성된 검색 룰은 사용자 클라이언트 모듈(110)에 저장될 수 있다.- After the search rule is modeled in the form of a workflow, the
사용자 클라이언트 모듈(110)은 완성된 검색 룰이 나타내는 검색 조건들을 그 검색 조건들 간의 관계에 따라 조합하여 XML 타입의 쿼리를 생성할 수 있다. 이와 관련하여, 도 3에 도시된 바와 같이, 사용자 인터페이스(300)는 탭들(370 및 375)을 포함할 수 있다. 탭(370)이 선택된 경우, 드로잉 영역(350)에는 앞서 기술한 바와 같이 도 4에 도시된 그래픽 표현들이 디스플레이된다. 탭(375)이 선택된 경우, 드로잉 영역(350)에는 XML 타입 쿼리가 텍스트 포맷으로 디스플레이될 수 있고, 사용자는 직접 쿼리를 편집할 수 있다.The user client module 110 may generate an XML type query by combining the search conditions indicated by the completed search rule according to the relationship between the search conditions. In this regard, as shown in FIG. 3, the
사용자 클라이언트 모듈(110)은 생성된 쿼리를 분석 모듈(120)에 제공할 수 있다. 분석 모듈(120)은 쿼리를 파싱하여 카메라들(230 및 235)에 의해 포착된 동영상들에 대하여 지정된 시구간을 추출할 수 있다. 분석 모듈(120)은 그 시구간을 조건으로 데이터베이스 관리 모듈(130)에 메타데이터의 검색을 요청할 수 있다. 데이터베이스 관리 모듈(130)은 그러한 검색을 수행한 후, 메타데이터 클러스터를 분석 모듈(120)에 제공할 수 있다.The user client module 110 may provide the generated query to the
몇몇 실시예들에서, 분석 모듈(120)은 수신된 메타데이터 클러스터 내의 메타데이터를 순차적으로 분석할 수 있다. 예를 들어, 위 시구간 중 동일한 서브-구간에 대응하는 메타데이터가 분석 모듈(120)에 순차적으로 제공될 수 있다. 이어서, 분석 모듈(120)은 수신된 메타데이터를 분석할 수 있다. 분석 모듈(120)은 이러한 동작들을 위 시구간 내 메타데이터가 전부 분석될 때까지 반복할 수 있다. 몇몇 다른 실시예들에서, 분석 모듈(120)은 이러한 메타데이터의 분석을 서브-구간들에 대하여 병렬로 처리할 수 있다.In some embodiments,
메타데이터의 분석이 완료되면, 분석 모듈(120)은 분석 결과를 생성할 수 있고, 그 분석 결과를 사용자 인터페이스(300)에 디스플레이할 수 있다. 위와 같은 분석 결과는 쿼리에 매칭되는 적어도 하나의 동영상을 획득하는 데 이용 가능한 정보(예컨대, 그 동영상의 썸네일 영상)를 포함할 수 있다. 따라서, 사용자가 사용자 인터페이스(300)에서 디스플레이된 분석 결과의 어떤 항목(예컨대, 썸네일 영상)을 선택하는 경우, 사용자 클라이언트 모듈(110)은 그 항목이 나타내는 동영상을 동영상 스토리지 관리 모듈(140)로부터 획득할 수 있다. 사용자 클라이언트 모듈(110)은 사용자 인터페이스(300)에 그 동영상을 디스플레이할 수 있고, 나아가 그 동영상의 메타데이터를 사용자 인터페이스(300)에 시각적으로 표현할 수 있다.When the analysis of the metadata is completed, the
몇몇 실시예들에 따르면, 사용자 클라이언트 모듈(110)은 추가적인 인터페이스 요소를 사용자 인터페이스(300)에 (예컨대, 필요에 따라) 디스플레이할 수 있다. 이 추가적인 인터페이스 요소는 쿼리에 매칭되는 동영상에 대한 특정 처리 기능(예컨대, 동영상에서 검출 가능한 차량의 번호판을 인식하는 기능)을 선택하는 데 이용 가능하다. 예를 들어, 사용자가 이 인터페이스 요소를 드래그하여 드로잉 영역(350)에 드롭하는 동작을 행하는 경우, 사용자 클라이언트 모듈(110)은 그래픽 표현(460) 및 그래픽 표현(470) 사이에 추가적인 그래픽 표현을 디스플레이할 수 있다. 위와 같은 기능은 분석 모듈(120)에 의해 제공될 수 있다. 분석 모듈(120)은 쿼리가 나타내는 검색 룰을 만족하는 메타데이터를 식별한 후, (예컨대, 차량의 번호판을 인식하기 위한) 서브-모듈을 이용하여 그러한 기능을 수행할 수 있다.According to some embodiments, the user client module 110 may display additional interface elements in the user interface 300 (e.g., as needed). This additional interface element is available for selecting a specific processing function (e.g., a function of recognizing a license plate of a vehicle detectable in a moving picture) for a moving picture matched to a query. The user client module 110 may display additional graphical representations between the
도 5는 예시적인 실시예에 따른 동영상 검색 과정을 도시한다. 예시적인 과정(500)에 포함된 각 동작은 동영상 검색 시스템(100)의 사용자 클라이언트 모듈(110), 분석 모듈(120), 데이터베이스 관리 모듈(130) 또는 동영상 스토리지 관리 모듈(140)에 의해 수행될 수 있다.FIG. 5 shows a moving image search process according to an exemplary embodiment. Each of the operations included in the
시작 동작 후, 과정(500)은 동작(S505)으로 진행된다. 동작(S505)에서, 사용자 클라이언트 모듈(110)은 동영상 검색을 위한 검색 조건들 및 그 검색 조건들 간의 관계를 포함하는 검색 룰을 지정하는 사용자 입력을 수신한다. 이를 위해, 사용자 클라이언트 모듈(110)은 그러한 검색 룰을 지정하는 데 이용 가능한 사용자 인터페이스(300)를 제공할 수 있다. After the start operation, the
동작(S510)에서, 사용자 클라이언트 모듈(110)은 검색 룰을 이용하여 쿼리를 생성한다. 예를 들어, 생성된 쿼리는 XML 포맷을 가질 수 있다. 이어서, 사용자 클라이언트 모듈(110)은 분석 모듈(120)에 제공할 수 있다. 또한, 사용자 클라이언트 모듈(110)은 생성된 쿼리를 사용자 인터페이스(300)에 표현할 수 있다.In operation S510, the user client module 110 generates a query using a search rule. For example, the generated query can have an XML format. The user client module 110 may then be provided to the
동작(S515)에서, 분석 모듈(120)은 쿼리를 이용하여 데이터베이스 관리 모듈(130)에 동영상 관련 데이터에 대한 검색을 요청한다. 이를 위해, 분석 모듈(120)은 데이터베이스 관리 모듈(130)에 질의하기 위한 포맷(예컨대, SQL 포맷)으로 쿼리를 변환한 후, 쿼리로부터 특정 검색 조건을 추출할 수 있다. 이어서, 분석 모듈(120)은 데이터베이스 관리 모듈(130)에게 추출된 검색 조건을 만족하는 동영상 관련 데이터에 대한 검색을 수행할 것을 요청할 수 있다. 이하에서 언급되는 바와 같이, 추출된 검색 조건은 데이터베이스 관리 모듈(130)이 동영상 관련 데이터에 대한 검색을 수행하는 데 이용될 수 있다.In operation S515, the
동작(S520)에서, 데이터베이스 관리 모듈(130)은 특정 검색 조건을 만족하는 동영상 관련 데이터를 분석 모듈(120)에 제공한다. 따라서, 분석 모듈(120)은 쿼리를 이용하여 데이터베이스 관리 모듈(130)로부터 동영상 관련 데이터를 획득할 수 있다. 몇몇 실시예들에서, 획득된 동영상 관련 데이터는 적어도 하나의 동영상의 메타데이터를 포함할 수 있다. 특히, 이러한 메타데이터는 그 동영상으로부터 추출 가능한 객체 및 이벤트 중 적어도 하나의 메타데이터를 포함할 수 있다.In operation S520, the
동작(S525)에서, 분석 모듈(120)은 획득된 동영상 관련 데이터를 분석하여 쿼리에 매칭되는 동영상에 관한 정보를 포함하는 분석 결과를 생성한다. 이러한 분석을 위해, 분석 모듈(120)은 CEP 엔진을 이용할 수 있다. 매칭되는 동영상에 관한 정보의 예들은 그 동영상을 촬영한 동영상 소스의 식별 정보, 사용자가 원하는 상황이 촬영된 특정 시구간에 관한 정보 및/또는 그 동영상의 썸네일 영상)를 포함한다.In operation S525, the
동작(S530)에서, 분석 모듈(120)은 생성된 분석 결과를 사용자 클라이언트 모듈(110)에 제공한다. 사용자 클라이언트 모듈(110)은 수신된 분석 결과를 사용자 인터페이스(300)에 표현할 수 있다.In operation S530, the
동작(S535)에서, 사용자 클라이언트 모듈(110)은 쿼리에 매칭되는 동영상을 동영상 스토리지 관리 모듈(140)에 요청한다.In operation S535, the user client module 110 requests the moving picture
동작(S540)에서, 동영상 스토리지 관리 모듈(140)은 동영상 스토리지 관리 모듈(140)에 저장된 동영상들을 검색하여 요청된 동영상을 사용자 클라이언트 모듈(110)에게 제공한다.In operation S540, the moving image
한편, 소정의 실시예는 본 명세서에서 기술한 과정을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 저장 매체를 포함할 수 있다. 이러한 컴퓨터 판독 가능 저장 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 그 컴퓨터 판독 가능 저장 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들일 수 있다. 컴퓨터 판독 가능 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 다른 실시예에 따르면, 본 명세서에서 기술한 과정을 실행하기 위한 컴퓨터 프로그램이 제공될 수 있다. 그러한 프로그램은 하드웨어와 결합하여 위 과정을 실행하기 위하여 컴퓨터 판독 가능 저장 매체와 같은 매체에 저장될 수 있다.On the other hand, certain embodiments may include a computer-readable storage medium including a program for performing the procedures described herein on a computer. Such computer-readable storage media may include program instructions, local data files, local data structures, etc., alone or in combination. The computer-readable storage medium may be those specially designed and constructed for the present invention. Examples of computer-readable storage media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floppy disks, and ROMs, And hardware devices specifically configured to store and execute the same program instructions. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. According to another embodiment, a computer program for performing the processes described herein may be provided. Such a program may be stored on a medium such as a computer-readable storage medium in combination with hardware to perform the above process.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.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, but, on the contrary, . Therefore, the scope of the present invention should not be limited to the above-described embodiments, but should be determined by equivalents to the appended claims, as well as the appended claims.
100: 동영상 검색 시스템
110: 사용자 클라이언트 모듈
120: 분석 모듈
130: 데이터베이스 관리 모듈
140: 동영상 스토리지 관리 모듈100: Video search system
110: User Client Module
120: Analysis module
130: Database Management Module
140: Video Storage Management Module
Claims (21)
상기 쿼리를 이용하여 동영상 관련 데이터를 획득하고, 상기 동영상 관련 데이터를 분석하여 상기 쿼리에 매칭되는 동영상에 관한 정보를 상기 사용자 클라이언트 모듈에 제공하는 분석 모듈을 포함하는
동영상 검색 시스템.A user client module for receiving a user input designating a relationship between a plurality of search conditions and a plurality of search conditions for moving image search and generating a query using the plurality of search conditions and the relationship; And
And an analysis module for acquiring moving picture related data using the query and analyzing the moving picture related data to provide information on a moving picture matched with the query to the user client module
Video search system.
상기 동영상 관련 데이터는 복수의 동영상의 메타데이터를 포함하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the moving picture related data includes metadata of a plurality of moving pictures.
상기 메타데이터는 상기 복수의 동영상으로부터 추출 가능한 객체 및 이벤트 중 적어도 하나의 메타데이터를 포함하는, 동영상 검색 시스템.The method of claim 2,
Wherein the metadata includes at least one of an object and an event extractable from the plurality of videos.
상기 분석 모듈은 또한 상기 쿼리를 이용하여 데이터베이스 관리 모듈로부터 상기 동영상 관련 데이터를 획득하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the analysis module also obtains the moving picture related data from the database management module using the query.
상기 분석 모듈은 또한 상기 데이터베이스 관리 모듈에 질의하기 위한 포맷으로 상기 쿼리를 변환하는, 동영상 검색 시스템.The method of claim 4,
Wherein the analysis module also transforms the query into a format for querying the database management module.
상기 분석 모듈은 또한 상기 쿼리를 파싱(parsing)하여 특정 검색 조건을 추출하되, 상기 동영상 관련 데이터는 상기 특정 검색 조건을 만족하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the analysis module further parses the query to extract a specific search condition, the video related data satisfying the specific search condition.
상기 분석 모듈은 또한 상기 동영상 관련 데이터를 분석하기 위해 CEP(Complex Event Processing) 엔진을 이용하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the analysis module also uses a CEP (Complex Event Processing) engine to analyze the moving picture related data.
상기 사용자 클라이언트 모듈은 또한 상기 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the user client module also provides a user interface for receiving the user input.
상기 사용자 클라이언트 모듈은 또한 상기 복수의 검색 조건 및 상기 관계를 상기 사용자 인터페이스에 표현하는, 동영상 검색 시스템.The method of claim 8,
Wherein the user client module also represents the plurality of search conditions and the relationship in the user interface.
상기 사용자 클라이언트 모듈은 또한 상기 정보를 이용하여 상기 매칭되는 동영상을 획득하는, 동영상 검색 시스템.The method according to claim 1,
Wherein the user client module also obtains the matching video using the information.
상기 복수의 검색 조건 및 상기 관계를 이용하여 쿼리를 생성하는 단계;
상기 쿼리를 이용하여 동영상 관련 데이터를 획득하는 단계; 및
상기 동영상 관련 데이터를 분석하여 상기 쿼리에 매칭되는 동영상에 관한 정보를 상기 사용자 클라이언트 모듈에 제공하는 단계를 포함하는
동영상 검색 방법.The method comprising: receiving a user input specifying a plurality of search conditions for moving image search and a relationship between the plurality of search conditions;
Generating a query using the plurality of search conditions and the relationship;
Acquiring moving picture related data using the query; And
Analyzing the moving picture related data and providing information on the moving picture matched with the query to the user client module
How to search for videos.
상기 동영상 관련 데이터는 복수의 동영상의 메타데이터를 포함하는, 동영상 검색 방법.The method of claim 11,
Wherein the moving picture related data includes metadata of a plurality of moving pictures.
상기 메타데이터는 상기 복수의 동영상으로부터 추출 가능한 객체 및 이벤트 중 적어도 하나의 메타데이터를 포함하는, 동영상 검색 방법.The method of claim 12,
Wherein the metadata includes metadata of at least one of an object and an event extractable from the plurality of moving pictures.
상기 쿼리를 이용하여 데이터베이스 관리 모듈로부터 상기 동영상 관련 데이터를 획득하는 단계를 더 포함하는, 동영상 검색 방법.The method of claim 11,
Further comprising the step of acquiring the moving picture related data from the database management module using the query.
상기 데이터베이스 관리 모듈에 질의하기 위한 포맷으로 상기 쿼리를 변환하는 단계를 더 포함하는, 동영상 검색 방법.15. The method of claim 14,
Further comprising the step of converting the query into a format for querying the database management module.
상기 쿼리를 파싱하여 특정 검색 조건을 추출하는 단계를 더 포함하되, 상기 동영상 관련 데이터는 상기 특정 검색 조건을 만족하는, 동영상 검색 방법.The method of claim 11,
Further comprising parsing the query to extract a specific search condition, wherein the video related data satisfies the specific search condition.
상기 동영상 관련 데이터를 분석하기 위해 CEP(Complex Event Processing) 엔진을 이용하는 단계를 더 포함하는, 동영상 검색 방법.The method of claim 11,
Further comprising using a Complex Event Processing (CEP) engine to analyze the moving picture related data.
상기 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공하는 단계를 더 포함하는, 동영상 검색 방법.The method of claim 11,
Further comprising providing a user interface for receiving the user input.
상기 복수의 검색 조건 및 상기 관계를 상기 사용자 인터페이스에 표현하는 단계를 더 포함하는, 동영상 검색 방법.19. The method of claim 18,
And presenting the plurality of search conditions and the relationship to the user interface.
상기 정보를 이용하여 상기 매칭되는 동영상을 획득하는 단계를 더 포함하는, 동영상 검색 방법.The method of claim 11,
Further comprising the step of acquiring the matching video using the information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140115636A KR20160026544A (en) | 2014-09-01 | 2014-09-01 | System and method for video search |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140115636A KR20160026544A (en) | 2014-09-01 | 2014-09-01 | System and method for video search |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160026544A true KR20160026544A (en) | 2016-03-09 |
Family
ID=55536913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140115636A KR20160026544A (en) | 2014-09-01 | 2014-09-01 | System and method for video search |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20160026544A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023080425A1 (en) * | 2021-11-04 | 2023-05-11 | 삼성전자 주식회사 | Electronic device and method for providing search result related to query statement |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8315965B2 (en) | 2008-04-22 | 2012-11-20 | Siemens Corporation | Method for object detection |
-
2014
- 2014-09-01 KR KR1020140115636A patent/KR20160026544A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8315965B2 (en) | 2008-04-22 | 2012-11-20 | Siemens Corporation | Method for object detection |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023080425A1 (en) * | 2021-11-04 | 2023-05-11 | 삼성전자 주식회사 | Electronic device and method for providing search result related to query statement |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9563623B2 (en) | Method and apparatus for correlating and viewing disparate data | |
EP3253042B1 (en) | Intelligent processing method and system for video data | |
EP2980767B1 (en) | Video search and playback interface for vehicle monitor | |
US10990633B2 (en) | Object search by description | |
US9363489B2 (en) | Video analytics configuration | |
US10768769B2 (en) | Automatic event detection, text generation, and use thereof | |
US20150264296A1 (en) | System and method for selection and viewing of processed video | |
US9208226B2 (en) | Apparatus and method for generating evidence video | |
CN103984710B (en) | Video interactive querying method and system based on mass data | |
CN105138525B (en) | Traffic video processing unit and method and retrieval device and method | |
Höferlin et al. | Uncertainty-aware video visual analytics of tracked moving objects | |
EP3574417A1 (en) | Scalable and efficient episodic memory in cognitive processing for automated systems | |
US11776271B2 (en) | Systems and methods for creating a story board with forensic video analysis on a video repository | |
Burch et al. | Eyeclouds: A visualization and analysis tool for exploring eye movement data | |
US10275656B2 (en) | Large scale video search using queries that define relationships between objects | |
Chiang et al. | Quick browsing and retrieval for surveillance videos | |
KR20160026544A (en) | System and method for video search | |
Burghouts et al. | Focus-of-attention for human activity recognition from UAVs | |
van de Wouw et al. | Real-time change detection for countering improvised explosive devices | |
KR20190106107A (en) | Method for generating and servicing smart image content based on location mapping | |
Deng et al. | Fast forensic video event retrieval using geospatial computing | |
Xiao et al. | DoveDB: A Declarative and Low-Latency Video Database | |
Codreanu et al. | Mobile objects and sensors within a video surveillance system: Spatio-temporal model and queries | |
Codreanu et al. | Spatio-temporal metadata filtering and synchronising in video surveillance | |
TW201426679A (en) | Intelligent instantaneous vehicle image trace tracking system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |