Split outlines and beat synchronization
By analyzing audio data to determine beat features and generating a synchronized segmentation contour effect based on these features, the problem of ineffective utilization of audio data in the existing technology is solved, the synchronized rendering of audio and video is achieved, and the user experience is improved.
Patent Information
- Application Number
- CN202280032322.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-06-21
- Filing Date
- 2022-05-10
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2042-05-10
AI Technical Summary
Existing video editing technologies fail to effectively utilize audio data to control visual effects, resulting in a poor user experience.
Video and audio data are obtained by a computing device, the audio data is analyzed to determine beat characteristics, segmentation contour effects are determined based on these characteristics, and these effects are then synchronized with the audio data to generate a rendered video.
This enables synchronized rendering of audio and video, enhancing the user experience and allowing the visual effects in video clips to dynamically respond to the audio beat.
Smart Images

Figure CN117280383B_ABST
Abstract
Description
Background Art
[0001] Video editing technologies are widely used to provide users with various ways to edit videos. For example, users can edit videos to add visual effects and / or music. However, many video editing technologies do not consider controlling visual effects based on audio data. Therefore, there is still a need to develop video editing technologies for rendering audio-video synchronization to enhance the user experience.
[0002] It is with respect to these and other general considerations that the aspects disclosed herein are described.In addition, although relatively specific problems may be discussed, it should be understood that the examples should not be limited to solving specific problems identified in the background or elsewhere in this disclosure. Summary of the Invention
[0003] According to at least one example of the present disclosure, a method for rendering a segmentation contour effect is provided. The method may include obtaining, by a computing device, video data comprising one or more video frames, determining, by the computing device, one or more segments in each of the one or more video frames, obtaining, by the computing device, audio data, analyzing, by the computing device, the audio data to determine a beat characteristic of each beat, determining, by the computing device, a segmentation contour effect to be applied to the one or more segments in the video data based on the beat characteristic, and generating, by the computing device, a rendered video by synchronizing the segmentation contour effect with the audio data.
[0004] According to at least one example of the present disclosure, a computing device for rendering a segmentation contour effect is provided. The computing device may include a processor and a memory having a plurality of instructions stored thereon, wherein the instructions, when executed by the processor, cause the computing device to: obtain video data including one or more video frames, determine one or more segments in each of the one or more video frames, obtain audio data, analyze the audio data to determine a beat characteristic of each beat, determine a segmentation contour effect to be applied to one or more segments in the video data based on the beat characteristic, and generate a rendered video by synchronizing the segmentation contour effect with the audio data.
[0005] According to at least one example of the present disclosure, a non-transitory computer-readable medium storing instructions for rendering a segmentation contour effect is provided. When executed by one or more processors of a computing device, these instructions cause the computing device to: obtain video data comprising one or more video frames, determine one or more segments in each of the one or more video frames, obtain audio data, analyze the audio data to determine a beat characteristic of each beat, determine a segmentation contour effect to be applied to the one or more segments in the video data based on the beat characteristic, and generate a rendered video by synchronizing the segmentation contour effect with the audio data.
[0006] Any one or more aspects described above in combination with any other of the one or more aspects. Any one or more aspects as described herein.
[0007] This summary is provided to introduce a selection of concepts in a simplified form, which will be further described in the detailed description below. This summary is not intended to identify key features or essential features of the claimed technical solutions, nor is it intended to limit the scope of the claimed technical solutions. Additional aspects, features, and / or advantages of the examples will be set forth in part in the description below and in part will become apparent from the description or may be learned through practice of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Non-limiting and non-exhaustive examples are described with reference to the following figures.
[0009] Figure 1 An example audio-video synchronization system according to examples of the present disclosure is depicted;
[0010] Figure 2 Depicts an example according to the present disclosure Figure 1 details of computing equipment for the audio-video synchronization system;
[0011] Figures 3A-3C depicts an example frame of a video rendered using the Segmentation Contours effect;
[0012] Figure 4 Depicts details of a method for rendering a segmentation contour effect according to an example of the present disclosure;
[0013] Figure 5 depicts a block diagram illustrating the physical components (e.g., hardware) of a computing device that can be used to practice aspects of the present disclosure;
[0014] Figure 6A A first example of a computing device that can be used to practice aspects of the present disclosure is shown;
[0015] Figure 6BA second example of a computing device that can be used to practice aspects of the present disclosure is shown; and
[0016] Figure 7 At least one aspect of the architecture of a system for processing data according to an example of the present disclosure is shown. DETAILED DESCRIPTION
[0017] In the detailed description that follows, reference is made to the accompanying drawings that form a part thereof, and specific aspects or examples are shown in the drawings by way of illustration. These aspects may be combined, other aspects may be utilized, and structural changes may be made without departing from the present disclosure. Each aspect may be practiced as a method, system, or device. Therefore, each aspect may take the form of a hardware implementation, a complete software implementation, or a combination of software and hardware implementations. Therefore, the detailed description that follows should not be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims and their equivalents.
[0018] According to an example of the present disclosure, an audio-video synchronization system allows a user to apply an audio-reactive segmentation contour effect to one or more body segments of a target subject in a video clip. More specifically, the segmentation contour effect adds one or more segmentation contours on the boundaries of one or more body segments identified in the video clip based on the beat characteristics of the audio music. To this end, body segmentation can be performed to separate or segment the body segments from the one or more target subjects of the video clip. In addition, music beat characterization can be performed to capture the beat information of the music selected by the user to be added to the video clip. In some aspects, the music beat characterization can be embedded in the music as metadata. The music beat characterization can include the number and relative positions of the accented beats and unaccented beats of the music.
[0019] The segmentation contour effect includes contour effect parameters that define the behavior of the segmentation contour effect for one or more body segments to be added to the video data. In some aspects, the contour effect parameters may define, but are not limited to, the one or more body segments to which the segmentation contour effect is applied and how to select one or more body segments for application of the segmentation contour effect in the entire video clip. The contour effect parameters may also define the color, width, height, thickness, and brightness of the segmentation contours of the segmentation contour effect for each body segment. In addition, the contour effect parameters may define the number of segmentation contours of a particular body segment to be added to the video clip. Therefore, the parameters of the segmentation contour effect may be updated periodically (e.g., every beat) based on the audio music and the video clip. Audio-video synchronization allows the segmentation contour effect to react to the beat of the music being added to the video clip.
[0020] Figure 1An audio-video synchronization system 100 for rendering one or more segmentation silhouette effects according to an example of the present disclosure is depicted. For example, a user 102 may generate, receive, acquire, or otherwise obtain a video clip 108. Subsequently, the user may select audio music 110 to be added to the video clip 108. The audio-video synchronization system 100 allows the user 102 to create an audio-reactive segmentation silhouette effect based on the music 110 that follows one or more target body segments of a target subject in the video clip 108. To this end, the audio-video synchronization system 100 includes a computing device 104 associated with the user 102 and a server 106 communicatively coupled to the computing device 104 via a network 114. The network 114 may include any type of computing network, including, but not limited to, a wired or wireless local area network (LAN), a wired or wireless wide area network (WAN), and / or the Internet.
[0021] In an example, user 102 may utilize computing device 104 to obtain video clip 108 and music 110. User 102 may generate video clip 108 using a camera communicatively coupled to computing device 104. In such an example, a segmentation contour effect may be synchronized with music 110 in real time or near real time to allow user 102 to view the segmentation contour effect around one or more body segments on a display (e.g., display 605) as the user captures the video on computing device 104. Alternatively or additionally, user 102 may receive, obtain, or otherwise acquire video clip 108 on computing device 104. In some examples, user 102 may edit video clip 108 to add the segmentation contour effect based on music 110. In some aspects, user 102 may utilize computing device 104 to send video clip 108 and music 110 to server 106 via network 114. Computing device 104 may be any of a portable computing device and a non-portable computing device. For example, computing device 104 may be a smartphone, a laptop, a desktop, a wearable electronic device, a smart appliance, and a server. Video clip 108 may be obtained in any format and may be compressed and / or decompressed.
[0022] The computing device 104 is configured to analyze each frame of the video clip 108 to identify one or more body segments of the target subject in the frame. For example, the body segmentation algorithm may define a list of body segments to be identified and extracted from the video clip 108. The body segments may include, but are not limited to, the head (e.g., hair, hat), the face (e.g., face, glasses, mask), the torso skin, the upper garment (e.g., jacket, dress, coat, scarf), the lower garment (e.g., pants, shorts, skirt), the hands (e.g., arm skin, gloves), and the legs (e.g., leg skin, shoes, socks).
[0023] Computing device 104 is configured to receive audio music 110 selected by user 102 to be added to video clip 108 or preset by audio-video synchronization system 100. Alternatively, in some aspects, audio music 110 may be associated with a segmentation outline effect. In some aspects, the segmentation outline effect may include default music to be added to video clip 108 or preset by audio-video synchronization system 100. Computing device 104 is configured to analyze audio data to determine beat information of audio music 110. For example, computing device 104 may determine the beat characteristics of each beat using an automatic beat tracking algorithm. It should be understood that in some aspects, the music beat representation may be embedded in the music as metadata. The music beat representation may include the number and relative positions of accented and unaccented beats in audio music 110. For example, if audio music 110 has a 4 / 4 time structure, each section may have four beats of varying beat strength: a strong beat, a weak beat, a second-strongest beat, and a weak beat.
[0024] The segmentation contour effect includes contour effect parameters that define the behavior of the segmentation contour effect for one or more body segments to be added to the video data. In some aspects, the contour effect parameters may define, but are not limited to, the one or more body segments to which the segmentation contour effect is applied and how to select one or more body segments for application of the segmentation contour effect in the entire video clip. The contour effect parameters may also define the color, width, height, thickness, and brightness of the segmentation contours of each body segment. In addition, the contour effect parameters may define the number of segmentation contours of a particular body segment to be added to the video clip. Therefore, the parameters of the segmentation contour effect can be updated periodically (e.g., every beat) based on the audio music and video clip. In other words, audio and video synchronization allows the segmentation contour effect to react to the beat of the music.
[0025] In addition, computing device 104 is further configured to determine a segmentation contour effect to be applied to the video data based on the audio data. In illustrative terms, the segmentation contour effect changes with each beat. In other words, the beat of the selected audio music controls the visual changes of the segmentation contour effect on the one or more body segments.
[0026] In some aspects, a user can select a segmentation contour effect to be applied to the video clip 108 to generate a segmentation contour with a specific effect around the boundaries of one or more body segments defined by the contour effect parameters. The segmentation contour effect includes one or more contour effect parameters. The contour effect parameters define the one or more body segments to which the segmentation contour effect is applied and how the one or more body segments are selected for application of the segmentation contour effect throughout the video clip. For example, the segmentation contour effect can be applied randomly to a set of specific body segments throughout the video clip. Alternatively, the segmentation contour effect can be applied to the video clip in a specific sequence (e.g., from head to toe). Alternatively, the segmentation contour effect can be applied to specific body segments based on the beat strength of the music. For example, the head can be assigned to a strong beat, the top can be assigned to a weak beat, and the pants can be assigned to the second strongest beat.
[0027] Additionally, the Outline effect parameters can define the color, width, height, thickness, and brightness of each body segment's segment outline. For example, orange can be assigned to the head, green to the face, red to the torso skin, turquoise to the top, blue to the pants, purple to the body and hands, and pink to the legs. In some aspects, the thickness and brightness of the segment outlines can be based on the strength of the music's beat. For example, the segment outlines become thicker and brighter during strong beats and thinner and darker during weak beats.
[0028] Additionally, the contour effect parameters can define the number of segmentation contours to be added to a particular body segment of a video clip. The number of segmentation contours can be associated with the body segment and / or beat strength. For example, five segmentation contours can be generated around a particular body segment on a strong beat, three segmentation contours can be generated for a second strong beat, and one segmentation contour can be generated for a weak beat.
[0029] The computing device 104 is configured to synchronize the segmentation contour effect with the beat of the audio music to generate a rendered video with the segmentation contour effect, which can be presented to the user on a display (e.g., display 605) communicatively coupled to the computing device 104. It should be understood that the segmentation contour effect can be synchronized with the beat of the music in real time or near real time to allow the user to view the segmentation contour effect around one or more body segments on the display screen as the user captures the video.
[0030] Alternatively or additionally, the segmentation contour effect can be synchronized to the beat of the music by the server 106. In such an aspect, once the video clip 108 is uploaded to the server 106, the segmentation contour effect can be applied to the video clip 108 to render the segmentation contour effect.
[0031] Now refer to Figure 2, a computing device 202 according to an example of the present disclosure is provided. The computing device 202 can be used with the previously Figure 1 The computing device 202 may be the same as or similar to the computing device 104 described in . The computing device 202 may include a communication interface 204, a processor 206, and a computer readable storage device 208. In an example, the communication interface 204 may be coupled to a network and receive the video clip 108 and the audio music 110 ( Figure 1 ). Video Clip 108( Figure 1 ) can be stored as video frames 246 and music 110 can be stored as audio data 248.
[0032] In some examples, one or more contour effects may also be received at communication interface 204 and stored as contour effect data 252. Contour effect data 252 may include one or more contour effect parameters. Contour effect parameters may define, but are not limited to, one or more body segments to which the contour effect is applied and how the one or more body segments are selected for application of the contour effect throughout the video clip. Contour effect parameters may also define the color, width, height, thickness, and brightness of the contours for each body segment. Additionally, contour effect parameters may define multiple contours to be added to a particular body segment in the video clip.
[0033] In an example, computing device 104 may provide one or more applications 210. One or more applications 210 may include a video processing module 212, an audio processing module 214, and a segmentation contour effect module 216. Processing module 212 may include a video acquisition manager 224 and a body segment identifier 226. Video acquisition manager 224 is configured to receive, acquire, or otherwise obtain video data comprising one or more video frames. Additionally, body segment identifier 226 is configured to identify one or more body segments of one or more target subjects in a frame. In illustrative aspects, the target subjects are people. For example, a body segmentation algorithm may define a list of body segments to be identified and extracted from video clip 108. Body segments may include, but are not limited to, heads (e.g., hair, hats), faces (e.g., faces, glasses, masks), torso skin, upper garments (e.g., jackets, dresses, coats, scarves), lower garments (e.g., pants, shorts, skirts), hands (e.g., arm skin, gloves), and legs (e.g., leg skin, shoes, socks). In some examples, the list of body segments may be received at communication interface 204 and stored as body segments 250. In some aspects, the list of body segments may be received from a server (eg, 106).
[0034] In addition, the audio processing module 214 may include an audio acquisition manager 232 and a beat information determiner 234. The audio acquisition manager 232 is configured to receive, acquire, or otherwise obtain audio data. The beat information determiner 234 is configured to determine the beat information of the audio data. For example, an automatic beat tracking algorithm may be used to determine the beat information. In some aspects, the beat information may already be embedded in the audio data as metadata. In other aspects, the beat information may be received at the communication interface 204 and stored as audio data 248. The beat information provides the beat characteristics of each beat. Beat characteristics include, but are not limited to, beat structure, the repetitive sequence of strong and weak beats, the number of stressed and unstressed beats, and the relative positions of stressed and unstressed beats. For example, if the audio music has a 4 / 4 beat structure, each part may have four beats with different beat intensities: a strong beat, a weak beat, a second strong beat, and a weak beat.
[0035] In addition, the segmentation contour effect 216 may also include a segmentation contour effect determiner 238, a segmentation contour effect synchronizer 240, and a shader 256. The segmentation contour effect determiner 238 is configured to determine the segmentation contour effect to be applied to the video data based on the audio data. In illustrative terms, the visualization of the segmentation contour effect changes with each beat. In other words, the beat of the selected audio music controls the visual changes of the segmentation contour effect on one or more body segments.
[0036] For example, a split outline effect includes one or more outline effect parameters. The outline effect parameters define the one or more body segments to which the split outline effect is applied and how the one or more body segments are selected for application of the split outline effect throughout the video clip. For example, the split outline effect can be applied randomly to a specific set of body segments throughout the video clip. Alternatively, the split outline effect can be applied to the video clip in a specific order (e.g., from top to bottom). Alternatively, the split outline effect can be applied to specific body segments based on the strength of the beat of the music. For example, the head can be assigned to a strong beat, the top can be assigned to a weak beat, and the pants can be assigned to the second strongest beat.
[0037] Additionally, the Outline effect parameters can define the color, width, height, thickness, and brightness of the segmentation outlines applied to specific body segments. For example, orange can be assigned to the head, green to the face, red to the torso skin, turquoise to the top, blue to the pants, purple to the body and hands, and pink to the legs. In some aspects, the thickness and brightness of the segmentation outlines are based on the strength of the beat of the music. For example, the segmentation outlines become thicker and brighter during strong beats and thinner and darker during weak beats.
[0038] Additionally, the contour effect parameters can define the number of segmentation contours to be added to a particular body segment of a video clip. The number of segmentation contours can be associated with the body segment and / or beat strength. For example, five segmentation contours can be generated around a particular body segment on a strong beat, three segmentation contours can be generated for a second-strongest beat, and one segmentation contour can be generated for a weak beat.
[0039] The segmentation contour effect synchronizer 240 is configured to synchronize the segmentation contour effect with the music beat of the selected audio music to generate a rendered video with the segmentation contour effect. The segmentation contour effect synchronizer 240 includes a shader 256 or otherwise communicates with the shader 256. The shader 256 is configured to receive contour effect parameters. Based on the contour effect parameters, the shader 256 is configured to generate or otherwise cause the effect to be rendered. For example, the shader 256 can change the visual effects associated with the segmentation contour of the segmentation contour effect, which can include but is not limited to generating blur, halo (e.g., glow), lighting (e.g., shadows, highlights, and translucency), bump mapping, and distortion.
[0040] Figures 3A-3C Exemplary video frames 310, 320, 330 of a video clip with a segmentation contour effect according to an example of the present disclosure are shown. In the illustrative example, the video frames 310, 320, 330 show the segmentation contour effect for three consecutive beats. Specifically, the exemplary segmentation contour effect includes one or more contour effect parameters that indicate that three body segments are to be extracted and applied in the order of head, top, and pants as the beats change. At beat 1, the segmentation contour 302 outlines the boundary of the head, as shown in FIG. Figure 3A At beat 2, the segmentation contour 302 moves to outline the boundary of the top, as shown in FIG. Figure 3B At beat 3, the segmentation contour 302 moves further to outline the boundaries of the pants, as shown in FIG. Figure 3C shown.
[0041] Now refer to Figure 4 , describes a simplified method for rendering one or more segmentation contour effects to video data based on audio data according to examples of the present disclosure. Figure 4 The general order of the steps of method 400 is shown in FIG. Generally, method 400 begins at 402 and ends at 432. Method 400 may include more or fewer steps, or may be combined with Figure 4The order of the steps is arranged differently than those shown. The method 400 can be executed as a set of computer executable instructions executed by a computer system and encoded or stored on a computer readable medium. In illustrative aspects, the method 400 is performed by a computing device associated with a user (e.g., 102). However, it should be understood that aspects of the method 400 can be performed by one or more processing devices, such as computers or servers (e.g., 104, 106). In addition, the method 400 can be performed by gates or circuits associated with a processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a system on a chip (SOC), a neural processing unit, or other hardware device. Hereinafter, reference will be made to the method 400 in conjunction with the processing described herein. Figure 1 -3 to explain the system, components, modules, software, data structures, user interfaces, etc. of method 400.
[0042] Method 400 begins at 402, where flow may proceed to 404. At 404, a computing device receives video data (e.g., a video clip 108) comprising one or more video frames. For example, user 102 may generate, receive, acquire, or otherwise obtain the video clip 108 via the computing device. At 408, the computing device processes each frame of the video data to identify one or more body segments of a target subject in the frame. For example, a body segmentation algorithm may define a list of body segments to be identified and extracted from the video clip 108. The body segments may include, but are not limited to, a head (e.g., hair, hat), a face (e.g., face, glasses, mask), torso skin, upper clothing (e.g., jacket, dress, coat, scarf), lower clothing (e.g., pants, shorts, skirt), hands (e.g., arm skin, gloves), and legs (e.g., leg skin, shoes, socks). In illustrative aspects, the list of body segments may be defined by the body segmentation algorithm.
[0043] Referring back to start 402, method 400 may proceed to 412. It should be understood that the computing device may perform operations 404 and 412 concurrently. Alternatively, operation 412 may be performed after operation 404. In some aspects, operation 404 may be performed after operation 412.
[0044] At 412, the computing device receives the audio data (e.g., audio music 110) that the user 102 selects to be added to the video data. Subsequently, at 416, the computing device analyzes the audio data to determine the beat information of the audio music 110. For example, the computing device determines the beat characteristics of each beat through an automatic beat tracking algorithm. Beat characteristics include, but are not limited to, beat structure, a repetitive sequence of strong beats and weak beats, the number of accented beats and unaccented beats, and the relative positions of accented beats and unaccented beats. For example, if the audio music 110 has a 4 / 4 beat structure, each part has four beats with different beat strengths: a strong beat, a weak beat, a second strong beat, and a weak beat.
[0045] Once the video data and audio data have been received and analyzed in operations 404-416, method 400 proceeds to 420. At 420, the computing device determines a segmentation contour effect to be applied to the video data based on the audio data. Illustratively, the segmentation contour effect changes with each beat. In other words, the beat of the audio music controls the variation of the segmentation contour effect on one or more body segments.
[0046] As described above, a user can select a segmentation contour effect to be applied to a video clip to generate a segmentation contour with a specific effect around the boundaries of one or more body segments defined by the contour parameters. The segmentation contour effect includes one or more contour effect parameters. The contour effect parameters define the one or more body segments to which the segmentation contour effect is applied and how to select the one or more body segments for application of the segmentation contour effect in the entire video clip. For example, the segmentation contour effect can be randomly applied to a set of specific body segments in the entire video clip. Alternatively, the segmentation contour effect can be applied to the video clip in a specific sequence (e.g., from head to toe). Alternatively, the segmentation contour effect can be applied to specific body segments based on the beat strength of the music. For example, the head can be assigned to a strong beat, the top can be assigned to a weak beat, and the pants can be assigned to the second strongest beat.
[0047] Additionally, the Outline effect parameters can define the color, width, height, thickness, and brightness of each body segment's segment outline. For example, orange can be assigned to the head, green to the face, red to the torso skin, turquoise to the top, blue to the pants, purple to the hands, and pink to the legs. In some aspects, the thickness and brightness of the segment outlines can be based on the strength of the music's beat. For example, the segment outlines become thicker and brighter during strong beats and thinner and darker during weak beats.
[0048] Additionally, the contour effect parameters can define the number of segmentation contours to be added to a particular body segment of a video clip. The number of segmentation contours can be associated with the body segment and / or beat strength. For example, five segmentation contours can be generated around a particular body segment on a strong beat, three segmentation contours can be generated for a second-strongest beat, and one segmentation contour can be generated for a weak beat.
[0049] Subsequently, at 424, the segmentation contour effect is synchronized with the beat of the selected audio music to generate a rendered video with the segmentation contour effect. At 428, the computing device presents the rendered video with the segmentation contour effect to the user on a display (e.g., display 605). It should be understood that the segmentation contour effect can be synchronized with the beat of the music in real time or near real time to allow the user to view the segmentation contour effect around one or more body segments on the display (e.g., display 605) as the user captures the video. The method can end at 432.
[0050] It should be understood that although method 400 is described as being performed by a computing device associated with a user, one or more operations of method 400 may be performed by any computing device or server, such as server 106. For example, synchronizing the segmentation contour effect to the beat of the music may be performed by a server that receives the music and video clip from the computing device associated with the user.
[0051] Figure 5 is a block diagram illustrating the physical components (eg, hardware) of a computing device 500 that can be used to practice aspects of the present disclosure. The computing device components described below may be suitable for the computing devices described above. For example, the computing device 500 may represent Figure 1 The computing device 104 of FIG. 500 may include at least one processing unit 502 and system memory 504. Depending on the configuration and type of the computing device, the system memory 504 may include, but is not limited to, volatile memory (e.g., random access memory), non-volatile memory (e.g., read-only memory), flash memory, or any combination of such memories.
[0052] System memory 504 may include an operating system 505 and one or more program modules 506 suitable for performing various aspects disclosed herein. For example, operating system 505 may be suitable for controlling the operation of computing device 500. Furthermore, aspects of the present disclosure may be practiced in conjunction with a graphics library, other operating systems, or any other application, and is not limited to any particular application or system. Figure 5508. The computing device 500 may have additional features or functionality. For example, the computing device 500 may also include additional data storage devices (removable and / or non-removable), such as, for example, magnetic disks, optical disks, or tapes. Such additional storage devices may be used to store data on the computer. Figure 5 , which is illustrated by removable storage device 509 and non-removable storage device 510.
[0053] As described above, a number of program modules and data files may be stored in system memory 504. When executed on at least one processing unit 502, program modules 506 may perform processes including, but not limited to, one or more aspects as described herein. Application 520 includes a video processing module 523, an audio processing module 524, a segmentation contour effect module 525, and a shader module 527, as described with respect to FIG. Figure 1 Other program modules that may be used in accordance with aspects of the present disclosure may include email and contacts applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing or computer-assisted applications, and / or one or more components supported by the systems described herein.
[0054] Furthermore, aspects of the present disclosure may be implemented in electronic circuits comprising discrete electronic components, packaged or integrated electronic chips containing logic gates, circuits utilizing a microprocessor, or on a single chip containing electronic components or a microprocessor. For example, aspects of the present disclosure may be practiced via a system on a chip (SOC) wherein Figure 5 Each or many components shown in can be integrated onto a single integrated circuit. Such a SOC device may include one or more processing units, a graphics unit, a communication unit, a system virtualization unit, and various application functions, all of which are integrated (or "burned") onto a chip substrate as a single integrated circuit. When operated via the SOC, the functions described herein regarding the ability of the client to switch protocols can be operated via dedicated logic integrated with other components of the computing device 500 on a single integrated circuit (chip). Various aspects of the present disclosure may also be practiced using other technologies capable of performing logical operations such as AND, OR, and NOT, including but not limited to mechanical, optical, fluid, and quantum technologies. In addition, various aspects of the present disclosure may be practiced within a general-purpose computer or in any other circuit or system.
[0055] The computing device 500 may also have one or more input devices 512, such as a keyboard, mouse, pen, sound or voice input device, touch or slide input device, etc. It may also include (multiple) output devices 514A, such as a display, speakers, printer, etc. It may also include an output 514B corresponding to a virtual display. The above devices are examples and other devices may be used. The computing device 500 may include one or more communication connections 516 that allow communication with other computing devices 450. Examples of suitable communication connections 516 include, but are not limited to, radio frequency (RF) transmitters, receivers, and / or transceiver circuits; universal serial bus (USB), parallel ports, and / or serial ports.
[0056] As used herein, the term computer-readable media may include computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, or program modules. System memory 504, removable storage device 509, and non-removable storage device 510 are all examples of computer storage media (e.g., memory storage devices). Computer storage media may include RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other storage technology, CD-ROM, digital versatile disc (DVD) or other optical storage device, cassette, magnetic tape, magnetic disk storage device or other magnetic storage device, or any other product that can be used to store information and can be accessed by computing device 500. Any such computer storage media may be part of computing device 500. Computer storage media does not include carrier waves or other propagated or modulated data signals.
[0057] Communication media may be implemented by computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and includes any information delivery media. The term "modulated data signal" may describe a signal that has one or more characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
[0058] Figure 6A and 6B A computing device or mobile computing device 600 suitable for performing various aspects disclosed herein is shown, such as a mobile phone, a smart phone, a wearable computer (such as a smart watch), a tablet computer, a laptop computer, a smart home appliance, etc., which can be used to practice various aspects of the present disclosure. Figure 6A, illustrates one aspect of a mobile computing device 600 for implementing these aspects. In a basic configuration, the mobile computing device 600 is a handheld computer having both input and output elements. The mobile computing device 600 typically includes a display 605 and one or more input buttons 609 / 610 that allow a user to enter information into the mobile computing device 600. The display 605 of the mobile computing device 600 can also function as an input device (e.g., a touch screen display). If included, an optional side input element 615 allows further user input. The side input element 615 can be a rotary switch, a button, or any other type of manual input element. In alternative aspects, the mobile computing device 600 can incorporate more or fewer input elements. For example, in some aspects, the display 605 can be other than a touch screen. In yet another alternative aspect, the mobile computing device 600 is a portable telephone system, such as a cellular phone. The mobile computing device 600 can also include an optional keyboard 635. The optional keyboard 635 can be a physical keyboard or a "soft" keyboard generated on the touch screen display. In various aspects, the output elements include a display 605 for displaying a graphical user interface (GUI), a visual indicator 631 (e.g., a light emitting diode), and / or an audio transducer 625 (e.g., a speaker). In some aspects, the mobile computing device 600 incorporates a vibration transducer for providing tactile feedback to the user. In yet another aspect, the mobile computing device 600 incorporates input and / or output ports 630, such as an audio input (e.g., a microphone jack), an audio output (e.g., a headphone jack), and a video output (e.g., an HDMI port) for sending signals to or receiving signals from an external source.
[0059] Figure 6B 6 is a block diagram illustrating an architecture of one aspect of a computing device, server, or mobile computing device. That is, a mobile computing device 600 can be incorporated into the system (602) (e.g., architecture) to implement some aspects. The system 602 can be implemented as a "smartphone" capable of running one or more applications (e.g., a browser, email, calendar, contact manager, messaging client, game, and media client / player). In some aspects, the system 602 is integrated into a computing device, such as an integrated personal digital assistant (PDA) and a wireless phone.
[0060] One or more application programs 666 can be loaded into memory 662 and run on or in association with operating system 664. Examples of application programs include a phone dialer program, an email program, a personal information management (PIM) program, a word processing program, a spreadsheet program, an Internet browser program, a messaging program, and / or one or more components supported by the systems described herein. System 602 also includes a non-volatile storage area 668 within memory 662. Non-volatile storage area 668 can be used to store persistent information that should not be lost if system 602 loses power. Applications 666 can use and store information in non-volatile storage area 668, such as emails or other messages used by email applications. A synchronization application (not shown) also resides on system 602 and is programmed to interact with a corresponding synchronization application residing on a host computer to keep information stored in non-volatile storage area 668 synchronized with corresponding information stored on the host computer. It should be understood that other applications may be loaded into the memory 662 and executed on the mobile computing device 600 described herein (eg, the video processing module 523, the audio processing module 524, the segmentation contour effect module 525, etc.).
[0061] System 602 has a power source 670, which can be implemented as one or more batteries. Power source 670 can also include an external power source, such as an AC adapter or a powered docking station that replenishes or recharges the batteries.
[0062] System 602 may also include a radio interface layer 672 that performs the functions of sending and receiving radio frequency communications. Radio interface layer 672 facilitates wireless connectivity between system 602 and the "outside world" via a communications carrier or service provider. Transmissions to and from radio interface layer 672 are controlled by operating system 664. In other words, communications received by radio interface layer 672 can be passed to application 666 via operating system 664, and vice versa.
[0063] The visual indicator 620 can be used to provide a visual notification, and / or the audio interface 674 can be used to generate an audible notification via the audio transducer 625. In the illustrated configuration, the visual indicator 620 is a light emitting diode (LED) and the audio transducer 625 is a speaker. These devices can be directly coupled to the power supply 670 so that when activated, they remain on for the duration indicated by the notification mechanism, even if the processor 660 / 661 and other components may be turned off to conserve battery power. The LED can be programmed to remain on indefinitely until the user takes action to indicate the device is powered on. The audio interface 674 is used to provide audible signals to the user and receive audible signals from the user. For example, in addition to being coupled to the audio transducer 625, the audio interface 674 can also be coupled to a microphone to receive audible input, such as to facilitate a telephone conversation. According to aspects of the present disclosure, the microphone can also be used as an audio sensor to facilitate the control of notifications, as described below. The system 602 can also include a video interface 676 that enables the onboard camera to operate to record still images, video streams, etc.
[0064] The mobile computing device 600 implementing the system 602 may have additional features or functionality. For example, the mobile computing device 600 may also include additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage Figure 6B , shown by non-volatile storage area 668.
[0065] Data / information generated or captured by the mobile computing device 600 and stored via the system 602 can be stored locally on the mobile computing device 600, as described above, or the data can be stored on any number of storage media that can be accessed by the device via the radio interface layer 672 or via a wired connection between the mobile computing device 600 and a separate computing device associated with the mobile computing device 600, such as a server computer in a distributed computing network, such as the Internet. It should be understood that such data / information can be accessed via the mobile computing device 600 via the radio interface layer 672 or via a distributed computing network. Similarly, such data / information can be readily transferred between computing devices for storage and use according to well-known data / information transmission and storage components, including email and collaborative data / information sharing systems.
[0066] Figure 7One aspect of the architecture of a system for processing data received from a remote source such as a personal computer 704, a tablet computing device 706, or a mobile computing device 708 at a computing system suitable for performing various aspects disclosed herein, as described above, is shown. The content displayed at the server device 702 may be stored in different communication channels or other storage types. For example, the computing devices 704, 706, 708 may represent Figure 1 The computing device 104 and the server device 702 may represent Figure 1 Server 106.
[0067] In some aspects, the server device 702 may employ one or more of a video processing module 723, an audio processing module 724, and a segmentation contour effect module 725. The server device 702 may provide data to and from client computing devices such as a personal computer 704, a tablet computing device 706, and / or a mobile computing device 708 (e.g., a smartphone) via a network 712. By way of example, the computer system described above may be embodied in a personal computer 704, a tablet computing device 706, and / or a mobile computing device 708 (e.g., a smartphone). In addition to receiving graphics data that may be pre-processed at a graphics originating system or post-processed at a receiving computing system, any of these aspects of the computing device may also retrieve content from a repository 716. The content repository may include video data 718, audio data 720, and rendered video data 722.
[0068] Figure 7 An exemplary mobile computing device 708 is shown that can perform one or more aspects disclosed herein. In addition, the aspects and functions described herein can be operated on a distributed system (e.g., a cloud-based computing system), where application functions, memory, data storage and retrieval, and various processing functions can be remotely operated from each other via a distributed computing network, such as the Internet or an intranet. Various types of user interfaces and information can be displayed via an onboard computing device display or via a remote display unit associated with one or more computing devices. For example, various types of user interfaces and information can be displayed and interacted with on a wall on which the user interface and various types of information are projected. Interactions with multiple computing systems that can practice aspects of the present invention include keystroke input, touch screen input, voice or other audio input, gesture input, where the associated computing device is equipped with detection (e.g., camera) capabilities for capturing and interpreting user gestures to control functions of the computing device, etc.
[0069] The phrases "at least one," "one or more," "or," and "and / or" are open-ended expressions that are both conjunctive and disjunctive in operation. For example, the expressions "at least one of A, B, and C," "at least one of A, B, or C," "one or more of A, B, and C," "one or more of A, B, and C," "each of A, B, or C," "A, B, and / or C," and "A, B, or C" refer to A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together.
[0070] The term "a" or "an" entity refers to one or more of that entity. Therefore, the terms "a" (or "an"), "one or more" and "at least one" can be used interchangeably herein. It should also be noted that the terms "including," "comprising," and "having" can be used interchangeably.
[0071] As used herein, the term "automatic" and its variations refer to any process or operation, typically continuous or semi-continuous, that is performed without substantial human input. However, a process or operation may be automatic even if the execution of the process or operation utilizes material or immaterial human input if input is received prior to the execution of the process or operation. Human input is considered substantial if it affects the manner in which the process or operation is performed. Human input that consents to the execution of the process or operation is not considered "substantial."
[0072] Any of the steps, functions, and operations discussed herein may be performed continuously and automatically.
[0073] The exemplary systems and methods of the present disclosure have been described in conjunction with computing devices. However, to avoid unnecessarily obscuring the present disclosure, the foregoing description omits some known structures and devices. This omission should not be construed as limiting. Specific details are set forth to provide an understanding of the present disclosure. However, it should be understood that the present disclosure can be practiced in a variety of ways beyond the specific details set forth herein.
[0074] In addition, although the exemplary aspects shown herein show various components of the system being collocated, certain components of the system may be remotely located at a distant portion of a distributed network such as a LAN and / or the Internet, or located on a dedicated system. Therefore, it should be understood that the components of the system may be combined into one or more devices, such as a server, a communication device, or collocated at a specific node of a distributed network, such as an analog and / or digital telecommunications network, a packet-switched network, or a circuit-switched network. It should be understood from the foregoing description, and for reasons of computational efficiency, that the components of the system may be arranged at any location within the distributed network of components without affecting the operation of the system.
[0075] Furthermore, it should be understood that the various links connecting the elements may be wired or wireless links or any combination thereof, or any other known or later developed element capable of providing data to and / or transmitting data from the connected elements. These wired or wireless links may also be secure links and capable of transmitting encrypted information. For example, the transmission medium used as the link may be any suitable electrical signal carrier, including coaxial cable, copper wire, and optical fiber, and may take the form of sound waves or light waves, such as those generated during radio wave and infrared data communications.
[0076] While the flow diagrams have been discussed and shown with respect to a particular sequence of events, it should be understood that changes, additions, and omissions to this sequence may occur without materially affecting the operation of the disclosed configurations and aspects.
[0077] Various variations and modifications of the disclosure may be used.Some features of the disclosure may be provided without providing others.
[0078] In another configuration, the system and method of the present disclosure can be realized in combination with the following: a special-purpose computer, a microprocessor or microcontroller of programming and (multiple) peripheral integrated circuit components, ASIC or other integrated circuits, digital signals to realize a processor, a hard-wired electronic or logic circuit such as a discrete component circuit, a programmable logic device or gate array such as a PLD, PLA, FPGA, PAL, a special-purpose computer, any similar device, etc. In general, any (multiple) device or device that can realize the method shown in this article can be used to realize various aspects of the present disclosure. Exemplary hardware that can be used for the present disclosure includes computers, handheld devices, phones (for example, cellular phones, phones that support the Internet, digital phones, analog phones, hybrid phones, etc.) and other hardware known in the art. Some of these devices include processors (for example, single or multiple microprocessors), memory, non-volatile memory, input devices, and output devices. In addition, alternative software implementations including but not limited to distributed processing or component / object distributed processing, parallel processing, or virtual machine processing can also be constructed to realize the method described herein.
[0079] In yet another configuration, the disclosed methods can be readily implemented in conjunction with software using an object or object-oriented software development environment that provides portable source code that can be used on a variety of computer or workstation platforms. Alternatively, the disclosed systems can be implemented in part or in whole in hardware using standard logic circuits or VLSI designs. Whether software or hardware is used to implement a system according to the present disclosure depends on the speed and / or efficiency requirements of the system, the specific functionality, and the specific software or hardware systems or microprocessor or microcomputer systems being used.
[0080] In yet another configuration, the disclosed methods may be implemented in part in software, which may be stored on a storage medium and executed on a programmed general-purpose computer in cooperation with a controller and memory, a dedicated computer, a microprocessor, etc. In these cases, the disclosed systems and methods may be implemented as programs embedded on a personal computer, such as applet, or CGI script, as a resource resident on a server or computer workstation, as a routine embedded in a dedicated measurement system, system component, etc. The system may also be implemented by physically incorporating the system and / or method into a software and / or hardware system.
[0081] If described, the present disclosure is not limited to standards and protocols. Other similar standards and protocols not mentioned herein exist and are included in the present disclosure. In addition, the standards and protocols mentioned herein, as well as other similar standards and protocols not mentioned herein, are regularly replaced by faster or more efficient equivalents having substantially the same functions. Such replacement standards and protocols having the same functions are considered equivalents and are included in the present disclosure.
[0082] In various configurations and aspects, the present disclosure includes components, methods, processes, systems and / or devices substantially as depicted and described herein, including various combinations, subcombinations, and subsets thereof. Those skilled in the art will understand how to make and use the systems and methods disclosed herein after understanding the present disclosure. In various configurations and aspects, the present disclosure includes providing devices and processes in the absence of items not depicted and / or described herein or in its various configurations or aspects, including in the absence of such items or processes that may have been used in previous devices, such as to improve performance, achieve simplicity, and / or reduce implementation costs.
[0083] (A1) In one aspect, some examples include a method for rendering a segmentation contour effect. The method includes obtaining, by a computing device, video data comprising one or more video frames, determining, by the computing device, one or more segments in each of the one or more video frames, obtaining, by the computing device, audio data, analyzing, by the computing device, the audio data to determine a beat characteristic of each beat, determining, by the computing device, a segmentation contour effect to be applied to the one or more segments in the video data based on the beat characteristic, and generating, by the computing device, a rendered video by synchronizing the segmentation contour effect with the audio data.
[0084] (A2) In some examples of A1, the segmentation outline effect includes outline effect parameters defining one or more behaviors of the segmentation outline effect to be added to the one or more segments.
[0085] (A3) In some examples of A1-A2, the contour effect parameters define one or more segments to which the segmentation contour effect is applied or how to select the one or more segments for application of the segmentation contour effect in the entire clip video.
[0086] (A4) In some examples of A1-A3, the outline effect parameters define the color, width, height, thickness, and brightness of the segmentation outline of each segment.
[0087] (A5) In some examples of A1-A4, the contour effect parameters define a number of segmentation contours to be added to a specific segment of the video clip based on the beat characteristics.
[0088] (A6) In some examples of A1-A5, generating the rendered video by synchronizing the segmentation contour effect with audio data includes rendering, by the computing device, the segmentation contour effect to a display based on the contour effect parameters.
[0089] (A7) In some examples of A1-A6, the beat feature includes at least one item selected from the group consisting of: beat structure, a repeated sequence of strong beats and weak beats, the number of stressed beats and unstressed beats, and the relative positions of stressed beats and unstressed beats.
[0090] On the other hand, some examples include a computing system comprising one or more processors and a memory coupled to the one or more processors, the memory storing one or more instructions that, when executed by the one or more processors, cause the one or more processors to perform any one of the methods described herein (e.g., A1-A7 above).
[0091] On the other hand, some examples include a non-transitory computer-readable storage medium storing one or more programs executed by one or more processors of a storage device, the one or more programs including instructions for performing any one of the methods described herein (e.g., A1-A7 above).
[0092] (B1) In yet another aspect, some examples include a computing device for rendering a segmentation contour effect. The computing device may include a processor and a memory having a plurality of instructions stored thereon, the instructions, when executed by the processor, causing the computing device to: obtain video data comprising one or more video frames, determine one or more segments in each of the one or more video frames, obtain audio data, analyze the audio data to determine a beat characteristic of each beat, determine a segmentation contour effect to be applied to the one or more segments in the video data based on the beat characteristic, and generate a rendered video by synchronizing the segmentation contour effect with the audio data.
[0093] (B2) In some examples of B1, the segmentation outline effect includes outline effect parameters defining one or more behaviors of the segmentation outline effect to be added to the one or more segments.
[0094] (B3) In some examples of B1-B2, the contour effect parameters define the one or more segments to which the segmentation contour effect is being applied or how the one or more segments are selected for application of the segmentation contour effect in the entire video clip.
[0095] (B4) In some examples of B1-B3, the outline effect parameters define the color, width, height, thickness, and brightness of the segmentation outline of each segment.
[0096] (B5) In some examples of B1-B4, the contour effect parameters define the number of segmentation contours to be added to a specific segment of the video clip based on the beat characteristics.
[0097] (B6) In some examples of B1-B5, generating the rendered video by synchronizing the segmentation contour effect with audio data includes rendering the segmentation contour effect to a display based on the contour effect parameters.
[0098] (B7) In some examples of B1-B6, the beat feature includes at least one item selected from the group consisting of: beat structure, a repeated sequence of strong beats and weak beats, the number of stressed beats and unstressed beats, and the relative positions of stressed beats and unstressed beats.
[0099] (C1) On the one hand, some examples include a non-transitory computer-readable medium storing instructions for rendering a segmentation contour effect, which, when executed by one or more processors of a computing device, causes the computing device to: obtain video data comprising one or more video frames, determine one or more segments in each of the one or more video frames, obtain audio data, analyze the audio data to determine a beat characteristic of each beat, determine a segmentation contour effect to be applied to one or more segments in the video data based on the beat characteristic, and generate a rendered video by synchronizing the segmentation contour effect with the audio data.
[0100] (C2) In some examples of C1, the segmented contour effect includes contour effect parameters that define one or more behaviors of the segmented contour effect to be added to the one or more segments, wherein generating the rendered video by synchronizing the segmented contour effect with audio data includes rendering the segmented contour effect to a display based on the contour effect parameters.
[0101] (C3) In some examples of C1-C2, the contour effect parameters define one or more segments to which the segmentation contour effect is applied or how one or more segments are selected for application of the segmentation contour effect in the entire video clip.
[0102] (C4) In some examples of C1-C3, the outline effect parameters define the color, width, height, thickness, and brightness of the segmentation outline of each segment.
[0103] (C5) In some examples of C1-C4, wherein the contour effect parameter defines a number of segmentation contours to be added to the video clip based on the beat characteristics.
[0104] (C6) In some examples of C1-C5, the beat feature includes at least one item selected from the group consisting of: beat structure, a repeated sequence of strong beats and weak beats, the number of stressed beats and unstressed beats, and the relative positions of stressed beats and unstressed beats.
[0105] For example, various aspects of the present disclosure are described above with reference to block diagrams and / or operational diagrams of methods, systems, and computer program products according to various aspects of the present disclosure. The functions / actions noted in the blocks may not occur in the order shown in any flowchart. For example, depending on the functions / actions involved, two blocks shown in succession may actually be executed substantially simultaneously, or the blocks may sometimes be executed in the reverse order.
[0106] The description and explanation of one or more aspects provided in this application are not intended to limit or restrict the scope of the claimed disclosure in any way. The aspects, examples and details provided in this application are considered to be sufficient to convey ownership and enable others to make and use the best mode of the claimed disclosure. The claimed disclosure should not be interpreted as being limited to any aspect, example or details provided in this application. No matter whether it is combined or shown and described individually, various features (structural and methodological) are intended to be selectively included or omitted, to produce an embodiment with a specific feature set. Description and explanation of the application have been provided, and those skilled in the art can envision that without departing from the broader scope of the claimed disclosure, the changes, modifications and alternative aspects that fall within the spirit of the broader aspects of the overall inventive concept embodied in this application, these changes, modifications and alternative aspects.
Claims
1. A method for rendering a segmentation contour effect, the method comprising: Obtaining, by a computing device, video data comprising one or more video frames; determining, by the computing device, one or more body segments of one or more target subjects in each of the one or more video frames; obtaining audio data by the computing device; analyzing, by the computing device, the audio data to determine a beat characteristic of each beat; determining, by the computing device, a segmentation contour effect to be applied to the one or more body segments in the video data based on the beat feature, wherein the segmentation contour effect includes contour effect parameters, the contour effect parameters defining how the one or more body segments are selected for application of the segmentation contour effect in the entire clip video, and the segmentation contour outlines a boundary of a first body segment in the one or more body segments based on the beat feature and moves to outline a boundary of a second body segment in the one or more body segments; and A rendered video is generated by the computing device by synchronizing the segmentation contour effect with audio data. 2 . The method of claim 1 , wherein the contour effect parameters define one or more behaviors of the segmentation contour effect to be added to the one or more body segments. 3 . The method of claim 2 , wherein the contour effect parameters define one or more body segments to which the segmented contour effect is being applied. 4 . The method according to claim 2 , wherein the contour effect parameters define the color, width, height, thickness and brightness of the segmentation contour of each body segment. 5 . The method of claim 2 , wherein the contour effect parameters define a number of segmented contours to be added to a specific body segment of the video clip based on the beat signature. 6 . The method of claim 2 , wherein generating the rendered video by synchronizing the segmentation contour effect with audio data comprises rendering, by the computing device, the segmentation contour effect to a display based on the contour effect parameters.
7. The method of claim 1, wherein the beat characteristics include at least one item selected from the group consisting of: beat structure, a repetitive sequence of strong beats and weak beats, the number of stressed beats and unstressed beats, and the relative positions of stressed beats and unstressed beats.
8. A computing device for rendering a segmentation contour effect, the computing device comprising: processor; as well as a memory having a plurality of instructions stored thereon that, when executed by the processor, cause the computing device to: Obtaining video data comprising one or more video frames; determining one or more body segments of one or more target subjects in each of the one or more video frames; Get audio data; analyzing the audio data to determine a beat characteristic of each beat; determining a segmentation contour effect to be applied to the one or more body segments in the video data based on the beat feature, wherein the segmentation contour effect includes contour effect parameters, the contour effect parameters defining how the one or more body segments are selected for application of the segmentation contour effect in the entire clip video, and the segmentation contour outlines a boundary of a first body segment in the one or more body segments based on the beat feature and moves to outline a boundary of a second body segment in the one or more body segments; and A rendered video is generated by synchronizing the segmentation contour effect with audio data.
9. The computing device of claim 8, wherein the contour effect parameters define one or more behaviors of the segmentation contour effect to be added to the one or more body segments.
10. The computing device of claim 9, wherein the contour effect parameters define one or more body segments to which the segmented contour effect is being applied.
11. The computing device of claim 9, wherein the contour effect parameters define a color, width, height, thickness, and brightness of the segmentation contour of each body segment. 12 . The computing device of claim 9 , wherein the contour effect parameters define a number of segmented contours to be added to a particular body segment of the video clip based on the beat signature.
13. The computing device of claim 9, wherein generating the rendered video by synchronizing the segmentation contour effect with audio data comprises rendering the segmentation contour effect to a display based on the contour effect parameters.
14. The computing device of claim 8, wherein the beat characteristics comprise at least one item selected from the group consisting of: beat structure, a repeating sequence of strong and weak beats, a number of stressed and unstressed beats, and a relative position of stressed and unstressed beats.
15. A non-transitory computer-readable medium storing instructions for rendering a segmentation contour effect, the instructions, when executed by one or more processors of a computing device, causing the computing device to: Obtaining video data comprising one or more video frames; determining one or more body segments of one or more target subjects in each of the one or more video frames; Get audio data; analyzing the audio data to determine a beat characteristic of each beat; determining a segmentation contour effect to be applied to the one or more body segments in the video data based on the beat feature, wherein the segmentation contour effect includes contour effect parameters, the contour effect parameters defining how the one or more body segments are selected for application of the segmentation contour effect in the entire clip video, and the segmentation contour outlines a boundary of a first body segment in the one or more body segments based on the beat feature and moves to outline a boundary of a second body segment in the one or more body segments; and A rendered video is generated by synchronizing the segmentation contour effect with audio data.
16. A non-transitory computer-readable medium according to claim 15, wherein the contour effect parameters define one or more behaviors of the segmented contour effect to be added to the one or more body segments, wherein generating the rendered video by synchronizing the segmented contour effect with audio data includes rendering the segmented contour effect to a display based on the contour effect parameters.
17. The non-transitory computer-readable medium of claim 16, wherein the contour effect parameters define one or more body segments to which the segmentation contour effect is being applied.
18. The non-transitory computer-readable medium of claim 16, wherein the contour effect parameters define a color, width, height, thickness, and brightness of the segmentation contour of each body segment.
19. The non-transitory computer-readable medium of claim 16, wherein the contour effect parameters define a number of segmentation contours to be added to the video clip based on the beat signature.
20. The non-transitory computer-readable medium of claim 15, wherein the beat characteristics include at least one item selected from the group consisting of: beat structure, a repeating sequence of strong beats and weak beats, the number of stressed beats and unstressed beats, and the relative positions of stressed beats and unstressed beats.
Citation Information
Patent Citations
Image processing method and device and hardware device
CN110070896A