WO2021149923A1 - Method and apparatus for providing image search - Google Patents

Method and apparatus for providing image search Download PDF

Info

Publication number
WO2021149923A1
WO2021149923A1 PCT/KR2020/018892 KR2020018892W WO2021149923A1 WO 2021149923 A1 WO2021149923 A1 WO 2021149923A1 KR 2020018892 W KR2020018892 W KR 2020018892W WO 2021149923 A1 WO2021149923 A1 WO 2021149923A1
Authority
WO
WIPO (PCT)
Prior art keywords
scene
keyword
keywords
search
image
Prior art date
Application number
PCT/KR2020/018892
Other languages
French (fr)
Korean (ko)
Inventor
안재용
강민수
Original Assignee
주식회사 씨오티커넥티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 씨오티커넥티드 filed Critical 주식회사 씨오티커넥티드
Priority claimed from KR1020200180768A external-priority patent/KR20210093744A/en
Publication of WO2021149923A1 publication Critical patent/WO2021149923A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream

Definitions

  • the following embodiments relate to an image search providing method and apparatus.
  • Users are often interested in some content of a specific image. That is, there are many cases where the user is interested in the content of a part of the image rather than the entire image. For example, there may be a case where a user who wants to watch a soccer relay wants to watch only a scene in which a specific player scores a goal, rather than watching the entire soccer relay video. Also, there may be a case where the viewer of the entertainment program wants to view only a specific scene.
  • the general video search method since the entire soccer relay or the entire entertainment program is the target of the search, it is impossible to search for some scenes of the video desired by the user.
  • Embodiments attempt to extract keywords at regular time intervals from an image.
  • Embodiments intend to generate metadata in which a keyword corresponding to a scene and time information are matched.
  • Embodiments are intended to provide a search for an image and a search for a specific scene based on the generated metadata.
  • An image search providing method comprises: receiving one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keywords from an image analysis engine; in successive shots, determining shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value as one scene; determining a final keyword representing the scene by statistically processing confidence values corresponding to keywords of shots constituting the scene; receiving a scene search request comprising a search query; determining a scene corresponding to the search query based on the final keyword; and providing an image corresponding to the determined scene.
  • the method of providing an image search may further include modifying the final keyword based on the search query.
  • the first threshold value may be determined based on a distribution of the confidence values.
  • the determining of the final keyword may include: determining a weight for each shot of the shots constituting the scene; weighted summing confidence values corresponding to keywords of shots constituting the scene based on the weights for each shot; and determining a keyword whose weighted sum is equal to or greater than a third threshold value as the final keyword.
  • the determining of the weight for each shot may include determining the weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene.
  • the third threshold value may be determined based on a distribution of the confidence values corresponding to the keywords of shots constituting the scene.
  • the weighted summing may include weighted summing confidence values corresponding to the candidate keywords of the shots constituting the scene based on the weight.
  • the determining of the scene corresponding to the search query may include: comparing the search query with a keyword equal to or greater than the third threshold; and determining a scene corresponding to the search query based on the comparison result.
  • the method of providing an image search further includes adding one or more relational keywords having a predetermined relation with the keywords equal to or greater than the third threshold, and determining a scene corresponding to the search query includes the relation
  • the method may include determining a scene corresponding to the search query by further considering keywords.
  • the image analysis engine may include an external image analysis engine that receives the image and generates the first metadata.
  • An image search providing apparatus receives one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keyword from an image analysis engine, and in successive shots, The shots in which the matching ratio of the candidate keywords are equal to or greater than the second threshold are determined as one scene, and confidence values corresponding to the keywords of shots constituting the scene are statistically processed to determine the final keyword representing the scene, and a processor that receives a scene search request including a search query, determines a scene corresponding to the search query based on the final keyword, and provides an image corresponding to the determined scene.
  • the processor may modify the final keyword based on the search query/
  • the first threshold value may be determined based on a distribution of the confidence values.
  • the processor determines a weight for each shot of the shots constituting the scene, weights and sums confidence values corresponding to keywords of the shots constituting the scene based on the weight for each shot, and the weighted sum is a third threshold value
  • the above keywords may be determined as the final keywords.
  • the processor may determine a weight for each shot of the shots constituting the scene based on the number of the candidate keywords included in each of the shots constituting the scene.
  • the third threshold value may be determined based on a distribution of the confidence values corresponding to the keywords of shots constituting a scene.
  • the processor may weight-add confidence values corresponding to the candidate keywords of the shots constituting the scene based on the weight.
  • the processor may compare the search query with a keyword equal to or greater than the third threshold, and determine a scene corresponding to the search query based on the comparison result.
  • the processor may determine a scene corresponding to the search query by adding one or more relational keywords having a predetermined relation with a keyword equal to or greater than the third threshold value, and further considering the relational keyword.
  • Embodiments may extract keywords from an image at regular time intervals.
  • Embodiments may generate metadata in which a keyword corresponding to a scene and time information are matched.
  • Embodiments may provide image search based on the generated metadata.
  • FIG. 1 is a diagram illustrating an example of a network environment according to an embodiment.
  • FIG. 2 is a diagram for explaining a method of operating an image search providing system according to an exemplary embodiment.
  • FIG. 3 is a diagram illustrating an example of an image search result page according to an exemplary embodiment.
  • FIG. 4 is a flowchart illustrating a method for providing an image search according to an exemplary embodiment.
  • FIG. 5 is a diagram for describing a specific method of determining a scene according to an exemplary embodiment.
  • first or second may be used to describe various elements, but these terms should be understood only for the purpose of distinguishing one element from another element.
  • a first component may be termed a second component, and similarly, a second component may also be termed a first component.
  • the embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
  • products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like.
  • FIG. 1 is a diagram illustrating an example of a network environment according to an embodiment.
  • a network environment may include a plurality of terminals 110 , 120 , 130 , 140 , a plurality of servers 150 , 160 , and a network 170 .
  • FIG. 1 is an example for the description of the invention, and the number of terminals or the number of servers is not limited as in FIG. 1 .
  • the plurality of terminals 110 , 120 , 130 , and 140 may be a fixed terminal implemented as a computer device or a mobile terminal.
  • a plurality of terminals 110 , 120 , 130 and 140 a smart phone, a mobile phone, a navigation device, a computer, a notebook computer, a digital broadcasting terminal, a PDA (Personal Digital Assistants), a PMP (Portable Multimedia Player) , tablet PC, HMD (Head mounted Display), TV, smart TV, etc.
  • the terminal 110 may communicate with the other terminals 120 , 130 , 140 and/or the servers 150 and 160 through the network 170 using a wireless or wired communication method.
  • the server 150 may communicate with the terminals 110 , 120 , 130 , 140 and/or other servers 160 through the network 170 using a wireless or wired communication method.
  • the communication method is not limited, and not only a communication method using a communication network (eg, a mobile communication network, a wired Internet, a wireless Internet, a broadcasting network) that the network 170 may include, but also short-range wireless communication between devices may be included.
  • the network 170 may include a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), and a broadband network (BBN). , the Internet, and the like.
  • PAN personal area network
  • LAN local area network
  • CAN campus area network
  • MAN metropolitan area network
  • WAN wide area network
  • BBN broadband network
  • the network 170 may include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree, or a hierarchical network, etc. not limited
  • Each of the servers 150 and 160 communicates with the plurality of terminals 110 , 120 , 130 , 140 and the network 170 through a computer device or a plurality of computer devices to provide commands, codes, files, contents, services, etc. can be implemented with
  • the server 150 may provide a file for installing an application to the terminal 110 connected through the network 170 .
  • the terminal 110 may install the application using the file provided from the server 150 .
  • OS operating system
  • at least one program eg, a browser or the installed application
  • the service provided by the server 150 or content can be provided.
  • the terminal 110 transmits a service request message to the server 150 through the network 170 under the control of the application
  • the server 150 transmits a code corresponding to the service request message to the terminal 110 . can be transmitted, and the terminal 110 can provide content to the user by composing and displaying a screen according to the code according to the control of the application.
  • FIG. 2 is a diagram for explaining a method of operating an image search providing system according to an exemplary embodiment.
  • an image search providing system may include a terminal 210 , an image search providing apparatus 220 , and an image analysis engine 230 .
  • the image search providing apparatus 220 includes a processor 221 and a database 222 .
  • the terminal 210 according to an embodiment may be one of the terminals 110 to 140 of FIG. 1
  • the image search providing apparatus 220 and the image analysis engine 230 are the servers 150 and 160 of FIG. 1 . can be one of
  • the image search providing apparatus 220 when a user requests a scene search including a search query to the image search providing apparatus 220 through the terminal 210, the image search providing apparatus 220 provides a search query It is possible to determine a scene corresponding to , and provide an image corresponding to the scene to the user.
  • the image search providing system utilizes keywords, appearance frequency, and relationship derived from one scene for the search, and furthermore, the user search results and viewing records are also utilized for the search, so that more accurate search results can be provided. there is.
  • the image search providing apparatus 220 may extract keywords related to an image corresponding to the corresponding time at regular time intervals. More specifically, the image search providing apparatus 220 may transmit an image corresponding to the corresponding time at regular time intervals to the image analysis engine 230 , and receive a keyword corresponding to each image from the image analysis engine 230 .
  • an image may be divided into minimum time intervals, and an image corresponding to each time may be referred to as a shot.
  • the image search providing apparatus 220 may transmit the shot to the image analysis engine 230 , and may receive first metadata corresponding to each shot from the image analysis engine 230 .
  • the first metadata may include one or more keywords corresponding to the image and a confidence value corresponding to the keywords.
  • the confidence value may be a numerical value relating to the degree of relation between the corresponding keyword and the shot. For example, the confidence value may be a value between 0 and 1, and the closer to 1, the higher the degree of the keyword related to the corresponding shot.
  • the image search providing apparatus 220 may determine a keyword having a confidence value equal to or greater than a first threshold value among one or more keywords as a candidate keyword.
  • the image search providing apparatus 220 may determine a scene including one or more shots based on the first metadata. Through this, the image search providing apparatus 220 may also determine a scene change time based on the first metadata. As an example, the image search providing apparatus 220 may determine, among consecutive shots, shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value as one scene.
  • a specific method of determining a scene based on the first metadata will be described in detail below with reference to FIG. 5 .
  • the image search providing apparatus 220 may determine second metadata corresponding to the scene, and may determine a scene corresponding to the search query input by the user based on the second metadata of the scene. For example, the image search providing apparatus 220 may statistically process confidence values corresponding to keywords of shots constituting a scene to determine a final keyword representing the scene.
  • the image analysis engine 230 may include an external image analysis engine that receives an image and generates first metadata corresponding to the input image.
  • the image analysis engine 230 may be a google vision API.
  • the google vision API builds metadata by finding the dominant object included in the image, and can classify objects in the image into thousands of categories using the built metadata.
  • the google vision API is merely exemplary, and may be employed and applied to various types of models or devices that output object recognition and corresponding metadata other than the above-described image analysis engine.
  • the image search providing apparatus 220 utilizes the first metadata received from the external image analysis engine and the image search providing apparatus 220 performs image analysis on its own. Because it does not, processing speed can be improved.
  • the image search providing apparatus 220 includes a processor 221 and a database 222 .
  • the image search providing apparatus 220 may include more components than those of FIG. 2 .
  • the image search providing apparatus 220 may further include other components such as a memory, a communication module, an input/output interface, and the like.
  • the memory is a computer-readable recording medium and may include a random access memory (RAM), a read only memory (ROM), and a permanent mass storage device such as a disk drive.
  • RAM random access memory
  • ROM read only memory
  • a permanent mass storage device such as a disk drive.
  • codes for a browser installed and driven in the operating system and at least one program code or the above-described application may be stored in the memory.
  • These software components may be loaded from a computer-readable recording medium separate from the memory using a drive mechanism.
  • the separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a memory card.
  • the software components may be loaded into the memory through a communication module rather than a computer-readable recording medium.
  • the at least one program may be loaded into the memory based on a file distribution system that distributes installation files of developers or applications.
  • the processor 221 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. Instructions may be provided to the processor 221 by a memory or communication module. For example, the processor 221 may be configured to execute a received instruction according to a program code stored in a recording device such as a memory.
  • the communication module may provide a function for the terminal 210 and the image search providing apparatus 220 to communicate with each other through a network, and may provide a function for communicating with another server. For example, a control signal, command, content, file, etc. provided under the control of the processor 221 of the image search providing apparatus 220 may be received by the terminal 210 through the communication module and the network 170 . .
  • FIG. 3 is a diagram illustrating an example of an image search result page according to an exemplary embodiment.
  • the image search result page may include a scene image title field 310 , a player field 320 for reproducing a scene image, and an additional information field 330 .
  • the scene video title field 310 may display a title of a scene video selected as a search result. According to the search word input by the user, "a scene where AAA and BBB enjoy a picture of a child in OOO" shown in FIG. 3 may be the title of the scene video.
  • a player for playing the scene video selected as a result of the search is displayed in the player field 320 .
  • the scene video may be set to be played only when the user clicks the play button of the player.
  • image quality information In the additional information field 330 , image quality information, file type information, capacity information, reproduction time information, screen size information, source information, and the like may be displayed.
  • the image search method may provide the user with a search result including not only the scene image selected as a result of the scene image search, but also the entire image selected as matching the search query. That is, the image search method may display the entire image search result and the scene image search result corresponding to the search word input by the user.
  • FIG. 4 is a flowchart illustrating a method for providing an image search according to an exemplary embodiment.
  • steps 410 to 460 may be performed by the image search providing apparatus 220 described above with reference to FIG. 2 .
  • the image search providing apparatus 220 may be implemented by one or more hardware modules, one or more software modules, or various combinations thereof.
  • the image search providing apparatus 220 receives one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keywords from the image analysis engine.
  • the image analysis engine may be the image analysis engine 230 described above with reference to FIG. 2 .
  • the image search providing apparatus 220 determines, among one or more keywords, a keyword having a confidence value equal to or greater than a first threshold value as a candidate keyword.
  • the image search providing apparatus 220 may regard keywords having a confidence value less than the first threshold value as noise among keywords corresponding to the shot.
  • the first threshold value may be determined based on a distribution of confidence values. For example, the first threshold value may be determined based on an average and variance of confidence values corresponding to a specific shot.
  • the video search providing apparatus 220 determines, among consecutive shots, shots in which the match ratio of the candidate keyword of each shot is equal to or greater than the second threshold value as one scene.
  • One or more consecutive shots may be grouped together to form a scene. For example, in the case of a scene in which the main character walks down the street, the scene may be divided into several shots from various angles, but all of the shots may be scenes in which the main character is walking. A specific method for determining a scene will be described with reference to FIG. 5 .
  • FIG. 5 is a diagram for describing a specific method of determining a scene according to an exemplary embodiment.
  • shot 1 510 to shot 3 530 are consecutive shots, and Table 1 below shows shots 1 510 to shot 3 530 received from the image analysis engine. Corresponding first metadata (eg, keyword and confidence value) are indicated.
  • first metadata eg, keyword and confidence value
  • the image search providing apparatus 220 may determine, as a candidate keyword, a keyword having a confidence value equal to or greater than a first threshold among keywords corresponding to each shot.
  • the first threshold value may be determined based on a distribution of confidence values. For example, the first threshold value may be determined as a confidence value corresponding to the lower 20%. Referring to Table 1, the first threshold value of the first shot 510 may be determined as 0.565, the first threshold value of the second shot 520 may be determined as 0.555, and the first threshold value of the third shot 530 may be determined as 0.615.
  • the keywords 'Animation', 'Exhibition', 'llustration', 'Conversation' and 'Mural' of the first shot 510 are excluded from the candidate keywords, and the keywords 'Luggage & bags' and 'Visual' of the second shot 520 are excluded.
  • Arts' may be excluded from the candidate keywords, and the keywords 'Black Hair', 'Conversation', and 'Jaw' of the shot 3 530 may be excluded from the candidate keywords.
  • the image search providing apparatus 220 may determine, among consecutive shots, shots in which the match ratio of candidate keywords of each shot is equal to or greater than the second threshold value as one scene.
  • the image search providing apparatus 220 may determine, as one scene, shots in which a match ratio of a candidate keyword with a previous shot is equal to or greater than a second threshold value.
  • shot 2 520 includes candidate keywords of shot 1 510 and 5 ('Man', 'Picture frame', Clothing', 'Art', 'Event') among 10 candidate keywords. match Also, in the shot 3 530 , three keywords ('Woman', 'Photography', and 'Gesture') match the keywords of the shot 2 520 out of 10 candidate keywords.
  • the second threshold value is, for example, 0.5
  • shot 2 520 matches 5 keywords of shot 1 510 out of 10 total keywords, so shot 1 510 and shot 2 520 are 0.5 (5) /10), which is equal to or greater than the second threshold value of 0.5, it can be determined as a shot constituting one scene.
  • shot 3 530 matches three keywords of shot 2 520 out of 10 keywords, so shot 2 520 and shot 3 530 have a matching ratio of 0.3 (3/10), Since this is less than the second threshold value of 0.5, the second shot 520 and the third shot 530 may be determined as shots constituting different scenes.
  • the image search providing apparatus 220 cumulatively counts the number of matching candidate keywords in each shot in successive shots, and based on the accumulated count value, the matching ratio of the candidate keywords can be calculated.
  • the keyword of the short 1 510 and 1 ('Person') among the 10 candidate keywords, the keyword of the short 2 520 and 3 ('Woman', ') Photography', 'Gesture') coincide and accumulate, so that the shot 3 530 may have a coincidence ratio of 0.4 (4/10).
  • the image search providing apparatus 220 statistically processes confidence values corresponding to keywords of shots constituting a scene to determine a final keyword representing the scene.
  • the image search providing apparatus 220 may determine a final keyword composed of keywords representing the scene by removing keywords that can be viewed as noise from keywords corresponding to one or more shots constituting the scene.
  • the image search providing apparatus 220 may generate a final keyword matched with time information corresponding to a scene, and the final keyword matched with time information may be stored in a database in the form of a file.
  • the image search providing apparatus 220 may determine a weight for each shot of the shots constituting the scene, and weight the confidence values corresponding to keywords of the shots constituting the scene based on the weight for each shot. . Furthermore, the image search providing apparatus 220 may determine a keyword whose weighted sum is equal to or greater than the third threshold value as the final keyword.
  • the statistical processing method is not limited to the above-described weighted sum, and may include any method related to statistical processing.
  • the image search providing apparatus 220 may determine a weight for each shot based on the importance of shots constituting the scene. For example, the image search providing apparatus 220 may assign a greater weight to a shot having a higher importance.
  • the image search providing apparatus 220 may determine that the greater the number of candidate keywords, the higher the importance. Accordingly, the image search providing apparatus 220 may determine a weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene. For example, in Table 1, shot 1 510 has 17 candidate keywords, shot 2 520 has 10 candidate keywords, and shot 1 510 has a weight of 0.63 (17/27). , shot 2 520 may have a weight of 0.37 (10/27). Table 2 below shows the weighted sum of keywords and corresponding confidence values of shots (eg, shot 1 510 and shot 2 520 ) constituting the scene according to the example above.
  • the weighted sum of the confidence values corresponding to the keywords of the first shot 510 and the second shot 520 is equal to or greater than a predetermined third threshold (eg, 0.5).
  • Keywords 'Man', 'Picture frame', 'Art', 'Event', 'Clothing', 'Visual Arts', 'Person'
  • a predetermined third threshold eg, 0.5.
  • the third threshold value may be determined based on a distribution of confidence values corresponding to keywords of shots constituting a scene.
  • the third threshold value may be determined based on an average and variance of confidence values corresponding to keywords of shots constituting a scene.
  • the third threshold value may be determined based on a predetermined percentile value of confidence values corresponding to keywords of shots constituting a scene.
  • the method of determining the third threshold value is not limited to the above example, and includes any method that may be determined based on the distribution of confidence values.
  • the image search providing device 220 receives a scene search request including a search query.
  • the image search providing apparatus 220 may include a search engine itself or may use an external search engine. When the image search providing apparatus 220 includes a search engine itself, it may directly receive a scene search request including a search query from a user's terminal. Alternatively, when an external search engine is used, the user may request a scene search through the external search engine, and the image search providing apparatus 220 may receive a scene search request including a search query from the external search engine.
  • the image search providing apparatus 220 determines a scene corresponding to the search query based on the final keyword.
  • the image search providing apparatus 220 may compare the final keyword with the search query, and may determine a scene corresponding to the search query based on the comparison result.
  • the image search providing apparatus 220 may add one or more relational keywords having a predetermined relationship with the final keyword, and may determine a scene corresponding to the search query by further considering the relational keywords.
  • the relational keyword may include a final keyword, a similar word, an upper/lower word, and the like.
  • the image search providing apparatus 220 provides an image corresponding to the determined scene.
  • the image search providing apparatus 220 may provide an image corresponding to a scene determined by the external search engine.
  • the image search providing apparatus 220 may modify the final keyword based on the search query.
  • the image search providing apparatus 220 may improve search accuracy while continuously correcting determined information by applying feedback on the search result.
  • the embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component.
  • the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA) array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
  • Software may comprise a computer program, code, instructions, or a combination of one or more of these, which configures a processing device to operate as desired or is independently or collectively processed You can command the device.
  • the software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave.
  • the software may be distributed over networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software.
  • Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
  • - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

Abstract

Disclosed are a method and an apparatus for providing image search. Disclosed are a method and an apparatus for providing image search. A method for providing image search according to an embodiment comprises the steps of: receiving, from an image analysis engine, one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keyword; determining, in connection with successive shots, that shots each having a candidate keyword matching ratio equal to or larger than a second threshold value constitute a single scene; statistically processing confidence values corresponding to keywords of shots constituting a scene so as to determine a final keyword representing the scene; receiving a scene search request including a search query; determining a scene corresponding to the search query on the basis of the final keyword; and providing an image corresponding to the determined scene.

Description

영상 검색 제공 방법 및 장치Method and apparatus for providing video search
아래 실시예들은 영상 검색 제공 방법 및 장치에 관한 것이다.The following embodiments relate to an image search providing method and apparatus.
사용자는 특정 영상의 일부 내용에 대해서 관심이 있는 경우가 많다. 즉, 사용자가 영상 전체가 아니라 영상의 일부분 내용에 대해서 관심을 가지는 경우가 많다. 예를 들어, 축구 중계를 시청하고자 하는 사용자는 축구 중계 영상 전체를 시청하기보다는 특정 선수가 골을 넣은 장면만을 시청하고자 하는 경우가 있을 수 있다. 또한, 오락 프로그램 시청자가 특정 장면만을 시청하고자 하는 경우가 있을 수 있다. 그러나, 일반적인 영상 검색 방법은 축구 중계 전체나 오락 프로그램 전체를 그 검색의 대상으로 하므로, 사용자가 원하는 영상의 일부 장면 등을 검색할 수가 없었다.Users are often interested in some content of a specific image. That is, there are many cases where the user is interested in the content of a part of the image rather than the entire image. For example, there may be a case where a user who wants to watch a soccer relay wants to watch only a scene in which a specific player scores a goal, rather than watching the entire soccer relay video. Also, there may be a case where the viewer of the entertainment program wants to view only a specific scene. However, in the general video search method, since the entire soccer relay or the entire entertainment program is the target of the search, it is impossible to search for some scenes of the video desired by the user.
종래에, 영상의 일부분에 대한 검색을 가능하게 하기 위해서 영상에 포함된 대사 정보(또는 자막 정보)를 이용하여 영상 검색을 하려는 시도가 있었다. 즉, 특정 영상의 대사나 자막 중에서 사용자가 입력한 검색어와 관련된 대사나 자막이 있는 부분을 검색함으로써, 사용자가 원하는 영상의 일부분을 찾을 수 있도록 하고자 하였다.Conventionally, in order to enable a search for a portion of an image, an attempt has been made to search for an image using dialogue information (or subtitle information) included in an image. That is, by searching for a portion having dialogue or subtitles related to the search word entered by the user from among the dialogues or subtitles of a specific image, it was attempted to enable the user to find the desired part of the image.
그러나, 대사나 자막만으로는 영상의 내용을 적절히 반영할 수 없는 경우가 많다. 예를 들어, 드라마의 키스신을 찾고자 하는 경우에, 키스신의 경우 대사가 없는 경우가 많기 때문에 대사나 자막만으로 드라마 주인공들이 키스를 하고 있는 장면을 찾기는 매우 어렵다. 또한, 대사나 자막이 없는 영상의 경우에는 이러한 방법을 이용한 영상 검색이 전혀 불가능하다.However, in many cases, it is not possible to properly reflect the contents of the video only with dialogue or subtitles. For example, when trying to find a kissing scene in a drama, it is very difficult to find a scene in which the main characters of a drama are kissing only with lines or subtitles because there are often no lines in the kissing scene. In addition, in the case of an image without dialogue or subtitles, it is impossible to search for an image using this method at all.
실시예들은 영상에서 일정 시간 간격마다 키워드들을 추출하고자 한다.Embodiments attempt to extract keywords at regular time intervals from an image.
실시예들은 장면에 대응하는 키워드 및 시간 정보가 매칭된 메타데이터를 생성하고자 한다.Embodiments intend to generate metadata in which a keyword corresponding to a scene and time information are matched.
실시예들은 생성된 메타데이터에 기초하여 영상 검색, 특정 장면에 대한 검색을 제공하고자 한다.Embodiments are intended to provide a search for an image and a search for a specific scene based on the generated metadata.
일 실시예에 따른 영상 검색 제공 방법은 영상 분석 엔진으로부터 영상의 각 쇼트(shot)에 대응하는 하나 이상의 키워드 및 상기 키워드에 대응하는 컨피던스 값을 수신하는 단계; 연속하는 쇼트들에 있어서, 상기 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정하는 단계; 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 상기 장면을 대표하는 최종 키워드를 결정하는 단계; 검색 쿼리를 포함하는 장면 검색 요청을 수신하는 단계; 상기 최종 키워드에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계; 및 상기 결정된 장면에 대응하는 영상을 제공하는 단계를 포함한다.An image search providing method according to an embodiment comprises: receiving one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keywords from an image analysis engine; in successive shots, determining shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value as one scene; determining a final keyword representing the scene by statistically processing confidence values corresponding to keywords of shots constituting the scene; receiving a scene search request comprising a search query; determining a scene corresponding to the search query based on the final keyword; and providing an image corresponding to the determined scene.
일 실시예에 따른 영상 검색 제공 방법은 상기 검색 쿼리에 기초하여, 상기 최종 키워드를 수정하는 단계를 더 포함할 수 있다.The method of providing an image search according to an embodiment may further include modifying the final keyword based on the search query.
상기 제1 임계값은 상기 컨피던스 값의 분포에 기초하여 결정될 수 있다.The first threshold value may be determined based on a distribution of the confidence values.
상기 최종 키워드를 결정하는 단계는 상기 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정하는 단계; 상기 쇼트 별 가중치에 기초하여, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 가중합하는 단계; 및 상기 가중합이 제3 임계값 이상인 키워드를 상기 최종 키워드로 결정하는 단계를 포함할 수 있다.The determining of the final keyword may include: determining a weight for each shot of the shots constituting the scene; weighted summing confidence values corresponding to keywords of shots constituting the scene based on the weights for each shot; and determining a keyword whose weighted sum is equal to or greater than a third threshold value as the final keyword.
상기 쇼트 별 가중치를 결정하는 단계는 상기 장면을 구성하는 쇼트들 각각에 포함된 상기 후보 키워드의 수에 기초하여 상기 장면을 구성하는 쇼트들의 상기 쇼트 별 가중치를 결정하는 단계를 포함할 수 있다.The determining of the weight for each shot may include determining the weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene.
상기 제3 임계값은 상기 장면을 구성하는 쇼트들의 상기 키워드에 대응하는 상기 컨피던스 값의 분포에 기초하여 결정될 수 있다.The third threshold value may be determined based on a distribution of the confidence values corresponding to the keywords of shots constituting the scene.
상기 가중합하는 단계는 상기 가중치에 기초하여, 상기 장면을 구성하는 상기 쇼트들의 상기 후보 키워드에 대응하는 컨피던스 값을 가중합하는 단계를 포함할 수 있다.The weighted summing may include weighted summing confidence values corresponding to the candidate keywords of the shots constituting the scene based on the weight.
상기 검색 쿼리에 대응하는 장면을 결정하는 단계는 상기 제3 임계값 이상인 키워드와 상기 검색 쿼리를 비교하는 단계; 및 상기 비교 결과에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계를 포함할 수 있다.The determining of the scene corresponding to the search query may include: comparing the search query with a keyword equal to or greater than the third threshold; and determining a scene corresponding to the search query based on the comparison result.
일 실시예에 따른 영상 검색 제공 방법은 상기 제3 임계값 이상인 키워드와 미리 정해진 관계를 갖는 하나 이상의 관계 키워드를 추가하는 단계를 더 포함하고, 상기 검색 쿼리에 대응하는 장면을 결정하는 단계는 상기 관계 키워드를 더 고려하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계를 포함할 수 있다.The method of providing an image search according to an embodiment further includes adding one or more relational keywords having a predetermined relation with the keywords equal to or greater than the third threshold, and determining a scene corresponding to the search query includes the relation The method may include determining a scene corresponding to the search query by further considering keywords.
상기 영상 분석 엔진은 상기 영상을 입력 받아 상기 제1 메타데이터를 생성하는 외부 영상 분석 엔진을 포함할 수 있다.The image analysis engine may include an external image analysis engine that receives the image and generates the first metadata.
일 실시예에 따른 영상 검색 제공 장치는 영상 분석 엔진으로부터 영상의 각 쇼트(shot)에 대응하는 하나 이상의 키워드 및 상기 키워드에 대응하는 컨피던스 값을 수신하고, 연속하는 쇼트들에 있어서, 상기 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정하고, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 상기 장면을 대표하는 최종 키워드를 결정하고, 검색 쿼리를 포함하는 장면 검색 요청을 수신하고, 상기 최종 키워드에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하며, 상기 결정된 장면에 대응하는 영상을 제공하는 프로세서를 포함한다.An image search providing apparatus according to an embodiment receives one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keyword from an image analysis engine, and in successive shots, The shots in which the matching ratio of the candidate keywords are equal to or greater than the second threshold are determined as one scene, and confidence values corresponding to the keywords of shots constituting the scene are statistically processed to determine the final keyword representing the scene, and a processor that receives a scene search request including a search query, determines a scene corresponding to the search query based on the final keyword, and provides an image corresponding to the determined scene.
상기 프로세서는 상기 검색 쿼리에 기초하여, 상기 최종 키워드를 수정할 수 있다/The processor may modify the final keyword based on the search query/
상기 제1 임계값은 상기 컨피던스 값의 분포에 기초하여 결정될 수 있다.The first threshold value may be determined based on a distribution of the confidence values.
상기 프로세서는 상기 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정하고, 상기 쇼트 별 가중치에 기초하여, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 가중합하고, 상기 가중합이 제3 임계값 이상인 키워드를 상기 최종 키워드로 결정할 수 있다.The processor determines a weight for each shot of the shots constituting the scene, weights and sums confidence values corresponding to keywords of the shots constituting the scene based on the weight for each shot, and the weighted sum is a third threshold value The above keywords may be determined as the final keywords.
상기 프로세서는 상기 장면을 구성하는 쇼트들 각각에 포함된 상기 후보 키워드의 수에 기초하여 상기 장면을 구성하는 쇼트들의 상기 쇼트 별 가중치를 결정할 수 있다.The processor may determine a weight for each shot of the shots constituting the scene based on the number of the candidate keywords included in each of the shots constituting the scene.
상기 제3 임계값은 기 장면을 구성하는 쇼트들의 상기 키워드에 대응하는 상기 컨피던스 값의 분포에 기초하여 결정될 수 있다.The third threshold value may be determined based on a distribution of the confidence values corresponding to the keywords of shots constituting a scene.
상기 프로세서는 상기 가중치에 기초하여, 상기 장면을 구성하는 상기 쇼트들의 상기 후보 키워드에 대응하는 컨피던스 값을 가중합할 수 있다.The processor may weight-add confidence values corresponding to the candidate keywords of the shots constituting the scene based on the weight.
상기 프로세서는 상기 제3 임계값 이상인 키워드와 상기 검색 쿼리를 비교하고, 상기 비교 결과에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정할 수 있다.The processor may compare the search query with a keyword equal to or greater than the third threshold, and determine a scene corresponding to the search query based on the comparison result.
상기 프로세서는 상기 제3 임계값 이상인 키워드와 미리 정해진 관계를 갖는 하나 이상의 관계 키워드를 추가하고, 상기 관계 키워드를 더 고려하여 상기 검색 쿼리에 대응하는 장면을 결정할 수 있다.The processor may determine a scene corresponding to the search query by adding one or more relational keywords having a predetermined relation with a keyword equal to or greater than the third threshold value, and further considering the relational keyword.
실시예들은 영상에서 일정 시간 간격마다 키워드들을 추출할 수 있다.Embodiments may extract keywords from an image at regular time intervals.
실시예들은 장면에 대응하는 키워드 및 시간 정보가 매칭된 메타데이터를 생성할 수 있다.Embodiments may generate metadata in which a keyword corresponding to a scene and time information are matched.
실시예들은 생성된 메타데이터에 기초하여 영상 검색을 제공할 수 있다.Embodiments may provide image search based on the generated metadata.
도 1은 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 1 is a diagram illustrating an example of a network environment according to an embodiment.
도 2는 일 실시예에 따른 영상 검색 제공 시스템의 동작 방법을 설명하기 위한 도면이다.2 is a diagram for explaining a method of operating an image search providing system according to an exemplary embodiment.
도 3은 일 실시예에 따른 영상 검색 결과 페이지의 예를 도시한 도면이다.3 is a diagram illustrating an example of an image search result page according to an exemplary embodiment.
도 4는 일 실시예에 따른 영상 검색 제공 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a method for providing an image search according to an exemplary embodiment.
도 5는 일 실시예에 따른 장면을 결정하는 구체적인 방법을 설명하기 위한 도면이다.5 is a diagram for describing a specific method of determining a scene according to an exemplary embodiment.
본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실시예들은 다양한 다른 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions disclosed in this specification are merely illustrative for the purpose of describing embodiments according to technical concepts, and the embodiments may be embodied in various other forms and are limited to the embodiments described herein. doesn't happen
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various elements, but these terms should be understood only for the purpose of distinguishing one element from another element. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의에"와 "바로~간의에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being “connected” or “connected” to another component, it is understood that the other component may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that no other element is present in the middle. Expressions describing the relationship between elements, for example, “between” and “between” or “neighboring to” and “directly adjacent to”, etc. should be interpreted similarly.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression includes the plural expression unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or combination thereof exists, and includes one or more other features or numbers, It should be understood that the possibility of the presence or addition of steps, operations, components, parts or combinations thereof is not precluded in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present specification. does not
실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.The embodiments may be implemented in various types of products, such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent cars, kiosks, wearable devices, and the like. Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Like reference numerals in each figure indicate like elements.
도 1은 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 1 is a diagram illustrating an example of a network environment according to an embodiment.
도 1을 참고하면, 일 실시예에 따른 네트워크 환경은 복수의 단말들(110, 120, 130, 140), 복수의 서버들(150, 160) 및 네트워크(170)를 포함할 수 있다. 이러한 도 1은 발명의 설명을 위한 일례로, 단말들의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다.Referring to FIG. 1 , a network environment according to an embodiment may include a plurality of terminals 110 , 120 , 130 , 140 , a plurality of servers 150 , 160 , and a network 170 . FIG. 1 is an example for the description of the invention, and the number of terminals or the number of servers is not limited as in FIG. 1 .
복수의 단말들(110, 120, 130, 140)은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 복수의 단말들(110, 120, 130, 140)의 예를 들면, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC, HMD(Head mounted Display), TV, 스마트 TV 등이 있다.The plurality of terminals 110 , 120 , 130 , and 140 may be a fixed terminal implemented as a computer device or a mobile terminal. For example, a plurality of terminals 110 , 120 , 130 and 140 , a smart phone, a mobile phone, a navigation device, a computer, a notebook computer, a digital broadcasting terminal, a PDA (Personal Digital Assistants), a PMP (Portable Multimedia Player) , tablet PC, HMD (Head mounted Display), TV, smart TV, etc.
단말(110)은 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 단말들(120, 130, 140) 및/또는 서버(150, 160)와 통신할 수 있다. 서버(150)는 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 단말들(110, 120, 130, 140) 및/또는 다른 서버(160)와 통신할 수 있다.The terminal 110 may communicate with the other terminals 120 , 130 , 140 and/or the servers 150 and 160 through the network 170 using a wireless or wired communication method. The server 150 may communicate with the terminals 110 , 120 , 130 , 140 and/or other servers 160 through the network 170 using a wireless or wired communication method.
통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(예를 들어, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식 뿐만 아니라 기기들 간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.The communication method is not limited, and not only a communication method using a communication network (eg, a mobile communication network, a wired Internet, a wireless Internet, a broadcasting network) that the network 170 may include, but also short-range wireless communication between devices may be included. . For example, the network 170 may include a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), and a broadband network (BBN). , the Internet, and the like. In addition, the network 170 may include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree, or a hierarchical network, etc. not limited
서버(150, 160) 각각은 복수의 단말들(110, 120, 130, 140)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 콘텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다.Each of the servers 150 and 160 communicates with the plurality of terminals 110 , 120 , 130 , 140 and the network 170 through a computer device or a plurality of computer devices to provide commands, codes, files, contents, services, etc. can be implemented with
서버(150)는 네트워크(170)를 통해 접속한 단말(110)로 어플리케이션의 설치를 위한 파일을 제공할 수 있다. 이 경우 단말(110)은 서버(150)로부터 제공된 파일을 이용하여 어플리케이션을 설치할 수 있다. 또한, 단말(110)이 포함하는 운영체제(Operating System, OS) 및 적어도 하나의 프로그램(일례로 브라우저나 상기 설치된 어플리케이션)의 제어에 따라 서버(150)에 접속하여 서버(150)가 제공하는 서비스나 콘텐츠를 제공받을 수 있다. 예를 들어, 단말(110)이 어플리케이션의 제어에 따라 네트워크(170)를 통해 서비스 요청 메시지를 서버(150)로 전송하면, 서버(150)는 서비스 요청 메시지에 대응하는 코드를 단말(110)로 전송할 수 있고, 단말(110)은 어플리케이션의 제어에 따라 코드에 따른 화면을 구성하여 표시함으로써 사용자에게 컨텐츠를 제공할 수 있다.The server 150 may provide a file for installing an application to the terminal 110 connected through the network 170 . In this case, the terminal 110 may install the application using the file provided from the server 150 . In addition, by accessing the server 150 under the control of an operating system (OS) and at least one program (eg, a browser or the installed application) included in the terminal 110, the service provided by the server 150 or content can be provided. For example, when the terminal 110 transmits a service request message to the server 150 through the network 170 under the control of the application, the server 150 transmits a code corresponding to the service request message to the terminal 110 . can be transmitted, and the terminal 110 can provide content to the user by composing and displaying a screen according to the code according to the control of the application.
도 2는 일 실시예에 따른 영상 검색 제공 시스템의 동작 방법을 설명하기 위한 도면이다.2 is a diagram for explaining a method of operating an image search providing system according to an exemplary embodiment.
도 2를 참조하면, 일 실시예에 따른 영상 검색 제공 시스템은 단말(210), 영상 검색 제공 장치(220), 영상 분석 엔진(230)을 포함할 수 있다. 영상 검색 제공 장치(220)는 프로세서(221)와 데이터베이스(222)를 포함한다. 일 실시예에 따른 단말(210)은 도 1의 단말들(110 내지 140) 중 하나일 수 있고, 영상 검색 제공 장치(220)와 영상 분석 엔진(230)은 도 1의 서버(150, 160) 중 하나일 수 있다.Referring to FIG. 2 , an image search providing system according to an embodiment may include a terminal 210 , an image search providing apparatus 220 , and an image analysis engine 230 . The image search providing apparatus 220 includes a processor 221 and a database 222 . The terminal 210 according to an embodiment may be one of the terminals 110 to 140 of FIG. 1 , and the image search providing apparatus 220 and the image analysis engine 230 are the servers 150 and 160 of FIG. 1 . can be one of
일 실시예에 따른 영상 검색 제공 시스템에 따르면, 사용자가 단말(210)을 통해 영상 검색 제공 장치(220)에 검색 쿼리를 포함하는 장면 검색을 요청하는 경우, 영상 검색 제공 장치(220)는 검색 쿼리에 대응하는 장면을 결정하고, 해당 장면에 대응하는 영상을 사용자에게 제공할 수 있다.According to the image search providing system according to an embodiment, when a user requests a scene search including a search query to the image search providing apparatus 220 through the terminal 210, the image search providing apparatus 220 provides a search query It is possible to determine a scene corresponding to , and provide an image corresponding to the scene to the user.
종래의 경우 메타데이터 정보(제목, 년도, 등장인물, 줄거리 등) 및 자막 데이터에 의존하여 영상 검색을 제공하기 때문에 정확한 검색 결과를 제공하기 어려울 수 있다.In the conventional case, it may be difficult to provide an accurate search result because an image search is provided depending on metadata information (title, year, character, plot, etc.) and subtitle data.
일 실시예에 따른 영상 검색 제공 시스템은 하나의 장면에서 도출된 키워드, 등장빈도, 관계도를 검색에 활용하고, 나아가 사용자 검색결과와 시청기록 또한 검색에 활용하기 때문에 보다 정확한 검색 결과를 제공할 수 있다.The image search providing system according to an embodiment utilizes keywords, appearance frequency, and relationship derived from one scene for the search, and furthermore, the user search results and viewing records are also utilized for the search, so that more accurate search results can be provided. there is.
영상 검색 제공 장치(220)는 일정 시간 간격마다 해당 시간에 대응하는 영상과 관련된 키워드들을 추출할 수 있다. 보다 구체적으로, 영상 검색 제공 장치(220)는 일정 시간 간격마다 해당 시간에 대응하는 영상을 영상 분석 엔진(230)으로 전송할 수 있고, 영상 분석 엔진(230)으로부터 각 영상에 대응하는 키워드를 수신할 수 있다. 예를 들어, 영상을 최소 시간 간격으로 나눌 수 이 있고, 각 시간에 대응하는 영상을 쇼트(shot)라고 지칭할 수 있다. 영상 검색 제공 장치(220)는 쇼트를 영상 분석 엔진(230)으로 전송할 수 있고, 영상 분석 엔진(230)으로부터 각 쇼트에 대응하는 제1 메타데이터를 수신할 수 있다. 제1 메타데이터는 영상에 대응하는 하나 이상의 키워드 및 키워드에 대응하는 컨피던스 값을 포함할 수 있다. 컨피던스 값은 해당 키워드와 쇼트 사이의 관련된 정도에 관한 수치일 수 있다. 예를 들어, 컨피던스 값은 0과 1 사이의 값일 수 있고, 1에 가까울수록 키워드가 해당 쇼트와 관련된 정도가 높음을 의미할 수 있다.The image search providing apparatus 220 may extract keywords related to an image corresponding to the corresponding time at regular time intervals. More specifically, the image search providing apparatus 220 may transmit an image corresponding to the corresponding time at regular time intervals to the image analysis engine 230 , and receive a keyword corresponding to each image from the image analysis engine 230 . can For example, an image may be divided into minimum time intervals, and an image corresponding to each time may be referred to as a shot. The image search providing apparatus 220 may transmit the shot to the image analysis engine 230 , and may receive first metadata corresponding to each shot from the image analysis engine 230 . The first metadata may include one or more keywords corresponding to the image and a confidence value corresponding to the keywords. The confidence value may be a numerical value relating to the degree of relation between the corresponding keyword and the shot. For example, the confidence value may be a value between 0 and 1, and the closer to 1, the higher the degree of the keyword related to the corresponding shot.
영상 검색 제공 장치(220)는 하나 이상의 키워드 중에서, 컨피던스 값이 제1 임계값 이상인 키워드를 후보 키워드로 결정할 수 있다. 영상 검색 제공 장치(220)는 제1 메타데이터에 기초하여, 하나 이상의 쇼트로 구성된 장면(scene)을 결정할 수 있다. 이를 통해, 영상 검색 제공 장치(220)는 제1 메타데이터에 기초하여, 장면 전환 시점도 판단할 수 있다. 일례로, 영상 검색 제공 장치(220)는 연속하는 쇼트들에 있어서, 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정할 수 있다. 제1 메타데이터에 기초하여, 장면을 결정하는 구체적인 방법은 아래에서 도 5를 참조하여 상세히 설명된다.The image search providing apparatus 220 may determine a keyword having a confidence value equal to or greater than a first threshold value among one or more keywords as a candidate keyword. The image search providing apparatus 220 may determine a scene including one or more shots based on the first metadata. Through this, the image search providing apparatus 220 may also determine a scene change time based on the first metadata. As an example, the image search providing apparatus 220 may determine, among consecutive shots, shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value as one scene. A specific method of determining a scene based on the first metadata will be described in detail below with reference to FIG. 5 .
영상 검색 제공 장치(220)는 장면에 대응하는 제2 메타데이터를 결정할 수 있고, 장면의 제2 메타데이터에 기초하여, 사용자가 입력한 검색 쿼리에 대응하는 장면을 결정할 수 있다. 일례로, 영상 검색 제공 장치(220)는 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 장면을 대표하는 최종 키워드를 결정할 수 있다.The image search providing apparatus 220 may determine second metadata corresponding to the scene, and may determine a scene corresponding to the search query input by the user based on the second metadata of the scene. For example, the image search providing apparatus 220 may statistically process confidence values corresponding to keywords of shots constituting a scene to determine a final keyword representing the scene.
영상 분석 엔진(230)은 영상을 입력 받아 입력 영상에 대응하는 제1 메타데이터를 생성하는 외부 영상 분석 엔진을 포함할 수 있다. 예를 들어, 영상 분석 엔진(230)은 google vision API 일 수 있다. google vision API는 영상이 포함하고 있는 지배적인 객체를 찾아내 메타데이터를 구축하고 있고, 구축한 메타데이터를 이용하여 이미지 내의 객체를 수천개의 카테고리로 분류할 수 있다. 다만, 여기서 google vision API는 예시적인 사항일 뿐, 상술한 영상 분석 엔진 이외에 객체 인식 및 그에 상응하는 메타데이터를 출력하는 다양한 유형의 모델 또는 장치에 채용되어 응용될 수 있다.The image analysis engine 230 may include an external image analysis engine that receives an image and generates first metadata corresponding to the input image. For example, the image analysis engine 230 may be a google vision API. The google vision API builds metadata by finding the dominant object included in the image, and can classify objects in the image into thousands of categories using the built metadata. However, here, the google vision API is merely exemplary, and may be employed and applied to various types of models or devices that output object recognition and corresponding metadata other than the above-described image analysis engine.
영상 검색 제공 시스템에 있어서 외부 영상 분석 엔진을 사용하는 경우, 영상 검색 제공 장치(220)는 외부 영상 분석 엔진으로부터 수신한 제1 메타데이터를 활용할 뿐 영상 검색 제공 장치(220)가 자체적으로 영상 분석을 하지 않기 때문에 처리 속도가 향상될 수 있다.When an external image analysis engine is used in the image search providing system, the image search providing apparatus 220 utilizes the first metadata received from the external image analysis engine and the image search providing apparatus 220 performs image analysis on its own. Because it does not, processing speed can be improved.
영상 검색 제공 장치(220)는 프로세서(221)와 데이터베이스(222)를 포함한다. 영상 검색 제공 장치(220)는 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 예를 들어, 영상 검색 제공 장치(220)는 메모리, 통신 모듈, 입출력 인터페이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.The image search providing apparatus 220 includes a processor 221 and a database 222 . The image search providing apparatus 220 may include more components than those of FIG. 2 . For example, the image search providing apparatus 220 may further include other components such as a memory, a communication module, an input/output interface, and the like.
메모리는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리에는 운영체제와 적어도 하나의 프로그램 코드에 설치되어 구동되는 브라우저나 상술한 어플리케이션 등을 위한 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 드라이브 메커니즘(drive mechanism)을 이용하여 메모리와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체를 포함할 수 있다.The memory is a computer-readable recording medium and may include a random access memory (RAM), a read only memory (ROM), and a permanent mass storage device such as a disk drive. In addition, codes for a browser installed and driven in the operating system and at least one program code or the above-described application may be stored in the memory. These software components may be loaded from a computer-readable recording medium separate from the memory using a drive mechanism. The separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a memory card.
다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 통신 모듈을 통해 메모리에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템에 기반하여 메모리에 로딩될 수 있다.In another embodiment, the software components may be loaded into the memory through a communication module rather than a computer-readable recording medium. For example, the at least one program may be loaded into the memory based on a file distribution system that distributes installation files of developers or applications.
프로세서(221)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리 또는 통신 모듈에 의해 프로세서(221)로 제공될 수 있다. 예를 들어 프로세서(221)는 메모리와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.The processor 221 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. Instructions may be provided to the processor 221 by a memory or communication module. For example, the processor 221 may be configured to execute a received instruction according to a program code stored in a recording device such as a memory.
통신 모듈은 네트워크를 통해 단말(210)과 영상 검색 제공 장치(220)가 서로 통신하기 위한 기능을 제공할 수 있으며, 다른 서버와 통신하기 위한 기능을 제공할 수 있다. 예를 들어, 영상 검색 제공 장치(220)의 프로세서(221)의 제어에 따라 제공되는 제어 신호나 명령, 컨텐츠, 파일 등이 통신 모듈과 네트워크(170)를 거쳐 단말(210)로 수신될 수 있다.The communication module may provide a function for the terminal 210 and the image search providing apparatus 220 to communicate with each other through a network, and may provide a function for communicating with another server. For example, a control signal, command, content, file, etc. provided under the control of the processor 221 of the image search providing apparatus 220 may be received by the terminal 210 through the communication module and the network 170 . .
도 3은 일 실시예에 따른 영상 검색 결과 페이지의 예를 도시한 도면이다.3 is a diagram illustrating an example of an image search result page according to an exemplary embodiment.
도 3을 참조하면, 영상 검색 결과 페이지는 장면 영상 제목 필드(310), 장면 영상을 재생하기 위한 재생기 필드(320) 및 부가 정보 필드(330)를 포함할 수 있다.Referring to FIG. 3 , the image search result page may include a scene image title field 310 , a player field 320 for reproducing a scene image, and an additional information field 330 .
장면 영상 제목 필드(310)에는 검색 결과로 선택된 장면 동영상의 제목이 표시될 수 있다. 사용자가 입력한 검색어에 따라 도 3에 도시된 "OOO에서 AAA와 BBB가 아이 그림 감상하는 장면"이 장면 동영상 제목이 될 수 있다.The scene video title field 310 may display a title of a scene video selected as a search result. According to the search word input by the user, "a scene where AAA and BBB enjoy a picture of a child in OOO" shown in FIG. 3 may be the title of the scene video.
재생기 필드(320)에 검색 결과로 선택된 장면 동영상을 재생하기 위한 재생기가 표시된다. 이 때, 사용자가 재생기의 재생 버튼을 클릭해야만 장면 동영상이 재생되도록 설정될 수 있다.A player for playing the scene video selected as a result of the search is displayed in the player field 320 . In this case, the scene video may be set to be played only when the user clicks the play button of the player.
부가 정보 필드(330)에는 화질 정보, 파일 종류 정보, 용량 정보, 재생 시간 정보, 화면 크기 정보 및 출처 정보 등이 표시될 수 있다.In the additional information field 330 , image quality information, file type information, capacity information, reproduction time information, screen size information, source information, and the like may be displayed.
실시예에 따라, 영상 검색 방법은 장면 영상 검색 결과 선택된 장면 영상뿐만 아니라, 검색 쿼리에 매칭되는 것으로 선택된 전체 영상을 포함하는 검색 결과를 사용자에게 제공할 수도 있다. 즉, 영상 검색 방법은 사용자가 입력한 검색어에 상응하는 전체 영상 검색 결과 및 장면 영상 검색 결과를 함께 표시할 수도 있다.According to an embodiment, the image search method may provide the user with a search result including not only the scene image selected as a result of the scene image search, but also the entire image selected as matching the search query. That is, the image search method may display the entire image search result and the scene image search result corresponding to the search word input by the user.
도 4는 일 실시예에 따른 영상 검색 제공 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a method for providing an image search according to an exemplary embodiment.
도 4를 참조하면, 일 실시예에 단계들(410 내지 460)은 도 2를 참조하여 전술한 영상 검색 제공 장치(220)에 의해 수행될 수 있다. 영상 검색 제공 장치(220)는 하나 또는 그 이상의 하드웨어 모듈, 하나 또는 그 이상의 소프트웨어 모듈, 또는 이들의 다양한 조합에 의하여 구현될 수 있다.Referring to FIG. 4 , in an embodiment, steps 410 to 460 may be performed by the image search providing apparatus 220 described above with reference to FIG. 2 . The image search providing apparatus 220 may be implemented by one or more hardware modules, one or more software modules, or various combinations thereof.
단계(410)에서, 영상 검색 제공 장치(220)는 영상 분석 엔진으로부터 영상의 각 쇼트에 대응하는 하나 이상의 키워드 및 상기 키워드에 대응하는 컨피던스 값을 수신한다. 영상 분석 엔진은 도 2를 참조하여 전술한 영상 분석 엔진(230)일 수 있다.In step 410 , the image search providing apparatus 220 receives one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keywords from the image analysis engine. The image analysis engine may be the image analysis engine 230 described above with reference to FIG. 2 .
단계(420)에서, 영상 검색 제공 장치(220)는 하나 이상의 키워드 중에서, 컨피던스 값이 제1 임계값 이상인 키워드를 후보 키워드로 결정한다. 영상 검색 제공 장치(220)는 쇼트에 대응하는 키워드들 중에서, 컨피던스 값이 제1 임계값 미만인 키워드들을 노이즈로 간주할 수 있다. 제1 임계값은 컨피던스 값의 분포에 기초하여 결정될 수 있다. 예를 들어, 제1 임계값은 특정 쇼트에 대응하는 컨피던스 값의 평균 및 분산에 기초하여 결정될 수 있다.In operation 420 , the image search providing apparatus 220 determines, among one or more keywords, a keyword having a confidence value equal to or greater than a first threshold value as a candidate keyword. The image search providing apparatus 220 may regard keywords having a confidence value less than the first threshold value as noise among keywords corresponding to the shot. The first threshold value may be determined based on a distribution of confidence values. For example, the first threshold value may be determined based on an average and variance of confidence values corresponding to a specific shot.
단계(430)에서, 영상 검색 제공 장치(220)는 연속하는 쇼트들에 있어서, 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정한다. 연속하는 하나 이상의 쇼트가 모여서 장면을 구성할 수 있다. 예를 들어, 주인공이 거리를 걸어가는 장면의 경우, 그 장면을 여러 각도에서 몇 개의 쇼트로 나누어 구성될 수 있지만 그 쇼트들은 전부 주인공이 걸어가는 장면일 수 있다. 장면을 결정하는 구체적인 방법을 도 5를 참조하여 설명한다.In step 430 , the video search providing apparatus 220 determines, among consecutive shots, shots in which the match ratio of the candidate keyword of each shot is equal to or greater than the second threshold value as one scene. One or more consecutive shots may be grouped together to form a scene. For example, in the case of a scene in which the main character walks down the street, the scene may be divided into several shots from various angles, but all of the shots may be scenes in which the main character is walking. A specific method for determining a scene will be described with reference to FIG. 5 .
도 5는 일 실시예에 따른 장면을 결정하는 구체적인 방법을 설명하기 위한 도면이다.5 is a diagram for describing a specific method of determining a scene according to an exemplary embodiment.
도 5를 참조하면, 일 실시예에 따른 쇼트1(510) 내지 쇼트3(530)은 연속하는 쇼트들이고, 아래 표 1은 영상 분석 엔진으로부터 수신한 쇼트1(510) 내지 쇼트3(530)에 대응하는 제1 메타데이터(예를 들어, 키워드 및 컨피던스 값)들을 나타낸 것이다.Referring to FIG. 5 , shot 1 510 to shot 3 530 according to an embodiment are consecutive shots, and Table 1 below shows shots 1 510 to shot 3 530 received from the image analysis engine. Corresponding first metadata (eg, keyword and confidence value) are indicated.
쇼트1short 1 쇼트2short 2 쇼트3short 3
ManMan 0.880.88 Womanwoman 0.840.84 Womanwoman 0.830.83
Picture framepicture frame 0.850.85 ManMan 0.840.84 PersonPerson 0.790.79
PersonPerson 0.810.81 Picture framepicture frame 0.780.78 TopTop 0.670.67
ClothingClothing 0.690.69 ClothingClothing 0.560.56 GestureGesture 0.810.81
Luggage & bagsLuggage & bags 0.570.57 Luggage & bagsLuggage & bags 0.550.55 ForeheadForehead 0.780.78
ArtArt 0.860.86 ArtArt 0.680.68 FingerFinger 0.720.72
Visual ArtsVisual Arts 0.820.82 RoomRoom 0.660.66 SceneScene 0.710.71
Modern ArtModern Art 0.740.74 EventEvent 0.630.63 HandHand 0.700.70
PaintingPainting 0.740.74 PhotographyPhotography 0.620.62 MouthMouth 0.680.68
OrganismOrganism 0.720.72 ConversationConversation 0.570.57 SmileSmile 0.640.64
FunFun 0.700.70 GestureGesture 0.560.56 PhotographyPhotography 0.620.62
EventEvent 0.670.67 Visual ArtsVisual Arts 0.550.55 Black HairBlack Hair 0.610.61
AdaptationAdaptation 0.670.67     ConversationConversation 0.580.58
RoomRoom 0.660.66     JawJaw 0.570.57
Art ExhibitionArt Exhibition 0.650.65        
DrawingDrawing 0.590.59        
PortraitPortrait 0.570.57        
AnimationAnimation 0.560.56        
ExhibitionExhibition 0.560.56        
IllustrationIllustration 0.550.55        
ConversationConversation 0.540.54        
MuralMural 0.530.53        
영상 검색 제공 장치(220)는 각 쇼트에 대응하는 키워드들 중에서, 컨피던스 값이 제1 임계값 이상인 키워드를 후보 키워드로 결정할 수 있다. 제1 임계값은 컨피던스 값의 분포에 기초하여 결정될 수 있다. 예를 들어, 제1 임계값은 하위 20%에 대응하는 컨피던스 값으로 결정될 수 있다. 표 1을 참조하면, 쇼트1(510)의 제1 임계값은 0.565, 쇼트2(520)의 제1 임계값은 0.555, 쇼트3(530)의 제1 임계값은 0.615로 결정될 수 있다. 따라서, 쇼트1(510)의 키워드 'Animation', 'Exhibition', 'llustration', 'Conversation' 및 'Mural'은 후보 키워드에서 제외되고, 쇼트2(520)의 키워드 'Luggage & bags', 'Visual Arts'는 후보 키워드에서 제외되고, 쇼트3(530)의 키워드 'Black Hair', 'Conversation', 'Jaw'는 후보 키워드에서 제외될 수 있다.The image search providing apparatus 220 may determine, as a candidate keyword, a keyword having a confidence value equal to or greater than a first threshold among keywords corresponding to each shot. The first threshold value may be determined based on a distribution of confidence values. For example, the first threshold value may be determined as a confidence value corresponding to the lower 20%. Referring to Table 1, the first threshold value of the first shot 510 may be determined as 0.565, the first threshold value of the second shot 520 may be determined as 0.555, and the first threshold value of the third shot 530 may be determined as 0.615. Accordingly, the keywords 'Animation', 'Exhibition', 'llustration', 'Conversation' and 'Mural' of the first shot 510 are excluded from the candidate keywords, and the keywords 'Luggage & bags' and 'Visual' of the second shot 520 are excluded. Arts' may be excluded from the candidate keywords, and the keywords 'Black Hair', 'Conversation', and 'Jaw' of the shot 3 530 may be excluded from the candidate keywords.
영상 검색 제공 장치(220)는 연속하는 쇼트들에 있어서, 각 쇼트의 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정할 수 있다.The image search providing apparatus 220 may determine, among consecutive shots, shots in which the match ratio of candidate keywords of each shot is equal to or greater than the second threshold value as one scene.
일 실시예에 따르면, 영상 검색 제공 장치(220)는 연속하는 쇼트들에 있어서, 각 쇼트는 직전 쇼트와의 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정할 수 있다.According to an exemplary embodiment, among consecutive shots, the image search providing apparatus 220 may determine, as one scene, shots in which a match ratio of a candidate keyword with a previous shot is equal to or greater than a second threshold value.
표 1을 참조하면, 쇼트2(520)는 후보 키워드 10개 중에서 쇼트1(510)의 후보 키워드와 5개('Man', 'Picture frame', Clothing', 'Art', 'Event')가 일치한다. 또한, 쇼트3(530)은 후보 키워드는 10개 중에서 쇼트2(520)의 키워드와 3개('Woman', 'Photography', 'Gesture')가 일치한다. 제2 임계값이 예를 들어 0.5인 경우, 쇼트2(520)는 전체 키워드 10개 중에서 쇼트1(510)의 키워드와 5개가 일치하므로 쇼트1(510)과 쇼트2(520)는 0.5(5/10)의 일치 비율을 갖고, 이는 제2 임계값 0.5 이상이므로 하나의 장면을 구성하는 쇼트로 판단할 수 있다. 반면에, 쇼트3(530)은 전체 키워드 10개 중에서 쇼트2(520)의 키워드와 3개가 일치하므로 쇼트2(520)과 쇼트3(530)는 0.3(3/10)의 일치 비율을 갖고, 이는 제2 임계값 0.5 미만이므로 쇼트2(520)와 쇼트3(530)은 다른 장면을 구성하는 쇼트로 판단할 수 있다.Referring to Table 1, shot 2 520 includes candidate keywords of shot 1 510 and 5 ('Man', 'Picture frame', Clothing', 'Art', 'Event') among 10 candidate keywords. match Also, in the shot 3 530 , three keywords ('Woman', 'Photography', and 'Gesture') match the keywords of the shot 2 520 out of 10 candidate keywords. When the second threshold value is, for example, 0.5, shot 2 520 matches 5 keywords of shot 1 510 out of 10 total keywords, so shot 1 510 and shot 2 520 are 0.5 (5) /10), which is equal to or greater than the second threshold value of 0.5, it can be determined as a shot constituting one scene. On the other hand, shot 3 530 matches three keywords of shot 2 520 out of 10 keywords, so shot 2 520 and shot 3 530 have a matching ratio of 0.3 (3/10), Since this is less than the second threshold value of 0.5, the second shot 520 and the third shot 530 may be determined as shots constituting different scenes.
다른 실시예에 따르면, 영상 검색 제공 장치(220)는 연속하는 쇼트들에 있어서, 각 쇼트의 일치하는 후보 키워드의 수를 누적적으로 카운트하고, 누적된 카운트 값에 기초하여, 후보 키워드의 일치 비율을 계산할 수 있다. 표 1을 참조하면, 쇼트3(530)은 후보 키워드는 10개 중에서 쇼트1(510)의 키워드와 1개('Person'), 쇼트2(520)의 키워드와 3개('Woman', 'Photography', 'Gesture')가 일치하여 누적하여 쇼트3(530)은 0.4(4/10)의 일치 비율을 갖을 수 있다.According to another embodiment, the image search providing apparatus 220 cumulatively counts the number of matching candidate keywords in each shot in successive shots, and based on the accumulated count value, the matching ratio of the candidate keywords can be calculated. Referring to Table 1, in the short 3 530, the keyword of the short 1 510 and 1 ('Person') among the 10 candidate keywords, the keyword of the short 2 520 and 3 ('Woman', ') Photography', 'Gesture') coincide and accumulate, so that the shot 3 530 may have a coincidence ratio of 0.4 (4/10).
다시 도 4를 참조하면, 단계(440)에서, 영상 검색 제공 장치(220)는 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 장면을 대표하는 최종 키워드를 결정한다. 영상 검색 제공 장치(220)는 장면을 구성하는 하나 이상의 쇼트들에 대응하는 키워드들 중에서 노이즈로 볼 수 있는 키워드들을 제거하여 장면을 대표하는 키워드들로 구성된 최종 키워드를 결정할 수 있다. 영상 검색 제공 장치(220)는 장면에 대응하는 시간 정보가 매칭된 최종 키워드를 생성할 수 있고, 시간 정보가 매칭된 최종 키워드는 파일 형태로 데이터베이스에 저장될 수 있다.Referring back to FIG. 4 , in step 440 , the image search providing apparatus 220 statistically processes confidence values corresponding to keywords of shots constituting a scene to determine a final keyword representing the scene. The image search providing apparatus 220 may determine a final keyword composed of keywords representing the scene by removing keywords that can be viewed as noise from keywords corresponding to one or more shots constituting the scene. The image search providing apparatus 220 may generate a final keyword matched with time information corresponding to a scene, and the final keyword matched with time information may be stored in a database in the form of a file.
일 실시예에 따르면, 영상 검색 제공 장치(220)는 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정하고, 쇼트 별 가중치에 기초하여 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 가중합할 수 있다. 나아가, 영상 검색 제공 장치(220)는 가중합이 제3 임계값 이상인 키워드를 최종 키워드로 결정할 수 있다. 통계 처리 방법은 전술한 가중합에 한정되지 않고, 통계 처리에 관한 임의의 방식을 포함할 수 있다.According to an embodiment, the image search providing apparatus 220 may determine a weight for each shot of the shots constituting the scene, and weight the confidence values corresponding to keywords of the shots constituting the scene based on the weight for each shot. . Furthermore, the image search providing apparatus 220 may determine a keyword whose weighted sum is equal to or greater than the third threshold value as the final keyword. The statistical processing method is not limited to the above-described weighted sum, and may include any method related to statistical processing.
영상 검색 제공 장치(220)는 장면을 구성하는 쇼트들의 중요도에 기초하여 쇼트 별 가중치를 결정할 수 있다. 예를 들어, 영상 검색 제공 장치(220)는 더 높은 중요도를 갖는 쇼트에 더 큰 가중치를 부여할 수 있다.The image search providing apparatus 220 may determine a weight for each shot based on the importance of shots constituting the scene. For example, the image search providing apparatus 220 may assign a greater weight to a shot having a higher importance.
일 실시예에 따르면, 영상 검색 제공 장치(220)는 후보 키워드의 수가 많을수록 중요도가 높다고 판단할 수 있다. 이에, 영상 검색 제공 장치(220)는 장면을 구성하는 쇼트들 각각에 포함된 후보 키워드의 수에 기초하여 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정할 수 있다. 예를 들어, 표 1에서, 쇼트1(510)은 17개의 후보 키워드를 갖고, 쇼트2(520)는 10개의 후보 키워드를 갖는 바, 쇼트1(510)은 0.63(17/27)의 가중치를, 쇼트2(520)는 0.37(10/27)의 가중치를 갖을 수 있다. 아래 표 2는 위 예시에 따른 장면을 구성하는 쇼트들(예를 들어, 쇼트1(510) 및 쇼트2(520))의 키워드들 및 이에 대응하는 컨피던스 값의 가중합을 나타낸 것이다.According to an embodiment, the image search providing apparatus 220 may determine that the greater the number of candidate keywords, the higher the importance. Accordingly, the image search providing apparatus 220 may determine a weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene. For example, in Table 1, shot 1 510 has 17 candidate keywords, shot 2 520 has 10 candidate keywords, and shot 1 510 has a weight of 0.63 (17/27). , shot 2 520 may have a weight of 0.37 (10/27). Table 2 below shows the weighted sum of keywords and corresponding confidence values of shots (eg, shot 1 510 and shot 2 520 ) constituting the scene according to the example above.
장면1scene 1
ManMan 0.86520.8652
Picture framepicture frame 0.82410.8241
ArtArt 0.83040.8304
EventEvent 0.42210.4221
ClothingClothing 0.63820.6382
Visual ArtsVisual Arts 0.51660.5166
PersonPerson 0.51030.5103
Modern ArtModern Art 0.46620.4662
PaintingPainting 0.46620.4662
OrganismOrganism 0.45360.4536
FunFun 0.4410.441
AdaptationAdaptation 0.42210.4221
RoomRoom 0.41580.4158
Art ExhibitionArt Exhibition 0.40950.4095
DrawingDrawing 0.37170.3717
Luggage & bagsLuggage & bags 0.35910.3591
PortraitPortrait 0.35910.3591
AnimationAnimation 0.35280.3528
ExhibitionExhibition 0.35280.3528
IllustrationIllustration 0.34650.3465
ConversationConversation 0.34020.3402
MuralMural 0.33390.3339
Womanwoman 0.31080.3108
RoomRoom 0.24420.2442
PhotographyPhotography 0.22940.2294
ConversationConversation 0.21090.2109
GestureGesture 0.20720.2072
Luggage & bagsLuggage & bags 0.20350.2035
Visual ArtsVisual Arts 0.20350.2035
표 2를 참조하면, 영상 검색 제공 장치(220)는 쇼트1(510) 및 쇼트2(520)의 키워드에 대응하는 컨피던스 값의 가중합이 미리 정해진 제3 임계값(예를 들어, 0.5) 이상인 키워드('Man', 'Picture frame', 'Art', 'Event', 'Clothing', 'Visual Arts', 'Person' )를 장면1의 최종 키워드로 결정할 있다.Referring to Table 2, in the image search providing apparatus 220, the weighted sum of the confidence values corresponding to the keywords of the first shot 510 and the second shot 520 is equal to or greater than a predetermined third threshold (eg, 0.5). Keywords ('Man', 'Picture frame', 'Art', 'Event', 'Clothing', 'Visual Arts', 'Person' ) can be determined as the final keywords of Scene 1.
일 실시예에 따른 제3 임계값은 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값의 분포에 기초하여 결정될 수 있다. 예를 들어, 제3 임계값은 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값들의 평균 및 분산에 기초하여 결정될 수 있다. 또는, 제3 임계값은 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값들의 미리 정해진 백분위 값에 기초하여 결정될 수 있다. 제3 임계값을 결정하는 방법은 위 예시에 한정되지 않고, 컨피던스 값의 분포에 기초하여 결정될 수 있는 임의의 방법을 포함한다.The third threshold value according to an embodiment may be determined based on a distribution of confidence values corresponding to keywords of shots constituting a scene. For example, the third threshold value may be determined based on an average and variance of confidence values corresponding to keywords of shots constituting a scene. Alternatively, the third threshold value may be determined based on a predetermined percentile value of confidence values corresponding to keywords of shots constituting a scene. The method of determining the third threshold value is not limited to the above example, and includes any method that may be determined based on the distribution of confidence values.
단계(450)에서, 영상 검색 제공 장치(220)는 검색 쿼리를 포함하는 장면 검색 요청을 수신한다. 영상 검색 제공 장치(220)는 자체적으로 검색 엔진을 포함할 수도 있고, 외부 검색 엔진을 사용할 수도 있다. 영상 검색 제공 장치(220)가 자체적으로 검색 엔진을 포함하는 경우, 사용자의 단말로부터 검색 쿼리를 포함하는 장면 검색 요청을 직접 수신할 수 있다. 또는 외부 검색 엔진을 사용하는 경우, 사용자는 외부 검색 엔진을 통해 장면 검색을 요청하고, 영상 검색 제공 장치(220)는 외부 검색 엔진으로부터 검색 쿼리를 포함하는 장면 검색 요청을 수신할 수 있다.In step 450 , the image search providing device 220 receives a scene search request including a search query. The image search providing apparatus 220 may include a search engine itself or may use an external search engine. When the image search providing apparatus 220 includes a search engine itself, it may directly receive a scene search request including a search query from a user's terminal. Alternatively, when an external search engine is used, the user may request a scene search through the external search engine, and the image search providing apparatus 220 may receive a scene search request including a search query from the external search engine.
단계(460)에서, 영상 검색 제공 장치(220)는 최종 키워드에 기초하여 검색 쿼리에 대응하는 장면을 결정한다. 영상 검색 제공 장치(220)는 최종 키워드와 검색 쿼리를 비교할 수 있고, 비교 결과에 기초하여 검색 쿼리에 대응하는 장면을 결정할 수 있다.In operation 460, the image search providing apparatus 220 determines a scene corresponding to the search query based on the final keyword. The image search providing apparatus 220 may compare the final keyword with the search query, and may determine a scene corresponding to the search query based on the comparison result.
나아가, 영상 검색 제공 장치(220)는 최종 키워드와 미리 정해진 관계를 갖는 하나 이상의 관계 키워드를 추가할 수 있고, 관계 키워드를 더 고려하여 상기 검색 쿼리에 대응하는 장면을 결정할 수 있다. 관계 키워드는 최종 키워드와 유사어, 상/하위어 등을 포함할 수 있다.Furthermore, the image search providing apparatus 220 may add one or more relational keywords having a predetermined relationship with the final keyword, and may determine a scene corresponding to the search query by further considering the relational keywords. The relational keyword may include a final keyword, a similar word, an upper/lower word, and the like.
단계(470)에서, 영상 검색 제공 장치(220)는 결정된 장면에 대응하는 영상을 제공한다. 외부 검색 엔진을 사용하는 경우, 영상 검색 제공 장치(220)는 외부 검색 엔진으로 결정된 장면에 대응하는 영상을 제공할 수도 있다.In step 470 , the image search providing apparatus 220 provides an image corresponding to the determined scene. When an external search engine is used, the image search providing apparatus 220 may provide an image corresponding to a scene determined by the external search engine.
영상 검색 제공 장치(220)는 검색 쿼리에 기초하여, 최종 키워드를 수정할 수 있다. 영상 검색 제공 장치(220)는 검색 결과에 대한 피드백을 적용하여 판단된 정보를 지속적으로 수정하면서 검색 정확도를 향상시킬 수 있다.The image search providing apparatus 220 may modify the final keyword based on the search query. The image search providing apparatus 220 may improve search accuracy while continuously correcting determined information by applying feedback on the search result.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA) array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more of these, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (20)

  1. 영상 분석 엔진으로부터 영상의 각 쇼트(shot)에 대응하는 하나 이상의 키워드 및 상기 키워드에 대응하는 컨피던스 값을 수신하는 단계;receiving one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keywords from an image analysis engine;
    상기 하나 이상의 키워드 중에서, 상기 컨피던스 값이 제1 임계값 이상인 키워드를 후보 키워드로 결정하는 단계;determining, among the one or more keywords, a keyword having the confidence value equal to or greater than a first threshold value as a candidate keyword;
    연속하는 쇼트들에 있어서, 상기 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정하는 단계;in successive shots, determining shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value as one scene;
    상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 상기 장면을 대표하는 최종 키워드를 결정하는 단계;determining a final keyword representing the scene by statistically processing confidence values corresponding to keywords of shots constituting the scene;
    검색 쿼리를 포함하는 장면 검색 요청을 수신하는 단계;receiving a scene search request comprising a search query;
    상기 최종 키워드에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계; 및determining a scene corresponding to the search query based on the final keyword; and
    상기 결정된 장면에 대응하는 영상을 제공하는 단계providing an image corresponding to the determined scene
    를 포함하는 영상 검색 제공 방법.A method of providing a video search comprising a.
  2. 제1항에 있어서,According to claim 1,
    상기 검색 쿼리에 기초하여, 상기 최종 키워드를 수정하는 단계modifying the final keyword based on the search query
    를 더 포함하는, 영상 검색 제공 방법.Further comprising, a video search providing method.
  3. 제1항에 있어서,According to claim 1,
    상기 제1 임계값은 상기 컨피던스 값의 분포에 기초하여 결정되는, 영상 검색 제공 방법.The first threshold value is determined based on a distribution of the confidence values.
  4. 제3항에 있어서,4. The method of claim 3,
    상기 최종 키워드를 결정하는 단계는The step of determining the final keyword is
    상기 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정하는 단계;determining a weight for each shot of the shots constituting the scene;
    상기 쇼트 별 가중치에 기초하여, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 가중합하는 단계; 및weighted summing confidence values corresponding to keywords of shots constituting the scene based on the weights for each shot; and
    상기 가중합이 제3 임계값 이상인 키워드를 상기 최종 키워드로 결정하는 단계determining a keyword whose weighted sum is equal to or greater than a third threshold value as the final keyword
    를 포함하는, 영상 검색 제공 방법.Including, a method for providing video search.
  5. 제4항에 있어서,5. The method of claim 4,
    상기 쇼트 별 가중치를 결정하는 단계는The step of determining the weight for each shot is
    상기 장면을 구성하는 쇼트들 각각에 포함된 상기 후보 키워드의 수에 기초하여 상기 장면을 구성하는 쇼트들의 상기 쇼트 별 가중치를 결정하는 단계determining a weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene
    를 포함하는, 미디어 인리치먼트 제공 방법.A method of providing media enrichment, comprising a.
  6. 제4항에 있어서,5. The method of claim 4,
    상기 제3 임계값은The third threshold is
    상기 장면을 구성하는 쇼트들의 상기 키워드에 대응하는 상기 컨피던스 값의 분포에 기초하여 결정되는, 인리치먼트 제공 방법.It is determined based on the distribution of the confidence value corresponding to the keyword of the shots constituting the scene, the enrichment providing method.
  7. 제4항에 있어서,5. The method of claim 4,
    상기 가중합하는 단계는The weighting step is
    상기 가중치에 기초하여, 상기 장면을 구성하는 상기 쇼트들의 상기 후보 키워드에 대응하는 컨피던스 값을 가중합하는 단계weighted summing confidence values corresponding to the candidate keywords of the shots constituting the scene based on the weight
    를 포함하는, 미디어 인리치먼트 제공 방법.A method of providing media enrichment, comprising a.
  8. 제4항에 있어서,5. The method of claim 4,
    상기 검색 쿼리에 대응하는 장면을 결정하는 단계는The step of determining a scene corresponding to the search query is
    상기 제3 임계값 이상인 키워드와 상기 검색 쿼리를 비교하는 단계; 및comparing the search query with a keyword equal to or greater than the third threshold; and
    상기 비교 결과에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계determining a scene corresponding to the search query based on the comparison result
    를 포함하는, 영상 검색 제공 방법.Including, a method for providing video search.
  9. 제8항에 있어서,9. The method of claim 8,
    상기 제3 임계값 이상인 키워드와 미리 정해진 관계를 갖는 하나 이상의 관계 키워드를 추가하는 단계adding one or more relational keywords having a predetermined relation with a keyword equal to or greater than the third threshold value;
    를 더 포함하고,further comprising,
    상기 검색 쿼리에 대응하는 장면을 결정하는 단계는The step of determining a scene corresponding to the search query is
    상기 관계 키워드를 더 고려하여 상기 검색 쿼리에 대응하는 장면을 결정하는 단계determining a scene corresponding to the search query by further considering the relational keyword
    를 포함하는, 영상 검색 제공 방법.Including, a method for providing video search.
  10. 제1항에 있어서,According to claim 1,
    상기 영상 분석 엔진은The video analysis engine
    상기 영상을 입력 받아 상기 키워드 및 상기 키워드에 대응하는 상기 컨피던스 값을 생성하는 외부 영상 분석 엔진을 포함하는, 영상 검색 제공 방법.and an external image analysis engine that receives the image and generates the keyword and the confidence value corresponding to the keyword.
  11. 하드웨어와 결합되어 제1항 내지 제10항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.A computer program stored on a medium in combination with hardware to execute the method of any one of claims 1 to 10.
  12. 영상 분석 엔진으로부터 영상의 각 쇼트(shot)에 대응하는 하나 이상의 키워드 및 상기 키워드에 대응하는 컨피던스 값을 수신하고, 상기 하나 이상의 키워드 중에서, 상기 컨피던스 값이 제1 임계값 이상인 키워드를 후보 키워드로 결정하고, 연속하는 쇼트들에 있어서, 상기 각 쇼트의 상기 후보 키워드의 일치 비율이 제2 임계값 이상인 쇼트들을 하나의 장면으로 결정하고, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 통계 처리하여, 상기 장면을 대표하는 최종 키워드를 결정하고, 검색 쿼리를 포함하는 장면 검색 요청을 수신하고, 상기 최종 키워드에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하며, 상기 결정된 장면에 대응하는 영상을 제공하는Receive one or more keywords corresponding to each shot of an image and a confidence value corresponding to the keyword from the image analysis engine, and determine, among the one or more keywords, a keyword having a confidence value equal to or greater than a first threshold value as a candidate keyword and, in successive shots, the shots in which the match ratio of the candidate keyword of each shot is equal to or greater than a second threshold value is determined as one scene, and the confidence values corresponding to the keywords of the shots constituting the scene are statistically processed to determine a final keyword representing the scene, receive a scene search request including a search query, determine a scene corresponding to the search query based on the final keyword, and display an image corresponding to the determined scene provided
    프로세서processor
    를 포함하는 영상 검색 제공 장치.A video search providing device comprising a.
  13. 제12항에 있어서,13. The method of claim 12,
    상기 프로세서는the processor
    상기 검색 쿼리에 기초하여, 상기 최종 키워드를 수정하는, 영상 검색 제공 장치.Based on the search query, the video search providing apparatus for modifying the final keyword.
  14. 제12항에 있어서,13. The method of claim 12,
    상기 제1 임계값은 상기 컨피던스 값의 분포에 기초하여 결정되는, 영상 검색 제공 장치.The first threshold value is determined based on a distribution of the confidence values.
  15. 제14항에 있어서,15. The method of claim 14,
    상기 프로세서는the processor
    상기 장면을 구성하는 쇼트들의 쇼트 별 가중치를 결정하고, 상기 쇼트 별 가중치에 기초하여, 상기 장면을 구성하는 쇼트들의 키워드에 대응하는 컨피던스 값을 가중합하고, 상기 가중합이 제3 임계값 이상인 키워드를 상기 최종 키워드로 결정하는, 영상 검색 제공 장치.A weight of shots constituting the scene is determined for each shot, and confidence values corresponding to keywords of shots constituting the scene are weighted and summed based on the weight of each shot, and a keyword whose weighted sum is equal to or greater than a third threshold is selected. Determined by the final keyword, video search providing device.
  16. 제15항에 있어서,16. The method of claim 15,
    상기 프로세서는the processor
    상기 장면을 구성하는 쇼트들 각각에 포함된 상기 후보 키워드의 수에 기초하여 상기 장면을 구성하는 쇼트들의 상기 쇼트 별 가중치를 결정하는, 영상 검색 제공 장치.and determining a weight for each shot of the shots constituting the scene based on the number of candidate keywords included in each of the shots constituting the scene.
  17. 제15항에 있어서,16. The method of claim 15,
    상기 제3 임계값은The third threshold is
    상기 장면을 구성하는 쇼트들의 상기 키워드에 대응하는 상기 컨피던스 값의 분포에 기초하여 결정되는, 영상 검색 제공 장치.which is determined based on a distribution of the confidence values corresponding to the keywords of shots constituting the scene.
  18. 제15항에 있어서,16. The method of claim 15,
    상기 프로세서는the processor
    상기 가중치에 기초하여, 상기 장면을 구성하는 상기 쇼트들의 상기 후보 키워드에 대응하는 컨피던스 값을 가중합하는, 영상 검색 제공 장치.Based on the weight, the apparatus for providing an image search for weighting the confidence values corresponding to the candidate keywords of the shots constituting the scene.
  19. 제15항에 있어서,16. The method of claim 15,
    상기 프로세서는the processor
    상기 제3 임계값 이상인 키워드와 상기 검색 쿼리를 비교하고, 상기 비교 결과에 기초하여 상기 검색 쿼리에 대응하는 장면을 결정하는, 영상 검색 제공 장치.Comparing a keyword equal to or greater than the third threshold value with the search query, and determining a scene corresponding to the search query based on the comparison result.
  20. 제15항에 있어서,16. The method of claim 15,
    상기 프로세서는the processor
    상기 제3 임계값 이상인 키워드와 미리 정해진 관계를 갖는 하나 이상의 관계 키워드를 추가하고, 상기 관계 키워드를 더 고려하여 상기 검색 쿼리에 대응하는 장면을 결정하는, 영상 검색 제공 장치.An image search providing apparatus for adding one or more relational keywords having a predetermined relationship with a keyword equal to or greater than the third threshold value, and determining a scene corresponding to the search query by further considering the relational keyword.
PCT/KR2020/018892 2020-01-20 2020-12-22 Method and apparatus for providing image search WO2021149923A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2020-0007170 2020-01-20
KR20200007170 2020-01-20
KR10-2020-0180768 2020-12-22
KR1020200180768A KR20210093744A (en) 2020-01-20 2020-12-22 Method and apparatus for providing image search

Publications (1)

Publication Number Publication Date
WO2021149923A1 true WO2021149923A1 (en) 2021-07-29

Family

ID=76993220

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/018892 WO2021149923A1 (en) 2020-01-20 2020-12-22 Method and apparatus for providing image search

Country Status (1)

Country Link
WO (1) WO2021149923A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060097895A (en) * 2005-03-07 2006-09-18 삼성전자주식회사 Method and apparatus for speech recognition
KR20080103227A (en) * 2007-05-23 2008-11-27 삼성전자주식회사 Method for searching supplementary data related to contents data and apparatus thereof
KR20160058587A (en) * 2014-11-17 2016-05-25 삼성전자주식회사 Display apparatus and method for summarizing of document
KR20170090678A (en) * 2016-01-29 2017-08-08 (주) 다이퀘스트 Apparatus for extracting scene keywords from video contents and keyword weighting factor calculation apparatus
US20170300570A1 (en) * 2016-04-13 2017-10-19 Google Inc. Video Metadata Association Recommendation
KR20180136265A (en) * 2017-06-14 2018-12-24 주식회사 핀인사이트 Apparatus, method and computer-readable medium for searching and providing sectional video

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060097895A (en) * 2005-03-07 2006-09-18 삼성전자주식회사 Method and apparatus for speech recognition
KR20080103227A (en) * 2007-05-23 2008-11-27 삼성전자주식회사 Method for searching supplementary data related to contents data and apparatus thereof
KR20160058587A (en) * 2014-11-17 2016-05-25 삼성전자주식회사 Display apparatus and method for summarizing of document
KR20170090678A (en) * 2016-01-29 2017-08-08 (주) 다이퀘스트 Apparatus for extracting scene keywords from video contents and keyword weighting factor calculation apparatus
US20170300570A1 (en) * 2016-04-13 2017-10-19 Google Inc. Video Metadata Association Recommendation
KR20180136265A (en) * 2017-06-14 2018-12-24 주식회사 핀인사이트 Apparatus, method and computer-readable medium for searching and providing sectional video

Similar Documents

Publication Publication Date Title
US11481428B2 (en) Bullet screen content processing method, application server, and user terminal
WO2020080606A1 (en) Method and system for automatically generating video content-integrated metadata using video metadata and script data
WO2018074716A1 (en) Method and system for recommending query by using search context
WO2010117213A2 (en) Apparatus and method for providing information related to broadcasting programs
WO2015119335A1 (en) Content recommendation method and device
WO2016013885A1 (en) Method for retrieving image and electronic device thereof
WO2014106986A1 (en) Electronic apparatus controlled by a user's voice and control method thereof
WO2020189884A1 (en) Machine learning-based approach to demographic attribute inference using time-sensitive features
WO2020166883A1 (en) Method and system for editing video on basis of context obtained using artificial intelligence
WO2018174314A1 (en) Method and system for producing story video
WO2014175520A1 (en) Display apparatus for providing recommendation information and method thereof
WO2020022550A1 (en) Method and apparatus for providing dance game based on recognition of user motion
WO2018080228A1 (en) Server for translation and translation method
CN104102683A (en) Contextual queries for augmenting video display
WO2013066041A1 (en) Social data management system and method for operating the same
WO2022071635A1 (en) Recommending information to present to users without server-side collection of user data for those users
CN113254779A (en) Content search method, device, equipment and medium
WO2024008184A1 (en) Information display method and apparatus, electronic device, and computer readable medium
WO2021149923A1 (en) Method and apparatus for providing image search
WO2020242089A2 (en) Artificial intelligence-based curating method and device for performing same method
WO2021149924A1 (en) Method and apparatus for providing media enrichment
KR20210093743A (en) Method and apparatus for providing media enrichment
EP3555883A1 (en) Security enhanced speech recognition method and device
WO2019194569A1 (en) Image searching method, device, and computer program
WO2017222226A1 (en) Method for registering advertised product on image content and server for executing same

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: 20916104

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20916104

Country of ref document: EP

Kind code of ref document: A1

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 191222)

122 Ep: pct application non-entry in european phase

Ref document number: 20916104

Country of ref document: EP

Kind code of ref document: A1