WO2019000789A1 - Live video recommending method and device, and server - Google Patents

Live video recommending method and device, and server Download PDF

Info

Publication number
WO2019000789A1
WO2019000789A1 PCT/CN2017/110935 CN2017110935W WO2019000789A1 WO 2019000789 A1 WO2019000789 A1 WO 2019000789A1 CN 2017110935 W CN2017110935 W CN 2017110935W WO 2019000789 A1 WO2019000789 A1 WO 2019000789A1
Authority
WO
WIPO (PCT)
Prior art keywords
live video
live
image data
similarity
data
Prior art date
Application number
PCT/CN2017/110935
Other languages
French (fr)
Chinese (zh)
Inventor
刘宇超
张文明
陈少杰
Original Assignee
武汉斗鱼网络科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 武汉斗鱼网络科技有限公司 filed Critical 武汉斗鱼网络科技有限公司
Publication of WO2019000789A1 publication Critical patent/WO2019000789A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies

Definitions

  • the present application relates to the field of Internet recommendation, and in particular, to a live video recommendation method, apparatus, and server.
  • the Internet recommends a variety of information, such as articles, videos, and software.
  • the recommended techniques are based on the related text description information and comment information corresponding to the information selected by the user, and then select other related content related to the user's selected information.
  • the recommended technology at this stage is good and mature, but such a recommendation technology faces the emerging industry, but it seems to be powerless.
  • the content of the live broadcast industry is generated in real time, and the text description is free and changeable. Before the live video ends, it is impossible to select other related live video through the current recommendation algorithm.
  • One of the purposes of the present application is to provide a live video recommendation method for improving the above problem.
  • Another object of the present application is to provide a live video recommendation device for improving the above problem.
  • the embodiment of the present application provides a live video recommendation method.
  • the method is applied to a server that is in communication with a client, and the method includes: acquiring image data corresponding to a plurality of live video being broadcasted; obtaining feature data corresponding to each of the image data according to each of the image data Determining, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; and searching between the target live video corresponding to the viewing request according to the received viewing request sent by the client The live video that meets the preset criteria is similar; the live video that is found is recommended to the client.
  • the embodiment of the present application further provides a live video recommendation device.
  • the device is applied to a service that is connected to a client.
  • the device includes: an obtaining module, an extracting module, an evaluating module, a searching module, and a pushing module; wherein the acquiring module is configured to acquire image data corresponding to a plurality of live video being broadcasted; and the extracting module is configured to be respectively configured according to Each of the image data obtains feature data corresponding to each of the image data; the evaluation module is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; And configuring, according to the received viewing request sent by the client, the live video of the similarity between the target live video corresponding to the viewing request that meets the preset criterion; and the pushing module configured to find the The live video is recommended to the client.
  • the embodiment of the present application further provides a server.
  • the server includes: a memory; a processor; and a live video recommendation device, the live video recommendation device being installed in the memory and including one or more software function modules executed by the processor, the device comprising An obtaining module, an extracting module, an evaluating module, a searching module, and a pushing module; wherein the acquiring module is configured to acquire image data corresponding to a plurality of live video being broadcasted; and the extracting module is configured to obtain, according to each of the image data respectively Each of the image data corresponding to the feature data; the evaluation module is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; the search module is configured to be based on the received client The viewing request sent by the terminal, the search for the live video of the preset standard that matches the target live video corresponding to the viewing request, and the pushing module configured to recommend the found live video to The client.
  • the embodiment of the present application further provides a computer readable storage medium, on which a computer program is stored, and when the program is executed by the processor, the steps of the foregoing method are implemented.
  • the present application provides a live video recommendation method.
  • the method determines whether the similarity between any two live video matches the preset criterion according to the feature data corresponding to the image data of the plurality of live video, so that the evaluation result does not depend on the related text description information and the comment information, and the implementation is Similarity analysis between live broadcasts played in real time. Therefore, the user can promptly and accurately push other live video that meets the preset standard with the real-time live video of the viewing, and improve the user experience.
  • FIG. 1 shows a schematic diagram of an application environment of the present application.
  • FIG. 2 is a block schematic diagram of a server according to a preferred embodiment of the present application.
  • FIG. 3 is a flow chart showing the steps of a live video recommendation method according to a preferred embodiment of the present application.
  • step S101 in FIG. 1 is a flow chart of the sub-steps of step S101 in FIG. 1.
  • FIG. 5 is a flow chart of the sub-steps of step S103 in FIG. 1.
  • FIG. 6 is a schematic diagram of a live video recommendation apparatus according to a preferred embodiment of the present application.
  • FIG. 7 is a schematic diagram of functional sub-modules of the evaluation module of FIG. 6.
  • Icon 100-server; 111-memory; 112-processor; 113-communication unit; 200-user terminal; 300-client; 400-live video recommendation device; 401-acquisition module; 402-extraction module; Module; 4031 - calculation sub-module; 4032 - evaluation sub-module; 4033 - determination sub-module; 404 - correspondence establishment module; 405 - search module; 406 - push module.
  • the server 100 is communicably connected to the user terminal 200 through a wired or wireless network.
  • the live video recommendation method and apparatus provided by the embodiments of the present application can be applied to the server 100 of the application environment shown in FIG. 1.
  • the server 100 and the user terminal 200 are located in a network, and the network includes a wireless network or a wired network. Through the network, the user terminal 200 performs data interaction with the server 100.
  • the server 100 may be a server 100 or a plurality of servers 100 that perform different tasks.
  • the user terminal 200 is preferably a mobile terminal device, and may include, for example, a smart phone, a tablet computer, an e-book reader, a laptop portable computer, a vehicle-mounted computer, a wearable mobile terminal, and the like.
  • a client 300 (for example, a betta client) is installed in the user terminal 200, and corresponds to the server 100.
  • the client 300 is communicably connected to the server 100 to provide services for the user.
  • the server 100 includes a live video recommendation device 400, memory 111, processor 112, communication unit 113.
  • the components of the memory 111, the processor 112, and the communication unit 113 are electrically connected directly or indirectly to each other to implement data transmission or interaction.
  • the components can be electrically connected to one another via one or more communication buses or signal lines.
  • the live video recommendation device 400 includes at least one software function module that can be stored in the memory 111 or solidified in an operating system (OS) of the server 100 in the form of software or firmware.
  • the processor 112 is configured to execute an executable module stored in the memory 111, such as a software function module, a computer program, and the like included in the live video recommendation device 400.
  • the memory 111 can be, but not limited to, a random access memory (RAM), a read only memory (ROM), and a programmable read-only memory (PROM). Erasable Programmable Read-Only Memory (EPROM), Electric Erasable Programmable Read-Only Memory (EEPROM), and the like.
  • the memory 111 is configured to store programs and voice data, and the processor 112 executes the programs after receiving the execution instructions.
  • the communication unit 113 is configured to establish a communication connection between the server 100 and the user terminal 200 through the network, and is configured to transmit and receive data through the network.
  • FIG. 2 is only a schematic structural diagram of the server 100, and the server 100 may further include more or less components than those shown in FIG. 1, or have a configuration different from that shown in FIG. .
  • the components shown in Figure 2 can be implemented in hardware, software, or a combination thereof.
  • FIG. 3 is a flowchart of a live video recommendation method applied to the server 100 shown in FIG. 2 according to a preferred embodiment of the present application.
  • the live video recommendation method includes the following steps:
  • Step S101 Acquire image data corresponding to a plurality of live broadcast videos being broadcasted.
  • the live video that is being broadcasted may be the live video received by the server 100.
  • the server 100 may receive live video uploaded by all the live broadcast clients in real time, and obtain current current image data from the received live video.
  • the client 300 is divided into a live client and a viewing client according to different usage states.
  • the live client is configured to capture the live video upload server 100 to share the live video client 300, and the viewing client is configured as a slave server.
  • 100 acquires the shared live video for the client to view.
  • the viewing client obtains a live video of the live client upload server 100 by sending a request to the server 100.
  • step S101 further includes the following sub-steps:
  • Sub-step S1011 Collect one frame of live broadcast image data from each of the plurality of live broadcast videos being broadcasted according to a preset time period interval.
  • the live video that is being broadcasted in real time is uploaded by the live client to the server 100 in real time, and the server 100 collects the latest received video according to the preset time interval.
  • All of the video streams of the live video stream currently have one frame of picture data.
  • the server 100 acquires the previous one-frame picture data of the newly received video stream of the live video at intervals of 5 seconds. This process is ongoing and ensures real-time performance.
  • the plurality of live broadcast videos that are being broadcasted are all live broadcast videos that are uploaded in real time for all live broadcast clients that are connected to the server 100.
  • Sub-step S1012 generating the image data according to the live broadcast screen data, the live broadcast information data corresponding to the live broadcast screen data, and the anchor information data.
  • each live video has corresponding live broadcast information data and anchor information data, and the amount of data between the live broadcast information data and the anchor information data is small, and the information between the live broadcast room and the anchor information can be quickly Find the corresponding live video.
  • the live broadcast information data and the anchor information data corresponding to the live video are used as attribute data of live video data corresponding to the live video to generate corresponding image data.
  • the image data may also be generated according to the live video data and the attribute data of the live video data corresponding to the live video, where the live video is corresponding to the live video.
  • the attribute data of the live broadcast video data may be data such as live broadcast information data, anchor information data, and the like, and a combination of the foregoing data.
  • Step S102 obtaining feature data corresponding to each of the image data according to each of the image data.
  • the trained deep learning model is preset in the server 100.
  • the server 100 performs incremental training on the deep learning model by collecting live broadcast picture data of a large number of received live video as a sample set.
  • the training process adopts a migration learning method, and continuously uses the sample set to train the last of the deep learning model.
  • One layer ie, the classifier layer
  • continuously improve the parameters of other layers until the accuracy of the classifier layer reaches about 95%.
  • the deep learning model may be to download the trained inception v3 model from the GoogleTensorflow official website, set the node of the classifier layer of the inception v3 model to 10000 and then use the sample set to train the classifier layer of the invent v3 model to obtain a live broadcast.
  • Video-customized inception v3 model The last layer (ie, the classifier layer) of the deep learning model that completes the customization is removed, and the penultimate layer (ie, the feature extraction layer) is used as the output layer.
  • the deep learning includes multiple levels, and the output data of the previous level is the input data of the next level, and the maximum description of the input data is retained between the levels, and the classifier layer is the last one of the deep learning model.
  • Layer in the prior art, the output result of the classification layer is usually the final output result, and the image data is identified.
  • the second last layer ie, the feature extraction layer
  • feature extraction is performed.
  • the output of the layer is a multi-dimensional feature vector extracted from the image data.
  • the feature vector can fully reflect the visual properties of the image, and is convenient for calculation and comparison.
  • the feature extraction process is performed on the live picture data of each of the image data obtained by each acquisition by using the deep learning model.
  • the feature vector output from the feature extraction layer of the deep learning model is used as the feature data.
  • Step S103 determining, according to the feature data, whether the similarity between any two of the live video meets a preset standard.
  • step S103 includes the following sub-steps:
  • Sub-step S1031 calculating an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos being broadcast.
  • the feature data includes a feature vector
  • the server 100 respectively calculates each feature vector and other features in the feature vector corresponding to the image data collected according to the feature vector extracted in each acquired image data.
  • Euclidean distance between vectors It should be noted that the Euclidean distance is a commonly used distance definition, which refers to the true distance between two points in the m-dimensional space, or the natural length of the vector (ie, the distance from the point to the origin). The Euclidean distance in two-dimensional and three-dimensional space is the actual distance between two points. Calculating the Euclidean distance calculation is relatively small and fast.
  • Sub-step S1032 estimating the similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors.
  • the Euclidean distances of the feature vectors respectively characterizing the two image data are smaller. The smaller the Euclidean distance, the higher the similarity of the corresponding live video.
  • Sub-step S1033 determining whether the preset criterion is met according to the similarity of the two live video.
  • the Euclidean distance between the feature vectors of the image data corresponding to the two live video is used to determine whether the similarity between the two live video meets a preset criterion.
  • the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets the preset criterion.
  • Step S104 Correspond to the inter-live broadcast information data and the anchor information data in the image data corresponding to the two live video that meet the preset criterion.
  • the live broadcast information data and the anchor information corresponding to the two live video that meet the preset standard are associated, so that one live video can be quickly found to find another live video, that is, the similarity is satisfied.
  • the correspondence between the two live video of the preset standard may be saved until both live video ends, or may be saved until at least one live video ends.
  • step S105 according to the received viewing request sent by the client 300, the live video in which the similarity between the target live video corresponding to the viewing request meets the preset criterion is found.
  • the server 100 when the viewing client requests the server 100 to obtain the target live video corresponding to the request, the server 100 sends the target live video to the viewing client for the customer to view, and also according to the target live video according to the preset time interval. Whether the information data of the live broadcast room and the data of the anchor information are inquired whether the similarity meets the preset standard When the video is broadcast, the process proceeds to step S106.
  • the live video that is currently being broadcasted is searched for a live video that meets the preset standard by the similarity of the target live video.
  • Step S106 recommending the found live video to the client 300.
  • the obtained live broadcast information data and the anchor information data corresponding to the live broadcast video are obtained to generate a recommendation list, and the recommendation list is sent to the viewing client to use the user selection of the viewing client.
  • the process returns to step S105 after the end of step S106, and when it is found that is different from the recommended live video, After the live video that meets the preset standard is similar to the target live video, the process proceeds to step S106 again.
  • the live video recommendation device 400 includes an acquisition module 401 , an extraction module 402 , an evaluation module 403 , a search module 405 , a push module 406 , and a correspondence relationship establishing module 404 .
  • the obtaining module 401 is configured to acquire image data corresponding to a plurality of live broadcast videos being broadcasted.
  • the step S101, the sub-step S1011, and the sub-step S1012 are all performed by the obtaining module 401.
  • the obtaining module 401 is further configured to separately collect one frame of live broadcast screen data from the plurality of live broadcast videos that are being broadcasted according to the preset time period interval; and corresponding to the live broadcast screen data according to the live broadcast screen data.
  • the live room information data and the anchor information data generate the image data.
  • the extraction module 402 is configured to obtain feature data corresponding to each of the image data according to each of the image data.
  • the step S102 may be performed by the extraction module 402.
  • the extraction module 402 is configured to perform feature extraction processing on each of the image data by using the deep learning model, and use the feature vector output by the feature extraction layer of the deep learning model as the feature data.
  • the trained deep learning model is preset in the server 100.
  • the server 100 performs incremental training on the deep learning model by collecting live broadcast picture data of a large number of received live video as a sample set.
  • the training process adopts a migration learning method, and continuously uses the sample set to train the last of the deep learning model.
  • One layer ie, the classifier layer
  • continuously improve the parameters of other layers until the accuracy of the classifier layer reaches about 95%.
  • the deep learning model may be to download the trained inception v3 model from the GoogleTensorflow official website, set the node of the classifier layer of the inception v3 model to 10000 and then use the sample set to train the classifier layer of the invent v3 model to obtain a live broadcast.
  • Video-customized inception v3 model The last layer (ie, the classifier layer) of the deep learning model that completes the customization is removed, and the penultimate layer (ie, the feature extraction layer) is used as the output layer.
  • the deep learning includes multiple levels, and the output data of the previous level is the input data of the next level, and is retained between the levels.
  • the maximum description of the input data, the classifier layer is the last layer of the deep learning model.
  • the output result of the classification layer is generally used as the final output result, and the image data has been identified, and in the present application,
  • the penultimate layer ie, feature extraction layer
  • the output of the feature extraction layer is a multi-dimensional feature vector extracted from the image data.
  • the feature vector can fully reflect the visual properties of the image, and is convenient for calculation and comparison.
  • the feature extraction process is performed on the live picture data of each of the image data obtained by each acquisition by using the deep learning model.
  • the feature vector output from the feature extraction layer of the deep learning model is used as the feature data.
  • the evaluation module 403 is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion.
  • the step S103 may be performed by the evaluation module 403.
  • the evaluation module 403 may further include the following sub-modules:
  • the calculation sub-module 4031 is configured to calculate an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos being broadcast.
  • the sub-step S1031 may be performed by the calculation sub-module 4031.
  • the evaluation sub-module 4032 is configured to evaluate the similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors.
  • the sub-step S1032 may be performed by the evaluation sub-module 4032.
  • the determining sub-module 4033 is configured to determine, according to the similarity between the two live video, whether the preset criterion is met, and when the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets Presuppose the standard.
  • the sub-step S1033 may be performed by the determining sub-module 4033.
  • the correspondence relationship establishing module 404 is configured to correspond to the inter-live channel information data and the anchor information data in the image data corresponding to the two live video that meet the preset criterion.
  • the step S104 may be performed by the correspondence establishing module 404.
  • the searching module 405 is configured to search, according to the received viewing request sent by the client 300, the live video with the similarity between the target live video corresponding to the viewing request that meets the preset criterion.
  • the searching module 405 is further configured to search for a live video that meets the preset standard by the live video that is currently being broadcasted.
  • the step S105 may be performed by the corresponding search module 405.
  • the pushing module 406 is configured to recommend the found live video to the client 300.
  • the step S106 may be performed by the corresponding pushing module 406.
  • the push module 406 is configured to obtain the live broadcast information data and the anchor information data corresponding to the found live video to generate a recommendation list, and send the recommendation list to the viewing client.
  • the present application provides a live video recommendation method, apparatus, and server.
  • the method is applied to The server is connected to the client, and the method includes: acquiring image data corresponding to the live video that is being broadcasted; obtaining feature data corresponding to each of the image data according to each of the image data; and according to the feature data Determining whether the similarity between any two of the live video meets a preset criterion; according to the received viewing request sent by the client, finding a similarity between the target live video corresponding to the viewing request satisfies the pre- Set the standard live video; recommend the found live video to the client.
  • the similarity analysis between the live broadcast videos being broadcasted is realized, the calculation amount is small, and the analysis speed is fast. And can guarantee the effectiveness of the recommendation to the user and improve the user experience. Filled in the real-time recommendation of live broadcast live broadcast vacancies.
  • each block of the flowchart or block diagram can represent a module, a program segment, or a portion of code that includes one or more configurations configured to perform the specified logical functions. Executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the blocks may also occur in a different order than those illustrated in the drawings.
  • each block of the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented in a dedicated hardware-based system that performs the specified function or action. Or it can be implemented by a combination of dedicated hardware and computer instructions.
  • each functional module in each embodiment of the present application may be integrated to form a separate part, or each module may exist separately, or two or more modules may be integrated to form a separate part.
  • the functions, if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium.
  • the technical solution of the present application which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
  • the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present application.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .
  • the live video recommendation method, device and server provided by the application can realize the similarity analysis between the live video broadcasted in real time without relying on the related text description information and the comment information, so that the user can timely and accurately Push and watch real-time live video similar to other live video that meets preset standards to improve user experience.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The present application relates to the field of Internet recommendation, and provides a live video recommending method and device, and a server. The live video recommending method is applicable to a server in communicative connection with a client. The method comprises: acquiring image data corresponding to multiple broadcast live videos; separately obtaining feature data corresponding to each piece of image data according to the each piece of image data; determining, according to the feature data, whether the similarity between any two of the live videos satisfies a preset standard; searching, according to a received watching request sent by the client, for a live video of which the similarity with a target live video corresponding to the watching request satisfies the preset standard; and recommending the found live video to the client. Timely and effective similarity analysis on broadcast live videos is realized. Moreover, the user recommendation effectiveness can be guaranteed, and the user experience is improved. The gap of real-time live video recommendation in the field of live broadcast is filled.

Description

直播视频推荐方法、装置及服务器Live video recommendation method, device and server
相关申请的交叉引用Cross-reference to related applications
本申请要求于2017年06月26日提交中国专利局的申请号为2017104935651、名称为“直播视频推荐方法、装置及服务器”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。The present application claims priority to Chinese Patent Application No. 2017104935651, entitled "Real-Video Recommendation Method, Apparatus, and Server", filed on Jun. 26, 2017, the entire contents of which is incorporated herein by reference. .
技术领域Technical field
本申请涉及互联网推荐领域,具体而言,涉及一种直播视频推荐方法、装置及服务器。The present application relates to the field of Internet recommendation, and in particular, to a live video recommendation method, apparatus, and server.
背景技术Background technique
在信息爆炸的时代,各式各样的信息充斥着互联网。互联网上数据量极大,使用户无法凭一己之力从互联网上所有的信息中筛选出感兴趣的内容,由此互联网推荐应运而生。In the era of information explosion, a variety of information is flooding the Internet. The amount of data on the Internet is so great that users can't screen out the content of interest from all the information on the Internet, and the Internet recommendation comes into being.
互联网推荐的信息多样,可以是文章、视频、软件等。现阶段的推荐技术都是根据用户选的感兴趣信息对应的相关文字描述信息、评论信息等进行相关度计算,再选出其他与用户选的感兴趣信息相关内容。现阶段的推荐技术效果不错同时也非常成熟,但这样的推荐技术面对直播这一新兴行业,却显得有心无力。直播行业的内容实时生成、文字描述随意且多变,在直播视频结束之前根本无法通过现阶段的推荐算法选出相关的其他直播视频。The Internet recommends a variety of information, such as articles, videos, and software. At present, the recommended techniques are based on the related text description information and comment information corresponding to the information selected by the user, and then select other related content related to the user's selected information. The recommended technology at this stage is good and mature, but such a recommendation technology faces the emerging industry, but it seems to be powerless. The content of the live broadcast industry is generated in real time, and the text description is free and changeable. Before the live video ends, it is impossible to select other related live video through the current recommendation algorithm.
发明内容Summary of the invention
本申请的目的之一在于提供一种直播视频推荐方法,用以改善上述问题。One of the purposes of the present application is to provide a live video recommendation method for improving the above problem.
本申请的另一目的在于提供一种直播视频推荐装置,用以改善上述问题。Another object of the present application is to provide a live video recommendation device for improving the above problem.
本申请的又一目的在于提供一种服务器,用以改善上述问题。It is still another object of the present application to provide a server for improving the above problems.
为了实现上述目的,本申请实施例采用的技术方案如下:In order to achieve the above object, the technical solution adopted by the embodiment of the present application is as follows:
本申请实施例提供一种直播视频推荐方法。所述方法应用于与客户端通信连接的服务器,所述方法包括:获取多个正在直播的直播视频对应的图像数据;分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;将所查找到的所述直播视频推荐给所述客户端。The embodiment of the present application provides a live video recommendation method. The method is applied to a server that is in communication with a client, and the method includes: acquiring image data corresponding to a plurality of live video being broadcasted; obtaining feature data corresponding to each of the image data according to each of the image data Determining, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; and searching between the target live video corresponding to the viewing request according to the received viewing request sent by the client The live video that meets the preset criteria is similar; the live video that is found is recommended to the client.
本申请实施例还提供一种直播视频推荐装置。所述装置应用于与客户端通信连接的服 务器,所述装置包括:获取模块、提取模块、评估模块、查找模块及推送模块;其中,获取模块,配置为获取多个正在直播的直播视频对应的图像数据;提取模块,配置为分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;评估模块,配置为根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;查找模块,配置为根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;推送模块,配置为将所查找到的所述直播视频推荐给所述客户端。The embodiment of the present application further provides a live video recommendation device. The device is applied to a service that is connected to a client. The device includes: an obtaining module, an extracting module, an evaluating module, a searching module, and a pushing module; wherein the acquiring module is configured to acquire image data corresponding to a plurality of live video being broadcasted; and the extracting module is configured to be respectively configured according to Each of the image data obtains feature data corresponding to each of the image data; the evaluation module is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; And configuring, according to the received viewing request sent by the client, the live video of the similarity between the target live video corresponding to the viewing request that meets the preset criterion; and the pushing module configured to find the The live video is recommended to the client.
本申请实施例还提供一种服务器。所述服务器包括:存储器;处理器;以及直播视频推荐装置,所述直播视频推荐装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述装置包括:获取模块、提取模块、评估模块、查找模块及推送模块;其中,获取模块,配置为获取多个正在直播的直播视频对应的图像数据;提取模块,配置为分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;评估模块,配置为根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;查找模块,配置为根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;推送模块,配置为将所查找到的所述直播视频推荐给所述客户端。The embodiment of the present application further provides a server. The server includes: a memory; a processor; and a live video recommendation device, the live video recommendation device being installed in the memory and including one or more software function modules executed by the processor, the device comprising An obtaining module, an extracting module, an evaluating module, a searching module, and a pushing module; wherein the acquiring module is configured to acquire image data corresponding to a plurality of live video being broadcasted; and the extracting module is configured to obtain, according to each of the image data respectively Each of the image data corresponding to the feature data; the evaluation module is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion; the search module is configured to be based on the received client The viewing request sent by the terminal, the search for the live video of the preset standard that matches the target live video corresponding to the viewing request, and the pushing module configured to recommend the found live video to The client.
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。The embodiment of the present application further provides a computer readable storage medium, on which a computer program is stored, and when the program is executed by the processor, the steps of the foregoing method are implemented.
与现有技术相比,本申请提供的一种直播视频推荐方法。所述方法通过根据多个直播视频的图像数据对应的特征数据对任意两个直播视频之间相似度是否满足预设标准的评估,使评估结果不依赖于相关文字描述信息、评论信息,实现对实时播放的直播视频之间进行相似度分析。从而可向用户及时地、精准地推送与观看的实时直播视频相似度满足预设标准的其他直播视频,提高用户体验。Compared with the prior art, the present application provides a live video recommendation method. The method determines whether the similarity between any two live video matches the preset criterion according to the feature data corresponding to the image data of the plurality of live video, so that the evaluation result does not depend on the related text description information and the comment information, and the implementation is Similarity analysis between live broadcasts played in real time. Therefore, the user can promptly and accurately push other live video that meets the preset standard with the real-time live video of the viewing, and improve the user experience.
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。The above described objects, features, and advantages of the present invention will become more apparent from the following description.
附图说明DRAWINGS
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings to be used in the embodiments will be briefly described below. It should be understood that the following drawings show only certain embodiments of the present application, and therefore It should be seen as a limitation on the scope, and those skilled in the art can obtain other related drawings according to these drawings without any creative work.
图1示出了本申请的应用环境示意图。 FIG. 1 shows a schematic diagram of an application environment of the present application.
图2为本申请较佳实施例提供的服务器的方框示意图。2 is a block schematic diagram of a server according to a preferred embodiment of the present application.
图3示出本申请较佳实施例提供的一种直播视频推荐方法的步骤流程图。FIG. 3 is a flow chart showing the steps of a live video recommendation method according to a preferred embodiment of the present application.
图4为图1中步骤S101的子步骤流程图。4 is a flow chart of the sub-steps of step S101 in FIG. 1.
图5为图1中步骤S103的子步骤流程图。FIG. 5 is a flow chart of the sub-steps of step S103 in FIG. 1.
图6示出本申请较佳实施例提供的一种直播视频推荐装置的示意图。FIG. 6 is a schematic diagram of a live video recommendation apparatus according to a preferred embodiment of the present application.
图7为图6中的评估模块的功能子模块示意图。FIG. 7 is a schematic diagram of functional sub-modules of the evaluation module of FIG. 6.
图标:100-服务器;111-存储器;112-处理器;113-通信单元;200-用户终端;300-客户端;400-直播视频推荐装置;401-获取模块;402-提取模块;403-评估模块;4031-计算子模块;4032-评估子模块;4033-确定子模块;404-对应关系建立模块;405-查找模块;406-推送模块。Icon: 100-server; 111-memory; 112-processor; 113-communication unit; 200-user terminal; 300-client; 400-live video recommendation device; 401-acquisition module; 402-extraction module; Module; 4031 - calculation sub-module; 4032 - evaluation sub-module; 4033 - determination sub-module; 404 - correspondence establishment module; 405 - search module; 406 - push module.
具体实施方式Detailed ways
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。The technical solutions in the embodiments of the present application are clearly and completely described in the following with reference to the drawings in the embodiments of the present application. It is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. The components of the embodiments of the present application, which are generally described and illustrated in the figures herein, may be arranged and designed in various different configurations. The detailed description of the embodiments of the present application, which is set forth in the claims All other embodiments obtained by a person skilled in the art based on the embodiments of the present application without creative efforts are within the scope of the present application.
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。It should be noted that similar reference numerals and letters indicate similar items in the following figures. Therefore, once an item is defined in one figure, it is not necessary to further define and explain it in the subsequent figures. Also, in the description of the present application, the terms "first", "second", and the like are used merely to distinguish a description, and are not to be construed as indicating or implying a relative importance.
本申请下述各实施例如无特别说明均可应用于如图1所示的环境中,如图1所示,服务器100通过有线或无线网络与用户终端200通信连接。The following embodiments of the present application can be applied to the environment as shown in FIG. 1 without any particular explanation. As shown in FIG. 1, the server 100 is communicably connected to the user terminal 200 through a wired or wireless network.
本申请实施例所提供的直播视频推荐方法及装置可应用于如图1所示的应用环境的服务器100中。如图1所示,服务器100、用户终端200位于网络中,网络包括无线网络或有线网络,通过网络,用户终端200与服务器100进行数据交互。服务器100可以是一个服务器100,也可以是多个执行不同任务的服务器100。The live video recommendation method and apparatus provided by the embodiments of the present application can be applied to the server 100 of the application environment shown in FIG. 1. As shown in FIG. 1, the server 100 and the user terminal 200 are located in a network, and the network includes a wireless network or a wired network. Through the network, the user terminal 200 performs data interaction with the server 100. The server 100 may be a server 100 or a plurality of servers 100 that perform different tasks.
于本申请实施例中,用户终端200优选为移动终端设备,例如可以包括智能手机、平板电脑、电子书阅读器、膝上型便携计算机、车载电脑、穿戴式移动终端等等。该用户终端200中安装客户端300(例如,斗鱼客户端),与服务器100相对应,本实施例中,所述客户端300与服务器100通信连接,为用户提供服务。In the embodiment of the present application, the user terminal 200 is preferably a mobile terminal device, and may include, for example, a smart phone, a tablet computer, an e-book reader, a laptop portable computer, a vehicle-mounted computer, a wearable mobile terminal, and the like. A client 300 (for example, a betta client) is installed in the user terminal 200, and corresponds to the server 100. In this embodiment, the client 300 is communicably connected to the server 100 to provide services for the user.
如图2所示,是所述服务器100的方框示意图。所述服务器100包括直播视频推荐装 置400、存储器111、处理器112、通信单元113。As shown in FIG. 2, it is a block schematic diagram of the server 100. The server 100 includes a live video recommendation device 400, memory 111, processor 112, communication unit 113.
所述存储器111、处理器112以及通信单元113各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述直播视频推荐装置400包括至少一个可以软件或固件(firmware)的形式存储于所述存储器111中或固化在服务器100的操作系统(operating system,OS)中的软件功能模块。所述处理器112配置为执行所述存储器111中存储的可执行模块,例如所述直播视频推荐装置400所包括的软件功能模块及计算机程序等。The components of the memory 111, the processor 112, and the communication unit 113 are electrically connected directly or indirectly to each other to implement data transmission or interaction. For example, the components can be electrically connected to one another via one or more communication buses or signal lines. The live video recommendation device 400 includes at least one software function module that can be stored in the memory 111 or solidified in an operating system (OS) of the server 100 in the form of software or firmware. The processor 112 is configured to execute an executable module stored in the memory 111, such as a software function module, a computer program, and the like included in the live video recommendation device 400.
其中,所述存储器111可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器111配置为存储程序以及语音数据,所述处理器112在接收到执行指令后,执行所述程序。所述通信单元113配置为通过所述网络建立所述服务器100与用户终端200之间的通信连接,并配置为通过所述网络收发数据。The memory 111 can be, but not limited to, a random access memory (RAM), a read only memory (ROM), and a programmable read-only memory (PROM). Erasable Programmable Read-Only Memory (EPROM), Electric Erasable Programmable Read-Only Memory (EEPROM), and the like. The memory 111 is configured to store programs and voice data, and the processor 112 executes the programs after receiving the execution instructions. The communication unit 113 is configured to establish a communication connection between the server 100 and the user terminal 200 through the network, and is configured to transmit and receive data through the network.
应当理解的是,图2所示的结构仅为服务器100的结构示意图,所述服务器100还可包括比图1中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。It should be understood that the structure shown in FIG. 2 is only a schematic structural diagram of the server 100, and the server 100 may further include more or less components than those shown in FIG. 1, or have a configuration different from that shown in FIG. . The components shown in Figure 2 can be implemented in hardware, software, or a combination thereof.
第一实施例First embodiment
请参照图3,是本申请较佳实施例提供的应用于图2所示的服务器100的直播视频推荐方法的流程图。所述直播视频推荐方法包括以下步骤:Please refer to FIG. 3 , which is a flowchart of a live video recommendation method applied to the server 100 shown in FIG. 2 according to a preferred embodiment of the present application. The live video recommendation method includes the following steps:
步骤S101,获取多个正在直播的直播视频对应的图像数据。Step S101: Acquire image data corresponding to a plurality of live broadcast videos being broadcasted.
本实施例中,正在直播的直播视频可以是服务器100接收到的直播视频。可选地,可以是服务器100接收所有的直播客户端实时上传的直播视频,并从接收的直播视频中获取当前最近的图像数据。需要说明的是,客户端300根据使用状态的不同分为直播客户端及观看客户端,直播客户端配置为拍摄直播视频上传服务器100以分享直播视频的客户端300,观看客户端配置为从服务器100获取被分享的直播视频以便客户进行观看的客户端300。观看客户端通过向服务器100发送请求获取直播客户端上传服务器100的直播视频。如图4所示,步骤S101还包括以下子步骤:In this embodiment, the live video that is being broadcasted may be the live video received by the server 100. Optionally, the server 100 may receive live video uploaded by all the live broadcast clients in real time, and obtain current current image data from the received live video. It should be noted that the client 300 is divided into a live client and a viewing client according to different usage states. The live client is configured to capture the live video upload server 100 to share the live video client 300, and the viewing client is configured as a slave server. 100 acquires the shared live video for the client to view. The viewing client obtains a live video of the live client upload server 100 by sending a request to the server 100. As shown in FIG. 4, step S101 further includes the following sub-steps:
子步骤S1011,按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据。Sub-step S1011: Collect one frame of live broadcast image data from each of the plurality of live broadcast videos being broadcasted according to a preset time period interval.
在本实施例中,多个正在直播的所述直播视频均会实时的由直播客户端实时向服务器100上传直播视频的视频流,服务器100按照预设时间周期间隔各采集当前最新接收到的 所有的所述直播视频的视频流当前一帧画面数据。例如,服务器100按照5秒钟为间隔获取一次最新接收到的所述直播视频的视频流的前期一帧画面数据。这一过程为持续进行,确保实时性。需要说明的是,多个正在直播的所述直播视频为所有与服务器100通信连接的直播客户端实时上传的所有的正在直播的直播视频。In this embodiment, the live video that is being broadcasted in real time is uploaded by the live client to the server 100 in real time, and the server 100 collects the latest received video according to the preset time interval. All of the video streams of the live video stream currently have one frame of picture data. For example, the server 100 acquires the previous one-frame picture data of the newly received video stream of the live video at intervals of 5 seconds. This process is ongoing and ensures real-time performance. It should be noted that the plurality of live broadcast videos that are being broadcasted are all live broadcast videos that are uploaded in real time for all live broadcast clients that are connected to the server 100.
子步骤S1012,根据所述直播画面数据、与所述直播画面数据对应的直播间信息数据及主播信息数据生成所述图像数据。Sub-step S1012: generating the image data according to the live broadcast screen data, the live broadcast information data corresponding to the live broadcast screen data, and the anchor information data.
在本实施例中,每个直播视频均有对应的直播间信息数据及主播信息数据,所述直播间信息数据及主播信息数据的数据量小,而且通过直播间信息数据及主播信息数据能快速查找到对应的直播视频。将所述直播视频对应的直播间信息数据及主播信息数据作为直播视频对应的直播画面数据的属性数据,以生成对应的所述图像数据。In this embodiment, each live video has corresponding live broadcast information data and anchor information data, and the amount of data between the live broadcast information data and the anchor information data is small, and the information between the live broadcast room and the anchor information can be quickly Find the corresponding live video. The live broadcast information data and the anchor information data corresponding to the live video are used as attribute data of live video data corresponding to the live video to generate corresponding image data.
可以理解的是,本申请的其他实施例中,也可以根据所述直播画面数据和与所述直播视频对应的直播画面数据的属性数据生成所述图像数据,其中,与所述直播视频对应的直播画面数据的属性数据可以是所述直播视频对应的直播间信息数据、主播信息数据等数据以及上述数据的组合。It can be understood that, in other embodiments of the present application, the image data may also be generated according to the live video data and the attribute data of the live video data corresponding to the live video, where the live video is corresponding to the live video. The attribute data of the live broadcast video data may be data such as live broadcast information data, anchor information data, and the like, and a combination of the foregoing data.
步骤S102,分别根据每个所述图像数据获得每个所述图像数据对应的特征数据。Step S102, obtaining feature data corresponding to each of the image data according to each of the image data.
在本实施例中,服务器100内预设已训练好的深度学习模型。服务器100通过采集大量接收到的直播视频的直播画面数据作为样本集,对所述深度学习模型进行增量训练,可选地,训练过程采用迁移学习方法,不断利用样本集训练深度学习模型的最后一层(即分类器层),进而不断改进其他层的参数,直至分类器层的准确度达到95%左右。以使深度学习模型完成业务化定制。例如,深度学习模型可以是从GoogleTensorflow官网下载已经训练好的inception v3模型,将该inception v3模型的分类器层的节点设置为10000再用样本集训练inception v3模型的分类器层,以获得针对直播视频的业务化定制的inception v3模型。将完成业务化定制的深度学习模型最后一层(即分类器层)去除,以倒数第二层(即特征提取层)作为输出层。需要说明的是,深度学习包括多个层级,上一个层级的输出数据为下一层级的输入数据,各层级之间保留了对输入数据的最大化描述,分类器层为深度学习模型的最后一层,现有技术中通常采用分类层的输出结果为最终输出结果,已进行对图像数据的识别,而本申请中,以倒数第二层(即特征提取层)作为最后的输出层,特征提取层的输出结果是从图像数据提取出的多维的特征向量,特征向量可以全面反映图片的视觉属性,且方便计算及对比。可选地,利用所述深度学习模型对每一次采集获得的每个所述图像数据的直播画面数据进行特征提取处理。将所述深度学习模型的特征提取层输出的所述特征向量作为所述特征数据。In the embodiment, the trained deep learning model is preset in the server 100. The server 100 performs incremental training on the deep learning model by collecting live broadcast picture data of a large number of received live video as a sample set. Optionally, the training process adopts a migration learning method, and continuously uses the sample set to train the last of the deep learning model. One layer (ie, the classifier layer), and then continuously improve the parameters of other layers until the accuracy of the classifier layer reaches about 95%. In order to complete the business customization of the deep learning model. For example, the deep learning model may be to download the trained inception v3 model from the GoogleTensorflow official website, set the node of the classifier layer of the inception v3 model to 10000 and then use the sample set to train the classifier layer of the invent v3 model to obtain a live broadcast. Video-customized inception v3 model. The last layer (ie, the classifier layer) of the deep learning model that completes the customization is removed, and the penultimate layer (ie, the feature extraction layer) is used as the output layer. It should be noted that the deep learning includes multiple levels, and the output data of the previous level is the input data of the next level, and the maximum description of the input data is retained between the levels, and the classifier layer is the last one of the deep learning model. Layer, in the prior art, the output result of the classification layer is usually the final output result, and the image data is identified. In the present application, the second last layer (ie, the feature extraction layer) is used as the final output layer, and feature extraction is performed. The output of the layer is a multi-dimensional feature vector extracted from the image data. The feature vector can fully reflect the visual properties of the image, and is convenient for calculation and comparison. Optionally, the feature extraction process is performed on the live picture data of each of the image data obtained by each acquisition by using the deep learning model. The feature vector output from the feature extraction layer of the deep learning model is used as the feature data.
步骤S103,根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设 标准。Step S103, determining, according to the feature data, whether the similarity between any two of the live video meets a preset standard.
在本实施例中,在同一次采集到的图像数据对应的特征数据中根据任意两个特征数据对所述特征数据对应的两个直播视频的相似度是否满足预设标准的进行评估。当两个直播视频的相似度满足预设标准则表明这两个直播视频是相似的。如图5所示,步骤S103包括以下子步骤:In this embodiment, in the feature data corresponding to the image data collected in the same time, whether the similarity between the two live video corresponding to the feature data meets a preset criterion is evaluated according to any two feature data. When the similarity of the two live video meets the preset criteria, the two live videos are similar. As shown in FIG. 5, step S103 includes the following sub-steps:
子步骤S1031,计算任意两个正在直播的直播视频对应的所述图像数据的所述特征向量之间的欧氏距离。Sub-step S1031, calculating an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos being broadcast.
在本实施例中,特征数据包括特征向量,服务器100根据每一次采集到的图像数据中提取的特征向量,分别计算本次采集到的图像数据对应的特征向量中每一个特征向量与其他的特征向量之间的欧氏距离。需要说明的是,欧氏距离是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。计算欧氏距离计算量比较小,速度快。In this embodiment, the feature data includes a feature vector, and the server 100 respectively calculates each feature vector and other features in the feature vector corresponding to the image data collected according to the feature vector extracted in each acquired image data. Euclidean distance between vectors. It should be noted that the Euclidean distance is a commonly used distance definition, which refers to the true distance between two points in the m-dimensional space, or the natural length of the vector (ie, the distance from the point to the origin). The Euclidean distance in two-dimensional and three-dimensional space is the actual distance between two points. Calculating the Euclidean distance calculation is relatively small and fast.
子步骤S1032,根据两个所述特征向量之间的所述欧氏距离评估对应的两个直播视频的相似度。Sub-step S1032, estimating the similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors.
在本实施例中,如果两个图像数据之间越近似,则分别表征这两个图像数据的特征向量的欧氏距离越小。欧氏距离越小,对应的直播视频相似度就越高。In the present embodiment, if the two image data are more similar, the Euclidean distances of the feature vectors respectively characterizing the two image data are smaller. The smaller the Euclidean distance, the higher the similarity of the corresponding live video.
子步骤S1033,根据所述两个直播视频的相似度确定是否满足所述预设标准。Sub-step S1033, determining whether the preset criterion is met according to the similarity of the two live video.
在本实施例中,可选地,可以通过两个直播视频对应的图像数据的特征向量之间的欧氏距离确定两个直播视频之间的相似度是否满足预设标准。可选地,当所述欧氏距离小于预设阈值时,确定所述直播视频之间的相似度满足所述预设标准。In this embodiment, optionally, the Euclidean distance between the feature vectors of the image data corresponding to the two live video is used to determine whether the similarity between the two live video meets a preset criterion. Optionally, when the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets the preset criterion.
步骤S104,将相似度满足所述预设标准的两个直播视频对应的所述图像数据中的直播间信息数据及主播信息数据对应。Step S104: Correspond to the inter-live broadcast information data and the anchor information data in the image data corresponding to the two live video that meet the preset criterion.
在本实施例中,将满足预设标准的两个直播视频对应的直播间信息数据及主播信息数据对应起来,使通过其中一个直播视频就能快速查找到另一个直播视频,即建立相似度满足预设标准的两个直播视频之间的对应关系。可选地,对应关系可以保存至两个直播视频均结束为止;也可以是保存直到至少一个直播视频结束为止。In this embodiment, the live broadcast information data and the anchor information corresponding to the two live video that meet the preset standard are associated, so that one live video can be quickly found to find another live video, that is, the similarity is satisfied. The correspondence between the two live video of the preset standard. Optionally, the correspondence may be saved until both live video ends, or may be saved until at least one live video ends.
步骤S105,根据接收到的客户端300发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频。In step S105, according to the received viewing request sent by the client 300, the live video in which the similarity between the target live video corresponding to the viewing request meets the preset criterion is found.
在本实施例中,观看客户端向服务器100请求获取请求对应的目标直播视频时,服务器100除了将目标直播视频发送至观看客户端以便客户观看之外,还按照预设时间间隔根据目标直播视频的直播间信息数据及主播信息数据查询是否存在相似度满足预设标准的直 播视频,查找到则流程进入步骤S106。可选地,从当前正在直播的直播视频中查找与所述目标直播视频的相似度满足所述预设标准的直播视频。In this embodiment, when the viewing client requests the server 100 to obtain the target live video corresponding to the request, the server 100 sends the target live video to the viewing client for the customer to view, and also according to the target live video according to the preset time interval. Whether the information data of the live broadcast room and the data of the anchor information are inquired whether the similarity meets the preset standard When the video is broadcast, the process proceeds to step S106. Optionally, the live video that is currently being broadcasted is searched for a live video that meets the preset standard by the similarity of the target live video.
步骤S106,将所查找到的所述直播视频推荐给所述客户端300。Step S106, recommending the found live video to the client 300.
在本实施例中,获取查找到的所述直播视频对应的直播间信息数据及主播信息数据,以生成推荐列表,并将推荐列表发送给观看客户端,以便使用观看客户端的用户选择。可选地,在观看客户端请求观看的目标直播结束前或观看客户端退出观看目标视频之前,步骤S106结束后流程均会回到步骤S105,当查找到与已被推荐的直播视频不同的、与目标直播视频相似度满足预设标准的直播视频后,流程再次进入步骤S106。In this embodiment, the obtained live broadcast information data and the anchor information data corresponding to the live broadcast video are obtained to generate a recommendation list, and the recommendation list is sent to the viewing client to use the user selection of the viewing client. Optionally, before the end of the live broadcast of the target requested by the viewing client or before the viewing client exits the viewing target video, the process returns to step S105 after the end of step S106, and when it is found that is different from the recommended live video, After the live video that meets the preset standard is similar to the target live video, the process proceeds to step S106 again.
第二实施例Second embodiment
请参考图6,本申请较佳实施例提供直播视频推荐装置400,直播视频推荐装置400包括获取模块401、提取模块402、评估模块403、查找模块405、推送模块406及对应关系建立模块404。Referring to FIG. 6 , a preferred embodiment of the present application provides a live video recommendation device 400 . The live video recommendation device 400 includes an acquisition module 401 , an extraction module 402 , an evaluation module 403 , a search module 405 , a push module 406 , and a correspondence relationship establishing module 404 .
获取模块401,配置为获取多个正在直播的直播视频对应的图像数据。The obtaining module 401 is configured to acquire image data corresponding to a plurality of live broadcast videos being broadcasted.
在本申请实施例中,所述步骤S101、子步骤S1011、子步骤S1012均可以由获取模块401执行。In the embodiment of the present application, the step S101, the sub-step S1011, and the sub-step S1012 are all performed by the obtaining module 401.
进一步地,获取模块401还配置为按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据;以及根据所述直播画面数据、与所述直播画面数据对应的直播间信息数据及主播信息数据生成所述图像数据。Further, the obtaining module 401 is further configured to separately collect one frame of live broadcast screen data from the plurality of live broadcast videos that are being broadcasted according to the preset time period interval; and corresponding to the live broadcast screen data according to the live broadcast screen data. The live room information data and the anchor information data generate the image data.
提取模块402,配置为分别根据每个所述图像数据获得每个所述图像数据对应的特征数据。The extraction module 402 is configured to obtain feature data corresponding to each of the image data according to each of the image data.
在本申请实施例中,所述步骤S102可以由提取模块402执行。可选地,提取模块402配置为利用所述深度学习模型对每个所述图像数据进行特征提取处理,将所述深度学习模型的特征提取层输出的所述特征向量作为所述特征数据。需要说明的是,服务器100内预设已训练好的深度学习模型。服务器100通过采集大量接收到的直播视频的直播画面数据作为样本集,对所述深度学习模型进行增量训练,可选地,训练过程采用迁移学习方法,不断利用样本集训练深度学习模型的最后一层(即分类器层),进而不断改进其他层的参数,直至分类器层的准确度达到95%左右。以使深度学习模型完成业务化定制。例如,深度学习模型可以是从GoogleTensorflow官网下载已经训练好的inception v3模型,将该inception v3模型的分类器层的节点设置为10000再用样本集训练inception v3模型的分类器层,以获得针对直播视频的业务化定制的inception v3模型。将完成业务化定制的深度学习模型最后一层(即分类器层)去除,以倒数第二层(即特征提取层)作为输出层。需要说明的是,深度学习包括多个层级,上一个层级的输出数据为下一层级的输入数据,各层级之间保留 了对输入数据的最大化描述,分类器层为深度学习模型的最后一层,现有技术中通常采用分类层的输出结果为最终输出结果,已进行对图像数据的识别,而本申请中,以倒数第二层(即特征提取层)作为最后的输出层,特征提取层的输出结果是从图像数据提取出的多维的特征向量,特征向量可以全面反映图片的视觉属性,且方便计算及对比。可选地,利用所述深度学习模型对每一次采集获得的每个所述图像数据的直播画面数据进行特征提取处理。将所述深度学习模型的特征提取层输出的所述特征向量作为所述特征数据。In the embodiment of the present application, the step S102 may be performed by the extraction module 402. Optionally, the extraction module 402 is configured to perform feature extraction processing on each of the image data by using the deep learning model, and use the feature vector output by the feature extraction layer of the deep learning model as the feature data. It should be noted that the trained deep learning model is preset in the server 100. The server 100 performs incremental training on the deep learning model by collecting live broadcast picture data of a large number of received live video as a sample set. Optionally, the training process adopts a migration learning method, and continuously uses the sample set to train the last of the deep learning model. One layer (ie, the classifier layer), and then continuously improve the parameters of other layers until the accuracy of the classifier layer reaches about 95%. In order to complete the business customization of the deep learning model. For example, the deep learning model may be to download the trained inception v3 model from the GoogleTensorflow official website, set the node of the classifier layer of the inception v3 model to 10000 and then use the sample set to train the classifier layer of the invent v3 model to obtain a live broadcast. Video-customized inception v3 model. The last layer (ie, the classifier layer) of the deep learning model that completes the customization is removed, and the penultimate layer (ie, the feature extraction layer) is used as the output layer. It should be noted that the deep learning includes multiple levels, and the output data of the previous level is the input data of the next level, and is retained between the levels. The maximum description of the input data, the classifier layer is the last layer of the deep learning model. In the prior art, the output result of the classification layer is generally used as the final output result, and the image data has been identified, and in the present application, The penultimate layer (ie, feature extraction layer) is used as the final output layer. The output of the feature extraction layer is a multi-dimensional feature vector extracted from the image data. The feature vector can fully reflect the visual properties of the image, and is convenient for calculation and comparison. . Optionally, the feature extraction process is performed on the live picture data of each of the image data obtained by each acquisition by using the deep learning model. The feature vector output from the feature extraction layer of the deep learning model is used as the feature data.
评估模块403,配置为根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准。The evaluation module 403 is configured to determine, according to the feature data, whether the similarity between any two of the live video meets a preset criterion.
在本申请实施例中,所述步骤S103可以由评估模块403执行。如图7所示,评估模块403还可以包括以下子模块:In the embodiment of the present application, the step S103 may be performed by the evaluation module 403. As shown in FIG. 7, the evaluation module 403 may further include the following sub-modules:
计算子模块4031,配置为计算任意两个正在直播的直播视频对应的所述图像数据的所述特征向量之间的欧氏距离。The calculation sub-module 4031 is configured to calculate an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos being broadcast.
在本申请实施例中,所述子步骤S1031可以由计算子模块4031执行。In the embodiment of the present application, the sub-step S1031 may be performed by the calculation sub-module 4031.
评估子模块4032,配置为根据两个所述特征向量之间的所述欧氏距离评估对应的两个直播视频的相似度。The evaluation sub-module 4032 is configured to evaluate the similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors.
在本申请实施例中,所述子步骤S1032可以由评估子模块4032执行。In the embodiment of the present application, the sub-step S1032 may be performed by the evaluation sub-module 4032.
确定子模块4033,配置为根据所述两个直播视频的相似度确定是否满足所述预设标准,当所述欧氏距离小于预设阈值时,确定所述直播视频之间的相似度满足所述预设标准。The determining sub-module 4033 is configured to determine, according to the similarity between the two live video, whether the preset criterion is met, and when the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets Presuppose the standard.
在本申请实施例中,所述子步骤S1033可以由确定子模块4033执行。In the embodiment of the present application, the sub-step S1033 may be performed by the determining sub-module 4033.
对应关系建立模块404,配置为将相似度满足所述预设标准的两个直播视频对应的所述图像数据中的直播间信息数据及主播信息数据对应。The correspondence relationship establishing module 404 is configured to correspond to the inter-live channel information data and the anchor information data in the image data corresponding to the two live video that meet the preset criterion.
在本申请实施例中,所述步骤S104可以由对应关系建立模块404执行。In the embodiment of the present application, the step S104 may be performed by the correspondence establishing module 404.
查找模块405,配置为根据接收到的客户端300发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频。The searching module 405 is configured to search, according to the received viewing request sent by the client 300, the live video with the similarity between the target live video corresponding to the viewing request that meets the preset criterion.
进一步地,查找模块405还配置为从当前正在直播的直播视频中查找与所述目标直播视频的相似度满足所述预设标准的直播视频。Further, the searching module 405 is further configured to search for a live video that meets the preset standard by the live video that is currently being broadcasted.
在本申请实施例中,所述步骤S105可以由对应查找模块405执行。In the embodiment of the present application, the step S105 may be performed by the corresponding search module 405.
推送模块406,配置为将所查找到的所述直播视频推荐给所述客户端300。在本申请实施例中,所述步骤S106可以由对应推送模块406执行。The pushing module 406 is configured to recommend the found live video to the client 300. In the embodiment of the present application, the step S106 may be performed by the corresponding pushing module 406.
进一步地,推送模块406配置为获取查找到的所述直播视频对应的直播间信息数据及主播信息数据,以生成推荐列表,并将所述推荐列表发送给观看客户端。Further, the push module 406 is configured to obtain the live broadcast information data and the anchor information data corresponding to the found live video to generate a recommendation list, and send the recommendation list to the viewing client.
综上所述,本申请提供的一种直播视频推荐方法、装置及服务器。所述方法应用于与 客户端通信连接的服务器,所述方法包括:获取多个正在直播的直播视频对应的图像数据;分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;将所查找到的所述直播视频推荐给所述客户端。实现了对正在直播的直播视频之间的相似度分析,计算量小,分析速度快。且能保证给用户推荐的实效性,提高用户体验。填补了直播领域直播视频实时推荐的空缺。In summary, the present application provides a live video recommendation method, apparatus, and server. The method is applied to The server is connected to the client, and the method includes: acquiring image data corresponding to the live video that is being broadcasted; obtaining feature data corresponding to each of the image data according to each of the image data; and according to the feature data Determining whether the similarity between any two of the live video meets a preset criterion; according to the received viewing request sent by the client, finding a similarity between the target live video corresponding to the viewing request satisfies the pre- Set the standard live video; recommend the found live video to the client. The similarity analysis between the live broadcast videos being broadcasted is realized, the calculation amount is small, and the analysis speed is fast. And can guarantee the effectiveness of the recommendation to the user and improve the user experience. Filled in the real-time recommendation of live broadcast live broadcast vacancies.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个配置为实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may also be implemented in other manners. The apparatus embodiments described above are merely illustrative, for example, the flowcharts and block diagrams in the figures illustrate the architecture, functionality, and functionality of possible implementations of apparatus, methods, and computer program products according to various embodiments of the present application. operating. In this regard, each block of the flowchart or block diagram can represent a module, a program segment, or a portion of code that includes one or more configurations configured to perform the specified logical functions. Executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the blocks may also occur in a different order than those illustrated in the drawings. For example, two consecutive blocks may be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending upon the functionality involved. It is also noted that each block of the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts, can be implemented in a dedicated hardware-based system that performs the specified function or action. Or it can be implemented by a combination of dedicated hardware and computer instructions.
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。In addition, each functional module in each embodiment of the present application may be integrated to form a separate part, or each module may exist separately, or two or more modules may be integrated to form a separate part.
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。The functions, if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application, which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including The instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所 固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that, in this context, relational terms such as first and second are used merely to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply these entities or operations. There is any such actual relationship or order between them. Furthermore, the term "comprises" or "comprises" or "comprises" or any other variations thereof is intended to encompass a non-exclusive inclusion, such that a process, method, article, or device that comprises a plurality of elements includes not only those elements but also Other elements, or are included in the process, method, article or equipment Inherent elements. An element that is defined by the phrase "comprising a ..." does not exclude the presence of additional equivalent elements in the process, method, item, or device that comprises the element.
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。The above description is only the preferred embodiment of the present application, and is not intended to limit the present application, and various changes and modifications may be made to the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of this application are intended to be included within the scope of the present application. It should be noted that similar reference numerals and letters indicate similar items in the following figures. Therefore, once an item is defined in one figure, it is not necessary to further define and explain it in the subsequent figures.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。The foregoing is only a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto, and any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present application. It should be covered by the scope of protection of this application. Therefore, the scope of protection of the present application should be determined by the scope of the claims.
工业实用性Industrial applicability
本申请提供的一种直播视频推荐方法、装置及服务器,能够不依赖于相关文字描述信息、评论信息,实现对实时播放的直播视频之间进行相似度分析,从而能够向用户及时地、精准地推送与观看的实时直播视频相似度满足预设标准的其他直播视频,提高用户体验。 The live video recommendation method, device and server provided by the application can realize the similarity analysis between the live video broadcasted in real time without relying on the related text description information and the comment information, so that the user can timely and accurately Push and watch real-time live video similar to other live video that meets preset standards to improve user experience.

Claims (20)

  1. 一种直播视频推荐方法,其特征在于,所述方法应用于与客户端通信连接的服务器,所述方法包括:A live video recommendation method, wherein the method is applied to a server that is in communication with a client, the method comprising:
    获取多个正在直播的直播视频对应的图像数据;Obtaining image data corresponding to multiple live broadcast videos being broadcasted;
    分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;Obtaining feature data corresponding to each of the image data according to each of the image data;
    根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;Determining, according to the feature data, whether the similarity between any two of the live video meets a preset criterion;
    根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;And searching, according to the received viewing request sent by the client, the live video of the similarity between the target live video corresponding to the viewing request that meets the preset criterion;
    将所查找到的所述直播视频推荐给所述客户端。The found live video is recommended to the client.
  2. 如权利要求1所述的方法,其特征在于,所述服务器包括预设置的深度学习模型,所述特征数据包括特征向量,所述获得每个所述图像数据对应的特征数据的步骤包括:The method of claim 1, wherein the server comprises a preset depth learning model, the feature data comprises a feature vector, and the step of obtaining feature data corresponding to each of the image data comprises:
    利用所述深度学习模型对每个所述图像数据进行特征提取处理,将所述深度学习模型的特征提取层输出的所述特征向量作为所述特征数据。Feature extraction processing is performed on each of the image data by using the depth learning model, and the feature vector output by the feature extraction layer of the deep learning model is used as the feature data.
  3. 如权利要求2所述的方法,其特征在于,所述根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准的步骤包括:The method according to claim 2, wherein the step of determining, according to the feature data, whether the similarity between any two of the live video meets a preset criterion comprises:
    计算任意两个正在直播的直播视频对应的所述图像数据的所述特征向量之间的欧氏距离;Calculating an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos that are being broadcasted;
    根据两个所述特征向量之间的所述欧氏距离评估对应的两个直播视频的相似度;Evaluating the similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors;
    根据所述两个直播视频的相似度确定是否满足所述预设标准,当所述欧氏距离小于预设阈值时,确定所述直播视频之间的相似度满足所述预设标准。Determining whether the preset criterion is met according to the similarity of the two live video. When the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets the preset criterion.
  4. 如权利要求3所述的方法,其特征在于,所述计算任意两个正在直播的直播视频对应的所述图像数据的所述特征向量之间的欧氏距离的步骤包括:The method according to claim 3, wherein the calculating the Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos that are being broadcasted comprises:
    根据每一次采集到的所述图像数据中提取的所述特征向量,分别计算本次采集到的所述图像数据对应的特征向量中每一个特征向量与其他的特征向量之间的欧氏距离。And calculating, according to the feature vector extracted in the image data collected each time, an Euclidean distance between each feature vector corresponding to the image data corresponding to the acquired image data and other feature vectors.
  5. 如权利要求1所述的方法,其特征在于,所述根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准的步骤包括:The method according to claim 1, wherein the step of determining, according to the feature data, whether the similarity between any two of the live video meets a preset criterion comprises:
    在同一次采集到的所述图像数据对应的所述特征数据中,根据任意两个特征数据对所述特征数据对应的两个所述直播视频的相似度是否满足所述预设标准的进行评估; And determining, according to any two feature data, whether the similarity of the two live video corresponding to the feature data meets the preset criterion according to any two feature data collected by the same image data. ;
    当两个所述直播视频的相似度满足所述预设标准,判定上述的两个直播视频是相似的。When the similarity of the two live video meets the preset criterion, it is determined that the two live videos are similar.
  6. 如权利要求1所述的方法,其特征在于,所述获取多个正在直播的直播视频对应的图像数据的步骤包括:The method of claim 1, wherein the step of acquiring image data corresponding to a plurality of live broadcast videos being broadcasted comprises:
    按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据;Collecting one frame of live broadcast data from each of the live broadcast videos being broadcasted according to a preset time period interval;
    根据所述直播画面数据、与所述直播画面数据对应的直播间信息数据及主播信息数据生成所述图像数据。And generating the image data according to the live broadcast screen data, the live broadcast information data corresponding to the live broadcast screen data, and the anchor information data.
  7. 如权利要求6所述的方法,其特征在于,在判断任意两个所述直播视频之间的相似度是否满足预设标准之后,所述方法还包括:The method according to claim 6, wherein after determining whether the similarity between any two of the live video meets a preset criterion, the method further includes:
    将相似度满足所述预设标准的两个直播视频对应的所述图像数据中的直播间信息数据及主播信息数据对应。Corresponding to the inter-live broadcast information data and the anchor information data in the image data corresponding to the two live video that meet the preset standard.
  8. 如权利要求7所述的方法,其特征在于,所述将相似度满足所述预设标准的两个直播视频对应的所述图像数据中的直播间信息数据及主播信息数据对应的步骤包括:The method according to claim 7, wherein the step of corresponding to the inter-live broadcast information data and the anchor information data in the image data corresponding to the two live video with the similarity satisfying the preset criterion comprises:
    建立相似度满足所述预设标准的两个直播视频之间的对应关系;Establishing a correspondence between two live video whose similarity meets the preset criterion;
    保存所述对应关系至两个所述直播视频均结束为止,或者,保存所述对应关系直到至少一个所述直播视频结束为止。And saving the correspondence until the two live video ends, or saving the correspondence until at least one of the live video ends.
  9. 如权利要求7所述的方法,其特征在于,The method of claim 7 wherein:
    所述查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频的步骤包括:The step of searching for the live video with the similarity between the target live video corresponding to the viewing request that meets the preset criteria includes:
    从当前正在直播的直播视频中查找与所述目标直播视频的相似度满足所述预设标准的直播视频;Searching for a live video that meets the preset standard in a similarity to the target live video from the live video currently being broadcasted;
    所述将所查找到的所述直播视频推荐给所述客户端的步骤包括:The step of recommending the found live video to the client includes:
    获取查找到的所述直播视频对应的直播间信息数据及主播信息数据,以生成推荐列表。Obtaining the live broadcast information data and the anchor information data corresponding to the found live video to generate a recommendation list.
  10. 如权利要求1所述的方法,其特征在于,所述获取多个正在直播的直播视频对应的图像数据的步骤包括:The method of claim 1, wherein the step of acquiring image data corresponding to a plurality of live broadcast videos being broadcasted comprises:
    按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据;Collecting one frame of live broadcast data from each of the live broadcast videos being broadcasted according to a preset time period interval;
    根据所述直播画面数据和与所述直播视频对应的直播画面数据的属性数据生成所述图像数据。 And generating the image data according to the live broadcast screen data and attribute data of live broadcast screen data corresponding to the live video.
  11. 如权利要求6或10所述的方法,其特征在于,所述按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据的步骤包括:The method of claim 6 or 10, wherein the step of collecting one frame of live broadcast data from each of the plurality of live broadcast videos being broadcasted according to a preset time period interval comprises:
    按照预设时间周期间隔各采集当前最新接收到的所有的所述直播视频的视频流当前一帧画面数据。Collecting, according to the preset time period interval, the current frame data of the video stream of all the currently received live video.
  12. 如权利要求1所述的方法,其特征在于,所述方法还包括:The method of claim 1 wherein the method further comprises:
    在所述查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频步骤后,当查找到与已被推荐的直播视频不同的、且与目标直播视频相似度满足预设标准的直播视频后,执行所述将所查找到的所述直播视频推荐给所述客户端的步骤。After the similarity between the target live video corresponding to the viewing request is met, the live video step of the preset criterion is met, and when the search is different from the recommended live video, and the target is broadcasted After the video similarity meets the preset standard live video, the step of recommending the found live video to the client is performed.
  13. 一种直播视频推荐装置,其特征在于,所述装置应用于与客户端通信连接的服务器,所述装置包括:A live video recommendation device, wherein the device is applied to a server that is in communication with a client, the device comprising:
    获取模块,配置为获取多个正在直播的直播视频对应的图像数据;Obtaining a module, configured to acquire image data corresponding to multiple live broadcast videos being broadcasted;
    提取模块,配置为分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;An extraction module, configured to obtain feature data corresponding to each of the image data according to each of the image data;
    评估模块,配置为根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;An evaluation module, configured to determine, according to the feature data, whether a similarity between any two of the live video meets a preset criterion;
    查找模块,配置为根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;a search module, configured to: according to the received viewing request sent by the client, searching for the live video that meets the preset standard by the similarity between the target live video corresponding to the viewing request;
    推送模块,配置为将所查找到的所述直播视频推荐给所述客户端。The pushing module is configured to recommend the found live video to the client.
  14. 如权利要求13所述的装置,其特征在于,所述服务器包括预设置的深度学习模型,所述特征数据包括特征向量,所述提取模块还配置为:The apparatus according to claim 13, wherein the server comprises a preset depth learning model, the feature data comprises a feature vector, and the extraction module is further configured to:
    利用所述深度学习模型对每个所述图像数据进行特征提取处理,将所述深度学习模型的特征提取层输出的所述特征向量作为所述特征数据。Feature extraction processing is performed on each of the image data by using the depth learning model, and the feature vector output by the feature extraction layer of the deep learning model is used as the feature data.
  15. 如权利要求14所述的装置,其特征在于,所述评估模块包括:The device of claim 14, wherein the evaluation module comprises:
    计算子模块,配置为计算任意两个正在直播的直播视频对应的所述图像数据的所述特征向量之间的欧氏距离;a calculation submodule configured to calculate an Euclidean distance between the feature vectors of the image data corresponding to any two live broadcast videos that are being broadcasted;
    评估子模块,配置为根据两个所述特征向量之间的所述欧氏距离评估对应的两个直播视频的相似度;An evaluation submodule configured to evaluate a similarity of the corresponding two live video according to the Euclidean distance between the two feature vectors;
    确定子模块,配置为根据所述两个直播视频的相似度确定是否满足所述预设标准,当所述欧氏距离小于预设阈值时,确定所述直播视频之间的相似度满足所述预设标准。Determining a sub-module, configured to determine, according to the similarity between the two live video, whether the preset criterion is met, and when the Euclidean distance is less than a preset threshold, determining that the similarity between the live video meets the Preset standard.
  16. 如权利要求13所述的装置,其特征在于,所述获取模块还配置为按照预设时间周期间隔分别从多个正在直播的所述直播视频中各采集一帧直播画面数据;以及根 据所述直播画面数据、与所述直播画面数据对应的直播间信息数据及主播信息数据生成所述图像数据。The apparatus of claim 13, wherein the acquiring module is further configured to separately collect one frame of live video data from the plurality of live broadcast videos being broadcasted according to a preset time period interval; and The image data is generated according to the live broadcast screen data, the live broadcast information data corresponding to the live broadcast screen data, and the anchor information data.
  17. 如权利要求16所述的装置,其特征在于,所述装置还包括:The device of claim 16 wherein said device further comprises:
    对应关系建立模块,配置为将相似度满足所述预设标准的两个直播视频对应的所述图像数据中的直播间信息数据及主播信息数据对应。The correspondence relationship establishing module is configured to correspond to the live broadcast information data and the anchor information data in the image data corresponding to the two live video that meet the preset criterion.
  18. 如权利要求16所述的装置,其特征在于,所述查找模块还配置为从当前正在直播的直播视频中查找与所述目标直播视频的相似度满足所述预设标准的直播视频;The device of claim 16, wherein the searching module is further configured to: search for a live video that is similar to the target live video and meet the preset standard from a live video currently being broadcasted;
    所述推送模块,配置为获取查找到的所述直播视频对应的直播间信息数据及主播信息数据,以生成推荐列表,并将所述推荐列表发送给观看客户端。The push module is configured to obtain the live broadcast information data and the anchor information data corresponding to the live broadcast video, to generate a recommendation list, and send the recommendation list to the viewing client.
  19. 一种服务器,其特征在于,所述服务器包括:A server, wherein the server comprises:
    存储器;Memory
    处理器;以及Processor;
    直播视频推荐装置,所述直播视频推荐装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述直播视频推荐装置包括:The live video recommendation device is installed in the memory and includes one or more software function modules executed by the processor, and the live video recommendation device includes:
    获取模块,配置为获取多个正在直播的直播视频对应的图像数据;Obtaining a module, configured to acquire image data corresponding to multiple live broadcast videos being broadcasted;
    提取模块,配置为分别根据每个所述图像数据获得每个所述图像数据对应的特征数据;An extraction module, configured to obtain feature data corresponding to each of the image data according to each of the image data;
    评估模块,配置为根据所述特征数据判断任意两个所述直播视频之间的相似度是否满足预设标准;An evaluation module, configured to determine, according to the feature data, whether a similarity between any two of the live video meets a preset criterion;
    查找模块,配置为根据接收到的客户端发送的观看请求,查找与所述观看请求对应的目标直播视频之间的相似度满足所述预设标准的所述直播视频;a search module, configured to: according to the received viewing request sent by the client, searching for the live video that meets the preset standard by the similarity between the target live video corresponding to the viewing request;
    推送模块,配置为将所查找到的所述直播视频推荐给所述客户端。The pushing module is configured to recommend the found live video to the client.
  20. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~12任一项所述方法的步骤。 A computer readable storage medium having stored thereon a computer program, wherein the program, when executed by a processor, implements the steps of the method of any of claims 1-12.
PCT/CN2017/110935 2017-06-26 2017-11-14 Live video recommending method and device, and server WO2019000789A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710493565.1 2017-06-26
CN201710493565.1A CN107404656B (en) 2017-06-26 2017-06-26 Live video recommended method, device and server

Publications (1)

Publication Number Publication Date
WO2019000789A1 true WO2019000789A1 (en) 2019-01-03

Family

ID=60405094

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/110935 WO2019000789A1 (en) 2017-06-26 2017-11-14 Live video recommending method and device, and server

Country Status (2)

Country Link
CN (1) CN107404656B (en)
WO (1) WO2019000789A1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108076354A (en) * 2017-12-20 2018-05-25 北京潘达互娱科技有限公司 Direct broadcasting room recommends method and apparatus
CN108171160B (en) * 2017-12-27 2021-03-23 广州虎牙信息科技有限公司 Task result identification method and device, storage medium and electronic equipment
CN108228826A (en) * 2018-01-02 2018-06-29 联想(北京)有限公司 A kind of information searching method and electronic equipment
CN108764141B (en) * 2018-05-25 2021-07-02 广州虎牙信息科技有限公司 Game scene description method, device, equipment and storage medium thereof
CN109190666B (en) * 2018-07-30 2022-04-29 北京信息科技大学 Flower image classification method based on improved deep neural network
CN110879944A (en) * 2018-09-05 2020-03-13 武汉斗鱼网络科技有限公司 Anchor recommendation method, storage medium, equipment and system based on face similarity
CN111026910B (en) * 2018-10-09 2024-04-05 三六零科技集团有限公司 Video recommendation method, device, electronic equipment and computer readable storage medium
CN109462778B (en) * 2018-11-15 2020-10-16 武汉斗鱼网络科技有限公司 Live broadcast identification recommendation method and related equipment
CN111949819A (en) * 2019-05-15 2020-11-17 北京字节跳动网络技术有限公司 Method and device for pushing video
CN113497947B (en) * 2020-03-20 2023-03-21 广州虎牙科技有限公司 Video recommendation information output method, device and system
CN112507167A (en) * 2020-12-10 2021-03-16 北京达佳互联信息技术有限公司 Method and device for identifying video collection, electronic equipment and storage medium
CN112637629B (en) * 2020-12-25 2023-06-20 百度在线网络技术(北京)有限公司 Live content recommendation method and device, electronic equipment and medium
CN113609332B (en) * 2021-08-11 2024-03-08 上海众源网络有限公司 Video live broadcast resource recommendation method, system and device
CN114650432B (en) * 2022-04-25 2023-10-17 咪咕视讯科技有限公司 Live video display method, device, electronic equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106096520A (en) * 2016-06-02 2016-11-09 乐视控股(北京)有限公司 A kind of information-pushing method and device
CN106341704A (en) * 2016-08-18 2017-01-18 北京奇虎科技有限公司 Anchor-based recommendation method and device
US20170078707A1 (en) * 2015-09-14 2017-03-16 Alan H. Barber System, device, and method for providing audiences for live video streaming
CN106604051A (en) * 2016-12-20 2017-04-26 广州华多网络科技有限公司 Live channel recommending method and device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187930B (en) * 2015-09-18 2019-09-06 广州酷狗计算机科技有限公司 Interactive approach and device based on net cast
CN106028070A (en) * 2016-05-16 2016-10-12 乐视控股(北京)有限公司 Live broadcast or carousel channel recommending method and device and video server
CN106101806B (en) * 2016-07-04 2019-07-02 天脉聚源(北京)传媒科技有限公司 Method for processing video frequency and device when a kind of sharing live video
CN106560811A (en) * 2016-09-23 2017-04-12 武汉斗鱼网络科技有限公司 Direct broadcasting room recommending method and system based on broadcaster style
CN106506448B (en) * 2016-09-26 2021-04-23 北京小米移动软件有限公司 Live broadcast display method and device and terminal
CN106303515B (en) * 2016-09-26 2018-08-07 广州华多网络科技有限公司 A kind of online live video quality detecting method and device
CN106454492A (en) * 2016-10-12 2017-02-22 武汉斗鱼网络科技有限公司 Live pornographic content audit system and method based on delayed transmission
CN106792229B (en) * 2016-12-19 2020-08-21 广州虎牙信息科技有限公司 Voting interaction method and device based on live broadcast room video stream bullet screen
CN106792150B (en) * 2016-12-20 2019-11-15 深圳市茁壮网络股份有限公司 A kind of poster generation method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170078707A1 (en) * 2015-09-14 2017-03-16 Alan H. Barber System, device, and method for providing audiences for live video streaming
CN106096520A (en) * 2016-06-02 2016-11-09 乐视控股(北京)有限公司 A kind of information-pushing method and device
CN106341704A (en) * 2016-08-18 2017-01-18 北京奇虎科技有限公司 Anchor-based recommendation method and device
CN106604051A (en) * 2016-12-20 2017-04-26 广州华多网络科技有限公司 Live channel recommending method and device

Also Published As

Publication number Publication date
CN107404656B (en) 2019-01-29
CN107404656A (en) 2017-11-28

Similar Documents

Publication Publication Date Title
WO2019000789A1 (en) Live video recommending method and device, and server
CN110134829B (en) Video positioning method and device, storage medium and electronic device
KR102262481B1 (en) Video content summary
CN107679211B (en) Method and device for pushing information
US9325660B2 (en) System for social media tag extraction
JP6110030B2 (en) Multimedia resource recommendation method, apparatus, program, and recording medium
US20190138815A1 (en) Method, Apparatus, User Terminal, Electronic Equipment, and Server for Video Recognition
KR20210053825A (en) Method and apparatus for processing video
CN106339507B (en) Streaming Media information push method and device
TWI716798B (en) Method, non-transitory computer-readable storage medium and computing device for machine-in-the-loop, image-to-video computer vision bootstrapping
CN107885873B (en) Method and apparatus for outputting information
KR20170027648A (en) Method and apparatus for synchronous putting of real-time mobile advertisement based on audio fingerprint
CN109982106B (en) Video recommendation method, server, client and electronic equipment
US11423096B2 (en) Method and apparatus for outputting information
WO2016201800A1 (en) Information acquisition method, server, terminal, and method and apparatus for constructing database
CN109862100B (en) Method and device for pushing information
CN103399855B (en) Behavior intention determining method and device based on multiple data sources
KR20130133268A (en) Video processing feedback
CN103997662A (en) Program pushing method and system
CN111263183A (en) Singing state identification method and singing state identification device
CN113051481B (en) Content recommendation method, device, electronic equipment and medium
JP6069246B2 (en) Information processing apparatus, information processing apparatus control method, and program
EP3844967B1 (en) Frame-accurate automated cutting of media content by using multiple airings
CN104811464A (en) Information processing method, device and system
CN114627556B (en) Motion detection method, motion detection device, electronic apparatus, and storage medium

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

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

Country of ref document: EP

Kind code of ref document: A1