WO2012118259A1 - 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법 - Google Patents

이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법 Download PDF

Info

Publication number
WO2012118259A1
WO2012118259A1 PCT/KR2011/008614 KR2011008614W WO2012118259A1 WO 2012118259 A1 WO2012118259 A1 WO 2012118259A1 KR 2011008614 W KR2011008614 W KR 2011008614W WO 2012118259 A1 WO2012118259 A1 WO 2012118259A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
video
feature
frame
feature data
Prior art date
Application number
PCT/KR2011/008614
Other languages
English (en)
French (fr)
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 (주)엔써즈
Publication of WO2012118259A1 publication Critical patent/WO2012118259A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/93Regeneration of the television signal or of selected parts thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Definitions

  • the present invention relates to a system and method for providing a video related service based on an image, and more particularly, to a system and a method for providing various types of video related services based on an image existing on a network such as the Internet.
  • the present invention has been made in view of the above-described problems, and an object of the present invention is to provide a system and a method for identifying a video or frame corresponding to an image through a network such as the Internet or a mobile communication network.
  • the present invention determines a video or frame corresponding to the image, and when a user event for the image occurs, it is possible to play the video from the frame corresponding to the image directly or through a network or various related to the image or video It is another object of the present invention to provide a system and method for providing information.
  • the present invention determines a video or frame corresponding to the image and provides various related services related to the video, and at the same time to obtain a variety of statistical information related to the image, video or frame in real-time It is another object of the present invention to provide a system and a method for acquiring various related information and using the same for advertisement or copyright management.
  • the present invention provides a system for providing a video related service based on an image, the system comprising: an image link unit which acquires image related data of an image and receives a user event for the image; An image feature data generator configured to generate image feature data of an image based on the image related data obtained by the image linker; A video feature data generator to generate video feature data for the video; An image / video matching unit determining at least one video or frame corresponding to an image based on the image feature data generated by the image feature data generator and the video feature data generated by the video feature data generator; And a service performing unit configured to perform a video related service related to a video or a frame determined to correspond to the corresponding image according to a user event for the image received from the image linking unit.
  • the image interlocking unit may be configured to obtain image related data and receive a user event by a script included in an electronic document including an image.
  • the video feature data generated by the video feature data generator may include image feature data for each frame for at least one or more of the frames constituting the video, a frame identifier, and a video identifier.
  • the image / video matching unit may compare the image feature data generated by the image feature data generator with the video feature data including frame feature image data for each of the videos generated by the video feature data generator. It may be configured to determine a corresponding video or frame.
  • it may be configured to store the information on the video or frame determined by the image / video matching unit corresponding to the image.
  • the video related service provided by the service performing unit may include a frame playback service in which the video is played from the corresponding frame of the video determined to correspond to the image.
  • the video related service provided by the service performing unit may include a video information providing service that provides information related to a video or frame determined to correspond to the corresponding image.
  • the user event may be configured to be received through the image linkage unit when the selection interface is provided on an electronic document including an image.
  • the service execution unit may provide a user interface for allowing a user to select a video related service provided when a user event occurs, and provide a corresponding video related service according to a user request signal through the user interface. It may be.
  • the image feature data generator may include an image feature point determiner configured to determine a feature point from an image and extract feature point information of the determined feature point; An image feature point direction estimator for estimating direction information on each of the feature points determined by the feature point determiner; And generating a binary feature vector for each feature point determined by the image feature point determiner based on the feature point information and the direction information, and configuring the feature data of the image including the generated binary feature vector. And a video feature data generator, extracting the frames constituting the video at predetermined time intervals for each video, calculating a difference from the extracted frames with at least one previous extraction frame, and the difference is greater than or equal to a threshold.
  • a frame selection unit for selecting a corresponding frame selected in the frame;
  • a feature point determining unit for each frame determining feature points of the frame selected by the frame selection unit and extracting feature point information of the determined feature points;
  • a feature point direction estimator for each frame estimating direction information for each feature point determined by the frame feature point determiner;
  • the image feature data constructing unit and the frame-specific feature data constructing unit may generate a peripheral image region including feature points for each of the feature points determined by the image feature point determiner and the frame feature point determiner, and generate the image area based on the direction information. After aligning the divided regions in the same direction, the aligned peripheral image regions may be divided into subregions, and a binary feature vector may be generated based on an average value of brightness values of the divided subregions.
  • the binary feature vector may be generated by at least one selected from a difference vector and a difference vector of an average value of brightness values of the subregions.
  • selecting at least one of the difference vector and the difference vector of the average value of the brightness values of the sub-regions may be configured to be selected corresponding to each bit of the binary feature vector.
  • it may be configured to determine the value of the corresponding bit of the binary feature vector by calculating a linear combination or a nonlinear combination for the difference vector and the difference vectors selected corresponding to each bit and comparing the result with a threshold.
  • it may be configured to perform the alignment according to a predetermined criterion for each bit value of the binary feature vector.
  • the video feature data generator may be configured to generate video feature data including an identifier of a video, an identifier for each frame of the video, feature point coordinates for each frame, feature point direction information, and a binary feature vector for each video.
  • the image / video matching unit may compare the image feature data and the image feature data of each frame of the video feature data to determine a matching video and determine at least one or more frames among the frames constituting the determined video, or the image.
  • a candidate selecting unit which compares the feature data and the image feature data of each frame of the video feature data to determine at least one frame to be matched;
  • a corresponding feature point determiner that determines a pair of corresponding feature points between the image and the determined frame based on the image feature data of the image and the image feature data of at least one frame determined by the candidate selector;
  • a reliability estimator for estimating a relationship analysis reliability between the image and the video based on the feature point direction information of the feature point included in the pair of feature points determined by the corresponding feature point determiner.
  • the reliability estimator may be configured to estimate the relationship analysis reliability between the image and the video based on a probability density function of an estimate of the direction difference value of the feature points included in the pair of feature points.
  • the average value and the variance value of the estimated value are calculated by the probability density function, the probability (p) of observing a pair of feature points by the standard normal distribution function according to the mean value and the variance value is calculated, and the calculated probability (p) or by comparing the threshold with a function based on the calculated probability (p) may be configured to estimate the reliability of the relationship analysis between the image and the video.
  • G is the probability function of the standard normal distribution with a mean of 0 and a standard deviation of 1
  • I the mean value of the direction differences of all pairs of feature points ( ) May be calculated by an estimate by a probability density function of the direction difference values of all pairs of feature points.
  • the hash generator may generate a hash table by using at least one or more bits of the binary feature vector included in the feature data for each frame as the index of the hash table with respect to the video feature data generated by the video feature data generator.
  • the relation analyzer may further include: retrieving a hash table generated by the hash generator by using at least one or more bits of a binary feature vector included in the image feature data to obtain video feature data belonging to the corresponding index.
  • the apparatus further includes a hash search unit, wherein the candidate selecting unit compares the image feature data with the video feature data acquired by the hash search unit to determine a video corresponding to the most matched video feature data, and configures the determined video.
  • Frame feature data that is most matched with the image feature data by determining a frame corresponding to the frame feature data that most matches the feature data, or by comparing the image feature data with the video feature data obtained by the hash search unit. It may be configured to determine the frame corresponding to the.
  • the apparatus may further include an information / statistic management unit configured to store information related to an image in which a user event occurs from a user and a video or frame determined to correspond to the image and to calculate statistical data.
  • an information / statistic management unit configured to store information related to an image in which a user event occurs from a user and a video or frame determined to correspond to the image and to calculate statistical data.
  • information / statistics management unit may be configured to further store information related to the video playback service.
  • a method for providing a video related service based on an image comprising: a first step of acquiring image related data of an image; Generating image characteristic data for an image based on the obtained image-related data; Generating video feature data for the video; Determining at least one moving picture or frame corresponding to the image based on the image feature data generated in the second step and the moving picture feature data generated in the third step; Receiving a user event for the image; And a sixth step of performing a video related service related to a video or a frame determined to correspond to the corresponding image in the fourth step according to a user event for the received image.
  • the video feature data generated in the third step may be configured to include frame feature image data, frame identifier, and video identifier for at least one or more of the frames constituting the video.
  • the fourth step may determine a moving picture or a frame corresponding to the image by comparing the moving picture feature data including the image feature data for each frame with respect to the image feature data.
  • the information on the video or frame determined in the fourth step may be configured to store corresponding to the image.
  • the video-related service provided in the sixth step may be configured to include a frame playback service in which the video is played from the corresponding frame of the video determined to correspond to the image.
  • the video related service provided in the sixth step may be configured to include a video information providing service that provides information related to a video or frame determined to correspond to the corresponding image.
  • the user event may be configured to be received when a selection interface provided on an electronic document including the corresponding image is made.
  • the sixth step may be configured to provide a user interface for allowing a user to select a video related service provided when a user event occurs and to provide a corresponding video related service according to a user request signal through the user interface. You may.
  • a system and a method for identifying a moving picture or frame corresponding to an image through a network such as the Internet or a mobile communication network.
  • a video or frame corresponding to the image is determined, and when a user event for the image occurs, it is possible to play the video from the frame corresponding to the image directly or through a network or It is possible to provide a system and method for providing various related information.
  • the present invention it is possible to determine a video or frame corresponding to the image and to provide various related services related to the video, and to acquire various statistical information related to the image, video or frame in real time. It is possible to provide a system and method for acquiring various information related to a video and using the same for advertisement or copyright management.
  • FIG. 1 is a view showing the configuration and connection state of a system for providing a video related service based on an image according to an embodiment of the present invention.
  • FIG. 2 and 3 illustrate an example of a process of performing a video related service according to the embodiment described with reference to FIG. 1.
  • FIG. 4 is a diagram illustrating an example of the configuration of the image feature data generator 20.
  • FIG. 5 is a screen illustrating a practical example of a process of generating a binary feature vector.
  • FIG. 6 is a flowchart illustrating a process of generating a binary feature vector.
  • FIG. 7 is a diagram illustrating an example of a specific process of generating a binary feature vector based on a difference vector and a difference vector.
  • FIG. 8 is a diagram illustrating an example of a configuration of a moving image feature data generation unit 30.
  • FIG. 10 is a diagram illustrating an example of the configuration of the image / video matching unit 40.
  • FIG. 11 illustrates an example of a process of generating a hash table generated by the hash generator.
  • FIGS. 12 is a flowchart illustrating an embodiment of a video related service providing method performed by the video related service providing system 100 described with reference to FIGS. 1 to 11.
  • FIG. 1 is a view showing the configuration and connection state of a system (100, hereinafter referred to as "video related service providing system") for providing a video related service based on an image according to an embodiment of the present invention.
  • video related service providing system a system for providing a video related service based on an image according to an embodiment of the present invention.
  • the video related service providing system 100 includes an image interlocking unit 10, an image feature data generating unit 20, a video feature data generating unit 30, and an image / video matching unit. 40 and the service performing unit 50, interlocked with the images 200 existing on the network to generate image feature data for the images, determine a video or frame corresponding thereto, According to the occurrence, the video related service related to the video or frame is performed.
  • the video related service providing system 100 is combined with the images 200 through a network.
  • the network means, for example, the Internet, a public communication network (PSTN), a mobile communication network, or a combination thereof
  • the image in the present invention means an image existing on such a network.
  • the image may reside on a web page provided by a web server residing on a network.
  • a web page refers to an individual electronic document existing on the world wide web (www) through a network such as the Internet, and the like.
  • server means a general web page known by the prior art written based on a language such as HTML. In general, these web pages are provided by a computer through a web server connected to the Internet. Such web pages may include text, images, and video.
  • the images 200 may be provided to the mobile communication terminal through the mobile communication network by combining with the mobile communication network.
  • the image 200 is provided through the mobile communication terminal from the user's point of view.
  • a web page is provided through a wireless LAN and an Internet network.
  • an image may exist on a mobile web page provided by a wap server.
  • an image may be provided through a network such as the Internet or a mobile communication network by a service server that provides a specific service by executing an application.
  • the service server may be connected to or integrated with the video related service providing system 100.
  • the image 200 is provided as being physically separated from the video related service providing system 100 through a network for convenience of explanation, but the image 200 is a video related service providing system ( 100) may be provided through the interior.
  • the video-related service providing system 100 also includes a function as a web server or a service server that can provide the image paper 200 itself, and the image 200 itself is physically present on the network.
  • the video related service providing system 100 is provided to the user side, for example, to a client terminal such as a computer, a mobile communication terminal, or a smartphone through a network.
  • the image linker 10 acquires image-related data for the image 200 and performs a function of receiving a user event for the image 200.
  • the image means a still image represented by a file format such as jpg, gif, tif, bmp, or the like.
  • image-related data is, for example, data about the image itself formed according to a specific file format so that the image can be represented, information related to the image (title (file name), creation date, size information, etc.), and the image is displayed on a web page.
  • image meta information such as text description text on the web page containing the image, such as URL address information of the web page containing the image.
  • the image 200 may be directly included in the video related service providing system 100 or may be provided to the client terminal through a network.
  • a web crawler using a crawling technique known by the prior art may be used.
  • the image 200 is uploaded, it is detected and automatically transmits image related data about the image to the video related service providing system 100 in an electronic document such as a web page including the image. It is also possible to include a script (widget) or a widget (wideget) to enable the image-related data for the image 200 to be automatically transmitted to the video-related service providing system 100 by their execution.
  • the image interlocking unit 10 may extract other necessary image meta information such as descriptive text, such as text included in the web page, from the web page and include it in the image related data. As such, the image interlocking unit 10 acquires image-related data in association with the image 200 and temporarily stores them in an image database (not shown).
  • the image interlocking unit 10 receives a user event for an image, where a user event refers to a specific operation of a user associated with the image. Such operations include, for example, clicking an image on an input device such as a mouse, positioning the mouse on the image (rolling over), selecting an image provided on a touch screen with a finger, and the like. Can be.
  • an electronic document such as a web page including an image includes a script that can detect such a user event, and the script includes an image linkage unit 10 when a user event related to the image is detected.
  • the image interlocking unit 10 may receive the information and determine which user event occurred in which electronic document.
  • an electronic document such as a web page
  • an icon such as a predetermined icon
  • the user event may be generated only when the user clicks or mouses over the selection interface.
  • the service performing unit 50 to be described later may play back the corresponding frame or provide the related information of the video or the frame only when a user event occurs for the corresponding selection interface.
  • a user interface for allowing a user to select a video related service provided by the service provider 50 to be described later may be provided to the client terminal of the user side through the image interlocking unit 10.
  • the service provider 50 to be described later may have a user interface that allows a user to select menu information of a video-related service that may be provided, or an electronic document such as a web page including an image or a separate user interface. It may be provided to the user through a web page or a window of the user, and may be configured to provide a corresponding service according to a user request signal selected by the user through a corresponding user interface.
  • the service performing unit 50 to be described later performs a video related service according to the corresponding event, which will be described later.
  • the image feature data generator 20 generates image feature data of the corresponding image based on the image related data acquired by the image linker 10.
  • the video feature data generation unit 30 generates video feature data for the video.
  • the image feature data generally refers to data representing a feature of an image with respect to a given image, and means a descriptor describing information related to a feature point (interest point) extracted / determined.
  • a feature point is extracted from an image, data associated with the feature point is generated as feature data, and the image data is compared using the feature data.
  • the feature point is a point that can represent the characteristics of the image, the point or points that can explain the characteristics of the image well regardless of the change in the scale, rotation, distortion, etc. of the image Means set.
  • These feature points vary depending on the size and content of a given image and also the type of feature point extraction / determination method. For example, thousands to tens of thousands of feature points may be extracted per picture.
  • a method of extracting feature points of an image and forming feature data of the extracted feature points may be a scale-invariant feature transform (SIFT) algorithm or a speed up robust feature as disclosed in US Patent No. 6,711,293 (David G. Lowe). H. Bay, T. Tuytelaars and L. van Gool (2006). "SURF: Speeded Up Robust Features” .Proceedings of the 9th European Conference on Computer Vision, Springer LNCS volume 3951, part 1.pp. 404 ⁇ 417) and the like have been proposed.
  • SIFT scale-invariant feature transform
  • the image feature data generation unit 20 may generate feature data of an image using a method known by the related art, and is not particularly dependent on the method for generating image feature data, and thus a detailed description thereof will be omitted. .
  • the method for generating feature data invented by the applicant may also be used, which will be described later as a separate embodiment.
  • the video feature data generation unit 30 generates feature data for the video, by selecting at least one or more of the plurality of frames constituting the video and by generating the image feature data as described above for each selected frame Can be done.
  • a video can be viewed as a set of frames-specific images composed of frames represented by a plurality of still images, and thus video feature data can be viewed as a set of image feature data for each frame.
  • the method of generating image feature data for each frame is the same as described above with the image feature data generator 20.
  • the video feature data generation unit 30 When the video feature data generation unit 30 generates the video feature data, that is, a set of image feature data for each frame, the image feature data for each frame is represented by (video identifier, frame identifier, image feature data for each frame).
  • the frame-specific image feature data and the image feature data may have the same format, and a matching video or frame may be determined by performing comparison based on them.
  • the video feature data generator 30 Since the present embodiment determines a video or frame corresponding to the image according to a user event for the image and performs a video related service associated with the image, the video feature data generator 30 generates video feature data for a plurality of original videos. Create and store it in a video database (not shown).
  • the image / video matching unit 40 includes at least one image corresponding to an image based on the image feature data generated by the image feature data generator 20 and the video feature data generated by the video feature data generator 30. Determining one or more videos or frames.
  • the moving picture feature data generated by the moving picture feature data generation unit 30 is a set of image feature data for each frame, by comparing the image feature data of a given image with respect to the frames constituting each moving picture and moving picture, The video or frame corresponding to the image may be determined. At this time, the video or frame may be determined at least one or more.
  • the corresponding information is stored in an image database (not shown) corresponding to the image, and when a user event occurs later, the related video service is performed using the stored information.
  • the method of determining the moving picture or the frame corresponding to the image using the feature point data in the image / video matching unit 40 is not particularly limited, and it is possible to use what is known in the art. That is, the image / video matching unit 40 may determine whether to match by comparing image feature data and video feature data, that is, image feature data for each frame, by using an appropriate method. For example, it may be achieved by calculating a distance between feature data to determine a corresponding pair of feature points and analyzing the reliability between the determined feature point pairs. As a method for calculating the distance between the feature data, as known in the art, for example, a function such as a Hamming distance, Euclidean distance, etc., to the feature data of each feature point of the two images being compared, etc.
  • a function such as a Hamming distance, Euclidean distance, etc.
  • the difference between the distances may be calculated by applying, so that the corresponding feature points when the distance difference is less than or equal to a predetermined threshold may be determined as pairs of feature points corresponding to each other.
  • the RANSAC Random Sample Consensus
  • the image / video matching unit 40 may use the method invented by the present applicant, which will be described later.
  • the service performing unit 50 operates to perform a video related service related to a video or a frame determined to correspond to the corresponding image according to a user event for the image received from the image interlocking unit 10.
  • the image interlocking unit 10 may receive a user event by, for example, a script included on the web page when the image is included and provided in a web page. The image of the web page may be clicked with a mouse or the like, or mouse over the image.
  • the image interlocking unit 10 notifies the service performing unit 50, and the service performing unit 50 determines the image. Performs a video related service related to a video or frame determined to correspond to.
  • the video related service may be a frame playback service in which a video is played from a corresponding frame of the video determined to correspond to the corresponding image.
  • the service providing unit 50 displays the image.
  • the corresponding frame may be searched by referring to a database, and the corresponding video may be played back using the found frame as a starting point.
  • the playback of the video may be provided by being included in a web page or by creating a window or page separate from the web page.
  • the video related service provided by the service performing unit 50 may be a video information providing service that provides information related to a video or frame determined to correspond to the corresponding image.
  • information related to a video or frame refer to a video database (not shown) and display various meta information (video title, actor, creation date, number of times, etc.) previously collected in relation to the video or frame in the corresponding web page or separate. Can be provided through the page.
  • the video feature data generator 30 needs to store various meta information of the corresponding video in a video database (not shown) while generating feature data of the video.
  • the user event occurs only when the user selects an interface such as a predetermined icon in an electronic document such as a corresponding web page and the user clicks or mouses over the selection interface. You can also do that.
  • the service performing unit 50 may play back the corresponding frame or provide the related information of the video or the frame as described above only when a user event occurs for the corresponding selection interface.
  • the service provider 50 may provide a user interface for allowing a user to select a provided video related service to the client terminal of the user through the image interlocking unit 10. This means that if a user event occurs, the service provider 50 may provide a user interface that allows a user to select menu information of a video-related service that may be provided. Alternatively, the service may be provided to the user through a window and provided according to a user request signal selected by the user through the corresponding user interface.
  • the video related service may be a frame reproduction service or a video or frame information providing service as described above.
  • 2 and 3 illustrate an example of a process of performing a video related service according to the embodiment described with reference to FIG. 1.
  • 2 shows a state in which an image is provided through a web page, and it can be seen that a selection interface of a play button (triangle shape) indicating that the image can be played is provided on the lower right side of the image.
  • a selection interface of a play button triangle shape
  • the video playing service is performed from the frame corresponding to the image through a separate window as shown in FIG. 3.
  • the image feature data generator 20 and the video feature data generator 30 are not dependent on a specific generation method. That is, regardless of which method is used to generate the feature data in the image feature data generator 20 and the video feature data generator 30 in the embodiment of FIG.
  • the feature data can be compared to determine a video or frame corresponding to the image, and if the user event is received, the corresponding video related service can be performed accordingly.
  • the image / video matching unit 40 is not dependent on a specific method as described above.
  • the method for determining the video or frame corresponding to the image in the room and the image / video matching unit 40 to generate the feature data in the image feature data generator 20 and the video feature data generator 30 is the applicant Korean Patent Application No. 10-2011-0012741 filed by Korean Patent Application No. 10-2011-0012741 and Patent Application No. 10-2011-0015049 file (image and image or image and video correlation analysis device and Method) can be used, which will be described with reference to FIG. 4 and below.
  • the image feature data generator 20 includes a feature point determiner 21, a feature point direction estimation unit 22, and a feature data configuration unit 23.
  • the feature point determiner 11 determines a feature point from an image and extracts feature point information of the determined feature point.
  • an image refers to still image data, and refers to digital data represented by a file format such as jpg, bmp, tif, or the like.
  • the feature point of the image refers to points that can express the characteristics of the image better than other points in the image, and generally changes in scaling, rotation, and observation angle, etc. Regardless of the point, it is common to determine points that can always be detected identically on the image as feature points.
  • the feature point determiner 21 may use a feature point extraction / determination method known in the art as it is.
  • the methods known in the art using the Determinant of the Hessian Matrix may be used to determine points that may be feature points in a given image.
  • SIFT Scale-Invariant Feature Transform
  • SURF Speed Up Robust Features
  • the feature point determiner 21 may use all kinds of feature point extraction / determination methods known in the prior art, which is not essential to the present invention, and thus detailed description thereof will be omitted.
  • the feature point determiner 21 extracts the feature points of the image and also extracts the other feature point information such as the strength of the feature point and the size of the feature point. Since the type and specific details of the feature point information may vary depending on the feature point extraction / determination method used, the feature point information is selectively extracted according to data used in post-processing such as image matching, object tracking, image comparison, and the like. A method for extracting such feature point information may also use a method known by the prior art.
  • the strength of the feature point may vary depending on the feature point extraction / determination method used. For example, when using a Laglacian of Gaussian filter, a Laplacian operator can be used as the strength of the feature point. Given image f (x, y) is a Gaussian kernel for a given scale t When convolved by, the LoG scale-space is Where the Laplacian operator The Laplace operator results in a large value at the dark and light points of the image, so you can basically determine whether the image can be used as a feature point. Can be used as an indicator of strength as a feature point, depending on the magnitude of its value.
  • the result of the Laplace operator can be used as the feature point strength.
  • the determinant value of the Hessian matrix may be used as the feature point strength. In this way, the intensity of the feature point can use information based on a discriminant used to extract / determine the feature point of the image by the prior art.
  • the size of the feature point of the image represents the information of the area occupied by the feature point in the image, for example, in the case of a rectangle may be represented as the length of each side, the length of the radius in the case.
  • the size of these feature points may also be used in the prior art.
  • the scale t or the maximum intensity of the feature point
  • Value can be used, such as k times (where k is any constant, such as 4,6, etc.).
  • the feature point direction estimator 22 performs a function of estimating direction information on each of the feature points determined by the feature point determiner 21.
  • This may use a variety of gradient based methods known in the art.
  • the direction information of the feature point can be estimated by calculating a gradient around each point and averaging the directions of all points of a certain area around the feature point. According to this method, the original direction can be estimated even when the feature point undergoes any rotational transformation.
  • the method for estimating the direction of the feature point in the feature point direction estimator 22 may also use a known method known in the prior art, and thus, detailed description thereof will be omitted.
  • the feature data configuration unit 23 generates a binary feature vector for each feature point determined by the feature point determiner 21 based on the feature point information and the direction information estimated by the feature point direction estimator 22, and generates the generated binary feature. Performs a function of composing feature data of an image including a vector.
  • the feature data means, as described above, a descriptor that describes information related to feature points extracted / determined with respect to a given image in general, and the feature data constructing unit 23 refers to such feature data.
  • the feature point information is extracted and obtained by the feature point determiner 21 and the direction information is obtained by the feature point direction estimator 22 described above.
  • the feature data configuration unit 23 may generate the feature data with relatively small data while allowing rapid processing by using the feature data in the image / video matching unit 40, while representing the feature of the corresponding feature point.
  • a binary feature vector is generated to include the feature data. Such a binary feature vector should be robust to each of the feature points and not alter the features unique to the feature points.
  • FIGS. 5 and 6 A process of generating a binary feature vector in the feature data configuration unit 23 will be described with reference to FIGS. 5 and 6.
  • 5 is a screen illustrating an actual example of a process of generating a binary feature vector
  • FIG. 6 is a flowchart illustrating a process of generating a binary feature vector.
  • a peripheral image area including the feature points is generated in a quadrangular shape, for example, using the size and direction information of the feature points. Align in the same direction (S500, S510)).
  • generating the surrounding image area including the feature point in the shape of a rectangle may use size information included in the feature point information extracted by the feature point determiner 21.
  • a rectangular peripheral image area may be generated using information such as length (for a square), length of a horizontal and vertical side (for a rectangle), radius (for a circle), and the like as size information.
  • a square according to the length of the corresponding side may be generated, and if a length of the horizontal and vertical sides is given, a square having the maximum or minimum value of the side may be generated.
  • a radius value is given, a square having the radius as the length of the side may be generated.
  • the alignment of the generated surrounding image areas in the same direction is to obtain the same feature vector even when the target image is a rotated form of another image.
  • a method of generating a quadrangular shape based on coordinates within a predetermined size, for example, ⁇ 10 around the feature point may be used instead of the size information of the feature point.
  • each of the generated and aligned image areas is divided into sub-regions of N ⁇ N as shown in the right side of FIG. 5 (S520).
  • the feature data constructing unit 23 selects at least one or more of the difference vector D (i, j) and the difference vector E (i, j, k, l) defined by the above equation and based on this.
  • a binary feature vector is generated (S540).
  • FIG. 7 An example of a specific process of generating a binary feature vector based on the difference vector and the difference vector is illustrated in FIG. 7.
  • FIG. 7 corresponds to a case in which a binary feature vector includes M bits, and each process of FIG. 7 is repeated M times.
  • the selection and generation of at least one of the difference vector and the difference vector should be performed over M times, which is the number of bits of the binary feature vector.
  • the set of the difference vector and the difference vector should be different from each other. It is preferable to set in advance so that different sets of difference vectors and sets of difference vectors are selected.
  • a linear combination calculation is performed on the selected and generated difference vectors and the difference vectors (S542). For example, if the selected and generated difference vectors are four of D (1,2), D (3,4), E (1,2,4,5) and E (3,5,6,7), respectively. Compute a linear combination for the values of (they will each have a difference value and a difference value of the average value of brightness as described above). That is, in the case of a linear combination, a linear combination represented such as aD (1,2) + bD (3,4) + cE (1,2,4,5) + dE (3,5,6,7) can be calculated. Where a, b, c, and d are arbitrary coefficients.
  • step S542 a nonlinear combination including a nonlinear operation such as multiplication may be performed in addition to the linear combination, and in some cases, a linear combination and a nonlinear combination may be mixed. Can be.
  • the result value is obtained, and it is determined whether the result value is greater than a predetermined threshold value, for example, 0 (S543), and if greater than 0, 1 is assigned to the corresponding bit, i. S544), if smaller than 0, 0 is assigned to the corresponding bit, i.e., the i-th bit (S545). In this way, the value of the i-th bit of the binary feature vector is determined.
  • a predetermined threshold value for example, 0 (S543), and if greater than 0, 1 is assigned to the corresponding bit, i. S544), if smaller than 0, 0 is assigned to the corresponding bit, i.e., the i-th bit (S545).
  • i M (i.e., the last bit) (S546), and if it is not the last bit, i is incremented (S547) and the above steps S541 to S547 are repeated. If the last bit is terminated (S548).
  • a binary feature vector consisting of M bits represented by 0 or 1 for each value is generated for a given feature point.
  • the binary feature vector shown on the right side of FIG. 5 is generated through such a process and consists of a total of 6 bits, and each bit is assigned with 0 or 1.
  • an alignment process may be further performed for each bit based on importance.
  • the process of sorting the binary feature vectors according to the order that is, the robust order, may be performed. That is, when the process shown in FIG. 7 is performed, when the value of the M bit is expressed as "001010,” it may be arranged as "011001" according to importance, and such a binary feature vector is shown on the right side of FIG. It was.
  • the binary feature vectors are arranged in order of importance, the comparison and retrieval of data in the order of importance in the post-processing process can be quickly processed based on the importance.
  • the feature data constructing unit 23 finally generates the feature data of the image including the other feature point information of the feature point including the binary feature vector.
  • the other feature point information included in the feature data may include at least one of, for example, an x coordinate value, a y coordinate value, size information, and direction information of the feature point. All of the information may be included or only some of the information may be selected and configured, and this may be differently set according to conditions in the process of the image / video matching unit 40 to be described later.
  • the finally generated feature data may be a set of feature points composed of (x coordinate, y coordinate, size, direction, binary feature vector) for each feature point.
  • . 5 denotes a binary feature vector of a corresponding feature point, and (x, y, s, ⁇ ) above the binary means (x coordinate, y coordinate, size, direction), respectively.
  • the size information is not needed in the post-processing, it is also possible to configure the feature data with only the remaining information except this.
  • the difference vector and the difference vector of the average value of the brightness values of the subregions are defined (step S530 of FIG. 6), and any one of them is based on the above-described criteria.
  • the difference vector and the difference vector are generated in advance for all the average values of the brightness values of the subregions.
  • Embodiments are also possible.
  • the difference vector and the difference generated in step S541 of FIG. 7 Only the selection process is performed based on the criteria described above among the minute vectors. That is, the process of calculating and generating the difference vector and the difference vector in step S541 may be omitted.
  • the video feature data generator 30 includes a frame selector 31, a feature point determiner 32 for each frame, a feature point direction estimator 33 for each frame, and a feature data constructor 34 for each frame. ) May be provided.
  • the frame selector 31 extracts frames constituting the video at predetermined time intervals for each video, calculates a difference from the extracted frames with at least one previous extraction frame, and selects the selected frame when the difference is greater than or equal to a threshold. Perform the function of selecting. That is, the frame selector 31 extracts frames at a predetermined time interval from the video and calculates a difference between the extracted frames and at least one or more frames among previously extracted frames.
  • the previous extraction frame may be just the previous frame, or may be up to a predetermined number, for example, up to the previous fifth frame.
  • the difference between the extracted corresponding frame and the previous extracted frame may simply be the sum of the absolute values of the differences between the pixel values at the same position of the frame.
  • the frame selector 31 determines whether the difference from the previous extraction frame is greater than or equal to a preset threshold, and selects the frame if the difference is greater than or equal to the threshold.
  • the selected frame is characterized by determining a feature point for each frame, estimating the direction of the feature point, and constructing a feature data frame according to the configuration described below with reference to FIG. 8.
  • feature data ie, a set of frame-specific feature data
  • the difference as described above is calculated only once to determine whether to select the corresponding frame. For example, when comparing with the previous fifth frame, among the differences with each frame, It may be configured to select the frame when at least one is larger than the threshold.
  • the frame selector 31 does not use the above-described method, and compares the previous frame with the previously extracted frames using the reliability estimation method used by the image / video matching unit 40 as described above. We can calculate the difference between and select the frame based on the result. That is, the frame selector 31 extracts frames constituting the video at predetermined time intervals for each video, and first generates image feature data of the extracted frame, and generates the image feature data and the previous extracted frame in advance.
  • the frame feature point determiner 32 determines a feature point of the frame selected by the frame selector 31 and extracts feature point information of the determined feature point, which is described in FIGS. 4 to 7. 21), but it should be noted that the name of the feature point determination unit 32 for each frame is used in performing such a function for each frame.
  • the video can be viewed as a set of frames, since each frame is the same as the image described in the embodiments of FIGS. 4 to 7.
  • the feature point direction estimation unit 33 and the feature data structure unit 34 for each frame are also the same as the feature point direction estimation unit 22 and the feature data configuration unit 23 described with reference to FIGS. 4 to 7.
  • the feature point determiner 32 for each frame, the feature point direction estimator 33 for each frame, and the feature data configurer 33 for each frame are the feature point determiner 21 and the feature point direction described in the embodiments of FIGS. 4 to 7.
  • the functions of the estimation unit 22 and the feature data configuration unit 23 are completely the same, except that the corresponding function is performed on the frame selected by the frame selection unit 31 among the frames constituting the video. Therefore, detailed description thereof is omitted.
  • the feature data for each frame when the feature data for each frame is configured in each frame in FIG. 8, the feature data for each frame may be removed and feature data may be generated for only the non-overlapping feature points.
  • 9 shows a practical example of eliminating overlapping feature points.
  • the left picture is the previous frame and the right picture represents the current frame.
  • the current frame In the right picture, only the feature points indicated by the dotted lines are recorded as non-overlapping feature points, and the solid black portions (1, 2) are shown. Squares denoted by 3, 4, 5, and 6 indicate that the feature has been removed as a duplicate of the previous frame (left photo).
  • the video feature data generator 30 includes a frame selector 31, a feature point determiner 32 for each frame, a feature point direction estimator 33 for each frame, and a feature data structure 33 for each frame.
  • the frame-specific feature point determiner 32, the frame-specific feature point direction estimation unit 33, and the frame-specific feature data configuration unit 33 are described in the embodiments of FIGS. 4 to 7. Since the functions of the feature point determiner 21, the feature point direction estimator 22, and the feature data constructer 23 are the same, the functions are omitted and the functions to be performed are performed by the image feature data generator 20. It may be.
  • the video feature data generator 30 includes a frame selector 31, and performs the corresponding function for each selected frame through the image feature data generator 20 to generate feature data for each frame. .
  • the video feature data generator 30 obtains a set of image feature data for each frame of selected frames among frames constituting the video, thereby generating video feature data.
  • the feature data of the image may be represented by feature data, which is a set of feature points including, for example, (x coordinate, y coordinate, size, direction, binary feature vector).
  • the video feature data generated by 30 may be configured to include, as an identifier (ID) of the video, for example, the number of the video and the number of the frame, for example, as the identifier (ID) of the frame.
  • ID an identifier
  • the image feature data of the frame configured as described above may be as follows.
  • v i means the i-th video
  • f j means the j-th frame of the video, that is, the i-th video
  • x k , y k , s k , ⁇ k are the x coordinate of the k th feature point, respectively , y-coordinate, size, and direction.
  • the binary feature vector is generated as described above and may be expressed as, for example, "011101" or the like. Since the video feature data has the same shape as the image feature data generated by the above-described image feature data generator 20 except for the video ID and the frame ID, image / video matching is performed by referring to the hash generator 30 described later. In the unit 40, it is possible to efficiently and quickly compare the image and the video.
  • FIG. 10 is a diagram illustrating an example of the configuration of the image / video matching unit 40.
  • the image / video matching unit 40 includes a hash search unit 41, a candidate selecting unit 42, and a corresponding response.
  • the feature point determiner 43 and the reliability estimator 44 are included.
  • the hash search unit 41 performs a function of searching for a hash table using at least one or more bits of the binary feature vector included in the image feature data to obtain video feature data belonging to the index.
  • the video related service providing system 100 may further include a hash generator (not shown).
  • the hash generator generates a hash table by using at least one or more bits of the binary feature vector included in the feature data for each frame as the index of the hash table with respect to the video feature data generated by the video feature data generator 30. This is a configuration for performing a faster search by the hash search section 41.
  • v i is a number of a video functioning as an identifier (ID) of a video
  • f i is a number of a frame functioning as an identifier (ID) of a frame in the video
  • x i , y i are i of the corresponding frame.
  • X, y coordinates of the first feature point, s i is the size of the i-th feature point of the frame
  • ⁇ i represents the direction of the i-th feature point of the frame.
  • a bucket of the hash table is constructed using only the predetermined k bits (higher 3 bits in FIG. 11) in front of these binary feature vectors, and (v i , f i , x i , y i of the feature points corresponding to each bucket). , s i , ⁇ i ) can be inserted (see the right side in FIG. 11) to generate a hash table.
  • a hash table may be generated in order of importance, and thus a hash table that is insensitive to detailed differences of the binary feature vectors may be generated.
  • a plurality of hash tables may be configured by selecting different bits.
  • the hash retrieval section 41 is based on the binary feature vector included in the feature data generated by the image feature data generation unit 20 as described above for each feature point of the image.
  • the hash table generated by S is searched to first search for a bucket matching a predetermined leading k bits (higher 3 bits in FIG. 11) of the binary feature vector of the corresponding feature point, and all (v i , f i , x i , y i , s i , ⁇ i ).
  • the candidate selecting unit 42 compares the data retrieved by the hash searching unit 41 with the image feature data to determine a matched video, and determines at least one or more frames among the frames constituting the determined video. do. That is, the candidate selector 42 compares the image feature data with the video feature data acquired by the hash searcher 41 to determine a video corresponding to the most matched video feature data, and configures the determined video. A frame corresponding to the frame feature data that most matches the image feature data is determined from among the frames.
  • v i is a number functioning as an identifier (ID) of a video
  • a matching video may be determined by finding the most frequently found v i value.
  • the video identifier is determined, that is, the identifier of the video is determined, based on f i , at least one or more C frames that are most matched among the frames of the video are determined.
  • the frames may be determined by finding the f i values that appear most in the corresponding video in order, and selecting a predetermined number (for example, five) among them.
  • the candidate selecting unit 42 compares the data retrieved by the hash search unit 41 with the image feature data and does not first determine a matching video, but compares the frames included in each video to match. It may be configured to determine at least one frame. That is, the candidate selecting unit 42 compares the image feature data with the video feature data acquired by the hash retrieval unit 41 to compare the frame feature data that most matches the image feature data among the frames constituting each video. Determine the frame corresponding to As described above, from the (v i , f i , x i , y i , s i , ⁇ i ) obtained by the hash search unit 41, which video is most matched based on the value of v i ? The process of determining is omitted, and based on f i , at least one or more C frames that are most matched among the frames of a specific video are determined. In this case, some C frames may belong to another video.
  • the corresponding feature point determiner 43 determines a pair of corresponding feature points between the image and the determined frame based on the image feature data of the image and the image feature data of at least one frame determined by the candidate selector 41. Do this.
  • the corresponding feature point determiner 43 compares the image feature data with the image feature data of each frame to determine a pair of corresponding feature points, which is determined by, for example, calculating the distance between the feature data, as known in the art. Can be. That is, the distance difference is calculated by applying a function such as Hamming distance, Euclidean distance, etc. to the feature data of each feature point of the frame and the image to be compared so that the distance difference is less than a predetermined threshold.
  • the feature points corresponding to the case may be determined to be pairs of feature points corresponding to each other.
  • the RANSAC Random Sample Consensus
  • the transformation matrix between the coordinates of the image may be a combination of a general homography (Homography) transformation, a special case of rotation, translation, scaling, and the like.
  • the corresponding feature point determiner 43 calculates a value of a pair of corresponding feature points using a method such as calculating a value such as a distance function of the same kind of feature data (regardless of which feature data is the same) to be compared.
  • the set can be determined.
  • the corresponding feature point determiner 43 may use the method known in the prior art as it is, and since this is not a direct configuration of the present invention, a detailed description thereof will be omitted.
  • the reliability estimator 44 performs a function of estimating the reliability of matching between the image and the video based on the feature point direction information of the feature point included in the pair of feature points determined by the corresponding feature point determiner 43.
  • the reliability estimator 44 estimates matching reliability between the image and the video based on the feature point direction information of the feature point included in the pair of feature points determined by the corresponding feature point determiner 43. have.
  • pairs of feature points corresponding to each other between two compared images are referred to as (p 1 , q 1 ), ..., (p n , q n ), and the direction of each feature point Assume that ⁇ (p 1 ), ⁇ (q 1 ),... (Where, the set of pairs of feature points corresponding to each other are those determined by the corresponding feature point determiner 43 described above).
  • the estimate of the direction difference of the feature points Must have a constant value (rotational transformation angle between two images) for all corresponding pairs of feature points. Since the true value is d and a random error may occur in estimating the angle, it is modeled based on the probability density function, and then the probability of observing a pair of feature points using the mean value and the variance value can be obtained.
  • a probability density function for example, a normal distribution with mean zero and standard deviation ⁇ can be used. (Normal distribution with mean d and variance ⁇ 2 ).
  • the probability p to observe the pair of feature points of (p 1 , q 1 ), ..., (p n , q n ) is
  • G is the probability function of the standard normal distribution with a mean of 0 and a standard deviation of 1.
  • the reliability estimator 44 can estimate the reliability of matching between the pairs of feature points determined by the corresponding feature point determiner 43, that is, the analysis reliability of the mutual relationship. It is possible to determine that the two images to be compared are matched, that is, they are identical. In addition, while providing the probability p value itself, it is of course possible to provide stochasticity between the images to be compared. According to such a configuration, by estimating the reliability of the matching of pairs of feature points based on the direction information of the feature points, the reliability can be estimated stably even when the feature points are very small compared to the prior art, resulting in accuracy. It can be processed quickly without damage. Since the reliability estimator 44 estimates the reliability of the plurality of frames, in providing the result, the reliability estimator 44 may provide information about the similarity based on the probability value for each frame, and may generate the frame having the highest probability value. It may be provided as.
  • the image / video matching unit 40 determines whether the image belongs to the video, which frame of the video, and how much probability can be determined to match the specific frame of the video. Relationships such as these can be analyzed.
  • the video-related service providing system 100 stores an image of a user event occurring from a user and various information related to a video or frame determined to correspond to the image and calculates related statistical data (not shown). It may further include. According to this configuration, information such as which image the user clicked on (i.e., which image was focused on) and which frame of the video was played most (i.e. what part of the user was interested in) was obtained. Since it can be made into a database, it can be used for various statistics and advertisement information.
  • FIGS. 12 is a flowchart illustrating an embodiment of a video related service providing method performed by the video related service providing system 100 described with reference to FIGS. 1 to 11.
  • a video related service providing system 100 obtains image related data of an image 200 (S1000).
  • the script may be automatically executed by a script or a widget included in an electronic document such as a web page and the like, and may be transmitted to the image linking unit 10 of the video related service providing system 100.
  • the video related service providing system 100 When the image related data is obtained, the video related service providing system 100 generates image characteristic data for the image 200 based on the obtained image related data (S1100).
  • the method for generating image feature data is as described above.
  • the video-related service providing system 100 also generates video feature data for the video by the method as described above (S1200).
  • the step S1200 of generating video feature data is described as being performed after the image feature data generation step S1100. However, the step of actually generating video feature data (S1200) may be performed. It may be performed independently or in advance in parallel with S1000 and S1100.
  • the present invention since the present invention generates video feature data for a plurality of videos in advance, and determines a video or frame corresponding to the corresponding image when image related data is acquired (S1200) in advance for the plurality of videos. It is preferable to carry out.
  • At least one video or frame corresponding to the image is determined based on the image feature data generated in the step S1100 and the video feature data generated in the step S1200 (S1300). Since the method of determining the moving picture or the frame corresponding to the image is also the same as described above, the detailed description is omitted.
  • step S1300 When performing step S1300, a video or frame corresponding to each of the images is determined, and the corresponding information is stored in an image database (not shown) corresponding to each of the images.
  • the video-related service providing system 100 when receiving a user event for the image (S1400), the video-related service providing system 100 according to the user event for the received image in step (S1300) or the video determined to correspond to the image or The video related service related to the frame is performed (S1500).
  • the video related service is a frame playback service in which the video is played from the corresponding frame of the video determined to correspond to the image, or provides information related to the video or frame determined to correspond to the image. It may be a video information providing service.
  • the user event may be configured to be received when the user event is made for a selection interface provided through an electronic document such as a web page including the corresponding image.
  • the user interface may be provided to the user to allow the user to select a video related service provided when a user event occurs, and may be configured to provide a corresponding video related service according to a user request signal through the user interface. As described above.
  • the hash generating unit and the hash retrieving unit 41 are not essential components, and thus may be omitted, since they are configured to perform a faster search using a hash table. If these are omitted, one may use conventional techniques to properly compare feature data or other alternative methods used for other data retrieval.
  • the video related service providing system may be configured to be connected to a plurality of web servers and a network through a web page provided through each of the web server, the web server itself as described above As described above, it may be configured to include a video related service providing system.
  • the network may be a combination of the Internet and the mobile communication network, it should be noted that the present invention is not dependent on the configuration or the specific relationship of such a network.
  • a client terminal such as a computer by a web page through a web server
  • images may be physically included in each web server and provided to the client terminal.
  • the smartphone is connected to a specific service server including the images by executing the application ( The service server provides a screen including an image to a smartphone through an application (such as an electronic document as described above).
  • a smartphone user may select a image provided on a corresponding screen and perform a video related service related to the corresponding image.
  • the corresponding service server may be physically integrated into the video related service providing system 100 or may be configured separately so that the corresponding service server and the video related service providing system 100 are combined through a network.
  • the corresponding service server may be physically integrated into the video related service providing system 100 or may be configured separately so that the corresponding service server and the video related service providing system 100 are combined through a network.
  • the video related service providing system 100 has been described using a crawler or a script method as an example when acquiring image related data through the image linking unit 10, but the present invention is not limited to this method.
  • the image interworking unit 10 may collectively receive information about images existing in a separate web server or video related service providing system 100. This may be a method of accessing a corresponding server using address information of a specific server to search only an electronic document including an image, or a method manually input by a user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템 및 방법에 관한 것으로서, 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템에 있어서, 이미지의 이미지 관련 데이터를 획득하고, 이미지에 대한 사용자 이벤트를 수신하는 이미지 연동부; 상기 이미지 연동부에서 획득된 이미지 관련 데이터에 기초하여 이미지에 대한 이미지 특징 데이터를 생성하는 이미지 특징 데이터 생성부; 동영상에 대한 동영상 특징 데이터를 생성하는 동영상 특징 데이터 생성부; 상기 이미지 특징 데이터 생성부에서 생성된 이미지 특징 데이터와 상기 동영상 특징 데이터 생성부에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 이미지/동영상 매칭부; 및 상기 이미지 연동부에서 수신되는 이미지에 대한 사용자 이벤트에 따라 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하는 서비스 수행부를 포함하는 이미지 기반 동영상 관련 서비스 제공 시스템 및 이를 이용한 방법을 제공한다.

Description

이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법
본 발명은 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법에 관한 것으로서, 보다 상세하게는 인터넷 등과 같은 네트워크 상에 존재하는 이미지에 기반하여 다양한 형태의 동영상 관련 서비스를 제공하는 시스템 및 방법에 관한 것이다.
최근, 인터넷 기술의 발전과 서비스가 다양해짐에 따라 TV 방송물이나 영화 등 동영상의 인터넷을 통한 시청이 급속히 활성화되고 있다. 더구나, 최근 스마트폰의 급속한 보급에 더불어 이동 통신 단말기를 통해 동영상을 인터넷 및 이동통신망을 통해 제공받는 경우도 크게 증가하고 있다. 이에 따라 동영상을 캡처한 이미지의 유통과 소비도 늘어나고 있다. 특히, 인기리에 방영되는 드라마나 쇼 프로그램 등은 화제가 되는 장면을 캡춰한 이미지가 프로그램 방영 직후 수많은 뉴스 사이트와 블로그, 카페 등의 인터넷 게시판을 통해 순식간에 유포되고 있는 실정이다. 이와 같이 드라마나 쇼 프로그램 등의 동영상 자체를 제공하는 경우 뿐 아니라, 프로그램의 특정 장면을 캡춰한 이미지가 인터넷 매체를 통해 널리 소비되고 유통되고 있으며 사용자들간의 자발적인 공유와 게시를 통해 확산되는 속도는 더욱더 빨라지고 있다. 하지만 이처럼 동영상을 캡처한 이미지의 막대한 소비에도 불구하고 그 이미지에 대한 저작권을 보유하고 있는 기업이나 개인에게 돌아가는 수익은 없는 상황이다. 이는 캡처된 이미지에 대해서 이의 원본 동영상이 어떤 컨텐츠인지를 자동으로 판별하고 이에 대한 광고나 정보를 제공할 수 있는 방안이 없었기 때문이다. 즉, 이미지에 대한 소비는 지속적으로 늘어나고 이를 활용한 다양한 이미지 서비스는 나오고 있지만 이를 활용한 수익 모델에 대해서는 명확한 사업모델이 나오지 않은 상황이다.
이러한 점에서, 인터넷이나 이동 통신망과 같은 네트워크 통해 유포되는 이미지가 어떠한 동영상에 속하는 것인지를 손쉽게 판별하고, 또한 네트워크 상에 존재하는 이미지에 대응하여 동영상과 관련된 다양한 동영상 관련 서비스를 실시간으로 간편하게 제공할 수 있는 방안이 요망되고 있다.
본 발명은 상기한 바와 같은 문제점을 감안하여 안출된 것으로서, 인터넷이나 이동 통신망과 같은 네트워크를 통해 이미지에 대응되는 동영상 또는 프레임이 어떤 것인가를 파악할 수 있도록 하는 시스템 및 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 이미지에 대응되는 동영상 또는 프레임을 결정하고 해당 이미지에 대한 사용자 이벤트가 발생하는 경우 직접 또는 네트워크를 통해 해당 이미지에 대응하는 프레임부터 동영상을 재생할 수 있도록 하거나 해당 이미지 또는 동영상과 관련된 다양한 정보를 제공할 수 있도록 하는 시스템 및 방법을 제공하는 것을 또 다른 목적으로 한다.
또한, 본 발명은 이미지에 대응되는 동영상 또는 프레임을 결정하고 해당 동영상과 관련된 각종 관련 서비스를 제공하는 동시에, 해당 이미지, 동영상 또는 프레임과 관련된 각종 통계 정보를 실시간으로 취득할 수 있도록 함으로써 이미지나 동영상과 관련된 각종 정보를 획득하여 이를 광고나 저작권 관리 등에 활용할 수 있도록 하는 시스템 및 방법을 제공하는 것을 또 다른 목적으로 한다.
상기한 바와 같은 과제를 해결하기 위하여 본 발명은, 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템에 있어서, 이미지의 이미지 관련 데이터를 획득하고, 이미지에 대한 사용자 이벤트를 수신하는 이미지 연동부; 상기 이미지 연동부에서 획득된 이미지 관련 데이터에 기초하여 이미지에 대한 이미지 특징 데이터를 생성하는 이미지 특징 데이터 생성부; 동영상에 대한 동영상 특징 데이터를 생성하는 동영상 특징 데이터 생성부; 상기 이미지 특징 데이터 생성부에서 생성된 이미지 특징 데이터와 상기 동영상 특징 데이터 생성부에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 이미지/동영상 매칭부; 및 상기 이미지 연동부에서 수신되는 이미지에 대한 사용자 이벤트에 따라 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하는 서비스 수행부를 포함하는 이미지 기반 동영상 관련 서비스 제공 시스템을 제공한다.
여기에서, 상기 이미지 연동부는, 이미지를 포함하는 전자 문서에 포함되어 있는 스크립트에 의하여 이미지 관련 데이터를 획득하고 사용자 이벤트를 수신하도록 구성할 수 있다.
또한, 상기 동영상 특징 데이터 생성부에서 생성되는 동영상 특징 데이터는 동영상을 구성하는 프레임들 중 적어도 어느 하나 이상에 대한 프레임별 이미지 특징 데이터와, 프레임 식별자 및 동영상 식별자를 포함할 수 있다.
또한, 상기 이미지/동영상 매칭부는, 상기 이미지 특징 데이터 생성부에서 생성된 이미지 특징 데이터와 동영상 특징 데이터 생성부에서 생성되는 동영상 각각에 대한 프레임별 이미지 특징 데이터로 구성되는 동영상 특징 데이터를 비교하여 이미지에 대응되는 동영상 또는 프레임을 결정하도록 구성할 수도 있다.
또한, 상기 이미지/동영상 매칭부에 의해 결정된 동영상 또는 프레임에 대한 정보를 이미지에 대응하여 저장하도록 구성할 수도 있다.
또한, 상기 서비스 수행부에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스를 포함할 수 있다.
또한, 상기 서비스 수행부에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스를 포함할 수 있다.
또한, 상기 사용자 이벤트는 이미지가 포함된 전자 문서상에서 제공되는 선택 인터페이스에 대해서 이루어진 경우 상기 이미지 연동부를 통해 수신되도록 구성할 수도 있다.
또한, 상기 서비스 수행부는, 사용자 이벤트가 발생한 경우 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통한 사용자 요청 신호에 따라 해당하는 동영상 관련 서비스를 제공하도록 구성할 수도 있다.
또한, 상기 이미지 특징 데이터 생성부는, 이미지로부터 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 이미지 특징점 결정부; 상기 특징점 결정부에서 결정된 특징점들 각각에 대한 방향 정보를 추정하는 이미지 특징점 방향 추정부; 및 상기 이미지 특징점 결정부에서 결정된 특징점 각각에 대하여, 상기 특징점 정보와 상기 방향 정보에 기초하여 이진 특징 벡터를 생성하고, 상기 생성된 이진 특징 벡터를 포함하는 이미지의 특징 데이터를 구성하는 이미지 특징 데이터 구성부를 포함하고, 상기 동영상 특징 데이터 생성부는, 동영상 각각에 대하여, 동영상을 구성하는 프레임들을 일정 시간 간격으로 추출하고 추출된 프레임을 적어도 하나 이상의 이전 추출 프레임들과 차이를 계산하고, 차이가 임계치 이상인 경우에 선택된 해당 프레임을 선택하는 프레임 선택부; 상기 프레임 선택부에서 선택된 프레임에 대한 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 프레임별 특징점 결정부; 상기 프레임별 특징점 결정부에서 결정된 특징점들 각각에 대한 방향 정보를 추정하는 프레임별 특징점 방향 추정부; 및 상기 프레임별 특징점 결정부에서 결정된 특징점 각각에 대하여, 상기 특징점 정보와 상기 방향 정보에 기초하여 이진 특징 벡터를 생성하고, 상기 생성된 이진 특징 벡터를 포함하는 프레임별 특징 데이터를 구성하는 프레임별 특징 데이터 구성부를 포함하도록 구성할 수도 있다.
또한, 상기 이미지 특징 데이터 구성부와 프레임별 특징 데이터 구성부는, 상기 이미지 특징점 결정부와 프레임별 특징점 결정부에서 결정된 특징점 각각에 대하여 특징점을 포함하는 주변 이미지 영역을 생성하고 상기 방향 정보에 기초하여 생성된 영역들을 동일 방향으로 정렬한 후, 정렬된 주변 이미지 영역들을 각각 부영역들로 분할하고, 분할된 부영역들의 밝기값의 평균값에 기초하여 이진 특징 벡터를 생성하도록 구성할 수 있다.
또한, 상기 이진 특징 벡터는, 상기 부영역들의 밝기값의 평균값의 차분 벡터와 차차분 벡터 중에서 선택된 적어도 어느 하나에 의해 생성될 수 있다.
또한, 상기 부영역들의 밝기값의 평균값의 차분 벡터와 차차분 벡터 중에서 적어도 어느 하나를 선택하는 것은 이진 특징 벡터의 각 비트에 대응하여 선택되도록 구성할 수도 있다.
또한, 상기 각 비트에 대응하여 선택된 차분 벡터와 차차분 벡터들에 대해 선형 조합 또는 비선형 조합을 계산하고 그 결과값을 임계치와 비교함으로써 이진 특징 벡터의 해당 비트의 값을 결정하도록 구성할 수도 있다.
또한, 상기 이진 특징 벡터의 각 비트값에 대해 미리 설정해둔 기준에 따라 정렬을 수행하도록 구성할 수도 있다.
또한, 상기 동영상 특징 데이터 생성부는, 각각의 동영상에 대한 동영상의 식별자, 동영상의 프레임별 식별자, 프레임별 특징점 좌표, 특징점 방향 정보 및 이진 특징 벡터를 포함하는 동영상 특징 데이터를 생성하도록 구성할 수도 있다.
또한, 상기 이미지/동영상 매칭부는, 상기 이미지 특징 데이터와 동영상 특징 데이터의 프레임별 이미지 특징 데이터를 비교하여 매칭되는 동영상을 결정하고 상기 결정된 동영상을 구성하는 프레임중 적어도 하나 이상의 프레임을 결정하거나, 상기 이미지 특징 데이터와 동영상 특징 데이터의 프레임별 이미지 특징 데이터를 비교하여 매칭되는 적어도 하나 이상의 프레임을 결정하는 후보 선정부; 이미지의 이미지 특징 데이터와 상기 후보 선정부에서 결정된 적어도 하나 이상의 프레임의 이미지 특징 데이터에 기초하여 이미지와 상기 결정된 프레임 사이에서 대응하는 특징점의 쌍을 결정하는 대응 특징점 결정부; 및 상기 대응 특징점 결정부에서 결정된 특징점의 쌍들에 포함된 특징점의 특징점 방향 정보에 기초하여 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하는 신뢰도 추정부를 포함하도록 구성할 수도 있다.
또한, 상기 신뢰도 추정부는, 상기 각각의 특징점의 쌍에 포함된 특징점들의 방향 차이값의 추정치에 대한 확률 밀도 함수에 기초하여 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하도록 구성할 수도 있다.
또한, 상기 확률 밀도 함수에 의해 상기 추정치의 평균값과 분산값을 계산하고, 상기 평균값과 분산값에 따른 표준 정규 분포 함수에 의해 특징점의 쌍을 관측할 확률(p)을 계산하고, 상기 계산된 확률(p) 또는 계산된 확률(p)에 기초한 함수와 임계치를 비교함으로써 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하도록 구성할 수도 있다.
또한, 상기 특징점의 쌍을 관측할 확률(p)은,
Figure PCTKR2011008614-appb-I000001
(여기서, n은 대응되는 특징점의 쌍의 갯수, G는 평균이 0이고 표준 편차가 1인 표준 정규 분포의 확률 함수,
Figure PCTKR2011008614-appb-I000002
는 모든 특징점의 쌍의 방향 차이값의 평균값(
Figure PCTKR2011008614-appb-I000003
),
Figure PCTKR2011008614-appb-I000004
는 모든 특징점의 쌍의 방향 차이값의 확률 밀도 함수에 의한 추정치)에 의해 계산되도록 구성할 수도 있다.
또한, 상기 동영상 특징 데이터 생성부에 의해 생성되는 동영상 특징 데이터들에 대해 각 프레임별 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 해쉬 테이블의 인덱스로 사용하여 해쉬 테이블을 생성하는 해쉬 생성부를 더 포함하고, 상기 관계 분석부는, 이미지 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 인덱스로 하여 상기 해쉬 생성부에 의해 생성된 해쉬 테이블을 검색하여 해당 인덱스에 속한 동영상 특징 데이터를 획득하는 해쉬 검색부를 더 포함하고, 상기 후보 선정부는, 상기 이미지 특징 데이터와 상기 해쉬 검색부에 의해 획득된 동영상 특징 데이터들을 비교하여 가장 많이 매칭되는 동영상 특징 데이터에 해당하는 동영상을 결정하고 상기 결정된 동영상을 구성하는 프레임 중에서 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정하거나, 상기 이미지 특징 데이터와 상기 해쉬 검색부에 의해 획득된 동영상 특징 데이터들을 비교하여 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정하도록 구성할 수도 있다.
또한, 사용자로부터 사용자 이벤트가 발생한 이미지와 상기 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 저장하고 통계 자료를 산출하는 정보/통계 관리부를 더 포함할 수 있다.
또한, 상기 정보/통계 관리부는, 동영상 재생 서비스와 관련된 정보를 더 저장하도록 구성할 수도 있다.
본 발명의 다른 측면에 의하면, 이미지에 기반하여 동영상 관련 서비스를 제공하는 방법에 있어서, 이미지의 이미지 관련 데이터를 획득하는 제1 단계; 상기 획득된 이미지 관련 데이터에 기초하여 이미지에 대한 이미지 특징 데이터를 생성하는 제2 단계; 동영상에 대한 동영상 특징 데이터를 생성하는 제3 단계; 상기 제2 단계에서 생성된 이미지 특징 데이터와 상기 제3 단계에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 제4 단계; 이미지에 대한 사용자 이벤트를 수신하는 제5 단계; 및 상기 수신되는 이미지에 대한 사용자 이벤트에 따라 상기 제4 단계에서 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하는 제6 단계를 포함하는 이미지 기반 동영상 관련 서비스 제공 방법을 제공한다.
여기에서, 상기 제3 단계에서 생성되는 동영상 특징 데이터는 동영상을 구성하는 프레임들 중 적어도 어느 하나 이상에 대한 프레임별 이미지 특징 데이터와, 프레임 식별자 및 동영상 식별자를 포함하도록 구성할 수 있다.
또한, 상기 제4 단계는, 상기 이미지 특징 데이터와 동영상 각각에 대한 프레임별 이미지 특징 데이터로 구성되는 동영상 특징 데이터를 비교하여 이미지에 대응되는 동영상 또는 프레임을 결정할 수 있다.
또한, 상기 제4 단계에서 결정된 동영상 또는 프레임에 대한 정보를 이미지에 대응하여 저장하도록 구성할 수도 있다.
또한, 상기 제6 단계에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스를 포함하도록 구성할 수도 있다.
또한, 상기 제6 단계에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스를 포함하도록 구성할 수도 있다.
또한, 상기 사용자 이벤트는 해당 이미지가 포함된 전자 문서상에서 제공되는 선택 인터페이스에 대해서 이루어진 경우에 수신되도록 구성할 수도 있다.
또한, 상기 제6 단계는, 사용자 이벤트가 발생한 경우 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통한 사용자 요청 신호에 따라 해당하는 동영상 관련 서비스를 제공하도록 구성할 수도 있다.
본 발명에 의하면, 인터넷이나 이동 통신망과 같은 네트워크를 통해 이미지에 대응되는 동영상 또는 프레임이 어떤 것인가를 파악할 수 있도록 하는 시스템 및 방법을 제공할 수 있다.
또한, 본 발명에 의하면, 이미지에 대응되는 동영상 또는 프레임을 결정하고 해당 이미지에 대한 사용자 이벤트가 발생하는 경우 직접 또는 네트워크를 통해 해당 이미지에 대응하는 프레임부터 동영상을 재생할 수 있도록 하거나 해당 이미지 또는 동영상과 관련된 다양한 정보를 제공할 수 있도록 하는 시스템 및 방법을 제공할 수 있다.
또한, 본 발명에 의하면, 이미지에 대응되는 동영상 또는 프레임을 결정하고 해당 동영상과 관련된 각종 관련 서비스를 제공하는 동시에, 해당 이미지, 동영상 또는 프레임과 관련된 각종 통계 정보를 실시간으로 취득할 수 있도록 함으로써 이미지나 동영상과 관련된 각종 정보를 획득하여 이를 광고나 저작권 관리 등에 활용할 수 있도록 하는 시스템 및 방법을 제공할 수 있는 효과가 있다.
도 1은 본 발명의 일실시예에 의한 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템의 구성 및 연결 상태를 나타낸 도면이다.
도 2 및 도 3은 도 1에서 설명한 실시예에 의해 동영상 관련 서비스가 이루어지는 과정의 일예를 나타낸 것이다.
도 4는 이미지 특징 데이터 생성부(20)의 구성의 일예를 나타낸 도면이다.
도 5는 이진 특징 벡터의 생성 과정의 실제 예를 나타낸 화면이다.
도 6은 이진 특징 벡터의 생성 과정을 나타낸 흐름도이다.
도 7은 차분 벡터와 차차분 벡터에 기초하여 이진 특징 벡터를 생성하는 구체적인 과정의 일예를 나타낸 도면이다.
도 8은 동영상 특징 데이터 생성부(30)의 구성의 일예를 나타낸 도면이다.
도 9는 중복되는 특징점을 제거하는 실제 예를 나타낸 것이다.
도 10은 이미지/동영상 매칭부(40)의 구성의 일예를 나타낸 도면이다.
도 11은 해쉬 생성부에 의해 생성되는 해쉬 테이블의 생성 과정의 일예를 나타낸 것이다.
도 12는 도 1 내지 도 11에서 설명한 동영상 관련 서비스 제공 시스템(100)에 의해 이루어지는 동영상 관련 서비스 제공 방법의 일실시예를 나타낸 흐름도이다.
이하, 첨부 도면을 참조하여 본 발명에 의한 실시예들을 상세하게 설명하기로 한다.
도 1은 본 발명의 일실시예에 의한 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템(100, 이하, "동영상 관련 서비스 제공 시스템"이라 한다)의 구성 및 연결 상태를 나타낸 도면이다.
도 1을 참조하면, 본 실시예에 의한 동영상 관련 서비스 제공 시스템(100)은 이미지 연동부(10), 이미지 특징 데이터 생성부(20), 동영상 특징 데이터 생성부(30), 이미지/동영상 매칭부(40) 및 서비스 수행부(50)를 포함하며, 네트워크 상에 존재하는 이미지(200)들과 연동되어 해당 이미지들에 대한 이미지 특징 데이터를 생성하고 이에 대응되는 동영상 또는 프레임을 결정하고 사용자 이벤트의 발생에 따라 해당 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하게 된다.
동영상 관련 서비스 제공 시스템(100)은 네트워크를 통해 이미지(200)들과 결합된다. 여기서, 네트워크라 함은, 예컨대 인터넷, 공중 통신망(PSTN), 이동 통신망 또는 이들의 결합을 의미하며, 본 발명에서의 이미지는 이러한 네트워크 상에 존재하는 이미지를 의미한다. 예컨대, 이미지는 네트워크 상에 존재하는 웹 서버(web server)에서 제공되는 웹 페이지(web page) 상에 존재할 수 있다. 여기에서, 웹 페이지(web page)라 함은, 알려진 바와 같이, 인터넷 등과 같은 네트워크를 통해 월드와이드웹(world wide web, www) 상에 존재하는 개개의 전자 문서를 의미하는 것으로서, 웹 서버(web server) 등을 통해 HTML 등과 같은 언어에 기초하여 작성되는 종래 기술에 의해 알려진 일반적인 웹 페이지를 의미한다. 일반적으로 이러한 웹 페이지는 인터넷망에 연결된 웹 서버를 통해 컴퓨터에 의하여 제공받게 된다. 이러한 웹 페이지는 텍스트, 이미지, 동영상을 포함할 수 있다.
또한, 이미지(200)들은 이동 통신망과의 결합에 의해 이동 통신망을 통해 이동 통신 단말기에도 제공될 수 있으며, 이러한 경우 이미지(200)는 사용자 입장에서는 이동 통신 단말기를 통해 제공받게 된다. 물론, 최근 무선 랜 기능이 구비된 이동 통신 단말기의 경우에는 무선 랜 및 인터넷 망을 통하여 웹 페이지를 제공받게 됨은 물론이다. 또한, 이동 통신망에서 제공되는 무선 인터넷 환경의 네트워크인 경우에는 왑 서버(wap server)에 의해 제공되는 모바일 웹 페이지상에 이미지가 존재할 수도 있다.
또한, 최근 널리 사용되고 있는 스마트폰의 어플리케이션(application)을 이용하는 환경인 경우에는 어플리케이션의 실행에 의해 특정한 서비스를 제공하는 서비스 서버에 의하여 인터넷이나 이동 통신망과 같은 네트워크를 통해 이미지가 제공될 수 있으며, 해당 서비스 서버는 동영상 관련 서비스 제공 시스템(100)과 연결되거나 통합되어 구성될 수도 있다.
한편, 도 1에서 이미지(200)는 설명의 편의를 의해 네트워크를 통해 동영상 관련 서비스 제공 시스템(100)과 물리적으로 분리된 상태로 제공되는 것으로 나타내었으나, 이미지(200)는 동영상 관련 서비스 제공 시스템(100) 내부를 통하여 제공될 수도 있다. 이 경우, 동영상 관련 서비스 제공 시스템(100)은 해당 이미지지(200)를 자체적으로 제공할 수 있는 웹 서버 또는 서비스 서버로서의 기능도 포함하게 되며, 이미지(200) 자체는 물리적으로는 네트워크 상에 존재하는 것은 아니며 네트워크를 통해서 동영상 관련 서비스 제공 시스템(100)에 의해 사용자측 예컨대, 컴퓨터나 이동 통신 단말기, 스마트폰과 같은 클라이언트 단말기로 제공되게 된다.
이미지 연동부(10)는 이미지(200)에 대한 이미지 관련 데이터를 획득하고, 이미지(200)에 대한 사용자 이벤트를 수신하는 기능을 수행한다. 여기에서, 이미지(image)라 함은, 예컨대 jpg, gif, tif, bmp 등과 같은 파일 포맷에 의해 나타나는 정지 영상을 의미한다. 또한, 이미지 관련 데이터라 함은, 예컨대 이미지를 표현할 수 있도록 특정 파일 포맷에 따라 형성된 이미지 자체에 대한 데이터, 이미지와 관련된 정보(제목(파일이름), 생성일자, 크기 정보 등), 이미지가 웹 페이지를 통해 제공되는 경우 이미지포함된 웹 페이지상의 텍스트 설명 문구와 같은 이미지 메타 정보, 해당 이미지가 포함되어 있는 웹 페이지의 URL 주소 정보 등과 같은 것을 포함할 수 있다. 전술한 바와 같이, 이미지(200)는 동영상 관련 서비스 제공 시스템(100) 내부에 직접 포함된 것일 수도 있고 네트워크를 통해 클라이언트 단말기측으로 제공되는 것일 수도 있다.
이미지 연동부(10)가 이미지의 이미지 관련 데이터를 획득하는 방법으로서는, 예컨대 종래 기술에 의해 알려진 크롤링(crawling) 기법을 이용한 웹 크롤러(web crawler)를 이용할 수 있다. 다른 방법으로서는, 이미지(200)가 업로드(upload)되는 경우 이를 감지하여 해당 이미지가 포함된 웹 페이지 등과 같은 전자 문서에 해당 이미지에 대한 이미지 관련 데이터를 동영상 관련 서비스 제공 시스템(100)으로 자동적으로 전송하도록 하는 스크립트(script)나 위젯(wideget) 등을 포함시켜서 이들의 실행에 의하여 해당 이미지(200)에 대한 이미지 관련 데이터를 동영상 관련 서비스 제공 시스템(100)으로 자동적으로 전송하도록 할 수도 있다.
예컨대 이미지(200)가 웹 페이지상에 존재하는 경우, 해당 웹 페이지에 이미지가 등록(업로드)되는 경우 이를 감지하여 자동적으로 이미지 연동부(10)로 해당 웹 페이지의 URL 정보를 전송하도록 동작하는 스크립트를 포함시키면 이러한 스크립트의 동작에 의해 이미지 연동부(10)는 해당 URL 정보를 기초로 해당 웹 페이지에 접속하여 해당 이미지를 다운로드받고 기타 이미지 관련 데이터를 획득하게 된다. 이 때, 이미지 연동부(10)는 예컨대 해당 웹 페이지에 포함된 텍스트 등과 같은 설명 문구 등과 같은 기타 필요한 이미지 메타 정보를 해당 웹 페이지로부터 추출하여 이미지 관련 데이터에 포함시킬 수도 있다. 이와 같이 이미지 연동부(10)는 이미지(200)와 연동하여 이미지 관련 데이터를 획득하고 이를 이미지 데이터베이스(미도시)에 일시 저장해 둔다.
또한, 이미지 연동부(10)는 이미지에 대한 사용자 이벤트를 수신하는데, 여기서 사용자 이벤트(event)라 함은, 해당 이미지와 관련된 사용자의 특정한 동작을 의미한다. 이러한 동작으로서는, 예컨대 해당 이미지를 마우스 등과 같은 입력 장치로 클릭하는 동작, 마우스를 해당 이미지위에 위치(롤 오버(roll over))시키는 동작, 터치 스크린에 제공되는 이미지를 손가락으로 선택하는 동작 등과 같은 것일 수 있다. 이를 위해서, 이미지가 포함되는 웹 페이지 등과 같은 전자 문서에는 이러한 사용자 이벤트를 감지할 수 있는 스크립트가 포함되는 것이 바람직하며, 해당 스크립트는 해당 이미지와 관련된 사용자 이벤트가 감지되는 경우 이를 이미지 연동부(10)로 전송하고 이미지 연동부(10)는 이를 수신함으로써 어떠한 전자 문서에서 어떤 사용자 이벤트가 발생하였는지를 확인할 수 있다.
한편, 해당 웹 페이지 등과 같은 전자 문서에 미리 소정의 아이콘(icon) 등과 같이 사용자가 선택할 수 있는 인터페이스를 제공하고 사용자가 해당 선택 인터페이스를 클릭하거나 마우스를 올린 경우에만 사용자 이벤트가 발생하도록 할 수도 있다. 이러한 경우, 후술하는 서비스 수행부(50)는 해당 선택 인터페이스에 대해서 사용자 이벤트가 발생한 경우에만 해당 프레임부터 재생하도록 하거나 동영상 또는 프레임의 관련 정보를 제공하도록 할 수도 있다.
또한, 사용자 이벤트가 발생하는 경우, 후술하는 서비스 제공부(50)에 의해 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 이미지 연동부(10)를 통해 사용자측의 클라이언트 단말기로 제공할 수도 있다. 즉, 사용자 이벤트가 발생하는 경우 후술하는 서비스 제공부(50)는 제공될 수 있는 동영상 관련 서비스의 메뉴 정보를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 해당 이미지가 포함된 웹 페이지와 같은 전자 문서 또는 별도의 웹 페이지 또는 윈도우를 통해 사용자 측으로 제공하고, 해당 사용자 인터페이스를 통해 사용자가 선택한 사용자 요청 신호에 따라 해당 서비스를 제공하도록 구성할 수도 있다. 이와 같은 방법에 의해 사용자 이벤트가 수신되면, 후술하는 서비스 수행부(50)에서 해당 이벤트에 따라 동영상 관련 서비스를 수행하게 되는데 이에 대해서는 후술한다.
한편, 이미지 특징 데이터 생성부(20)는 이미지 연동부(10)에서 획득된 이미지 관련 데이터에 기초하여 해당 이미지에 대한 이미지 특징 데이터를 생성한다. 또한, 동영상 특징 데이터 생성부(30)는 동영상에 대한 동영상 특징 데이터를 생성한다.
여기에서, 이미지 특징 데이터라 함은, 일반적으로 주어진 이미지에 대하여 이미지의 특징을 잘 표현해 주는 것으로 추출/결정된 특징점(feature point, interest point)과 관련된 정보를 기술하는 데이터(descriptor)를 의미하며, 이는 예컨대 객체 추적, 이미지 매칭 등과 같은 컴퓨터 비전(computer vision) 분야에서 널리 사용된다. 일반적으로 이미지에서 특징점을 추출하고, 특징점과 관련된 데이터를 특징 데이터로 생성하고 이러한 특징 데이터를 이용하여 이미지를 비교하는 등의 작업을 수행하게 된다. 한편, 특징점(interest point, feature point)이라 함은, 이미지의 특징을 나타낼 수 있는 점으로서, 이미지의 스케일, 회전, 왜곡 등의 변화 등에 관계 없이 이미지의 특징을 잘 설명할 수 있는 점 또는 점들의 집합을 의미한다. 이러한 특징점은 주어진 이미지의 크기 및 내용 또한 특징점 추출/결정 방법의 종류에 따라 다르지만 예컨대 사진 한장당 수천개~수만개의 특징점이 추출될 수 있다.
예컨대, 이미지의 특징점을 추출하고 추출된 특징점의 특징 데이터를 형성하는 방법으로서는 미국 특허 제6,711,293호(David G. Lowe)에 개시된 바와 같은 SIFT(Scale-Invariant Feature Transform) 알고리듬이나 SURF(Speed Up Robust Features) 알고리듬(H. Bay, T. Tuytelaars and L. van Gool (2006). "SURF: Speeded Up Robust Features". Proceedings of the 9th European Conference on Computer Vision, Springer LNCS volume 3951, part 1. pp. 404~417) 등과 같은 방법이 제안되어 있다.
이미지 특징 데이터 생성부(20)는 이러한 종래 기술에 의해 알려진 방법을 사용하여 이미지의 특징 데이터를 생성할 수 있으며, 이미지 특징 데이터를 생성하는 방법 자체에는 특별히 종속되지 않으므로, 이에 대한 상세 설명은 생략한다. 다만, 본 출원인에 의해 발명된 특징 데이터 생성 방법을 이용할 수도 있는데, 이에 대해서는 별도 실시예로서 후술한다.
한편, 동영상 특징 데이터 생성부(30)는 동영상에 대한 특징 데이터를 생성하는데, 이는 동영상을 구성하는 복수개의 프레임 들 중 적어도 하나 이상의 프레임을 선택하고 선택된 프레임별로 전술한 바와 같은 이미지 특징 데이터를 생성함으로써 이루어질 수 있다. 동영상은 복수개의 정지 영상으로 표현되는 프레임으로 이루어진 프레임별 이미지의 집합으로 볼 수 있고 따라서 동영상 특징 데이터는 프레임별 이미지 특징 데이터의 집합으로 볼 수 있기 때문이다. 각각의 프레임별 이미지 특징 데이터를 생성하는 방법은 전술한 이미지 특징 데이터 생성부(20)에서 설명한 바와 동일하다. 이와 같이 동영상 특징 데이터 생성부(30)에서 동영상 특징 데이터, 즉, 프레임별 이미지 특징 데이터의 집합이 생성되는 경우, 각 프레임별 이미지 특징 데이터는 (동영상 식별자, 프레임 식별자, 프레임별 이미지 특징 데이터)로 구성될 수 있으며, 프레임별 이미지 특징 데이터와 이미지 특징 데이터는 동일한 형식을 갖게 되고 이들에 기초하여 비교를 수행함으로써 매칭되는 동영상 또는 프레임을 결정할 수 있다.
본 실시예는 이미지에 대한 사용자 이벤트에 따라 해당 이미지에 대응되는 동영상 또는 프레임을 결정하고 그와 관련된 동영상 관련 서비스를 수행하므로, 동영상 특징 데이터 생성부(30)는 다수의 원본 동영상에 대한 동영상 특징 데이터를 생성해두고 이를 동영상 데이터베이스(미도시)에 저장해 둔다.
이미지/동영상 매칭부(40)는 전술한 바와 같이 이미지 특징 데이터 생성부(20)에서 생성된 이미지 특징 데이터와 동영상 특징 데이터 생성부(30)에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 기능을 수행한다. 전술한 바와 같이, 동영상 특징 데이터 생성부(30)에서 생성되는 동영상 특징 데이터는 프레임별 이미지 특징 데이터의 집합이므로, 각각의 동영상 및 동영상을 구성하는 프레임들에 대해 주어진 이미지의 이미지 특징 데이터를 비교함으로써 이미지에 대응되는 동영상 또는 프레임을 결정할 수 있다. 이 때, 동영상 또는 프레임은 각각 적어도 하나 이상의 복수개를 결정할 수 있다. 또한, 복수개가 결정된 경우, 이들 중에서 적절한 알고리듬을 통해 가장 많이 매칭되는 동영상 또는 프레임을 하나만 결정할 수도 있다. 동영상 또는 프레임이 결정되면 해당 정보를 이미지에 대응하여 이미지 데이터베이스(미도시)에 저장해 두고, 추후 사용자 이벤트가 발생하면 저장해 둔 정보를 이용하여 관련된 동영상 관련 서비스를 수행한다.
이미지/동영상 매칭부(40)에서 특징점 데이터를 이용하여 이미지에 대응되는 동영상 또는 프레임을 결정하는 방법 또한 특별히 한정되지 않으며, 종래 기술에 의해 알려진 바를 사용할 수 있다. 즉, 이미지/동영상 매칭부(40)는 적절한 방법을 이용하여 이미지 특징 데이터와 동영상 특징 데이터 즉, 프레임별 이미지 특징 데이터를 비교함으로써 매칭 여부를 결정할 수 있다. 예컨대, 특징 데이터간의 거리(distance)를 계산하여 대응되는 특징점의 쌍을 결정하고 결정된 특징점 쌍간의 신뢰도를 분석함으로써 이루어질 수 있다. 특징 데이터 간의 거리를 계산하는 방법으로는, 공지 기술에서 알려진 바와 같이 예컨대 즉, 비교되는 양 이미지의 각각의 특징점의 특징 데이터에 해밍 거리(Hamming distance), 유클리디안 거리(Euclidean distance) 등과 같은 함수를 적용하여 거리의 차이를 계산하여 거리의 차이가 소정 임계치 이하인 경우에 해당하는 특징점들을 서로 대응하는 특징점의 쌍인 것으로 결정할 수 있다. 여기에서, 공지 기술로서 널리 알려져 있는 RANSAC(RANdom Sample Consensus) 알고리듬을 이용할 수도 있다. 한편, 이미지/동영상 매칭부(40)는 본 출원인에 의해 발명된 방법을 사용할 수도 있는데 이에 대해서는 후술한다.
서비스 수행부(50)는 이미지 연동부(10)에서 수신되는 이미지에 대한 사용자 이벤트에 따라 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하도록 동작한다. 전술한 바와 같이, 이미지 연동부(10)는 예컨대 이미지가 웹 페이지에 포함되어 제공되는 경우 해당 웹 페이지 상에 포함되어 있는 스크립트에 의해 사용자 이벤트를 수신할 수 있는데, 사용자 이벤트는 전술한 바와 같이 예컨대 해당 웹 페이지의 이미지를 마우스 등에 의해 클릭하거나 이미지 위에 마우스를 올리는 등과 같은 것일 수 있다. 이러한 사용자 이벤트가 해당 웹 페이지에 포함된 스크립트에 의해 감지되고 이미지 연동부(10)로 전송되면 이미지 연동부(10)는 이를 서비스 수행부(50)로 통지하고 서비스 수행부(50)는 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행한다. 여기에서 동영상 관련 서비스는 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스일 수 있다. 전술한 바와 같이, 이미지/동영상 매칭부(40)에 의해 해당 이미지에 대응되는 동영상 또는 프레임이 결정되어 이미지 데이터베이스(미도시)에 저장되어 있으므로, 사용자 이벤트가 발생하면 서비스 제공부(50)는 이미지 데이터베이스를 참조하여 대응되는 프레임을 검색하고, 검색된 프레임을 시작점으로 하여 해당 동영상이 재생되도록 할 수 있다. 동영상의 재생은 웹 페이지에 포함되어 재생되거나 웹 페이지와는 별도의 윈도우나 페이지를 생성하여 제공될 수도 있다.
한편, 상기 서비스 수행부(50)에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스일 수도 있다. 동영상 또는 프레임과 관련된 정보는 동영상 데이터베이스(미도시)를 참조하여 해당 동영상 또는 프레임과 관련되어 미리 수집되어 있는 각종 메타 정보(동영상 제목, 출연 배우, 생성 일시, 횟수 정보 등)를 해당 웹 페이지 또는 별도의 페이지를 통해 제공할 수 있다. 이를 위해서 앞에서는 명시적으로 설명하지는 않았으나 동영상 특징 데이터 생성부(30)는 동영상의 특징 데이터를 생성하면서 함께 해당하는 동영상의 각종 메타 정보를 동영상 데이터베이스(미도시)에 저장해 두는 것이 필요하다.
한편, 전술한 바와 같이, 해당 웹 페이지 등과 같은 전자 문서에 미리 소정의 아이콘(icon) 등과 같이 사용자가 선택할 수 있는 인터페이스를 제공하고 사용자가 해당 선택 인터페이스를 클릭하거나 마우스를 올린 경우에만 사용자 이벤트가 발생하도록 할 수도 있다. 이러한 경우, 서비스 수행부(50)는 해당 선택 인터페이스에 대해서 사용자 이벤트가 발생한 경우에만 전술한 바와 같이 해당 프레임부터 재생하도록 하거나 동영상 또는 프레임의 관련 정보를 제공하도록 할 수도 있다.
또한, 서비스 제공부(50)는 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 이미지 연동부(10)를 통해 사용자측의 클라이언트 단말기로 제공할 수 있다. 이는 사용자 이벤트가 발생하는 경우 서비스 제공부(50)는 제공될 수 있는 동영상 관련 서비스의 메뉴 정보를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 해당 이미지가 포함된 웹 페이지와 같은 전자 문서 또는 별도의 웹 페이지 또는 윈도우를 통해 사용자 측으로 제공하고, 해당 사용자 인터페이스를 통해 사용자가 선택한 사용자 요청 신호에 따라 해당 서비스를 제공하도록 구성할 수도 있다. 이 경우에서도 제공되는 동영상 관련 서비스는 전술한 바와 같은 프레임 재생 서비스 또는 동영상 또는 프레임 정보 제공 서비스일 수 있다.
도 2 및 도 3은 도 1에서 설명한 실시예에 의해 동영상 관련 서비스가 이루어지는 과정의 일예를 나타낸 것이다. 도 2는 웹 페이지를 통해 이미지가 제공되고 있는 상태를 나타낸 것이며, 이미지의 우측 하단에 재생할 수 있음을 알리는 재생 버튼(삼각형 모양)의 선택 인터페이스가 제공되어 있음을 알 수 있다. 이러한 상태에서 사용자가 해당 선택 인터페이스를 클릭하게 되면 도 3과 같은 상태로 별도의 윈도우를 통해 해당 이미지에 대응되는 프레임부터 동영상 재생 서비스가 이루어지고 있음을 알 수 있다.
한편, 전술한 바와 같이, 도 1의 실시예에서, 이미지 특징 데이터 생성부(20) 및 동영상 특징 데이터 생성부(30)는 특정한 생성 방법에 종속되지는 않는다. 즉, 도 1의 실시예에서 이미지 특징 데이터 생성부(20) 및 동영상 특징 데이터 생성부(30)에서 어떠한 방법을 이용하여 특징 데이터를 생성하는가와 관계없이, 어떠한 방법을 사용하더라도 이미지 특징 데이터와 동영상 특징 데이터가 생성되기만 하면 이들을 비교하여 이미지에 대응되는 동영상 또는 프레임을 결정하고 사용자 이벤트가 수신되는 경우 그에 따라 해당하는 동영상 관련 서비스를 수행할 수 있다. 또한, 이미지/동영상 매칭부(40) 또한 특정한 방법에 종속되지는 않음 또한 전술한 바와 같다. 한편, 이미지 특징 데이터 생성부(20)와 동영상 특징 데이터 생성부(30)에서 특징 데이터를 생성하는 방밥과 이미지/동영상 매칭부(40)에서 이미지에 대응되는 동영상 또는 프레임을 결정하는 방법은 본 출원인에 의해 출원된 대한민국 특허출원 출원번호 제10-2011-0012741호(이미지 특징 데이터 생성 장치 및 방법)와 특허출원 제10-2011-0015049호(이미지와 이미지 또는 이미지와 동영상 사이의 상호 관계 분석 장치 및 방법)에 기재된 방법을 사용할 수 있는데, 도 4 이하를 참조하여 이에 대하여 설명한다.
도 4는 이미지 특징 데이터 생성부(20)의 구성의 일예를 나타낸 도면이다. 도 4를 참조하면, 이미지 특징 데이터 생성부(20)는, 특징점 결정부(21), 특징점 방향 추정부(22) 및 특징 데이터 구성부(23)를 구비한다.
특징점 결정부(11)는 이미지로부터 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 기능을 수행한다. 전술한 바와 같이, 이미지(image)라 함은, 정지 영상 데이터를 의미하며, 예컨대 jpg, bmp, tif 등과 같은 파일 포맷에 의해 표현되는 디지털 데이터를 의미한다. 또한, 이미지의 특징점(interest point, feature point)라 함은, 해당 이미지에서 다른 점들에 비해 이미지의 특징을 잘 표현할 수 있는 점들을 의미하는데, 일반적으로 스케일링(scaling), 회전, 관찰각 등의 변화 에 관계없이 이미지 상에서 항상 동일하게 검출할 수 있는 점들을 특징점으로 결정하는 것이 일반적이다.
특징점 결정부(21)는 종래 기술에 의해 알려져 있는 특징점 추출/결정 방법을 그대로 사용할 수 있는데, 예컨대 LoG(Laplacian of Gaussian) 필터나 DoG(Difference of Gaussians) 필터의 스케일 공간상의 극대/극소값을 이용하는 방법, 헤시안 매트릭스(Hessian Matrix)의 디터미넌트(determinant)를 이용하는 종래의 기술에서 알려진 방법 등을 사용하여 주어진 이미지에서 특징점이 될 수 있는 점들을 결정할 수 있다. 한편, 미국 특허 제6,711,293호(David G. Lowe)에 개시된 바와 같은 SIFT(Scale-Invariant Feature Transform) 알고리듬이나 SURF(Speed Up Robust Features) 알고리듬(H. Bay, T. Tuytelaars and L. van Gool (2006). "SURF: Speeded Up Robust Features". Proceedings of the 9th European Conference on Computer Vision, Springer LNCS volume 3951, part 1. pp. 404~417) 등은 이미지의 특징점 추출/결정을 포함하여 특징 벡터를 생성하는 전체 과정이 나타나 있는데, 여기에 개시되어 있는 이미지의 특징점 추출/결정 방법 또한 사용할 수도 있다. 즉, 특징점 결정부(21)는 이러한 종래 기술에 알려져 있는 모든 종류의 특징점 추출/결정 방법을 사용할 수 있으며, 이는 본 발명의 핵심적인 사항은 아니므로 상세 설명은 생략한다.
한편, 특징점 결정부(21)는 전술한 바와 같이 이미지의 특징점들을 찾아내는 동시에 찾아낸 특징점과 관계된 특징점의 강도나 특징점의 크기 등과 같은 기타 특징점 정보도 함께 추출한다. 이러한 특징점 정보의 종류, 구체적인 내용은 사용되는 특징점 추출/결정 방법에 따라 다를 수 있으므로, 이미지 매칭, 객체 추적, 이미지 비교 등과 같은 후처리 과정에서 사용되는 데이터에 따라 선택적으로 추출한다. 이러한 특징점 정보를 추출하는 방법 또한 종래 기술에 의하여 알려진 방법을 사용할 수 있다.
[규칙 제26조에 의한 보정 17.01.2012] 
특징점의 강도는 사용된 특징점 추출/결정 방법에 따라 달라질 수 있는데, 예컨대 LoG(Laplacian of Gaussian) 필터를 사용하는 경우에는, 라플라스 연산자(Laplacian operator)를 특징점의 강도로서 사용할 수 있다. 주어진 이미지 f(x,y)가 소정 스케일 t에 대해서 가우스 커널(Gaussian Kernel)
Figure WO-DOC-FIGURE-84-1
에 의해 컨볼루션되는 경우, LoG 스케일 평면(scale-space)은
Figure WO-DOC-FIGURE-84-2
로 나타낼 수 있고, 이 때 라플라스 연산자(Laplacian operator)
Figure WO-DOC-FIGURE-84-3
가 계산될 수 있는데, 이 라플라스 연산자에 의한 결과값은 이미지의 점의 어두운 점(blob)과 밝은 점(blob)에서 큰 값을 각각 가지게 되므로 해당 이미지가 특징점으로 사용될 수 있는지를 기본적으로 판단할 수 있는 자료가 될 수 있으며 그 값의 크기에 따라 특징점으로서의 강도를 나타내는 지표로서 사용할 수 있다.
한편, DoG(Difference of Gaussian) 필터를 사용하는 경우에도 마찬가지로 라플라스 연산자의 결과값을 특징점 강도로서 사용할 수 있다. 또한, 헤시안 매트릭스(Hessian matrix)를 사용하는 경우에는 헤시안 매트릭스의 디터미넌트(determinant) 값을 특징점 강도로서 사용할 수 있다. 이와 같이, 특징점의 강도는, 종래 기술에 의하여 이미지의 특징점을 추출/결정하는데 사용되는 판별식에 기초한 정보를 사용할 수 있다.
한편, 이미지의 특징점의 크기란, 해당 특징점이 이미지에서 차지하는 영역의 정보를 나타내는 것으로서, 예컨대 사각형인 경우 각 변의 길이, 원인 경우에는 반지름의 길이 등과 같이 표현될 수 있다. 이러한 특징점의 크기 또한 종래 기술에서 사용되는 방법을 사용할 수 있는데, 예컨대 전술한 바와 같은 LoG(Laplacian of Gaussian) 필터를 사용하는 경우에는 특징점의 최대 강도를 나타내는 스케일 t(또는
Figure PCTKR2011008614-appb-I000008
)값의 k배(여기서, k는 4,6 등과 같은 임의의 상수)와 같은 값을 사용할 수 있다.
다시 도 4를 참조하면, 특징점 방향 추정부(22)는 특징점 결정부(21)에서 결정된 특징점들 각각에 대한 방향 정보를 추정하는 기능을 수행한다. 이는 종래의 기술에서 알려진 그래디언트(gradient) 기반의 다양한 방법들을 사용할 수 있다. 예컨대, 특징점 주변 일정 영역의 모든 점들에 대해서 각 점 주변의 그래디언트를 계산하고 그 방향을 평균냄으로써 특징점의 방향 정보를 추정해 낼 수 있다. 이러한 방법에 의하면, 특징점이 임의의 회전 변환을 거친 경우에도 원래의 방향을 추정할 수 있게 된다. 특징점 방향 추정부(22)에서 특징점의 방향을 추정하는 방법 또한 종래 기술에 의해 알려진 것을 이용할 수 있으며 본 실시예의 직접적인 구성은 아니므로 상세 설명은 생략한다.
특징 데이터 구성부(23)는 특징점 결정부(21)에서 결정된 특징점 각각에 대하여, 특징점 정보와 특징점 방향 추정부(22)에서 추정된 방향 정보에 기초하여 이진 특징 벡터를 생성하고, 생성된 이진 특징 벡터를 포함하여 이미지의 특징 데이터를 구성하는 기능을 수행한다. 여기에서, 특징 데이터라 함은, 전술한 바와 같이, 일반적으로 주어진 이미지에 대해서 추출/결정된 특징점과 관련된 정보를 기술하는 데이터(descriptor)를 의미하는데, 특징 데이터 구성부(23)는 이러한 특징 데이터를 이진 특징 벡터의 형태로 생성한다. 여기에서, 특징점 정보는 특징점 결정부(21)에서 추출 및 획득되고 방향 정보는 전술한 특징점 방향 추정부(22)에 의해 획득된다.
특징 데이터 구성부(23)는 이미지/동영상 매칭부(40)에서 특징 데이터를 이용하여 신속한 처리가 이루어질 수 있도록 하는 동시에 해당 특징점의 특징을 잘 나타내면서도 비교적 적은 용량의 데이터로써 특징 데이터를 생성할 수 있도록 이진 특징 벡터를 생성하고 이를 포함하여 특징 데이터를 구성하게 된다. 이러한 이진 특징 벡터는 특징점들 각각에 대하여 강인성을 가지면서 특징점에 고유한 특징을 변질시키지 않아야 한다.
특징 데이터 구성부(23)에서 이진 특징 벡터를 생성하는 과정을 도 5 및 도 6을 참조하여 설명한다. 도 5는 이진 특징 벡터의 생성 과정의 실제 예를 나타낸 화면이고 도 6은 이진 특징 벡터의 생성 과정을 나타낸 흐름도이다.
도 5 및 도 6을 참조하면, 우선 전술한 바와 같은 과정을 통해 결정된 특징점들 각각에 대하여, 특징점의 크기 및 방향 정보를 이용하여, 특징점을 포함하는 주변 이미지 영역을 예컨대 사각형 형태로 생성하고, 이들을 같은 방향으로 정렬한다(S500, S510)). 여기에서, 특징점을 포함하는 주변 이미지 영역을 사각형 형태로 생성하는 것은 특징점 결정부(21)에서 추출한 특징점 정보에 포함된 크기 정보를 이용할 수 있다. 예컨대, 크기 정보로서 한변의 길이(정사각형인 경우), 가로 및 세로변의 길이(직사각형인 경우), 반지름(원인 경우) 등과 같은 정보를 이용하여 사각형 형태의 주변 이미지 영역을 생성할 수 있다. 예컨대, 한변의 길이가 주어진 경우 해당 변의 길이에 따른 정사각형을 생성하고 가로 및 세로변의 길이가 주어진 경우 둘 중 최대값 또는 최소값을 변의 길이로 하는 정사각형을 생성할 수 있다. 또한, 반지름값이 주어진 경우 반지름을 변의 길이로 하는 정사각형을 생성할 수 있다. 또한, 생성된 주변 이미지 영역을 같은 방향으로 정렬하는 것은, 대상 이미지가 다른 이미지의 회전한 형태인 경우에도 같은 특징 벡터를 얻기 위함이다. 한편, 특징점을 포함하는 주변 이미지 영역을 생성할 때 특징점의 크기 정보에 기초하지 않고 미리 설정된 크기 예컨대 특징점 주변 ±10 이내의 좌표를 기준으로 사각형 형태로 생성하는 방법도 가능하다.
다음으로 생성 및 정렬된 이미지 영역들 각각을 도 5의 우측에 나타낸 바와 같이 N×N의 부 영역으로 나눈다(S520). 이들 부 영역들의 이미지 밝기를 평균내어 얻은 N×N개의 값을 I(i), i= 1,2,....,N2라 하고, 아래의 수식에 따라 밝기 차분 벡터와 차차분 벡터를 정의한다(S530).
차분 벡터 : D(i,j)=I(i)-I(j), i,j = 1,2,...,N2
차차분 벡터 : E(i,j,k,l) = D(i,j)-D(k,l) i,j,k,l = 1,2,...,N2
다음으로, 특징 데이터 구성부(23)는 상기 수식에 의해 정의된 차분 벡터 D(i,j)와 차차분 벡터 E(i,j,k,l) 중 적어도 어느 하나 이상을 선택하고 이에 기초하여 이진 특징 벡터를 생성한다(S540).
차분 벡터와 차차분 벡터에 기초하여 이진 특징 벡터를 생성하는 구체적인 과정의 일예를 도 7에 나타내었다.
도 7의 예는 이진 특징 벡터를 M비트로 구성하는 경우에 대한 것으로서, 도 7의 각 과정을 M회 반복하게 된다. 이를 위하여, 우선 최초로 i=1로 설정하고, 주어진 특징점에 대해 정의된 차분 벡터와 차차분 벡터 중에서 적어도 어느 하나 이상을 선택하고 상기 정의된 수식에 의해 차분 벡터와 차차분 벡터를 생성한다(S541). 정의된 차분 벡터와 차차분 벡터 중에서 어떤 것을 선택할 것인지는 미리 설정해 둘 수 있는데, 예컨대 미리 다수의 샘플 이미지를 통해 이진 특징 벡터를 생성해 두고 이들의 통계치에 근거하여 어떠한 차분 벡터와 차차분 벡터를 선택하는 것이 이미지의 변화에 관계없이 강인한 특성을 나타내는가를 결정한 후 그러한 기준에 따라 해당하는 벡터를 선택할 수 있다. 또한, 차분 벡터 중에서만 선택할 수도 있고 차차분 벡터에서만 선택할 수도 있다. 또한, 차분 벡터에서 몇개를 선택할지 차차분 벡터에서 몇개를 선택할지의 여부도 경우에 따라 달라질 수 있다. 예컨대, 차분 벡터 중에서 3개를 선택하고 차차분 벡터에서 2개를 선택하거나 차분 벡터에서 2개를 선택하고 차차분 벡터에서 3개를 선택하는 것도 가능하다.
또한, 차분 벡터와 차차분 벡터 중 적어도 어느 하나를 선택하고 생성하는 것은 이진 특징 벡터의 비트수인 M회에 걸쳐 이루어져야 하는데 선택되는 차분 벡터와 차차분 벡터들의 집합은 서로 달라야 하므로, 각 회수에 대응하여 서로 다른 차분 벡터와 차차분 벡터의 집합이 선택되도록 미리 설정해 두는 것이 바람직하다.
다음으로, 선택 및 생성된 차분 벡터와 차차분 벡터들에 대해 선형 조합(linear combination) 계산을 수행한다(S542). 예컨대, 선택 및 생성된 차분 벡터가 D(1,2), D(3,4), E(1,2,4,5), E(3,5,6,7)의 4개인 경우 이들 각각의 값(이들은 전술한 바와 같이 각각 밝기의 평균값의 차분값과 차차분값을 가지게 된다)에 대해 선형 조합을 계산한다. 즉, 선형 조합인 경우, aD(1,2) + bD(3,4) + cE(1,2,4,5) + dE(3,5,6,7)와 같은 표현되는 선형 조합을 계산할 수 있다(여기서, a,b,c,d는 임의의 계수). 예컨대 차분 벡터가 5개, 차차분 벡터가 5개 존재하는 경우, 이들의 선형 조합의 공간은 실제 무한할 수 있는데, 이들로부터 해당 특징점을 다른 특징점들과 쉽게 구분지을 수 있도록 하는 특정 조합들이 존재한다. 이러한 특정 조합을 미리 다수의 샘플 이미지를 통해 테스트해서 결정해 두고 이러한 테스트 결과값의 통계적 추론에 기초하여 어떠한 선형 조합을 수행할 것인지를 결정해 놓을 수 있다. 한편, 상기 단계(S542)에서 선형 조합 이외에 곱셈 등과 같은 비선형 연산을 포함하는 비선형 조합(nonlinear combination)을 수행할 수도 있음은 물론이며, 경우에 따라서는 선형 조합과 비선형 조합을 혼합하여 사용하는 것도 가능할 수 있다.
이와 같은 과정을 거치게 되면, 그 결과값을 얻게 되는데 그 결과값이 소정의 임계치 예컨대 0보다 큰지 여부를 판단하고(S543), 0보다 큰 경우에는 해당 비트 즉, i번째 비트에 1을 할당하고(S544), 0보다 작은 경우에는 해당 비트 즉, i번째 비트에 0을 할당한다(S545). 이와 같이 하면, 이진 특징 벡터 중에서 i번째 비트의 값이 결정되게 된다.
다음으로, i=M인지(즉, 마지막 비트인지)를 판단하고(S546), 마지막 비트가 아닌 경우 i를 증가시켜서(S547) 상기 단계(S541) 내지 단계(S547)을 반복 수행한다. 마지막 비트인 경우에는 종료하게 된다(S548).
도 7과 같은 과정을 모두 완료하게 되면, 주어진 특징점에 대해 각각의 값이 0 또는 1로 표현되는 M비트로 구성되는 이진 특징 벡터가 생성되게 된다. 도 5의 우측에 나타낸 이진 특징 벡터는 이와 같은 과정을 거쳐서 생성된 것으로서 총 6비트로 구성되며 각각의 비트에는 0 또는 1이 할당되어 있음을 알 수 있다.
한편, 이진 특징 벡터를 생성한 이후, 각각의 비트에 대해 중요도를 기준으로 정렬 과정을 더 수행할 수 있다. 차분 벡터와 차차분 벡터의 선형 또는 비선형 조합 중에서 다른 조합들보다 스케일링, 크기, 각도 등의 변환 등에 보다 강인한 조합이 존재할 수 있는데 이러한 강인성을 갖는 조합을 미리 다수의 샘플 이미지를 통해 테스트하여 결정해 두고 이를 이용하여 그 순서 즉 강인한 순서에 따라 이진 특징 벡터들을 정렬하는 과정을 수행할 수도 있다. 즉, 도 7과 같은 과정을 수행하게 되면, M비트의 값이 "001010"으로 표현되는 경우, 이를 중요도에 따라 "011001"과 같이 정렬할 수 있으며, 도 5의 우측에 이러한 이진 특징 벡터를 나타내었다. 이와 같이 이진 특징 벡터를 중요도 순에 따라 정렬하게 되면 후처리 과정에서 중요도 순서에 따라 데이터의 비교 및 검색이 중요도를 기준으로 신속하게 처리될 수 있는 장점이 있다.
이러한 과정을 통해, 이진 특징 벡터가 각각의 특징점에 대하여 생성되면, 특징 데이터 구성부(23)는 이들 이진 특징 벡터를 포함하여 특징점의 다른 특징점 정보를 포함하여 최종적으로 이미지의 특징 데이터를 생성하게 된다. 특징 데이터에 포함되는 다른 특징점 정보는 예컨대 특징점의 x 좌표값, y 좌표값, 크기 정보 및 방향 정보 중에서 적어도 어느 하나 이상을 포함할 수 있다. 이들 정보를 모두 포함할 수도 있고 이들 중 일부만을 선택하여 구성할 수도 있으며, 이는 후술하는 이미지/동영상 매칭부(40)에서의 처리 과정에서의 조건에 따라 다르게 설정할 수 있다. 예컨대, 상기와 같은 다른 특징점 정보를 모두 포함하여 구성되는 경우 최종적으로 생성되는 특징 데이터는 특징점 각각에 대한 (x 좌표, y 좌표, 크기, 방향, 이진 특징 벡터)로 구성되는 특징점들의 집합일 수 있다. 도 5의 우측에 나타낸 이진수는 해당 특징점의 이진 특징 벡터를 의미하며, 이진수 위쪽의 (x,y,s,θ)는 각각 (x 좌표, y 좌표, 크기, 방향)을 의미한다. 물론, 후처리 과정에서 크기 정보가 필요없는 경우에는 이를 제외하고 나머지 정보만으로 특징 데이터를 구성하는 것도 가능하다.
한편, 도 5 내지 도 7의 실시예에서는 부영역들의 밝기값의 평균값의 차분 벡터와 차차분 벡터를 정의해두고(도 6의 단계(S530)), 이들 중에서 전술한 바와 같은 기준에 따라 어느 하나 이상을 선택하고 선택된 차분 벡터와 차차분 벡터들의 선형 또는 비선형 조합을 생성하여 이진 특징 벡터를 생성하는 경우에 대하여 설명하였으나, 부영역들의 밝기값의 평균값 전부에 대해서 미리 차분 벡터와 차차분 벡터를 생성해 두는 실시예도 가능하다. 이 경우에는 도 6의 단계(S530)에서 미리 차분 벡터와 차차분 벡터를 전체 부영역들의 밝기값의 평균값에 대해서 모두 생성해 둔 후, 도 7의 단계(S541)에서 생성되어 있는 차분 벡터와 차차분 벡터 중에서 전술한 바와 같은 기준으로 선택 과정만을 수행하게 된다. 즉, 단계(S541)에서 차분 벡터와 차차분 벡터를 계산하여 생성하는 과정을 생략할 수 있다.
도 5 내지 도 7에 나타낸 바와 같은 과정을 수행하게 되면, 이진 특징 벡터를 포함하는 이미지의 특징 데이터가 최종적으로 생성되게 된다.
다음으로, 동영상 특징 데이터 생성부(30)의 구성에 대하여 설명한다. 도 8은 동영상 특징 데이터 생성부(30)의 구성의 일예를 나타낸 도면이다. 도 8을 참조하면, 동영상 특징 데이터 생성부(30)는, 프레임 선택부(31), 프레임별 특징점 결정부(32), 프레임별 특징점 방향 추정부(33) 및 프레임별 특징 데이터 구성부(34)를 구비할 수 있다.
프레임 선택부(31)는 동영상 각각에 대하여 동영상을 구성하는 프레임들을 일정 시간 간격으로 추출하고 추출된 프레임을 적어도 하나 이상의 이전 추출 프레임들과 차이를 계산하고, 차이가 임계치 이상인 경우에 선택된 해당 프레임을 선택하는 기능을 수행한다. 즉, 프레임 선택부(31)는 동영상에서 일정 시간 간격으로 프레임을 추출하고, 추출된 해당 프레임과 이전에 추출되어 있는 프레임들 중 적어도 어느 하나 이상의 프레임과의 차이를 계산한다. 이 때, 이전 추출 프레임은 바로 이전 프레임만일 수도 있고, 소정 갯수 이전 예컨대 이전 5번째 프레임까지일 수도 있다. 추출된 해당 프레임과 이전 추출 프레임과의 차이는 단순히 프레임의 같은 위치의 픽셀값 간의 차이의 절대값의 합일 수 있다. 또한, 종래 기술에 의하여 알려져 있는 옵티컬 플로우(Optical flow)를 추정하여 이를 이용하여 보정된 이미지간의 픽셀값 사이의 차이의 절대값의 합일 수도 있다. 다음으로, 프레임 선택부(31)는 이전 추출 프레임과의 차이가 미리 설정해 둔 임계치 이상인지를 판단하고, 임계치 이상인 경우 해당 프레임을 선택한다. 여기서 선택되는 해당 프레임은 도 8의 후술하는 구성에 의해서 프레임별로 특징점을 결정하고 특징점의 방향을 추정하고 특징 데이터틀 구성하게 되며, 이와 같은 과정을 동영상에서 일정 시간 간격으로 추출한 모든 프레임에 대해서 반복 수행함으로써 동영상 전체에 대한 특징 데이터(즉, 프레임별 특징 데이터의 집합)를 생성하게 된다. 이 때, 이전 프레임 하나와만 비교하는 경우에는 전술한 바와 같은 차이를 한번만 계산하여 해당 프레임을 선택할지의 여부를 결정하고, 예컨대 이전 5번째 프레임까지와 비교하는 경우에는 각각의 프레임과의 차이 중에서 적어도 어느 하나가 임계치 보다 큰 경우에 해당 프레임을 선택하도록 구성할 수도 있다.
한편, 프레임 선택부(31)는 상기한 바와 같은 방법을 사용하지 않고, 전술한 바와 같은 이미지/동영상 매칭부(40)에서 사용하는 신뢰도 추정 방식을 이용하여 이전 추출 프레임들과를 비교함으로써 해당 프레임의 차이를 계산하고 그 결과에 따라 해당 프레임을 선택할 수 있다. 즉, 프레임 선택부(31)는 동영상 각각에 대하여, 동영상을 구성하는 프레임들을 일정 시간 간격으로 추출하고 추출된 프레임의 이미지 특징 데이터를 우선 생성하고, 이 이미지 특징 데이터와 이전 추출 프레임에 대해서 미리 생성되어 있는 이미지 특징 데이터를 비교하여 대응하는 특징점의 쌍을 결정하고, 결정된 특징점의 쌍들에 포함된 특징점의 특징점 방향 정보에 기초하여 이미지/동영상 매칭부(40)에서 사용하는 방법을 이용하여 추출된 프레임과 이전 추출 프레임 사이의 관계 분석 신뢰도를 추정하여 그 결과에 기초하여 해당 프레임을 선택할지 여부를 결정하는 방법을 사용할 수도 있다.
프레임별 특징점 결정부(32)는 상기 프레임 선택부(31)에서 선택된 프레임에 대한 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 기능을 수행하는데, 이는 도 4 내지 도 7에서 설명한 특징점 결정부(21)와 동일한 것이며, 다만, 프레임별로 이러한 기능을 수행한다는 점에서 프레임별 특징점 결정부(32)라는 명칭을 사용했음을 유의해야 한다. 동영상은 프레임의 집합으로 볼 수 있으며, 각각의 프레임은 도 4 내지 도 7의 실시예에서 설명한 이미지와 동일한 것이기 때문이다. 또한, 프레임별 특징점 방향 추정부(33)과 프레임별 특징 데이터 구성부(34) 또한 도 4 내지 도 7에서 설명한 특징점 방향 추정부(22) 및 특징 데이터 구성부(23)와 동일한 것이다. 즉, 프레임별 특징점 결정부(32), 프레임별 특징점 방향 추정부(33), 프레임별 특징 데이터 구성부(33)는 도 4 내지 도 7의 실시예에서 설명한 특징점 결정부(21), 특징점 방향 추정부(22), 특징 데이터 구성부(23)와 기능이 완전히 동일하되, 다만 동영상을 구성하는 프레임들 중에서 프레임 선택부(31)에서 선택된 프레임에 대해서 해당 기능을 수행한다는 점에서만 차이가 있다. 따라서, 이들에 대한 상세 설명은 생략한다.
한편, 도 8에서 프레임별 특징 데이터 구성부(34)에서 프레임별로 특징 데이터를 구성하는 경우, 이전 프레임과의 중복 특징점을 제거하고 비중복 특징점만에 대해서 특징 데이터를 생성할 수도 있다. 도 9는 중복되는 특징점을 제거하는 실제 예를 나타낸 것이다. 도 9에서 좌측 사진은 이전 프레임이고 우측 사진은 현재 프레임을 나타내는데, 현재 프레임인 우측 사진에서 점선으로 표시된 특징점만이 비중복 특징점으로서 기록되고, 솔리드(solid)의 검은색으로 표시된 부분(1,2,3,4,5,6으로 표시한 사각형)들은 이전 프레임(좌측 사진)과 중복되는 특징점으로서 제거된 것임을 나타낸다.
한편, 도 8에서는 동영상 특징 데이터 생성부(30)가 프레임 선택부(31), 프레임별 특징점 결정부(32), 프레임별 특징점 방향 추정부(33), 프레임별 특징 데이터 구성부(33)를 별도로 구비하는 경우를 나타내었으나, 전술한 바와 같이 프레임별 특징점 결정부(32), 프레임별 특징점 방향 추정부(33), 프레임별 특징 데이터 구성부(33)는 도 4 내지 도 7의 실시예에서 설명한 특징점 결정부(21), 특징점 방향 추정부(22), 특징 데이터 구성부(23)와 기능이 동일하므로 이들을 생략하고 이들이 수행할 기능은 이미지 특징 데이터 생성부(20)를 통해 수행하도록 구성할 수도 있다. 이러한 경우, 동영상 특징 데이터 생성부(30)는 프레임 선택부(31)를 구비하며, 이미지 특징 데이터 생성부(20)를 통해 각각의 선택된 프레임별로 해당 기능을 수행하여 프레임별 특징 데이터를 생성하게 된다.
이와 같은 과정을 거치면 동영상 특징 데이터 생성부(30)는 동영상을 구성하는 프레임들 중 선택된 프레임들에 대한 프레임별 이미지 특징 데이터의 집합을 얻게 되고 이에 의하여 동영상 특징 데이터를 생성하게 된다. 도 4 내지 도 7에서 설명한 바와 같이, 이미지의 특징 데이터는 예컨대 (x 좌표, y 좌표, 크기, 방향, 이진 특징 벡터)로 구성되는 특징점들의 집합인 특징 데이터로 나타낼 수 있는데, 동영상 특징 데이터 생성부(30)에 의해 생성되는 동영상 특징 데이터는 여기에 더하여 해당 동영상의 식별자(ID)로서 예컨대 해당 동영상의 번호 및 해당 프레임의 식별자(ID)로서 예컨대 해당 프레임의 번호를 포함하도록 구성할 수 있다. 이와 같이 구성되는 프레임의 이미지 특징 데이터는 다음과 같을 수 있다.
(vi, fj, xk, yk, sk, θk, 이진 특징 벡터)
여기에서, vi는 i번째 동영상을 의미하며, fj는 해당 동영상 즉, i번째 동영상의 j번째 프레임을 의미하고, xk, yk, sk, θk 는 각각 k번째 특징점의 x좌표, y좌표, 크기, 방향을 나타낸다. 이진 특징 벡터는 전술한 바와 같이 생성되며 예컨대 "011101"등과 같이 표현될 수 있다. 이러한 동영상 특징 데이터는 동영상 ID, 프레임 ID를 제외하고는 전술한 이미지 특징 데이터 생성부(20)에서 생성되는 이미지 특징 데이터와 형태가 동일하므로 후술하는 해쉬 생성부(30)를 참조하여 이미지/동영상 매칭부(40)에서 이미지와 동영상의 비교를 효율적으로 또한 신속하게 이루어질 수 있도록 한다.
다음으로, 이미지/동영상 매칭부(40)에 대하여 설명한다. 도 10은 이미지/동영상 매칭부(40)의 구성의 일예를 나타낸 도면으로서, 도 10을 참조하면, 이미지/동영상 매칭부(40)는 해쉬 검색부(41), 후보 선정부(42), 대응 특징점 결정부(43), 신뢰도 추정부(44)를 포함한다.
해쉬 검색부(41)는 이미지 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 인덱스로 하여 해쉬 테이블을 검색하여 해당 인덱스에 속한 동영상 특징 데이터를 획득하는 기능을 수행한다. 이를 위해서, 동영상 관련 서비스 제공 시스템(100)은 해쉬 생성부(미도시)를 더 포함할 수 있다. 해쉬 생성부는 동영상 특징 데이터 생성부(30)에서 생성된 동영상 특징 데이터들에 대해 프레임별 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 해쉬 테이블의 인덱스로 사용하여 해쉬 테이블을 생성하는 기능을 수행하며, 이는 해쉬 검색부(41)에 의해 보다 신속한 검색을 수행하기 위한 구성이다.
도 11은 해쉬 생성부에 의해 생성되는 해쉬 테이블의 생성 과정의 일예를 나타낸 것이다. 도 11을 참조하면, vi 는 동영상의 식별자(ID)로서 기능하는 동영상의 번호, fi 는 동영상 내 프레임의 식별자(ID)로서 기능하는 프레임의 번호, xi, yi 는 해당 프레임의 i번째 특징점의 x, y 좌표, si 는 해당 프레임의 i번째 특징점의 크기, θi 는 해당 프레임의 i번째 특징점의 방향을 나타낸다. 이어서, 전술한 바와 같은 방법에 의해 형성되는 이진 특징 벡터들이 포함된다. 여기에서, 이들 이진 특징 벡터의 앞부분 소정 k비트(도 11에서는 상위 3비트)만을 이용하여 해쉬 테이블의 버킷을 구성하고 각각의 버킷에 해당하는 특징점의 (vi, fi, xi, yi, si, θi) 를 삽입(도 11의 우측 참조)함으로써 해쉬 테이블을 생성할 수 있게 된다. 만약, 전술한 바와 같이 이진 특징 벡터들이 중요도 순으로 정렬되어 있는 경우에는 중요도 순으로 해쉬 테이블이 생성될 수 있으므로, 이진 특징 벡터의 세부적인 차이에 둔감한 해쉬 테이블을 생성할 수 있다. 한편, 검색의 정확도를 보다 높이기 위해 서로 다른 비트를 선택하여 다수의 해쉬 테이블을 구성할 수도 있다.
해쉬 검색부(41)는 이미지의 각각의 특징점에 대해 전술한 바와 같이 이미지 특징 데이터 생성부(20)에 의해 생성된 특징 데이터에 포함되어 있는 이진 특징 벡터에 기초하여, 전술한 바와 같이 해쉬 생성부에 의해 생성된 해쉬 테이블을 검색하여 해당 특징점의 이진 특징 벡터의 소정의 앞자리 k비트(도 11에서는 상위 3비트)에 매칭되는 버킷을 우선 검색하고, 검색된 해당 버킷 내에 포함되어 있는 모든 (vi, fi, xi, yi, si, θi)를 가져 오게 된다.
후보 선정부(42)는 상기 해쉬 검색부(41)에 의해 검색된 데이터와 이미지 특징 데이터를 비교하여 매칭되는 동영상을 결정하고, 상기 결정된 동영상을 구성하는 프레임중 적어도 하나 이상의 프레임을 결정하는 기능을 수행한다. 즉, 후보 선정부(42)는 이미지 특징 데이터와 상기 해쉬 검색부(41)에 의해 획득된 동영상 특징 데이터들을 비교하여 가장 많이 매칭되는 동영상 특징 데이터에 해당하는 동영상을 결정하고, 상기 결정된 동영상을 구성하는 프레임 중에서 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정한다. 해쉬 검색부(41)에 의해 가져온 모든 (vi, fi, xi, yi, si, θi)들로부터 vi값에 기초하여 가장 많이 매칭된 동영상이 어떤 것인지를 결정할 수 있다. vi는 동영상의 식별자(ID)로서 기능하는 번호이므로, 가장 많이 나타나는 vi값을 찾아냄으로써 매칭되는 동영상을 결정할 수 있다. 동영상이 어떤 것인지 즉, 동영상의 식별자가 결정되면, fi에 기초하여 해당 동영상의 프레임 중에서 가장 많이 매칭되는 적어도 하나 이상인 C개의 프레임을 결정한다. 전술한 바와 같이, fi는 프레임의 식별자이므로, 해당 동영상에서 가장 많이 나타나는 fi값을 순서대로 찾고, 이중에서 일정 갯수(예컨대, 5개)의 프레임을 선택함으로써 프레임을 결정할 수 있게 된다.
한편, 후보 선정부(42)는 상기 해쉬 검색부(41)에 의해 검색된 데이터와 이미지 특징 데이터를 비교하여 매칭되는 동영상을 먼저 결정하지 않고, 각각의 동영상에 포함되어 있는 프레임들과 비교하여 매칭되는 적어도 하나 이상의 프레임을 결정하도록 구성할 수 있다. 즉, 후보 선정부(42)는 이미지 특징 데이터와 상기 해쉬 검색부(41)에 의해 획득된 동영상 특징 데이터들을 비교하여 각각의 동영상을 구성하는 프레임 중에서 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정한다. 전술한 바와 같이, 해쉬 검색부(41)에 의해 가져온 모든 (vi, fi, xi, yi, si, θi)들로부터 vi값에 기초하여 가장 많이 매칭된 동영상이 어떤 것인지를 결정하는 과정을 생략하고, fi에 기초하여 특정 동영상의 프레임 중에서 가장 많이 매칭되는 적어도 하나 이상인 C개의 프레임을 결정한다. 이 경우, C개의 프레임들은 그 일부가 다른 동영상에 속하는 것일 수 있다.
대응 특징점 결정부(43)는 이미지의 이미지 특징 데이터와 상기 후보 선정부(41)에서 결정된 적어도 하나 이상의 프레임의 이미지 특징 데이터에 기초하여 이미지와 상기 결정된 프레임 사이에서 대응하는 특징점의 쌍을 결정하는 기능을 수행한다. 대응 특징점 결정부(43)는 이미지 특징 데이터와 각각의 프레임의 이미지 특징 데이터를 비교하여 대응되는 특징점의 쌍을 결정하는데, 이는 공지 기술에서 알려진 바와 같이 예컨대 특징 데이터간의 거리(distance)를 계산함으로써 결정될 수 있다. 즉, 비교되는 양 이미지와 프레임의 각각의 특징점의 특징 데이터에 해밍 거리(Hamming distance), 유클리디안 거리(Euclidean distance) 등과 같은 함수를 적용하여 거리의 차이를 계산하여 거리의 차이가 소정 임계치 이하인 경우에 해당하는 특징점들을 서로 대응하는 특징점의 쌍인 것으로 결정할 수 있다. 여기에서, 공지 기술로서 널리 알려져 있는 RANSAC(RANdom Sample Consensus) 알고리듬을 이용할 수도 있다. 한편, 이미지의 좌표 사이의 변환 행렬은 일반적인 호모그래피(Homography) 변환을 비롯하여 그 특수한 경우인 회전, 평행 이동, 스케일링 등의 조합이 될 수 있다. 이와 같이, 대응 특징점 결정부(43)는 비교되는 같은 종류의 특징 데이터(특징 데이터가 어떠한 것이건간에 상관없이)의 거리 함수 등과 같은 값을 계산하는 등과 같은 방식을 사용하여 대응되는 특징점의 쌍의 집합을 결정할 수 있다. 대응 특징점 결정부(43)는 이와 같이 종래 기술에서 알려진 방법을 그대로 사용할 수 있으며 이는 본 발명의 직접적인 구성은 아니므로 이에 대한 상세 설명은 생략하기로 한다.
신뢰도 추정부(44)는 대응 특징점 결정부(43)에서 결정된 특징점의 쌍들에 포함된 특징점의 특징점 방향 정보에 기초하여 이미지와 동영상 사이의 매칭의 신뢰도를 추정하는 기능을 수행한다. 신뢰도 추정부(44)는 대응 특징점 결정부(43)에서 결정된 특징점의 쌍들에 포함된 특징점의 특징점 방향 정보에 기초하여 이미지와 동영상 사이의 매칭 신뢰도를 추정하는데, 이는 다음과 같은 방법을 통해 이루어질 수 있다.
우선, 비교되는 두 이미지(즉, 이미지와 각각의 프레임) 사이에 서로 대응하는 특징점의 쌍들을 (p1, q1), ..., (pn, qn) 이라 하고, 각 특징점의 방향이 θ(p1), θ(q1),...과 같이 주어진다고 하자(여기서, 서로 대응하는 특징점의 쌍들의 집합은 전술한 대응 특징점 결정부(43)에서 결정된 것들이다).
만일 두 이미지가 같은 이미지이고 과도한 변환을 거치지 않았다면, 특징점의 방향 차이 추정치인
Figure PCTKR2011008614-appb-I000009
는 모든 대응하는 특징점 쌍에 대해 일정한 값(두 이미지 사이의 회전 변환 각도)을 가져야 한다. 이 참값을 d 라 하고 각도를 추정하는 데 있어 랜덤한 에러가 발생할 수 있으므로 이를 확률 밀도 함수에 기초하여 모델링한 후, 그 평균값과 분산값을 이용하여 특징점의 쌍을 관측할 확률을 구할 수 있다. 확률 밀도 함수로서는 예컨대 평균이 0이고 표준 편차가 σ인 정규 분포를 사용할 수 있는데, 이 경우
Figure PCTKR2011008614-appb-I000010
(평균이 d 이고 분산이 σ2인 정규 분포) 로 모델링될 수 있다.
실제로는 참값 d가 알려져 있지 않으므로 n개의 특징점 쌍을 이용하여 d를 추정하면
Figure PCTKR2011008614-appb-I000011
와 같다. 이제 (p1, q1),...,(pn, qn) 의 특징점 쌍을 관측할 확률 p는
Figure PCTKR2011008614-appb-I000012
와 같이 나타낼 수 있는데, 여기서 G 는 평균이 0이고 표준 편차가 1인 표준 정규 분포의 확률 함수를 나타낸다. 이와 같이 얻어진 p값 또는 p값의 함수 예컨대 log(p) 값 등을 검출 신뢰도로 사용하여 미리 설정해 놓은 임계치 Tm 과 비교하게 되면, 이미지 사이의 상호 관계의 분석 신뢰도를 추정할 수 있게 된다.
이와 같은 과정을 통해 신뢰도 추정부(44)는 대응 특징점 결정부(43)에서 결정되는 특징점의 쌍들간의 매칭의 신뢰도 즉, 상호 관계의 분석 신뢰도를 추정할 수 있게 되며, 임계치 이상인 경우에만 최종적으로 비교되는 두 이미지가 매칭되는 것 즉, 동일성이 있는 것으로 판단할 수 있게 된다. 또한, 상기 확률 p값 자체를 제공하면서 비교되는 이미지 사이의 동일성 여부를 확률적으로 제공하도록 할 수도 있음은 물론이다. 이와 같은 구성에 의하면, 대응되는 특징점의 쌍들을 특징점의 방향 정보에 기초하여 그 매칭의 신뢰도를 추정함으로써, 종래 기술에 비하여 특징점이 매우 적은 경우에도 안정적으로 신뢰도를 추정할 수 있으므로, 결과적으로 정확도를 손상시키지 않으면서도 신속하게 처리할 수 있게 된다. 신뢰도 추정부(44)는 복수개의 프레임에 대해서 신뢰도를 추정할 수 있으므로, 그 결과를 제공함에 있어서 각각의 프레임에 대해서 확률값에 기초한 유사도에 대한 정보를 제공할 수도 있고, 확률값이 가장 높은 프레임을 결과로서 제공할 수도 있을 것이다.
이와 같은 과정을 수행하게 되면, 이미지/동영상 매칭부(40)는 이미지가 어떠한 동영상에 속하는 것인지, 또한 동영상의 어떠한 프레임에 해당하는지, 동영상의 특정 프레임과 어느 정도의 확률로 매칭된다고 판단할 수 있는지 등과 같은 관계를 분석할 수 있게 된다.
한편, 동영상 관련 서비스 제공 시스템(100)은 사용자로부터 사용자 이벤트가 발생한 이미지와 상기 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 각종 정보를 저장하고 관련 통계 자료를 산출하는 정보/통계 관리부(미도시)를 더 포함할 수 있다. 이러한 구성에 의하면, 사용자가 어떠한 이미지를 클릭했는지(즉, 어떠한 이미지에 집중했는지), 또한 동영상 중 어떠한 프레임이 가장 많이 재생되었는지(즉, 사용자가 관심있는 부분이 어떤 부분인지) 등과 같은 정보를 획득하고 이를 데이터베이스화할 수 있으므로, 이를 이용하여 각종 통계 및 광고 정보에 이용할 수 있게 된다.
도 12는 도 1 내지 도 11에서 설명한 동영상 관련 서비스 제공 시스템(100)에 의해 이루어지는 동영상 관련 서비스 제공 방법의 일실시예를 나타낸 흐름도이다.
도 12를 참조하면, 우선, 동영상 관련 서비스 제공 시스템(100)은 이미지(200)의 이미지 관련 데이터를 획득한다(S1000). 이는 전술한 바와 같이, 웹 페이지 등과 같은 전자 문서에 미리 포함되어 있는 스크립트 또는 위젯 등에 의해 자동적으로 실행되어 동영상 관련 서비스 제공 시스템(100)의 이미지 연동부(10)로 전송될 수 있다.
이미지 관련 데이터가 획득되면, 동영상 관련 서비스 제공 시스템(100)은 획득된 이미지 관련 데이터에 기초하여 이미지(200)에 대한 이미지 특징 데이터를 생성한다(S1100). 이미지 특징 데이터를 생성하는 방법은 전술한 바와 같다. 한편, 동영상 관련 서비스 제공 시스템(100)은 동영상에 대한 동영상 특징 데이터 또한 전술한 바와 같은 방법에 의하여 생성해 둔다(S1200). 도 12에서는, 설명의 편의를 위하여 동영상 특징 데이터를 생성하는 단계(S1200)를 이미지 특징 데이터 생성 단계(S1100) 이후에 수행되는 것으로 설명하였으나, 실제로 동영상 특징 데이터를 생성하는 단계(S1200)는 상기 단계(S1000) 및 단계(S1100)과 병행하여 독립적으로 또는 미리 수행해 둘 수 있다. 특히, 본 발명은 다수의 동영상들에 대하여 미리 동영상 특징 데이터를 생성해 두고 이미지 관련 데이터가 획득될 때 해당 이미지에 대해 대응되는 동영상 또는 프레임을 결정하므로 다수의 동영상들에 대해 미리 상기 단계(S1200)를 수행해 두는 것이 바람직하다.
다음으로, 상기 단계(S1100)에서 생성된 이미지 특징 데이터와 상기 단계(S1200)에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정한다(S1300). 이미지에 대응되는 동영상 또는 프레임을 결정하는 방법 또한 전술한 바와 같으므로 상세 설명은 생략한다.
단계(S1300)까지를 수행하게 되면, 이미지들 각각에 대하여 대응되는 동영상 또는 프레임이 결정되고 해당 정보는 이미지들 각각에 대응하여 이미지 데이터베이스(미도시)에 저장된다.
이러한 상태에서, 이미지에 대한 사용자 이벤트를 수신하면(S1400), 동영상 관련 서비스 제공 시스템(100)은 수신되는 해당 이미지에 대한 사용자 이벤트에 따라 상기 단계(S1300)에서 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하게 된다(S1500). 여기에서, 전술한 바와 같이, 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스이거나, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스일 수 있다. 또한, 사용자 이벤트는 해당 이미지가 포함된 웹 페이지와 같은 전자 문서를 통해 제공되는 선택 인터페이스에 대해서 이루어진 경우에 수신되도록 구성할 수도 있다. 또한, 사용자 이벤트가 발생한 경우 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 사용자측에 제공하고, 이러한 사용자 인터페이스를 통한 사용자 요청 신호에 따라 해당하는 동영상 관련 서비스를 제공하도록 구성할 수도 있음은 전술한 바와 같다.
이상에서, 본 발명에 의한 바람직한 실시예를 참조하여 본 발명을 설명하였으나, 본 발명은 상기 실시예에 한정되는 것이 아니며, 본 발명의 범위 내에서 여러 형태의 변형 및 수정 실시가 가능함은 물론이다.
예컨대, 전술한 실시예에서, 해쉬 생성부와 해쉬 검색부(41)는 필수적인 구성 요소는 아니므로 생략할 수도 있는데, 이들은 해쉬 테이블을 이용하여 보다 신속한 검색이 이루어지도록 하는 구성이기 때문이다. 이들이 생략되는 경우 특징 데이터를 적절히 비교할 수 있는 종래의 기술을 사용하거나 기타 데이터 검색에 사용되는 다른 대안적인 방법을 사용할 수 있을 것이다.
또한, 전술한 실시예에서, 도 4 내지 도 11을 참조하여 본 출원인에 의해 발명된 이미지/동영상 특징 데이터 생성 방법 및 비교 매칭 방법을 설명하였으나, 이러한 방법 이외에 기타 적절한 다른 방법을 사용할 수도 있음은 물론이다.
또한, 본 발명에 의한 동영상 관련 서비스 제공 시스템은 복수개의 웹 서버와 네트워크를 통해 연결되어 웹 서버 각각을 통해 제공되는 웹 페이지와 연동하도록 구성할 수도 있으나, 전술한 바와 같이 웹 서버 자체가 본 발명에 의한 동영상 관련 서비스 제공 시스템을 포함하도록 구성할 수도 있음은 전술한 바와 같다.
또한, 상기 실시예에 있어서, 네트워크는 인터넷과 이동 통신망을 결합일 수 있으며, 본 발명은 이러한 네트워크의 구성이나 구체적인 관계에는 종속되지 않음을 유의해야 한다. 예컨대, 웹 서버를 통한 웹 페이지에 의해 컴퓨터 등과 같은 클라이언트 단말기를 이용하는 경우, 이미지들은 물리적으로는 각각의 웹 서버에 포함되어 클라이언트 단말기로 제공될 수 있다. 또한, 전술한 바와 같이, 클라이언트 단말기로서 스마트폰을 이용하여, 스마트폰에 설치된 어플리케이션을 이용하는 환경인 경우에는, 해당 어플리케이션을 실행시켜서 이미지들이 포함되어 있는 특정한 서비스 서버에 스마트폰이 접속하게 되고(이는 이동통신망이나 인터넷을 통해 공지의 방법에 의해 이루어지게 된다), 해당 서비스 서버는 어플리케이션을 통해 스마트폰으로 이미지가 포함된 화면을 제공하게 되고(이러한 화면을 전술한 바와 같은 전자 문서라 할 수 있다), 스마트폰 사용자는 해당 화면에 제공되는 이미지를 선택하는 등의 방식에 의하여 해당 이미지와 관련된 동영상 관련 서비스가 이루어지게 될 것이다. 이러한 환경인 경우에도 해당 서비스 서버는 물리적으로 동영상 관련 서비스 제공 시스템(100)에 통합되어 구성될 수도 있고 별도로 구성되어 해당 서비스 서버와 동영상 관련 서비스 제공 시스템(100)이 네트워크를 통해 결합되도록 구성될 수도 있음은 물론이다.
또한, 상기 실시예에서 동영상 관련 서비스 제공 시스템(100)은 이미지 연동부(10)를 통해 이미지 관련 데이터를 획득하는 경우 크롤러나 스크립트 방식을 이용하는 것을 예로 들어서 설명하였으나 본 발명은 이러한 방식에 한정되지 않는다. 예컨대, 이미지 연동부(10)는 별도의 웹 서버나 동영상 관련 서비스 제공 시스템(100) 내부에 존재하는 이미지들에 대한 정보를 일괄적으로 입력받을 수도 있다. 이는 특정 서버의 주소 정보를 이용하여 해당 서버에 접속하여 이미지가 포함된 전자 문서만을 검색하도록 하는 방식이거나 사용자에 의해 수동으로 입력되는 방식일 수도 있다.

Claims (31)

  1. 이미지에 기반하여 동영상 관련 서비스를 제공하는 시스템에 있어서,
    이미지의 이미지 관련 데이터를 획득하고, 이미지에 대한 사용자 이벤트를 수신하는 이미지 연동부;
    상기 이미지 연동부에서 획득된 이미지 관련 데이터에 기초하여 이미지에 대한 이미지 특징 데이터를 생성하는 이미지 특징 데이터 생성부;
    동영상에 대한 동영상 특징 데이터를 생성하는 동영상 특징 데이터 생성부;
    상기 이미지 특징 데이터 생성부에서 생성된 이미지 특징 데이터와 상기 동영상 특징 데이터 생성부에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 이미지/동영상 매칭부; 및
    상기 이미지 연동부에서 수신되는 이미지에 대한 사용자 이벤트에 따라 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하는 서비스 수행부
    를 포함하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  2. 제1항에 있어서,
    상기 이미지 연동부는, 이미지를 포함하는 전자 문서에 포함되어 있는 스크립트에 의하여 이미지 관련 데이터를 획득하고 사용자 이벤트를 수신하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  3. 제1항에 있어서,
    상기 동영상 특징 데이터 생성부에서 생성되는 동영상 특징 데이터는 동영상을 구성하는 프레임들 중 적어도 어느 하나 이상에 대한 프레임별 이미지 특징 데이터와, 프레임 식별자 및 동영상 식별자를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  4. 제3항에 있어서,
    상기 이미지/동영상 매칭부는, 상기 이미지 특징 데이터 생성부에서 생성된 이미지 특징 데이터와 동영상 특징 데이터 생성부에서 생성되는 동영상 각각에 대한 프레임별 이미지 특징 데이터로 구성되는 동영상 특징 데이터를 비교하여 이미지에 대응되는 동영상 또는 프레임을 결정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  5. 제4항에 있어서,
    상기 이미지/동영상 매칭부에 의해 결정된 동영상 또는 프레임에 대한 정보를 이미지에 대응하여 저장하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  6. 제1항에 있어서,
    상기 서비스 수행부에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  7. 제1항에 있어서,
    상기 서비스 수행부에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  8. 제6항 또는 제7항에 있어서,
    상기 사용자 이벤트는 이미지가 포함된 전자 문서상에서 제공되는 선택 인터페이스에 대해서 이루어진 경우 상기 이미지 연동부를 통해 수신되는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  9. 제1항에 있어서,
    상기 서비스 수행부는, 사용자 이벤트가 발생한 경우 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통한 사용자 요청 신호에 따라 해당하는 동영상 관련 서비스를 제공하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  10. 제1항에 있어서,
    상기 이미지 특징 데이터 생성부는,
    이미지로부터 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 이미지 특징점 결정부;
    상기 특징점 결정부에서 결정된 특징점들 각각에 대한 방향 정보를 추정하는 이미지 특징점 방향 추정부; 및
    상기 이미지 특징점 결정부에서 결정된 특징점 각각에 대하여, 상기 특징점 정보와 상기 방향 정보에 기초하여 이진 특징 벡터를 생성하고, 상기 생성된 이진 특징 벡터를 포함하는 이미지의 특징 데이터를 구성하는 이미지 특징 데이터 구성부
    를 포함하고,
    상기 동영상 특징 데이터 생성부는,
    동영상 각각에 대하여, 동영상을 구성하는 프레임들을 일정 시간 간격으로 추출하고 추출된 프레임을 적어도 하나 이상의 이전 추출 프레임들과 차이를 계산하고, 차이가 임계치 이상인 경우에 선택된 해당 프레임을 선택하는 프레임 선택부;
    상기 프레임 선택부에서 선택된 프레임에 대한 특징점을 결정하고 결정된 특징점의 특징점 정보를 추출하는 프레임별 특징점 결정부;
    상기 프레임별 특징점 결정부에서 결정된 특징점들 각각에 대한 방향 정보를 추정하는 프레임별 특징점 방향 추정부; 및
    상기 프레임별 특징점 결정부에서 결정된 특징점 각각에 대하여, 상기 특징점 정보와 상기 방향 정보에 기초하여 이진 특징 벡터를 생성하고, 상기 생성된 이진 특징 벡터를 포함하는 프레임별 특징 데이터를 구성하는 프레임별 특징 데이터 구성부
    를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  11. 제10항에 있어서,
    상기 이미지 특징 데이터 구성부와 프레임별 특징 데이터 구성부는, 상기 이미지 특징점 결정부와 프레임별 특징점 결정부에서 결정된 특징점 각각에 대하여 특징점을 포함하는 주변 이미지 영역을 생성하고 상기 방향 정보에 기초하여 생성된 영역들을 동일 방향으로 정렬한 후, 정렬된 주변 이미지 영역들을 각각 부영역들로 분할하고, 분할된 부영역들의 밝기값의 평균값에 기초하여 이진 특징 벡터를 생성하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  12. 제11항에 있어서,
    상기 이진 특징 벡터는, 상기 부영역들의 밝기값의 평균값의 차분 벡터와 차차분 벡터 중에서 선택된 적어도 어느 하나에 의해 생성되는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  13. 제12항에 있어서,
    상기 부영역들의 밝기값의 평균값의 차분 벡터와 차차분 벡터 중에서 적어도 어느 하나를 선택하는 것은 이진 특징 벡터의 각 비트에 대응하여 선택되는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  14. 제13항에 있어서,
    상기 각 비트에 대응하여 선택된 차분 벡터와 차차분 벡터들에 대해 선형 조합 또는 비선형 조합을 계산하고 그 결과값을 임계치와 비교함으로써 이진 특징 벡터의 해당 비트의 값을 결정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  15. 제14항에 있어서,
    상기 이진 특징 벡터의 각 비트값에 대해 미리 설정해둔 기준에 따라 정렬을 수행하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  16. 제10항에 있어서,
    상기 동영상 특징 데이터 생성부는, 각각의 동영상에 대한 동영상의 식별자, 동영상의 프레임별 식별자, 프레임별 특징점 좌표, 특징점 방향 정보 및 이진 특징 벡터를 포함하는 동영상 특징 데이터를 생성하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  17. 제1항에 있어서,
    상기 이미지/동영상 매칭부는,
    상기 이미지 특징 데이터와 동영상 특징 데이터의 프레임별 이미지 특징 데이터를 비교하여 매칭되는 동영상을 결정하고 상기 결정된 동영상을 구성하는 프레임중 적어도 하나 이상의 프레임을 결정하거나, 상기 이미지 특징 데이터와 동영상 특징 데이터의 프레임별 이미지 특징 데이터를 비교하여 매칭되는 적어도 하나 이상의 프레임을 결정하는 후보 선정부;
    이미지의 이미지 특징 데이터와 상기 후보 선정부에서 결정된 적어도 하나 이상의 프레임의 이미지 특징 데이터에 기초하여 이미지와 상기 결정된 프레임 사이에서 대응하는 특징점의 쌍을 결정하는 대응 특징점 결정부; 및
    상기 대응 특징점 결정부에서 결정된 특징점의 쌍들에 포함된 특징점의 특징점 방향 정보에 기초하여 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하는 신뢰도 추정부
    를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  18. 제17항에 있어서,
    상기 신뢰도 추정부는, 상기 각각의 특징점의 쌍에 포함된 특징점들의 방향 차이값의 추정치에 대한 확률 밀도 함수에 기초하여 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  19. 제18항에 있어서,
    상기 확률 밀도 함수에 의해 상기 추정치의 평균값과 분산값을 계산하고, 상기 평균값과 분산값에 따른 표준 정규 분포 함수에 의해 특징점의 쌍을 관측할 확률(p)을 계산하고, 상기 계산된 확률(p) 또는 계산된 확률(p)에 기초한 함수와 임계치를 비교함으로써 이미지와 동영상 사이의 관계 분석 신뢰도를 추정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  20. 제19항에 있어서,
    상기 특징점의 쌍을 관측할 확률(p)은,
    Figure PCTKR2011008614-appb-I000013
    (여기서, n은 대응되는 특징점의 쌍의 갯수, G는 평균이 0이고 표준 편차가 1인 표준 정규 분포의 확률 함수,
    Figure PCTKR2011008614-appb-I000014
    는 모든 특징점의 쌍의 방향 차이값의 평균값(
    Figure PCTKR2011008614-appb-I000015
    ),
    Figure PCTKR2011008614-appb-I000016
    는 모든 특징점의 쌍의 방향 차이값의 확률 밀도 함수에 의한 추정치)에 의해 계산되는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  21. 제17항에 있어서,
    상기 동영상 특징 데이터 생성부에 의해 생성되는 동영상 특징 데이터들에 대해 각 프레임별 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 해쉬 테이블의 인덱스로 사용하여 해쉬 테이블을 생성하는 해쉬 생성부
    를 더 포함하고,
    상기 관계 분석부는,
    이미지 특징 데이터에 포함된 이진 특징 벡터의 적어도 하나 이상의 비트를 인덱스로 하여 상기 해쉬 생성부에 의해 생성된 해쉬 테이블을 검색하여 해당 인덱스에 속한 동영상 특징 데이터를 획득하는 해쉬 검색부
    를 더 포함하고,
    상기 후보 선정부는,
    상기 이미지 특징 데이터와 상기 해쉬 검색부에 의해 획득된 동영상 특징 데이터들을 비교하여 가장 많이 매칭되는 동영상 특징 데이터에 해당하는 동영상을 결정하고 상기 결정된 동영상을 구성하는 프레임 중에서 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정하거나, 상기 이미지 특징 데이터와 상기 해쉬 검색부에 의해 획득된 동영상 특징 데이터들을 비교하여 상기 이미지 특징 데이터와 가장 많이 매칭되는 프레임 특징 데이터에 해당하는 프레임을 결정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  22. 제1항에 있어서,
    사용자로부터 사용자 이벤트가 발생한 이미지와 상기 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 저장하고 통계 자료를 산출하는 정보/통계 관리부
    를 더 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  23. 제22항에 있어서,
    상기 정보/통계 관리부는, 동영상 재생 서비스와 관련된 정보를 더 저장하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 시스템.
  24. 이미지에 기반하여 동영상 관련 서비스를 제공하는 방법에 있어서,
    이미지의 이미지 관련 데이터를 획득하는 제1 단계;
    상기 획득된 이미지 관련 데이터에 기초하여 이미지에 대한 이미지 특징 데이터를 생성하는 제2 단계;
    동영상에 대한 동영상 특징 데이터를 생성하는 제3 단계;
    상기 제2 단계에서 생성된 이미지 특징 데이터와 상기 제3 단계에서 생성된 동영상 특징 데이터에 기초하여 이미지에 대응되는 적어도 하나 이상의 동영상 또는 프레임을 결정하는 제4 단계;
    이미지에 대한 사용자 이벤트를 수신하는 제5 단계; 및
    상기 수신되는 이미지에 대한 사용자 이벤트에 따라 상기 제4 단계에서 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 동영상 관련 서비스를 수행하는 제6 단계
    를 포함하는 이미지 기반 동영상 관련 서비스 제공 방법.
  25. 제24항에 있어서,
    상기 제3 단계에서 생성되는 동영상 특징 데이터는 동영상을 구성하는 프레임들 중 적어도 어느 하나 이상에 대한 프레임별 이미지 특징 데이터와, 프레임 식별자 및 동영상 식별자를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  26. 제25항에 있어서,
    상기 제4 단계는, 상기 이미지 특징 데이터와 동영상 각각에 대한 프레임별 이미지 특징 데이터로 구성되는 동영상 특징 데이터를 비교하여 이미지에 대응되는 동영상 또는 프레임을 결정하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  27. 제26항에 있어서,
    상기 제4 단계에서 결정된 동영상 또는 프레임에 대한 정보를 이미지에 대응하여 저장하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  28. 제24항에 있어서,
    상기 제6 단계에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상의 해당 프레임부터 동영상이 재생되는 프레임 재생 서비스를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  29. 제24항에 있어서,
    상기 제6 단계에서 제공되는 동영상 관련 서비스는, 해당 이미지에 대응되는 것으로 결정된 동영상 또는 프레임과 관련된 정보를 제공하는 동영상 정보 제공 서비스를 포함하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  30. 제28항 또는 제29항에 있어서,
    상기 사용자 이벤트는 해당 이미지가 포함된 전자 문서상에서 제공되는 선택 인터페이스에 대해서 이루어진 경우에 수신되는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
  31. 제24항에 있어서,
    상기 제6 단계는, 사용자 이벤트가 발생한 경우 제공되는 동영상 관련 서비스를 사용자가 선택할 수 있도록 하는 사용자 인터페이스를 제공하고, 상기 사용자 인터페이스를 통한 사용자 요청 신호에 따라 해당하는 동영상 관련 서비스를 제공하는 것을 특징으로 하는 이미지 기반 동영상 관련 서비스 제공 방법.
PCT/KR2011/008614 2011-03-03 2011-11-11 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법 WO2012118259A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110018803A KR101189609B1 (ko) 2011-03-03 2011-03-03 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법
KR10-2011-0018803 2011-03-03

Publications (1)

Publication Number Publication Date
WO2012118259A1 true WO2012118259A1 (ko) 2012-09-07

Family

ID=46758159

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/008614 WO2012118259A1 (ko) 2011-03-03 2011-11-11 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR101189609B1 (ko)
WO (1) WO2012118259A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019088335A1 (ko) * 2017-11-06 2019-05-09 전자부품연구원 지능형 협업 서버, 시스템 및 이의 협업 기반 분석 방법
CN111369599A (zh) * 2018-12-25 2020-07-03 阿里巴巴集团控股有限公司 一种图像匹配方法、设备、装置及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109361880A (zh) * 2018-11-30 2019-02-19 三星电子(中国)研发中心 一种展示静态图片对应的动态图片或视频的方法及系统
KR20210140862A (ko) 2020-05-14 2021-11-23 현대자동차주식회사 소프트웨어 업데이트 시스템 및 그 제어 방법
KR102515263B1 (ko) 2022-12-20 2023-03-29 주식회사 아티젠스페이스 휴대 단말 및 시스템
KR102580250B1 (ko) 2022-12-20 2023-09-19 주식회사 아티젠스페이스 휴대 단말 및 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030029410A (ko) * 2001-10-08 2003-04-14 한국전자통신연구원 웹 기반 영상 데이터 검색 시스템 및 그 방법
KR20060122690A (ko) * 2005-05-27 2006-11-30 햄펙스 주식회사 이미지 기반의 컨텐츠 제공 시스템 및 그 방법
KR20090096158A (ko) * 2008-03-07 2009-09-10 주식회사 코난테크놀로지 동영상 스틸컷 기반의 크로스미디어 검색 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030029410A (ko) * 2001-10-08 2003-04-14 한국전자통신연구원 웹 기반 영상 데이터 검색 시스템 및 그 방법
KR20060122690A (ko) * 2005-05-27 2006-11-30 햄펙스 주식회사 이미지 기반의 컨텐츠 제공 시스템 및 그 방법
KR20090096158A (ko) * 2008-03-07 2009-09-10 주식회사 코난테크놀로지 동영상 스틸컷 기반의 크로스미디어 검색 시스템 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019088335A1 (ko) * 2017-11-06 2019-05-09 전자부품연구원 지능형 협업 서버, 시스템 및 이의 협업 기반 분석 방법
CN111369599A (zh) * 2018-12-25 2020-07-03 阿里巴巴集团控股有限公司 一种图像匹配方法、设备、装置及存储介质
CN111369599B (zh) * 2018-12-25 2024-04-16 阿里巴巴集团控股有限公司 一种图像匹配方法、设备、装置及存储介质

Also Published As

Publication number Publication date
KR101189609B1 (ko) 2012-10-10
KR20120100124A (ko) 2012-09-12

Similar Documents

Publication Publication Date Title
WO2012115332A1 (ko) 이미지와 이미지 또는 이미지와 동영상 사이의 상호 관계 분석 장치 및 방법
WO2012118259A1 (ko) 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법
CN109284729B (zh) 基于视频获取人脸识别模型训练数据的方法、装置和介质
Chandrasekhar et al. The stanford mobile visual search data set
JP5612310B2 (ja) 顔認識のためのユーザーインターフェース
Chen et al. Building book inventories using smartphones
US12015807B2 (en) System and method for providing image-based video service
US20110080424A1 (en) Image processing
JP2011507081A (ja) 時間イベント・ベースの画紋法のためのコンピュータ実装方法、コンピュータ・プログラム、画像の著作権侵害を自動的に検出するための装置及びコンピュータ実装方法
Babaguchi et al. Linking live and replay scenes in broadcasted sports video
CN104991906B (zh) 信息获取方法、服务器、终端及数据库构建方法、装置
EP3989158A1 (en) Method, apparatus and device for video similarity detection
WO2012131653A2 (en) Devices, systems, methods, and media for detecting, indexing, and comparing video signals from a video display in a background scene using a camera-enabled device
WO2024091080A1 (ko) 동영상 자동 생성 방법 및 동영상 자동 생성 서버
WO2024091084A1 (ko) 동영상 자동 생성을 위한 참조 장면 추천 방법 및 참조 장면 추천 장치
WO2022205634A1 (zh) 数据展示方法、装置、设备、存储介质及程序
US20170013309A1 (en) System and method for product placement
Jin et al. Network video summarization based on key frame extraction via superpixel segmentation
CN110852172A (zh) 一种基于Cycle Gan图片拼贴并增强的扩充人群计数数据集的方法
JP5946315B2 (ja) 画像検索システム
KR101264733B1 (ko) 이미지에 기반한 동영상 관련 서비스 제공 시스템 및 방법
JP7307887B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20200074218A1 (en) Information processing system, information processing apparatus, and non-transitory computer readable medium
WO2024107000A1 (ko) 피드백 데이터를 이용한 사용자 맞춤형 리뷰 영상 생성 방법 및 서버
Ranjan et al. Video Summary Based on Visual and Mid-level Semantic Features

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11860068

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 15/11/13)

122 Ep: pct application non-entry in european phase

Ref document number: 11860068

Country of ref document: EP

Kind code of ref document: A1