A network voting method and device
By obtaining video clips from videos of multiple objects and identifying non-compliant voting based on the user's viewing time, the misjudgment and misjudgment of anti-vote swipe strategies in the existing online voting system is solved, and a more fair and objective voting is achieved. As a result, user interaction and program communication effects are improved.
Patent Information
- Application Number
- CN202411322179.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-23
- Publication Date
- 2024-12-24
- Estimated Expiration
- 2044-09-23
AI Technical Summary
In the existing online voting system, the anti-vote swipe strategy has problems with misjudgment and misjudgment, and the vote swipe behavior cannot be effectively identified, resulting in non-compliance with the voting results.
By obtaining video clips from videos of multiple objects, distributing them to users for voting, and identifying the non-compliant voting results based on the viewing time of the user's video clips, filtering out non-compliant voting, counting the remaining voting results, providing a new online voting methods and anti-vote swipe strategies.
It improves the fairness and objectivity of voting, enhances the accuracy of vote swiping identification, ensures the compliance of voting results, and increases the user's sense of interaction and improves the ratings and dissemination of the program.
Smart Images

Figure CN118865544B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of online voting, and in particular to an online voting method and device. Background Art
[0002] The current online voting system often votes based on the name or introduction of the voting object. The disadvantage of this method is that voters mainly rely on their previous impressions of the voting object to score, and it is easy to conduct machine and manual vote manipulation. For the above voting system, the current anti-vote manipulation strategy is to use the location concentration of the voting request to determine whether the user at a certain address is a vote manipulation user. If the concentration of a certain address exceeds the set threshold, it is considered that all users at this address are vote manipulation users, and the voting results of vote manipulation users are non-compliant voting results, and the non-compliant voting results are filtered out. However, if there are many real voting users in the area where the concentration exceeds the set threshold, the above strategy will cause misjudgment. If there are a small number of vote manipulations in the area where the concentration does not exceed the set threshold, the above strategy will cause missed judgments. It can be seen that the existing anti-vote manipulation strategy has the problems of misjudgment and missed judgments. Summary of the invention
[0003] In view of this, the present application provides an online voting method and device to solve the problems existing in the current online voting system and the current anti-vote fraud strategy. The technical solution is as follows:
[0004] The first aspect of the present application provides an online voting method, comprising:
[0005] Obtaining video clips corresponding to a plurality of voting objects from a video whose content involves multiple objects;
[0006] Distributing the video clips corresponding to the plurality of voting objects to a plurality of users, so that the plurality of users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips;
[0007] Obtaining voting behavior data of the multiple users, wherein the voting behavior data includes viewing time of the video clips and voting results of voting objects corresponding to the watched video clips;
[0008] Identifying non-compliant voting results from the voting results of the multiple users based on the viewing duration of the video clips of the multiple users;
[0009] The identified non-compliant voting results are filtered out, and the remaining voting results are counted.
[0010] In a possible implementation, obtaining video clips corresponding to a plurality of voting objects respectively from a video whose content involves a plurality of objects includes:
[0011] Detecting a target face from the video frames included in the video, and determining the voting object to which the target face belongs from the plurality of voting objects, so as to obtain face recognition results of the video frames included in the video, wherein the target face in a video frame is the face with the largest face ratio in the video frame;
[0012] According to the face recognition results of the video frames contained in the video, video clips corresponding to the plurality of voting objects are extracted from the video.
[0013] In a possible implementation, distributing the video clips corresponding to the plurality of voting objects to a plurality of users includes:
[0014] For each user:
[0015] When receiving the video clip distribution request of the user, the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object is less than a preset value as a constraint condition, and K voting objects and corresponding video clips that can maximize the total viewing time of the video clip are determined, wherein the number of allocated users of a voting object refers to the number of users allocated to the video clip of the voting object, the maximum allocated voting object is the voting object with the largest number of allocated users among the K voting objects, the minimum allocated voting object is the voting object with the smallest number of allocated users among the K voting objects, and K is an integer greater than 1;
[0016] The determined video clip is distributed to the user.
[0017] In a possible implementation, the determining of K voting objects and corresponding video clips that can maximize the total viewing time of the video clips, taking the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object as a constraint condition being less than a preset value, includes:
[0018] Selecting K voting objects with the least number of assigned users from the plurality of voting objects;
[0019] Performing quality evaluation on the video clips corresponding to the K selected voting objects, respectively, to obtain quality scores of the video clips corresponding to the K selected voting objects;
[0020] Performing a quality assessment on the video clips that the user has watched in the past to obtain a quality score of the video clips that the user has watched in the past;
[0021] According to the quality scores of the video clips watched by the user in the past and the quality scores of the video clips corresponding to the K selected voting objects, video clips are selected from the video clips corresponding to the K selected voting objects to obtain a candidate video clip set consisting of the selected video clips;
[0022] Predicting the viewing time of the user for each video segment in the candidate video segment set;
[0023] According to the viewing time of each video segment in the candidate video segment set by the user, N video segments are screened out from the candidate video segment set, where N is an integer greater than 0.
[0024] In a possible implementation, performing quality assessment on the video clips corresponding to the K selected voting objects to obtain quality scores of the video clips corresponding to the K selected voting objects includes:
[0025] For each video segment in the video segments corresponding to the K selected voting objects: determine the quality score of the video segment according to the total number of historical viewings and the total historical viewing duration of the video segment;
[0026] The step of evaluating the quality of the video clips that the user has watched in the past to obtain the quality score of the video clips that the user has watched in the past includes:
[0027] The quality score of the video clips that the user has watched in the past is determined according to the total number of times and the total duration of the video clips that the user has watched in the past.
[0028] In a possible implementation, the network voting method further includes:
[0029] For each video segment in the video segments corresponding to the plurality of voting objects:
[0030] Determine whether to set the status of the video segment to inaccessible according to the online time, the number of assigned users and the quality score of the video segment;
[0031] If the status of the video clip needs to be set to inaccessible, the status of the video clip is set to inaccessible.
[0032] In a possible implementation, identifying the non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users includes:
[0033] For each voting behavior data of each user:
[0034] Determine whether the viewing time of the video clip in the voting behavior data is less than a preset time threshold;
[0035] If the viewing time of the video clip in the piece of voting behavior data is less than the preset time threshold, the voting result in the piece of voting behavior data is determined to be an ineligible voting result.
[0036] In a possible implementation, identifying the non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users includes:
[0037] For each voting behavior data of each user: determine whether the viewing time of the video clip in the voting behavior data is less than a preset time threshold; if the viewing time of the video clip in the voting behavior data is less than the preset time threshold, determine that the voting result in the voting behavior data is an ineligible voting result;
[0038] Counting the non-compliant voting ratio of each user, where the non-compliant voting ratio of a user refers to the ratio of the total number of non-compliant voting results of the user to the total number of voting results of the user;
[0039] A user whose non-compliant voting ratio is greater than a preset non-compliant voting ratio threshold is determined as a vote-rigging user, and all voting results of the determined vote-rigging user are determined as non-compliant voting results.
[0040] In a possible implementation, counting the remaining voting results includes:
[0041] For each voting object:
[0042] Counting the total number of voting results belonging to the voting object from the remaining voting results, and counting the total number of voting results indicating that the user likes the voting object from the voting results belonging to the voting object;
[0043] The popularity of the voting object is determined according to the total number of voting results belonging to the voting object and the total number of voting results indicating that users like the voting object.
[0044] The second aspect of the present application provides an online voting device, including: a video understanding slicing module, a video clip distribution module, a vote-swiping identification module, and a voting statistics module;
[0045] The video understanding slicing module is used to obtain video clips corresponding to a plurality of voting objects from a video whose content involves multiple objects;
[0046] The video clip distribution module is used to distribute the video clips corresponding to the plurality of voting objects to a plurality of users, so that the plurality of users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips;
[0047] The vote-rigging identification module is used to obtain voting behavior data of the multiple users, wherein the voting behavior data includes the viewing time of the video clips and the voting results of the voting objects corresponding to the viewed video clips; and to identify non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users;
[0048] The voting statistics module is used to filter out the non-compliant voting results identified by the vote-rigging identification module and to count the remaining voting results.
[0049] By means of the above technical scheme, the online voting method provided by the present application first obtains video clips corresponding to several voting objects from a video whose content involves multiple objects, and then distributes the video clips corresponding to the several voting objects to multiple users, so that multiple users can watch the distributed video clips and vote for the voting objects corresponding to the watched video clips, then obtain the voting behavior data of multiple users (including the viewing time of the video clips and the voting results of the voting objects corresponding to the watched video clips), and then identify non-compliant voting results from the voting results of multiple users based on the viewing time of the video clips of multiple users, and finally filter out the identified non-compliant voting results, and count the remaining voting results. The online voting method provided by the present application provides a new online voting method, that is, distributing video clips corresponding to several voting objects to multiple users, so that the users can watch the video clips corresponding to the voting objects, and then vote for the voting objects according to their performance in the video clips. Compared with the existing online voting methods, the online voting method provided by the present application is fairer and more objective. On the basis of providing a new online voting method, the present application also provides an anti-vote-rigging strategy, that is, identifying non-compliant voting results from the voting results of multiple users based on the user's video clip viewing time. This vote-rigging strategy has a high recognition accuracy rate and can ensure that voting is conducted in compliance. In addition, the online voting method provided by the present application also increases the user's sense of interactivity, thereby improving the ratings and popularity of the program. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0051] Figure 1 A schematic diagram of the system architecture involved in this application;
[0052] Figure 2A schematic diagram of a hardware structure of a terminal provided in an embodiment of the present application;
[0053] Figure 3 A schematic diagram of a hardware structure of a server provided in an embodiment of the present application;
[0054] Figure 4 A flowchart of the online voting method provided in the embodiment of the present application;
[0055] Figure 5 A schematic diagram of a process for obtaining video clips corresponding to a plurality of voting objects respectively from a video whose content involves a plurality of objects provided in an embodiment of the present application;
[0056] Figure 6 A flowchart of determining K voting objects and corresponding video clips that can maximize the total viewing time of a video clip, provided in an embodiment of the present application, with the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object being less than a preset value as a constraint condition;
[0057] Figure 7 A flowchart of an implementation method for identifying non-compliant voting results from voting results of multiple users based on the viewing time of video clips of multiple users provided in an embodiment of the present application;
[0058] Figure 8 A schematic diagram of the structure of the network voting device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0059] The following describes the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. The terms used in the implementation method section of the present application are only used to explain the specific embodiments of the present application, and are not intended to limit the present application.
[0060] The embodiments of the present application are described below in conjunction with the accompanying drawings. Those skilled in the art will appreciate that, with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0061] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and need not be used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, which is only to describe the distinction mode adopted by the objects of the same attributes when describing in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.
[0062] Before introducing the online voting method provided by this application, the system architecture involved in this application is first explained.
[0063] like Figure 1 As shown, the system architecture may include a terminal 100 and a server 200, wherein the server 200 may include one or more servers ( Figure 1 A server is included as an example for explanation).
[0064] The user can use the terminal 100 to interact with the server 200 through a network (wired network or wireless network) to receive or send messages, etc. Various client applications can be installed on the terminal 100, such as web browser applications, shopping applications, search applications, video playback software, instant messaging tools, email clients, social platform software, etc.
[0065] Next, the product form of the terminal 100 will be described.
[0066] The terminal 100 mentioned above can be a mobile phone, a tablet computer, a wearable device, a vehicle-mounted device, an augmented reality (AR) / virtual reality (VR) device, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), etc., and the embodiments of the present application do not impose any restrictions on this.
[0067] Figure 2 An optional hardware structure diagram of the terminal 100 is shown.
[0068] refer to Figure 2 As shown, the terminal 100 may include a radio frequency unit 110, a memory 120, an input unit 130, a display unit 140, a camera 150 (optional), an audio circuit 160 (optional), a speaker 161 (optional), a microphone 162 (optional), an earphone jack 163 (optional), a processor 170, an external interface 180, a power supply 190 and other components. Those skilled in the art will appreciate that Figure 2 The terminal 100 is merely an example and does not constitute a limitation on the terminal 100 , and may include more or less components than those shown in the figure, or may combine certain components, or may include different components.
[0069] The input unit 130 can be used to receive input digital or character information, and generate key signal input related to the user settings and function control of the terminal 100. Specifically, the input unit 130 may include a touch screen 131 (optional) and / or other input devices 132. The touch screen 131 can collect the user's touch operations on or near it (such as the user's operation on or near the touch screen using any suitable object such as fingers, joints, stylus, etc.), and drive the corresponding connection device according to a pre-set program. The touch screen can detect the user's touch action on the touch screen, convert the touch action into a touch signal and send it to the processor 170, and can receive and execute the command sent by the processor 170; the touch signal at least includes the touch point coordinate information. The touch screen 131 can provide an input interface and an output interface between the terminal 100 and the user. In addition, the touch screen can be implemented using multiple types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the touch screen 131, the input unit 130 can also include other input devices. Specifically, other input devices 132 may include, but are not limited to, one or more of a physical keyboard, function keys (such as a volume control key, a switch key, etc.), a trackball, a mouse, a joystick, and the like.
[0070] The display unit 140 may be used to display information input by a user or information provided to a user, various menus of the terminal, an interactive interface, file display, and / or playback of any multimedia file.
[0071] The memory 120 can be used to store instructions and data. The memory 120 can mainly include an instruction storage area and a data storage area. The data storage area can store various data, such as multimedia files, texts, etc.; the instruction storage area can store software units such as operating systems, applications, instructions required for at least one function, or their subsets and extensions. It can also include a non-volatile random access memory; provide the processor 170 with hardware, software and data resources including management of computing and processing equipment, and support control software and applications. It is also used for the storage of multimedia files, and the storage of running programs and applications.
[0072] The processor 170 is the control center of the terminal 100. It uses various interfaces and lines to connect various parts of the entire terminal. By running or executing instructions stored in the memory 120 and calling data stored in the memory 120, it executes various functions of the terminal 100 and processes data, thereby controlling the terminal 100 as a whole. Optionally, the processor 170 may include one or more processing units; preferably, the processor 170 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface and application program, and the modem processor mainly processes wireless communication. It is understandable that the above-mentioned modem processor may not be integrated into the processor 170. In some embodiments, the processor and the memory may be implemented on a single chip, and in some embodiments, they may also be implemented separately on independent chips. The processor 170 may also be used to generate corresponding operation control signals, send them to corresponding components of the computing and processing device, read and process data in the software, especially read and process data and programs in the memory 120, so that each functional module therein performs corresponding functions, thereby controlling the corresponding components to act according to the requirements of the instructions.
[0073] The radio frequency unit 110 (optional) can be used to receive and send information or receive and send signals during a call. For example, after receiving the downlink information of the base station, it is sent to the processor 170 for processing; in addition, the designed uplink data is sent to the base station. Generally, the radio frequency unit 110 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LowNoiseAmplifier, LNA), a duplexer, etc. In addition, the radio frequency unit 110 can also communicate with network devices and other devices through wireless communication. The wireless communication can use any communication standard or protocol, including but not limited to Global System of Mobile communication (Global System of Mobile communication, GSM), General Packet Radio Service (General PacketRadio Service, GPRS), Code Division Multiple Access (Code Division Multiple Access, CDMA), Wideband Code Division Multiple Access (Wideband Code Division Multiple Access, WCDMA), Long Term Evolution (Long Term Evolution, LTE), email, Short Messaging Service (SMS), etc.
[0074] In the embodiment of the present application, the radio frequency unit 110 can send data to other devices, and can also receive data sent by other devices. It should be understood that the radio frequency unit 110 is optional, and can be replaced by other communication interfaces, such as a network port.
[0075] The terminal 100 also includes a power supply 190 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 170 through a power management system, so that the power management system can manage functions such as charging, discharging, and power consumption.
[0076] The terminal 100 also includes an external interface 180, which may be a standard Micro USB interface or a multi-pin connector, and may be used to connect the terminal 100 to communicate with other devices, or to connect a charger to charge the terminal.
[0077] Although not shown, the terminal 100 may further include a flashlight, a wireless fidelity (WiFi) module, a Bluetooth module, sensors with different functions, etc., which will not be described in detail herein.
[0078] Next, the product form of the server 200 will be described.
[0079] Figure 3 A structural diagram of the server 200 is provided. Figure 3 As shown, the server 200 includes a bus 201, a processor 202, a communication interface 203, and a memory 204. The processor 202, the memory 204, and the communication interface 203 communicate with each other via the bus 201.
[0080] The bus 201 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0081] The processor 202 may be any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0082] The memory 204 may include a volatile memory, such as a random access memory (RAM). The memory 204 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard drive (HDD), or a solid state drive (SSD).
[0083] It should be noted that the network voting method provided in the embodiment of the present application is generally executed by the server 200. In view of this, the memory 204 can be used to store software codes related to the network voting method, the processor 202 can call the software code stored in the memory 204, and can also schedule other units to implement corresponding functions.
[0084] It should be understood that the above-mentioned terminal 100 and server 200 can be centralized or distributed devices, and the processors in the above-mentioned terminal 100 and server 200 (such as processor 170 and processor 202) can be hardware circuits (such as application specific integrated circuit (ASIC), field-programmable gate array (FPGA), general-purpose processor, digital signal processor (DSP), microprocessor or microcontroller, etc.), or a combination of these hardware circuits. For example, the processor can be a hardware system with an instruction execution function, such as a CPU, DSP, etc., or a hardware system without an instruction execution function, such as an ASIC, FPGA, etc., or a combination of the above-mentioned hardware systems without an instruction execution function and hardware systems with an instruction execution function.
[0085] Next, the online voting method provided by this application is introduced through the following embodiments.
[0086] See also Figure 4 , shows a schematic diagram of a process of an online voting method provided by an embodiment of the present application, the method may include:
[0087] Step S401: obtaining video clips corresponding to a plurality of voting objects from a video whose content involves a plurality of objects.
[0088] The video in step S401 may be a video of a talent show, which is a long video with multiple objects in the content, wherein the multiple objects involved in the video content of the long video include several voting objects, and the purpose of step S401 is to obtain a video clip corresponding to each voting object from the long video with multiple objects in the content. It should be noted that the main object in the video clip corresponding to a voting object is the voting object.
[0089] Step S402: Distribute the video clips corresponding to the plurality of voting objects to a plurality of users, so that the plurality of users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips.
[0090] In the existing online voting methods, users mainly rely on their previous impressions of the voting objects to vote, but the present application is different. The present application completely changes the voting method. After obtaining the video clips corresponding to several voting objects, the video clips corresponding to the several voting objects are distributed to multiple users. Multiple users watch the video clips corresponding to the voting objects, and then vote for the voting objects according to their performance in the video clips. Compared with the existing online voting methods, the online voting method provided by the embodiments of the present application is fairer and more objective.
[0091] Step S403: Obtain voting behavior data of multiple users.
[0092] The voting behavior data of a user includes the viewing time of the video clip of the user (the viewing time of the video clip watched by the user) and the voting result of the user on the voting object corresponding to the watched video clip.
[0093] Step S404: Identify non-compliant voting results from the voting results of the multiple users based on the viewing time of the video clips of the multiple users.
[0094] It is understandable that users who cheat by voting usually do not watch the video carefully, that is, their viewing time of video clips is often short. In view of this, the embodiment of the present application identifies non-compliant voting results from the voting results of multiple users based on the viewing time of the video clips of multiple users.
[0095] Step S405: Filter out the identified non-compliant voting results, and count the remaining voting results.
[0096] After identifying the non-compliant voting results, the non-compliant voting results are filtered out from the voting results of multiple users, and then the remaining voting results of the multiple users are counted.
[0097] In one possible implementation, the process of counting the remaining voting results of multiple users may include: for each voting object, counting the total number of voting results belonging to the voting object from the remaining voting results, and counting the total number of voting results indicating that users like the voting object from the voting results belonging to the voting object, and determining the popularity of the voting object based on the total number of voting results belonging to the voting object and the total number of voting results indicating that users like the voting object.
[0098] If the total number of voting results belonging to a voting object is represented as vote_all, and the total number of voting results indicating that the user likes the voting object among the voting results belonging to the voting object is represented as vote_like, then the popularity of the voting object popular=vote_like / vote_all.
[0099] The online voting method provided in the embodiment of the present application first obtains video clips corresponding to several voting objects from a video whose content involves multiple objects, and then distributes the video clips corresponding to the several voting objects to multiple users, so that multiple users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips, then obtains the voting behavior data of multiple users (including the viewing time of the video clips and the voting results of the voting objects corresponding to the watched video clips), and then identifies non-compliant voting results from the voting results of multiple users based on the viewing time of the video clips of multiple users, and finally filters out the identified non-compliant voting results, and counts the remaining voting results. The online voting method provided in the embodiment of the present application provides a new online voting method, that is, distributing video clips corresponding to several voting objects to multiple users, so that the users can watch the video clips corresponding to the voting objects, and then vote for the voting objects according to their performance in the video clips. Compared with the existing online voting methods, the online voting method provided in the embodiment of the present application is fairer and more objective. On the basis of providing a new online voting method, the embodiment of the present application also provides an anti-vote-rigging strategy, that is, identifying non-compliant voting results from the voting results of multiple users based on the user's video clip viewing time. This vote-rigging strategy has a high recognition accuracy rate and can ensure that voting is conducted in compliance. In addition, the online voting method provided in the present application also increases the user's sense of interactivity, thereby improving the ratings and popularity of the program.
[0100] In another embodiment of the present application, the specific implementation process of "step S401: obtaining video clips corresponding to a plurality of voting objects from a video whose content involves a plurality of objects" in the above embodiment is introduced.
[0101] See also Figure 5, showing a schematic diagram of a process of obtaining video clips corresponding to a plurality of voting objects from a video whose content involves multiple objects, which may include:
[0102] Step S501: Detect a target face from a video frame included in a video, and determine a voting object corresponding to the target face from a plurality of voting objects to obtain a face recognition result of the video frame included in the video.
[0103] Among them, the target face in a video frame is the face with the largest face ratio in the video frame.
[0104] In one possible implementation, the specific implementation process of step S501 may include: extracting a video frame from the video every n (for example, n=5) frames, performing face detection on each extracted video frame to obtain faces contained in the video frame, determining the face ratio of each detected face (the face ratio refers to the proportion of the face area in the entire video frame), determining the face with the largest face ratio as the target face, and determining the voting object to which the target face belongs from a number of voting objects to obtain a face recognition result of the video frame (the face recognition result of a video frame is the voting object to which the target face in the video frame belongs).
[0105] The process of determining the voting object to which the target face belongs from among the plurality of voting objects may include: extracting facial features from the target face as the target facial features, calculating the similarity between the target facial features and the facial features of each voting object, and determining the voting object to which the facial features having the highest similarity to the target facial features belong as the voting object to which the target face belongs. It should be noted that the facial images of the voting objects may be obtained in advance, and then the facial features may be extracted from the facial images of the voting objects to obtain the facial features of the voting objects.
[0106] It should be noted that in order to improve data processing efficiency, the above implementation method extracts a video frame from the video for processing every n frames. Of course, this embodiment is not limited to this, and each video frame contained in the video can also be processed. In this way, the face recognition result of each video frame contained in the video is obtained.
[0107] Step S502: extracting video clips corresponding to a plurality of voting objects from the video according to the face recognition results of the video frames contained in the video.
[0108] Specifically, the frame number sequence where each voting object appears can be obtained based on the face recognition results of the video frames contained in the video, and then the video clip corresponding to each voting object can be extracted from the video frame based on the frame number sequence where each voting object appears, thereby finally obtaining the video clips corresponding to several voting objects. It should be noted that a voting object may correspond to one or more video clips.
[0109] In a possible implementation, the video segment obtained in step S502 may be used as the final video segment.
[0110] Considering that the video clips obtained through step S502 may include short video clips or video clips with poor aesthetic effects, in view of this, in another possible implementation, after extracting video clips corresponding to several voting objects from the video, the following step S503 can be executed.
[0111] Step S503: filtering out video segments whose duration is less than a first preset duration threshold and / or whose aesthetic score is less than a preset aesthetic score threshold from the extracted video segments.
[0112] It should be noted that the aesthetic score of each extracted video clip can be predicted based on the aesthetic model.
[0113] Through the above process, video clips corresponding to several voting objects can be obtained.
[0114] In another embodiment of the present application, the specific implementation process of “distributing video clips corresponding to a plurality of voting objects to a plurality of users” in step S402 of the above embodiment is introduced.
[0115] The process of distributing video clips corresponding to several voting objects to multiple users may include: for each user, when receiving a video clip distribution request from the user, using the difference between the number of allocated users of the largest allocated voting object and the number of allocated users of the smallest allocated voting object being less than a preset value as a constraint condition, determining K voting objects and corresponding video clips that can maximize the total viewing time of the video clips; and distributing the determined video clips to the user.
[0116] The number of users assigned to a voting object refers to the number of users assigned to the video clips of the voting object. The maximum assigned voting object is the voting object with the largest number of assigned users among the K voting objects, and the minimum assigned voting object is the voting object with the smallest number of assigned users among the K voting objects. K is an integer greater than 1.
[0117] The above “taking the difference between the number of users allocated to the maximum allocated voting object and the number of users allocated to the minimum allocated voting object as a constraint condition less than a preset value, determining the K voting objects and corresponding video clips that can maximize the total viewing time of the video clip” can be expressed as the following formula:
[0118] (1)
[0119] In the above formula (1), In represents the i-th voting object, represents the i+1th voting object, …, represents the i+k-1th voting object, represents K voting objects, Indicates maximizing the total viewing time of the video clips of K voting objects, maxM e Indicates the maximum number of users assigned to the voting object, minM e Indicates the number of users assigned to the minimum assigned voting object. It should be noted that α is related to the future user visits to the video clip (the number of users who visit the video clip), and the future user visits to the video clip can be predicted using a user visit prediction model, where the user visit prediction model can be trained using the user visits of the past Q days (for example, 90 days) as training data, and can predict the user visits of the next P days (for example, 3 days).
[0120] Considering that the direct solution of the above formula (1) is relatively complex, this application uses an approximate algorithm to determine the K voting objects and corresponding video clips that can maximize the total viewing time of the video clips. Figure 6 The specific implementation process is shown, which may include:
[0121] Step S601: select K voting objects with the least number of assigned users from a number of voting objects.
[0122] The number of users assigned to each voting object may be counted, and then K voting objects with the least number of users assigned may be determined.
[0123] Step S602: performing quality assessment on the video clips corresponding to the K selected voting objects, respectively, to obtain quality scores of the video clips corresponding to the K selected voting objects, respectively.
[0124] In a possible implementation, for each video segment in the video segments corresponding to the K selected voting objects, the quality score of the video segment can be determined according to the total number of historical viewings and the total historical viewing duration of the video segment. The total number of historical viewings of a video segment refers to the total number of times the video segment has been viewed by users, and the total historical viewing duration of a video segment refers to the total duration of time the video segment has been viewed by users.
[0125] For example, if the total number of historical viewings of a video clip is 30 times and the total historical viewing duration is 180 minutes, the quality score of the video clip may be 180 / 30=6 points.
[0126] In another possible implementation, for each video clip in the video clips corresponding to the K selected voting objects, if the number of users assigned to the video clip is greater than or equal to 100, the quality score of the video clip is determined based on the total number of historical viewings and the total historical viewing duration of the video clip. If the number of users assigned to the video clip is less than 100, the quality score of the video clip is determined based on the total number of historical viewings and the total historical viewing duration of all video clips. Exemplarily, if the number of users assigned to a video clip is 30, the total number of historical viewings of all video clips is 100, and the total historical viewing duration of all video clips is 600 minutes, the quality score of the video clip is 600 / 100=6 points, that is, if the number of users assigned to the video clip is less than 100, the average quality score of all video clips is used as the quality score of the video clip.
[0127] Step S603: performing quality evaluation on the video clips that the user has watched in the past, and obtaining quality scores of the video clips that the user has watched in the past.
[0128] Specifically, the quality score of the video clips that the user has watched in the past is determined according to the total number of times and the total duration of the video clips that the user has watched in the past.
[0129] For example, if the total number of times the user has viewed the video clip in history is 10 times and the total viewing time of the video clip in history is 50 minutes, then the quality score of the video clip viewed in history by the user may be 50 / 10=5 points.
[0130] Step S604: based on the quality scores of the video clips watched by the user in the past and the quality scores of the video clips corresponding to the screened K voting objects, video clips are screened from the video clips corresponding to the screened K voting objects to obtain a candidate video clip set consisting of the screened video clips.
[0131] Assuming that the quality score of the video clips historically watched by the user is s, video clips with quality scores greater than s can be screened out from the video clips corresponding to the K voting objects, and the screened out video clips constitute a candidate video clip set. Exemplarily, the video clips corresponding to the K voting objects include V1, V2, V3, ..., V9, V10. Assuming that the quality scores of V1, V3, V5, and V8 are greater than the quality score s of the video clips historically watched by the user, the candidate video clip set consists of V1, V3, V5, and V8.
[0132] Step S605: predicting the viewing time of the user for each video segment in the candidate video segment set.
[0133] Specifically, for each video clip in the candidate video clip set, the viewing time of the user for the video clip can be predicted based on the user's own information (such as the electronic device used by the user, the address from which the user sends the video clip distribution request, etc.), the user's behavior information and the relevant information of the video clip (such as the type of video clip, duration, online time, corresponding voting object, etc.).
[0134] In a possible implementation, the user's information, the user's behavior information, and the relevant information of the video clip can be input into a pre-trained viewing time prediction model, and the viewing time prediction model predicts the user's viewing time for the video clip based on the input. The viewing time prediction model is trained using training data labeled with viewing time (the training data includes the user's information, the user's behavior information, and the relevant information of the video clip).
[0135] Step S606: Filter out N video segments from the candidate video segment set according to the viewing time of each video segment in the candidate video segment set by the user.
[0136] Wherein, N is an integer greater than 0.
[0137] In one possible implementation, the video clips watched by the user may be first filtered out from the candidate video clip set, and then the N video clips with the longest viewing time may be screened out from the remaining video clips in the candidate video clip set, and then the screened N video clips with the longest viewing time may be distributed to the user.
[0138] In another possible implementation, the video clips watched by the user may be filtered out from the candidate video clip set first, and then N video clips may be selected from the candidate video clip set based on the viewing time, combined with the online time, quality score, voting object interval, etc. For example, the remaining video clips in the candidate video clip set may be sorted in descending order of viewing time, and then rearranged based on the online time, quality score, voting object interval (to separate video clips of the same voting object), etc., and then the video clips that need to be distributed to the user may be determined based on the rearrangement results.
[0139] In another embodiment of the present application, the online voting method may further include: for each video clip in the video clips corresponding to several voting objects, determining whether it is necessary to set the status of the video clip to inaccessible according to the online time, the number of assigned users and the quality score of the video clip; if it is necessary to set the status of the video clip to inaccessible, setting the status of the video clip to inaccessible.
[0140] For example, if a video clip has been online for more than 3 days, the number of assigned users is greater than 100, and the video quality score ranks in the bottom 20%, the status of the video clip can be set to inaccessible. It should be noted that the above thresholds (3 days, 100, 20%) are only examples and can be flexibly configured in actual application scenarios.
[0141] It should be noted that, at regular intervals (for example, every other day), based on the online time of the video clips, the number of assigned users, and the quality score, it can be detected whether there are video clips that need to be set as inaccessible, and then the status of these video clips can be set to inaccessible.
[0142] In another embodiment of the present application, the specific implementation process of "step S404: identifying non-compliant voting results from voting results of multiple users based on the viewing time of video clips of multiple users" in the above embodiment is introduced.
[0143] There are multiple implementations of step S404, and this embodiment provides two optional implementations.
[0144] A first implementation method for identifying non-compliant voting results from voting results of multiple users based on the viewing time of video clips of multiple users:
[0145] For each voting behavior data of each user: determine whether the viewing time of the video clip in the voting behavior data is less than the second preset time threshold; if the viewing time of the video clip in the voting behavior data is less than the second preset time threshold, determine that the voting result in the voting behavior data is an illegal voting result.
[0146] See also Figure 7, shows a second implementation method of identifying non-compliant voting results from voting results of multiple users based on the viewing time of video clips of multiple users:
[0147] Step S701: for each piece of voting behavior data of each user, determine whether the viewing time of the video clip in the voting behavior data is less than a second preset time threshold.
[0148] Step S702: If the viewing time of the video clip in the piece of voting behavior data is less than the second preset time threshold, it is determined that the voting result in the piece of voting behavior data is an illegitimate voting result.
[0149] Exemplarily, the second preset duration threshold is 3 seconds. If the viewing time of a video clip in a piece of voting behavior data of a user is less than 3 seconds, the voting result in the piece of voting behavior data of the user is determined to be an illegal voting result.
[0150] If the viewing time of the video clip in the voting behavior data is not less than the second preset time threshold, the voting result in the voting behavior data is temporarily determined to be a compliant voting result.
[0151] Step S703: Count the proportion of non-compliant votes of each user.
[0152] The non-compliant voting ratio of a user refers to the ratio of the total number of non-compliant voting results of the user to the total number of voting results of the user.
[0153] Step S704: Determine the users whose non-compliant voting ratio is greater than a preset non-compliant voting ratio threshold as vote-rigging users.
[0154] If the proportion of non-compliant votes of a user is greater than a preset threshold of non-compliant votes (e.g. 50%), the user is judged as a vote-rigging user.
[0155] Step S705: All voting results of the determined vote-rigging users are determined as non-compliant voting results.
[0156] This implementation method determines all voting results of users who have manipulated votes as non-compliant voting results.
[0157] The above introduces the network voting method provided by the embodiment of the present application, and the device corresponding to the above network voting method will be introduced below.
[0158] See also Figure 8 , Figure 8 A structural diagram of a network voting device provided in an embodiment of the present application, the network voting device may include: a video understanding slicing module 801, a video clip distribution module 802, a vote-swiping identification module 803 and a voting statistics module 804.
[0159] The video understanding slicing module 801 is used to obtain video clips corresponding to several voting objects from a video whose content involves multiple objects.
[0160] The video clip distribution module 802 is used to distribute the video clips corresponding to the plurality of voting objects to multiple users, so that the multiple users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips.
[0161] The vote-rigging identification module 803 is used to obtain the voting behavior data of the multiple users, wherein the voting behavior data includes the viewing time of the video clips and the voting results of the voting objects corresponding to the watched video clips; and to identify non-compliant voting results from the voting results of the multiple users based on the viewing time of the video clips by the multiple users.
[0162] The voting statistics module 804 is used to filter out the non-compliant voting results identified by the vote-rigging identification module 803 and to count the remaining voting results.
[0163] In one possible implementation, the video understanding slicing module 801 may include a face detection and face recognition module and a video segment extraction module.
[0164] The face detection and face recognition module is used to detect a target face from the video frames contained in the video, and determine the voting object to which the target face belongs from the plurality of voting objects, so as to obtain a face recognition result of the video frames contained in the video.
[0165] Among them, the target face in a video frame is the face with the largest face ratio in the video frame.
[0166] The video segment extraction module is used to extract the video segments corresponding to the plurality of voting objects from the video according to the face recognition results of the video frames contained in the video.
[0167] In a possible implementation, the video clip distribution module 802 may include: a voting star and video clip determination module and a video clip distribution module.
[0168] The voting object and video clip determination module is used for each user: when receiving a video clip distribution request from the user, the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object is less than a preset value as a constraint condition, to determine K voting objects and corresponding video clips that can maximize the total viewing time of the video clip.
[0169] Among them, the number of assigned users of a voting object refers to the number of users assigned to the video clips of the voting object, the maximum assigned voting object is the voting object with the largest number of assigned users among the K voting objects, and the minimum assigned voting object is the voting object with the least number of assigned users among the K voting objects, and K is an integer greater than 1.
[0170] The video clip distribution module is used to distribute the determined video clip to the user.
[0171] In a possible implementation, the voting object and video segment determination module determines K voting objects and corresponding video segments that can maximize the total viewing time of the video segment, with the difference between the number of users allocated to the maximum allocated voting object and the number of users allocated to the minimum allocated voting object being less than a preset value as a constraint condition, and is specifically used to:
[0172] Selecting K voting objects with the least number of assigned users from the plurality of voting objects;
[0173] Performing quality evaluation on the video clips corresponding to the K selected voting objects, respectively, to obtain quality scores of the video clips corresponding to the K selected voting objects;
[0174] Performing a quality assessment on the video clips that the user has watched in the past to obtain a quality score of the video clips that the user has watched in the past;
[0175] According to the quality scores of the video clips watched by the user in the past and the quality scores of the video clips corresponding to the K selected voting objects, video clips are selected from the video clips corresponding to the K selected voting objects to obtain a candidate video clip set consisting of the selected video clips;
[0176] Predicting the viewing time of the user for each video segment in the candidate video segment set;
[0177] According to the viewing time of each video segment in the candidate video segment set by the user, N video segments are screened out from the candidate video segment set, where N is an integer greater than 0.
[0178] In a possible implementation, when the voting object and video segment determination module performs quality evaluation on the video segments corresponding to the K selected voting objects and obtains the quality scores of the video segments corresponding to the K selected voting objects, it is specifically used to:
[0179] For each video segment in the video segments corresponding to the K selected voting objects: determine the quality score of the video segment according to the total number of historical viewings and the total historical viewing duration of the video segment;
[0180] In a possible implementation, when the voting object and video segment determination module performs quality evaluation on the video segments that the user has watched in the past and obtains the quality score of the video segments that the user has watched in the past, it is specifically used to:
[0181] The quality score of the video clips that the user has watched in the past is determined according to the total number of times and the total duration of the video clips that the user has watched in the past.
[0182] In a possible implementation, the network voting device may further include: a life cycle management module.
[0183] The life cycle management module is used to determine, for each video clip in the video clips corresponding to the several voting objects, whether the status of the video clip needs to be set to inaccessible according to the online time, the number of assigned users and the quality score of the video clip; if the status of the video clip needs to be set to inaccessible, the status of the video clip is set to inaccessible.
[0184] In a possible implementation, when the vote-rigging identification module 803 identifies the non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users, it is specifically configured to:
[0185] For each voting behavior data of each user: determine whether the viewing time of the video clip in the voting behavior data is less than the preset time threshold; if the viewing time of the video clip in the voting behavior data is less than the preset time threshold, determine that the voting result in the voting behavior data is an illegal voting result.
[0186] In another possible implementation, when the vote-rigging identification module 803 identifies the non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users, it is specifically configured to:
[0187] For each voting behavior data of each user: determine whether the viewing time of the video clip in the voting behavior data is less than a preset time threshold; if the viewing time of the video clip in the voting behavior data is less than the preset time threshold, determine that the voting result in the voting behavior data is an ineligible voting result;
[0188] Counting the non-compliant voting ratio of each user, where the non-compliant voting ratio of a user refers to the ratio of the total number of non-compliant voting results of the user to the total number of voting results of the user;
[0189] A user whose non-compliant voting ratio is greater than a preset non-compliant voting ratio threshold is determined as a vote-rigging user, and all voting results of the determined vote-rigging user are determined as non-compliant voting results.
[0190] In a possible implementation, when counting the remaining voting results, the voting statistics module 804 is specifically used to:
[0191] For each voting object: count the total number of voting results belonging to the voting object from the remaining voting results, and count the total number of voting results indicating that users like the voting object from the voting results belonging to the voting object; determine the popularity of the voting object based on the total number of voting results belonging to the voting object and the total number of voting results indicating that users like the voting object.
[0192] The network voting device provided in the embodiment of the present application provides a new network voting method, that is, distributing video clips corresponding to several voting objects to multiple users, so that the users can watch the video clips corresponding to the voting objects, and then vote for the voting objects according to their performance in the video clips. Compared with the existing network voting methods, the voting method provided by the network voting device provided in the embodiment of the present application is more fair and objective. On the basis of providing a new network voting method, the network voting device provided in the embodiment of the present application also provides an anti-vote-rigging strategy, that is, identifying non-compliant voting results from the voting results of multiple users according to the user's video clip viewing time. This vote-rigging strategy has a high recognition accuracy rate and can ensure that voting is conducted in compliance. In addition, the network voting device provided in the present application also increases the user's sense of interactivity, thereby improving the ratings and popularity of the program.
[0193] An embodiment of the present application also provides an electronic device, which may include: at least one processor, at least one communication interface, at least one memory and at least one communication bus.
[0194] In the embodiment of the present application, the number of the processor, the communication interface, the memory, and the communication bus is at least one, and the processor, the communication interface, and the memory communicate with each other through the communication bus;
[0195] The processor may be a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application;
[0196] The memory may include a high-speed RAM memory, and may also include a non-volatile memory, such as at least one disk memory;
[0197] The memory stores a program, and the processor can call the program stored in the memory, and the program is used to implement the steps of the network voting method provided in the above embodiment.
[0198] An embodiment of the present application also provides a computer storage medium, which carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement the steps of the online voting method provided in the above embodiment.
[0199] An embodiment of the present application also provides a computer program product, including computer-readable instructions. When the computer-readable instructions are executed on an electronic device, the electronic device implements the steps of the online voting method provided in the above embodiment.
[0200] It should also be noted that the device embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed over multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. In addition, in the drawings of the device embodiments provided by the present application, the connection relationship between the modules indicates that there is a communication connection between them, which may be specifically implemented as one or more communication buses or signal lines.
[0201] Through the description of the above implementation mode, the technicians in the field can clearly understand that the present application can be implemented by means of software plus necessary general hardware, and of course, it can also be implemented by special hardware including special integrated circuits, special CPUs, special memories, special components, etc. In general, all functions completed by computer programs can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be various, such as analog circuits, digital circuits or special circuits. However, for the present application, software program implementation is a better implementation mode in more cases. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a readable storage medium, such as a computer floppy disk, a U disk, a mobile hard disk, a ROM, a RAM, a disk or an optical disk, etc., including a number of instructions to enable a computer device (which can be a personal computer, a training device, or a network device, etc.) to execute the methods described in each embodiment of the present application.
[0202] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.
[0203] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website site, a computer, a training device, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, training device, or data center. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device, a data center, etc. that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)), etc.
Claims
1. A network voting method, characterized in that: include: Obtaining video clips corresponding to a plurality of voting objects from a video whose content involves multiple objects; Distributing the video clips corresponding to the plurality of voting objects to a plurality of users, so that the plurality of users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips; Obtaining voting behavior data of the multiple users, wherein the voting behavior data includes viewing time of the video clips and voting results of voting objects corresponding to the watched video clips; Identifying non-compliant voting results from the voting results of the multiple users based on the viewing duration of the video clips of the multiple users; Filter out the identified non-compliant voting results and count the remaining voting results; The step of distributing the video clips corresponding to the plurality of voting objects to a plurality of users includes: For each user: When receiving the video clip distribution request of the user, the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object is less than a preset value as a constraint condition, and K voting objects and corresponding video clips that can maximize the total viewing time of the video clip are determined, wherein the number of allocated users of a voting object refers to the number of users allocated to the video clip of the voting object, the maximum allocated voting object is the voting object with the largest number of allocated users among the K voting objects, the minimum allocated voting object is the voting object with the smallest number of allocated users among the K voting objects, and K is an integer greater than 1; Distributing the determined video clip to the user; The step of determining K voting objects and corresponding video clips that can maximize the total viewing time of the video clips based on the constraint condition that the difference between the number of users allocated to the largest allocated voting object and the number of users allocated to the smallest allocated voting object is less than a preset value comprises: Selecting K voting objects with the least number of assigned users from the plurality of voting objects; Performing quality evaluation on the video clips corresponding to the K selected voting objects, respectively, to obtain quality scores of the video clips corresponding to the K selected voting objects; Performing a quality assessment on the video clips that the user has watched in the past to obtain a quality score of the video clips that the user has watched in the past; According to the quality scores of the video clips watched by the user in the past and the quality scores of the video clips corresponding to the K selected voting objects, video clips are selected from the video clips corresponding to the K selected voting objects to obtain a candidate video clip set consisting of the selected video clips; Predicting the viewing time of the user for each video segment in the candidate video segment set; According to the viewing time of each video segment in the candidate video segment set by the user, N video segments are screened out from the candidate video segment set, where N is an integer greater than 0.
2. The online voting method according to claim 1, characterized in that: The step of obtaining video clips corresponding to a plurality of voting objects from a video whose content involves a plurality of objects includes: Detecting a target face from the video frames included in the video, and determining the voting object to which the target face belongs from the plurality of voting objects, so as to obtain face recognition results of the video frames included in the video, wherein the target face in a video frame is the face with the largest face ratio in the video frame; According to the face recognition results of the video frames contained in the video, video clips corresponding to the plurality of voting objects are extracted from the video.
3. The network voting method according to claim 1, characterized in that: The performing of quality evaluation on the video clips corresponding to the K selected voting objects to obtain quality scores of the video clips corresponding to the K selected voting objects includes: For each video segment in the video segments corresponding to the K selected voting objects: determine the quality score of the video segment according to the total number of historical viewings and the total historical viewing duration of the video segment; The step of evaluating the quality of the video clips that the user has watched in the past to obtain the quality score of the video clips that the user has watched in the past includes: The quality score of the video clips that the user has watched in the past is determined according to the total number of times and the total duration of the video clips that the user has watched in the past.
4. The network voting method according to claim 1, characterized in that: Also includes: For each video segment in the video segments corresponding to the plurality of voting objects: Determine whether to set the status of the video segment to inaccessible according to the online time, the number of assigned users and the quality score of the video segment; If the status of the video clip needs to be set to inaccessible, the status of the video clip is set to inaccessible.
5. The network voting method according to claim 1, characterized in that: The step of identifying non-compliant voting results from the voting results of the multiple users according to the viewing duration of the video clips of the multiple users includes: For each voting behavior data of each user: Determine whether the viewing time of the video clip in the voting behavior data is less than a preset time threshold; If the viewing time of the video clip in the piece of voting behavior data is less than the preset time threshold, the voting result in the piece of voting behavior data is determined to be an ineligible voting result.
6. The network voting method according to claim 1, characterized in that: The step of identifying non-compliant voting results from the voting results of the multiple users according to the viewing duration of the video clips of the multiple users includes: For each voting behavior data of each user: determine whether the viewing time of the video clip in the voting behavior data is less than a preset time threshold; if the viewing time of the video clip in the voting behavior data is less than the preset time threshold, determine that the voting result in the voting behavior data is an ineligible voting result; Counting the non-compliant voting ratio of each user, where the non-compliant voting ratio of a user refers to the ratio of the total number of non-compliant voting results of the user to the total number of voting results of the user; A user whose non-compliant voting ratio is greater than a preset non-compliant voting ratio threshold is determined as a vote-rigging user, and all voting results of the determined vote-rigging user are determined as non-compliant voting results.
7. The network voting method according to claim 1, characterized in that: The remaining voting results are counted, including: For each voting object: Counting the total number of voting results belonging to the voting object from the remaining voting results, and counting the total number of voting results indicating that the user likes the voting object from the voting results belonging to the voting object; The popularity of the voting object is determined based on the total number of voting results belonging to the voting object and the total number of voting results indicating that users like the voting object.
8. An online voting device, characterized in that: include: Video understanding slicing module, video clip distribution module, vote fraud identification module and voting statistics module; The video understanding slicing module is used to obtain video clips corresponding to a plurality of voting objects from a video whose content involves multiple objects; The video clip distribution module is used to distribute the video clips corresponding to the plurality of voting objects to a plurality of users, so that the plurality of users watch the distributed video clips and vote for the voting objects corresponding to the watched video clips; The vote-rigging identification module is used to obtain voting behavior data of the multiple users, wherein the voting behavior data includes the viewing time of the video clips and the voting results of the voting objects corresponding to the viewed video clips; and to identify non-compliant voting results from the voting results of the multiple users according to the viewing time of the video clips of the multiple users; The voting statistics module is used to filter out the non-compliant voting results identified by the vote-rigging identification module and to count the remaining voting results; When the video clip distribution module distributes the video clips corresponding to the plurality of voting objects to the plurality of users, the video clip distribution module is specifically used to: For each user: When receiving the video clip distribution request of the user, the difference between the number of allocated users of the maximum allocated voting object and the number of allocated users of the minimum allocated voting object is less than a preset value as a constraint condition, and K voting objects and corresponding video clips that can maximize the total viewing time of the video clip are determined, wherein the number of allocated users of a voting object refers to the number of users allocated to the video clip of the voting object, the maximum allocated voting object is the voting object with the largest number of allocated users among the K voting objects, the minimum allocated voting object is the voting object with the smallest number of allocated users among the K voting objects, and K is an integer greater than 1; Distributing the determined video clip to the user; The step of determining K voting objects and corresponding video clips that can maximize the total viewing time of the video clips based on the constraint condition that the difference between the number of users allocated to the largest allocated voting object and the number of users allocated to the smallest allocated voting object is less than a preset value comprises: Selecting K voting objects with the least number of assigned users from the plurality of voting objects; Performing quality evaluation on the video clips corresponding to the K selected voting objects, respectively, to obtain quality scores of the video clips corresponding to the K selected voting objects; Performing a quality assessment on the video clips that the user has watched in the past to obtain a quality score of the video clips that the user has watched in the past; According to the quality scores of the video clips watched by the user in the past and the quality scores of the video clips corresponding to the K selected voting objects, video clips are selected from the video clips corresponding to the K selected voting objects to obtain a candidate video clip set consisting of the selected video clips; Predicting the viewing time of the user for each video segment in the candidate video segment set; According to the viewing time of each video segment in the candidate video segment set by the user, N video segments are screened out from the candidate video segment set, where N is an integer greater than 0.
