Panoramic video editing method and device, computer equipment and storage medium

By determining the static viewing angle points and performing curve fitting, the problem of troublesome and jitter in panoramic video editing is solved, achieving a more efficient and smooth video editing process.

CN119854567APending Publication Date: 2025-04-18LABPANO TECHNOLOGY (CHANGZHOU) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411686599.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-22
Publication Date
2025-04-18

AI Technical Summary

Technical Problem

When editing panoramic videos, since the terminal or monitor can only display one viewing angle, the user needs to constantly adjust the viewing angle manually, which is troublesome, which reduces the speed of video editing. At the same time, the edited video has the problem of jitter and not smooth jitter.

Method used

By acquiring and displaying panoramic videos, receiving control instructions to determine the viewing angle point, determining the stationary viewing angle point according to the change amplitude of viewing angle parameters, performing curve fitting to obtain the viewing angle curve, and editing the panoramic video based on the viewing angle curve.

Benefits of technology

It improves the speed and fluency of panoramic video editing, eliminates viewing angle shaking, and improves the user's editing experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119854567A_ABST
    Figure CN119854567A_ABST
Patent Text Reader

Abstract

The invention relates to a panoramic video editing method and device, computer equipment and a storage medium. The method comprises the following steps: acquiring and displaying a panoramic video; receiving a control instruction for controlling the computer equipment, and determining a visual angle point in the process of displaying the panoramic video by the computer equipment based on the control instruction; determining a static visual angle point in the process of displaying the panoramic video according to the variation amplitude of the visual angle parameter corresponding to the visual angle point; performing curve fitting on the basis of the static visual angle point and the visual angle point to obtain a visual angle curve; and editing the panoramic video based on the view angle curve to obtain an editing result. By adopting the method, jitter of the edited video can be avoided, so that smooth display is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of video editing, and in particular to a method, device, computer equipment, and storage medium for editing panoramic videos. Background Art

[0002] With the continuous development of the panoramic field, users usually edit panoramic videos after shooting them. However, during the editing process, since panoramic videos are videos shot in all directions and 360 degrees using panoramic cameras, users can watch dynamic videos within the shooting angle range of the panoramic camera at will. During the editing process, when watching panoramic videos, since the terminal or display can only display the image of one perspective of the panoramic video at a certain time, it will cause difficulties in editing. Users need to constantly adjust the perspective manually, which is troublesome and will reduce the speed of video editing.

[0003] Watching panoramic videos through virtual devices and then editing them can greatly improve the viewing experience. However, since the user's head does not turn smoothly when wearing the virtual device, the edited video will be jittery and not smooth. Summary of the invention

[0004] Based on this, it is necessary to provide a panoramic video editing method, device, computer equipment, and storage medium to address the above technical problems.

[0005] In a first aspect, the present disclosure provides a method for editing a panoramic video. Applied to a computer device, the method comprises:

[0006] Acquire and display panoramic video;

[0007] receiving a control instruction for controlling the computer device, and determining a viewing point in a process in which the computer device displays the panoramic video based on the control instruction;

[0008] Determining a stationary viewing point in the process of displaying the panoramic video according to a change amplitude of the viewing angle parameter corresponding to the viewing angle point;

[0009] Performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0010] The panoramic video is edited based on the viewing angle curve to obtain an editing result.

[0011] In one of the embodiments, determining the stationary viewpoint in the process of displaying the panoramic video according to the change amplitude of the viewpoint parameter corresponding to the viewpoint includes:

[0012] Clustering the view points according to the view parameters corresponding to the view points to determine at least one clustering result;

[0013] A stationary viewing point in the process of displaying the panoramic video is determined according to a cluster center of the at least one clustering result.

[0014] In one of the embodiments, determining the stationary viewpoint in the process of displaying the panoramic video according to the change amplitude of the viewpoint parameter corresponding to the viewpoint includes:

[0015] Generating a change curve of the viewing point over time according to the viewing angle parameter corresponding to the viewing point and the display time corresponding to the viewing point;

[0016] The slope of the change curve is determined, and a stationary viewpoint during display of the panoramic video is determined at least based on the slope of the change curve.

[0017] In one of the embodiments, performing curve fitting based on the static viewing point and the viewing point to obtain the viewing angle curve includes:

[0018] Determining a display time point that matches the static viewpoint, and determining a start time point and an end time point for displaying the panoramic video;

[0019] Determining a plurality of curve fitting intervals according to the display time point corresponding to the static viewing point, the start time point and the end time point;

[0020] Performing curve fitting on the viewing angle points in the curve fitting interval to obtain a viewing angle interval curve;

[0021] The viewing angle interval curves are connected to obtain a viewing angle curve.

[0022] In one of the embodiments, when the number of the stationary viewpoints is greater than a preset number threshold, after determining the stationary viewpoints in the process of displaying the panoramic video, the method further includes:

[0023] Identifying a region of interest in the panoramic video corresponding to the stationary viewpoint;

[0024] Determining a characteristic value of the region of interest, and screening the stationary viewpoints based on the characteristic value;

[0025] and / or;

[0026] Identify the viewing angle dwell time of the stationary viewing angle;

[0027] The static viewing point is screened according to the viewing angle dwell time.

[0028] In one embodiment, the method further comprises:

[0029] Calculating the minimum distance between each viewing point and the viewing curve;

[0030] Filter the viewpoints according to the minimum distance to obtain a target viewpoint;

[0031] Performing a curve quadratic fitting based on the target viewing point and the viewing point to obtain a target viewing angle curve;

[0032] The panoramic video is edited based on the target viewing angle curve to obtain an editing result.

[0033] In a second aspect, the present disclosure further provides a panoramic video editing method, which is applied to a terminal device, wherein the terminal device is connected to a computer device; the method comprises:

[0034] Acquire and display panoramic video;

[0035] receiving a control instruction transmitted by the computer device, and determining a viewing point in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device;

[0036] Determining a stationary viewing point in the process of displaying the panoramic video according to a change amplitude of the viewing angle parameter corresponding to the viewing angle point;

[0037] Performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0038] The panoramic video is edited based on the viewing angle curve to obtain an editing result.

[0039] In a third aspect, the present disclosure further provides a panoramic video editing device. Applied to a computer device, the device comprises:

[0040] A video acquisition module is used to acquire and display panoramic videos;

[0041] A viewpoint determination module, configured to receive a control instruction for controlling the computer device, and determine a viewpoint in a process in which the computer device displays the panoramic video based on the control instruction;

[0042] A stationary viewing point determination module, used to determine a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing point;

[0043] A curve fitting module, used for performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0044] The editing module is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

[0045] In a fourth aspect, the present disclosure further provides a panoramic video editing device, which is applied to a terminal device, and the terminal device is connected to a computer device; the method includes:

[0046] A panoramic video acquisition module is used to acquire and display panoramic videos;

[0047] An instruction receiving module, used for receiving control instructions transmitted by the computer device;

[0048] A viewpoint determination module, configured to determine a viewpoint in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device; and to determine a stationary viewpoint in the process of displaying the panoramic video according to a variation range of a viewpoint parameter corresponding to the viewpoint;

[0049] A fitting module, used for performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0050] The video editing module is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

[0051] In a fifth aspect, the present disclosure further provides a computer device, wherein the computer device comprises a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps in any of the above method embodiments are implemented.

[0052] In a sixth aspect, the present disclosure further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0053] In a seventh aspect, the present disclosure further provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.

[0054] In the above embodiments, a panoramic video is acquired and displayed, a control instruction for controlling the computer device is received, and a viewing point in the process of displaying the panoramic video on the computer device is determined based on the control instruction. The viewing angle of the current panoramic video can be determined by the viewing point. Under normal circumstances, the physiological swing of the head, the measurement noise of the viewing angle parameters of the viewing point, etc., will eventually cause jitter in the viewing angle of the panoramic video. Therefore, in order to eliminate the jitter, the static viewing point in the process of displaying the panoramic video can be determined according to the change amplitude of the viewing angle parameters corresponding to the viewing point, so as to determine the static viewing point with the smallest jitter, and then curve fitting is performed based on the static viewing point and the viewing point to obtain a viewing angle curve. Finally, the panoramic video is edited according to the viewing angle curve to obtain an editing result, so that the final video is smoother when the viewing angle changes, and the edited video is smoother. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] In order to more clearly illustrate the specific embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the specific embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0056] Figure 1 A schematic diagram of an application environment of a panoramic video editing method in one embodiment;

[0057] Figure 2 1 is a flow chart of a method for editing a panoramic video in one embodiment;

[0058] Figure 3 A schematic diagram of a flow chart of step S206 in an embodiment;

[0059] Figure 4 Another schematic diagram of a flow chart of step S206 in one embodiment;

[0060] Figure 5 A schematic diagram of a flow chart of a change curve in an embodiment;

[0061] Figure 6 This is a schematic diagram of the process of step S208 in one embodiment;

[0062] Figure 7 A schematic flow chart of the steps of selecting a static viewing point in one embodiment;

[0063] Figure 8 A schematic diagram of a flow chart of the steps of selecting a viewing point in one embodiment;

[0064] Fig. 9is a flow chart of another panoramic video editing method in one embodiment;

[0065] Fig.10 is a schematic block diagram of the structure of a panoramic video editing device in one embodiment;

[0066] Fig.11 is a schematic block diagram of the structure of a panoramic video editing device in one embodiment;

[0067] Fig.12 Schematic diagram of the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0068] In order to make the purpose, technical solution and advantages of the present disclosure more clear, the present disclosure is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present disclosure and are not used to limit the present disclosure.

[0069] It should be noted that the terms "first", "second", etc. in the specification and claims of this article and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of this article described here can be implemented in an order other than those illustrated or described here. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, device, product or equipment that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or equipment.

[0070] In this article, the term "and / or" is only a description of the association relationship between related objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the related objects before and after are in an "or" relationship.

[0071] The present disclosure provides a method for editing panoramic videos, which can be applied to Figure 1In the application environment shown. Among them, the computer device 102 communicates with the server 104 or the panoramic camera 106 through the network. The data storage system can store the data that the server 104 needs to store or the data captured by the panoramic camera 106. The data storage system can be integrated on the server 104, or it can be placed on the cloud or other network servers. The computer device 102 can obtain and display the panoramic video in the server 104 or the panoramic camera 106. The computer device 102 can receive the user's control instruction to the computer device 102, and determine the viewing point in the process of displaying the panoramic video on the computer device based on the control instruction. The computer device 102 determines the static viewing point in the process of displaying the panoramic video according to the change amplitude of the viewing angle parameter corresponding to the viewing angle. The computer device 102 performs curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve. The computer device 102 edits the panoramic video based on the viewing angle curve to obtain an editing result. Among them, the computer device 102 can be but not limited to a portable wearable device. The portable wearable device can be a head-mounted device, etc. The server 104 can be implemented with an independent server or a server cluster consisting of multiple servers.

[0072] In one embodiment, Figure 2 As shown, a panoramic video editing method is provided, and the method is applied to Figure 1 The computer device 102 in the example is used as an example to illustrate, and the following steps are included:

[0073] S202, acquiring and displaying a panoramic video.

[0074] Specifically, the computer device can be connected to the server or the panoramic camera to obtain and display the panoramic video in the server or the panoramic camera, thereby completing the subsequent video editing work.

[0075] S204, receiving a control instruction for controlling the computer device, and determining a viewing point in a process in which the computer device displays the panoramic video based on the control instruction.

[0076] Among them, the control instruction can usually be the direction of the head rotation. For example, the computer device is a VR head-mounted device. After the user wears the computer device, he can turn his head to adjust the viewing angle. At this time, the head-mounted device detects the user's head rotation, and the head rotation can be a control instruction. The computer device is a tablet computer. The user can slide his hand in the tablet computer to adjust the viewing angle. At this time, the sliding instruction of the user detected by the tablet computer can be a control instruction. It should be noted that the type of control instruction is different depending on the type of computer device. In some embodiments of the present disclosure, the type of control instruction is not limited. In a virtual reality (VR) device, the viewpoint (also called viewpoint or viewpoint) refers to the position and direction in which the user observes the content in three-dimensional space. Specifically, the viewpoint determines the picture currently seen by the user and their "field of view" in the virtual environment. When a user watches a panoramic video in VR, the device dynamically adjusts the viewpoint by tracking the user's head movement and line of sight direction. In other computing devices, such as tablet computers, the viewpoint can be the center point of the panoramic video currently displayed by the tablet computer.

[0077] Specifically, the user can control the computer device. For example, if there is a touch screen in the computer device, the user can use the touch screen to output control instructions to the computer device. If the computer device supports voice control, the user can also input voice-type control instructions to the computer device. If there is a gyroscope in the computer device, the user can also move the computer device, thereby using the gyroscope to measure the angular velocity and direction of the movement of the computer device. After receiving the control instruction, the computer device can parse the control instruction and determine the viewing point of the user in the process of watching the panoramic video using the computer device according to the parsed control instruction.

[0078] S206: Determine a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing angle point.

[0079] Among them, the perspective parameters corresponding to the viewpoint mainly include the following key elements: Position coordinates: This is usually expressed in three-dimensional coordinates (x, y, z), which defines the specific position of the user in the virtual environment. Orientation direction: The orientation of the viewpoint is usually expressed by three rotation angles, usually called pitch, yaw and roll: Pitch: Indicates the angle of up and down tilt. Yaw: Indicates the angle of left and right rotation. Roll: Indicates the rotation around its own axis, which is usually not commonly used in VR environments. Field of View (FOV): Indicates the range of viewing angles that the user can see, usually expressed in degrees. It affects the user's perception in the virtual environment. Near clipping plane and far clipping plane: These two parameters define the range of the cone of view. The near clipping plane is the minimum distance from the user to the visible object in the field of view, and the far clipping plane is the maximum distance of the visible object. In some embodiments of the present disclosure, the perspective parameter may refer to any one of the three-dimensional coordinates (x, y, z). These perspective parameters work together to enable the VR device to create an immersive experience for the user. As the user moves and turns his head, the picture adjusts in real time, thereby enhancing the sense of reality. In some embodiments of the present disclosure, a stationary perspective point may refer to a perspective point that stays for a long time.

[0080] Specifically, the viewing parameters corresponding to each viewing point can be determined first, and the relative change relationship between the viewing points can be determined based on the change range of the viewing parameters, so as to find several areas with smaller change ranges, and then the static viewing points can be determined from the viewing points in these areas.

[0081] S208, performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve.

[0082] Curve fitting is a statistical analysis method used to describe trends or relationships in a data set through a mathematical model. Its main purpose is to find a mathematical function that represents the distribution or trend of a given data set as closely as possible.

[0083] Specifically, the static viewpoints and the viewpoints may be used to perform curve fitting. The curve fitting may use numerical methods such as the least square method to calculate model parameters so as to minimize the error between the fitting curve and the data points.

[0084] S210, editing the panoramic video based on the viewing angle curve to obtain an editing result.

[0085] Specifically, the viewing angle may be determined according to the viewing angle curve, so as to find a local plane picture in the panoramic video corresponding to the viewing angle, and automatically synthesize the local plane picture into an edited plane video.

[0086] In the above-mentioned panoramic video editing method, a panoramic video is acquired and displayed, a control instruction for controlling the computer device is received, and a viewpoint in the process of displaying the panoramic video on the computer device is determined based on the control instruction. The viewpoint of the current panoramic video can be determined by the viewpoint. Under normal circumstances, the physiological swing of the head, the measurement noise of the viewpoint parameters of the viewpoint, etc., will eventually cause the viewpoint of the panoramic video to be jittery. Therefore, in order to eliminate the jitter, the static viewpoint in the process of displaying the panoramic video can be determined according to the change amplitude of the viewpoint parameters corresponding to the viewpoint, so as to determine the static viewpoint with the smallest jitter, and then curve fitting is performed based on the static viewpoint and the viewpoint to obtain a viewpoint curve. Finally, the panoramic video is edited according to the viewpoint curve to obtain an editing result, so that the final video is smoother when the viewpoint changes, and the edited video is smoother.

[0087] In one embodiment, Figure 3 As shown, the step of determining a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing angle point includes:

[0088] S302: Cluster the view points according to the view parameters corresponding to the view points, and determine at least one clustering result.

[0089] Among them, clustering is a data analysis technology used to group a group of objects (data points) so that the objects in the same group have similarities to some extent, while the objects between different groups have greater differences.

[0090] Specifically, it is assumed that there are multiple viewing points (each viewing point has corresponding viewing parameters, such as position coordinates and direction parameters), and it is hoped to find similar viewing points through clustering. View parameters may include, for example: position coordinates (x, y, z), pitch, yaw, and roll. The data of multiple viewing points are organized into a matrix or data frame containing parameters. A clustering algorithm is selected, such as K-Means, DBSCAN, or hierarchical clustering, etc. The K-Means algorithm is used as an example in this embodiment. By standardizing the position coordinates and angles, it is ensured that parameters under different dimensions will not have too much impact on the clustering results. Select a suitable K value (the number of clusters), which can be found by methods such as the Elbow Method or the Silhouette Score. Use K-Means for clustering. Each viewing parameter will be assigned a label to indicate the cluster to which it belongs (clustering result).

[0091] S304: Determine a stationary viewing point during display of the panoramic video according to a cluster center of the at least one clustering result.

[0092] Specifically, the cluster center of each clustering result may be determined, the viewing angle parameter corresponding to the cluster center may be determined, and the viewing angle point matching the viewing angle parameter may be found, and the viewing angle point matching the viewing angle parameter may be determined as the stationary viewing angle point.

[0093] In this embodiment, the viewpoints are clustered through a clustering algorithm, the similarities between the viewpoints can be analyzed, and similar viewpoints can be divided into a clustering result, which can ensure that the viewpoint parameters in the clustering result change little, so that the static viewpoint can be accurately found according to the cluster center of the clustering result, thereby ensuring the stability of the video editing.

[0094] In one embodiment, Figure 4 As shown, the step of determining a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing angle point includes:

[0095] S402: Generate a curve showing the change of the viewing angle parameter of the viewing point over time according to the viewing angle parameter corresponding to the viewing point and the display time corresponding to the viewing point.

[0096] S404: Determine the slope of the change curve, and determine a stationary viewpoint during display of the panoramic video at least based on the slope of the change curve.

[0097] Specifically, the time corresponding to each viewing point can be determined, and then the horizontal axis is used as the time and the vertical axis is used as the viewing parameter, so as to generate a change curve of the viewing parameter of the viewing point over time. The slope of the change curve is determined. The smaller the slope of the change curve, the smaller the change amplitude of the viewing parameter. Therefore, the static viewing point can be determined according to the slope of the change curve.

[0098] In some exemplary embodiments, Figure 5 As shown, A, B, C, D, and E are five viewing points, forming four changing curves, namely AB, BC, CD, and DE. Among them, the slope between DE is the smallest, so D or E can be a static viewing point.

[0099] In this embodiment, the static viewing point is determined by the slope, and the static viewing point can also be found accurately, thereby ensuring the stability of the video clip.

[0100] In one embodiment, Figure 6 As shown, the curve fitting is performed based on the static viewing point and the viewing point to obtain the viewing angle curve, including:

[0101] S502, determining a display time point that matches the static viewpoint, and determining a start time point and an end time point for displaying the panoramic video.

[0102] The display time point may be the time point at which the static viewing point appears.

[0103] Specifically, after the static viewpoint is determined, the display time point corresponding to the static viewpoint can be determined. The starting time point when the computer device starts to display the panoramic video and the ending time point when the computer device stops displaying the panoramic video can also be determined.

[0104] S504: Determine a plurality of curve fitting intervals according to the display time point corresponding to the static viewing point, the start time point and the end time point.

[0105] Specifically, when there is only one static viewing point, a curve fitting interval can be determined according to the starting time point and the display time point, and then another curve fitting interval can be determined according to the display time point and the end time point.

[0106] When there are multiple static viewpoints, the static viewpoints are first sorted in chronological order according to the display time points, with the longer ones being arranged at the end. Then, the first curve fitting interval is determined according to the starting time point and the first-ranked display time point. Then, at least one curve fitting interval is determined according to the sorted display time points, and the last curve fitting interval is determined according to the last-ranked display time point and the end time point.

[0107] In some exemplary embodiments, for example, the initial time point is A, the display time points of the static viewing point include: B1, B2 and B3, and the end time point is C, then the first curve fitting interval can be determined between AB1, the second curve fitting interval can be determined between B1 and B2, the third curve fitting interval can be determined between B2 and B3, and the fourth curve fitting interval can be determined between B3 and C.

[0108] S506, performing curve fitting on the viewing angle points in the curve fitting interval to obtain a viewing angle interval curve.

[0109] Specifically, after determining the curve fitting interval, the viewing angle points in the curve fitting interval may be determined, and then curve fitting is performed on the viewing angle points in the fitting interval to obtain a viewing angle interval curve that matches the curve fitting curve.

[0110] S508: Connect the viewing angle interval curve according to the display time point corresponding to the static viewing angle point, the start time point and the end time point to obtain a viewing angle curve.

[0111] Specifically, the intervals of each viewing angle curve interval may be connected according to the display time point, the start time point and the end time point, so as to obtain a complete viewing angle curve.

[0112] In this embodiment, the viewing angle interval curve is determined by the display time point of the static viewing angle point.

[0113] In one embodiment, when the number of the stationary viewpoints is greater than a preset number threshold, such as Figure 7 As shown, after determining the stationary viewpoint in the process of displaying the panoramic video, the method further includes:

[0114] S602: Identify an area of ​​interest in the panoramic video corresponding to the static viewpoint.

[0115] S604: Determine a characteristic value of the region of interest, and filter the stationary viewpoints based on the characteristic value.

[0116] Specifically, the rotation process is not thought about in advance. Sometimes there will be hesitation. Sometimes you will see a partial picture that you don't like very much and then move your view away. However, at this time, the viewpoint of the hesitation process may be determined as a static viewpoint, thereby determining a relatively large number of static viewpoints. When the number of static viewpoints is large, when obtaining the viewpoint curve, there may be too many segments, which may cause the viewpoint curve to be unsmooth, resulting in an unsmooth final edited video. Therefore, the region of interest in the panoramic video corresponding to each static viewpoint can be identified. Usually, since the panoramic video is 360°, the region of interest of 360° will not be identified (this will reduce processing efficiency). Each static field of view angle can be used as the center to identify the region of interest within a preset angle range of the static field of view angle. Usually, the preset angle range will be less than 180 and greater than 100°. After identifying the region of interest corresponding to each static field of view angle, the feature value of each region of interest can be calculated. For example, the features of each region of interest (such as edges, textures, colors, etc.) can be extracted, and the distinction and information content of these features can be evaluated using a machine learning algorithm to determine the feature value of each region of interest. Then, the regions of interest are screened according to the eigenvalues, and the regions of interest with larger eigenvalues ​​are retained. Then, the static viewpoints to be retained are determined based on the regions of interest with larger eigenvalues, thereby completing the screening of the static viewpoints.

[0117] and / or,

[0118] S606: Identify the viewing angle dwell time of the stationary viewing angle.

[0119] S608: Filter the static viewpoints according to the viewpoint dwell time.

[0120] Specifically, it is also possible to identify the user's viewing time at each static viewing point. When the viewing time is long, it can be determined that the user is more interested in this place, and the static viewing point is retained. When the viewing time is short, it can be determined that the user is not particularly interested in this place, and the static viewing point can be screened out. It should be noted that the duration of the static viewing point can be compared with the time threshold for judgment. The time threshold can be set according to actual needs, and in some embodiments of the present disclosure, the time threshold is not limited.

[0121] In this embodiment, by screening the static viewpoints, the static viewpoints that do not meet the requirements can be removed, thereby ensuring that the curvature of each segment of the fitted curve is smooth and ensuring the effect of video editing.

[0122] In one embodiment, Figure 8 As shown, the method also includes:

[0123] S702: Calculate the minimum distance between each viewing point and the viewing curve.

[0124] S704: Filter the viewpoints according to the minimum distance to obtain a target viewpoint.

[0125] S706: Perform a curve quadratic fitting based on the target viewing point and the static viewing point to obtain a target viewing angle curve.

[0126] S708: Edit the panoramic video based on the target viewing angle curve to obtain an editing result.

[0127] Specifically, since the head may shake a little in the process of determining the viewing point, there will be some viewing points that affect the viewing curve. The minimum distance between each viewing point and the viewing curve can be calculated first, and then the viewing points can be screened according to the minimum distance and the preset distance threshold, and the viewing points corresponding to the minimum distance greater than the preset distance threshold are deleted to obtain the target viewing point. Then, the target viewing point and the static viewing point are subjected to a curve quadratic fit to obtain the target viewing curve. The panoramic video is edited based on the target viewing curve to obtain an editing result. It should be noted that the process of quadratic fitting and the editing process can be referred to the above embodiments, and will not be repeated here.

[0128] In this embodiment, by screening the viewpoints, outliers to be removed can be identified, and outliers affected by small head shaking can be better removed, thereby ensuring the smoothness of the editing.

[0129] In one embodiment, Fig. 9As shown, the embodiment of the present disclosure also provides another panoramic video editing method, which is described by taking the method applied to a terminal device as an example. The terminal device can be a panoramic camera, a mobile phone, or other device, including the following steps:

[0130] S802, acquiring and displaying a panoramic video.

[0131] S804, receiving a control instruction transmitted by the computer device, and determining a viewing point in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device.

[0132] S806: Determine a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing angle point.

[0133] S808: Perform curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve.

[0134] S810: Edit the panoramic video based on the viewing angle curve to obtain an editing result.

[0135] It should be noted that the specific implementation methods and limitations of this embodiment can be found in the above embodiments. The only difference from the above embodiments is that the execution subject in this embodiment is a terminal device, and this method can be executed in the terminal device.

[0136] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0137] Based on the same inventive concept, the disclosed embodiment also provides a panoramic video editing device for implementing the panoramic video editing method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more panoramic video editing device embodiments provided below can refer to the limitations of the panoramic video editing method above, and will not be repeated here.

[0138] In one embodiment, Fig.10As shown, a panoramic video editing device 900 is provided, comprising: a video acquisition module 902, a viewpoint determination module 904, a static viewpoint determination module 906, a curve fitting module 908 and an editing module 910, wherein:

[0139] The video acquisition module 902 is used to acquire and display the panoramic video;

[0140] A viewpoint determination module 904, configured to receive a control instruction for controlling the computer device, and determine a viewpoint in a process in which the computer device displays the panoramic video based on the control instruction;

[0141] A stationary viewpoint determination module 906, configured to determine a stationary viewpoint in the process of displaying the panoramic video according to a variation range of a viewpoint parameter corresponding to the viewpoint;

[0142] A curve fitting module 908, configured to perform curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0143] The editing module 910 is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

[0144] In one embodiment of the device, the static viewpoint determination module 906 is further used to cluster the viewpoints according to the viewpoint parameters corresponding to the viewpoints to determine at least one clustering result; and determine the static viewpoints in the process of displaying the panoramic video based on the cluster center of the at least one clustering result.

[0145] In one embodiment of the device, the static viewpoint determination module 906 is further used to generate a change curve of the viewpoint over time according to the viewpoint parameters corresponding to the viewpoint and the display time corresponding to the viewpoint; determine the slope of the change curve, and determine the static viewpoint in the process of displaying the panoramic video at least based on the slope of the change curve.

[0146] In one embodiment of the device, the curve fitting module 908 is further used to determine the display time point that matches the static viewing point, and determine the start time point and the end time point for displaying the panoramic video; determine multiple curve fitting intervals according to the display time point corresponding to the static viewing point, the start time point and the end time point; perform curve fitting on the viewing point located in the curve fitting interval to obtain a viewing interval curve; connect the viewing interval curve according to the display time point corresponding to the static viewing point, the start time point and the end time point to obtain a viewing curve.

[0147] In one embodiment of the device, when the number of the static viewpoints is greater than a preset threshold value, the device further includes: a static viewpoint screening module, used to identify the area of ​​interest in the panoramic video corresponding to the static viewpoint; determine the characteristic value of the area of ​​interest, and screen the static viewpoints based on the characteristic value; and / or; identify the viewpoint dwell time of the static viewpoint; and screen the static viewpoint according to the viewpoint dwell time.

[0148] In one embodiment of the device, the device also includes: a viewpoint screening module, used to calculate the minimum distance between each viewpoint and the viewpoint curve; screening the viewpoints according to the minimum distance to obtain a target viewpoint; performing a quadratic curve fitting based on the target viewpoint and the static viewpoint to obtain a target viewpoint curve; and editing the panoramic video based on the target viewpoint curve to obtain an editing result.

[0149] In one embodiment, Fig.11 As shown, the present disclosure also provides a panoramic video editing device 1000, which is applied to a terminal device, and the terminal device is connected to a computer device; the method includes:

[0150] A panoramic video acquisition module 1002 is used to acquire and display a panoramic video;

[0151] An instruction receiving module 1004 is used to receive a control instruction transmitted by the computer device;

[0152] A viewpoint determination module 1006 is used to determine a viewpoint in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device; and to determine a stationary viewpoint in the process of displaying the panoramic video according to a change range of a viewpoint parameter corresponding to the viewpoint;

[0153] A fitting module 1008, configured to perform curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve;

[0154] The video editing module 1010 is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

[0155] Each module in the above-mentioned panoramic video editing device can be implemented in whole or in part by software, hardware, or a combination thereof. Each of the above-mentioned modules can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each of the above modules.

[0156] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Fig.12 As shown. The computer device includes a processor, a memory, a communication interface, a display screen and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be achieved through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a method for editing a panoramic video is implemented. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covered on the display screen, or a button, a trackball or a touchpad set on the computer device housing, or an external keyboard, touchpad or mouse, etc.

[0157] Those skilled in the art will understand that Fig.12 The structure shown in the figure is only a block diagram of a part of the structure related to the scheme of the present disclosure, and does not constitute a limitation on the computer device to which the scheme of the present disclosure is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0158] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above-mentioned method embodiments when executing the computer program.

[0159] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.

[0160] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.

[0161] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided by the present disclosure can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided by the present disclosure may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited thereto. The processor involved in each embodiment provided by the present disclosure may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited thereto.

[0162] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0163] The above-described embodiments only express several implementation methods of the present disclosure, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present invention. It should be pointed out that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present disclosure, and these all belong to the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure shall be subject to the attached claims.

Claims

1. A panoramic video editing method, characterized in that: Applied to a computer device, the method comprises: Acquire and display panoramic video; receiving a control instruction for controlling the computer device, and determining a viewing point in a process in which the computer device displays the panoramic video based on the control instruction; Determining a stationary viewing point in the process of displaying the panoramic video according to a change amplitude of the viewing angle parameter corresponding to the viewing angle point; Performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve; The panoramic video is edited based on the viewing angle curve to obtain an editing result.

2. The method according to claim 1, characterized in that The step of determining a stationary viewing point in the process of displaying the panoramic video according to a change range of the viewing angle parameter corresponding to the viewing angle point includes: Clustering the view points according to the view parameters corresponding to the view points to determine at least one clustering result; A stationary viewing point in the process of displaying the panoramic video is determined according to a cluster center of the at least one clustering result.

3. The method according to claim 1, characterized in that The step of determining a stationary viewing point in the process of displaying the panoramic video according to a change range of the viewing angle parameter corresponding to the viewing angle point includes: Generating a change curve of the viewing point over time according to the viewing angle parameter corresponding to the viewing point and the display time corresponding to the viewing point; The slope of the change curve is determined, and a stationary viewpoint during display of the panoramic video is determined at least based on the slope of the change curve.

4. The method according to claim 1 or 2, characterized in that: The performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve comprises: Determining a display time point that matches the static viewpoint, and determining a start time point and an end time point for displaying the panoramic video; Determining a plurality of curve fitting intervals according to the display time point corresponding to the static viewing point, the start time point and the end time point; Performing curve fitting on the viewing angle points in the curve fitting interval to obtain a viewing angle interval curve; The viewing angle interval curve is connected according to the display time point corresponding to the static viewing angle point, the starting time point and the ending time point to obtain a viewing angle curve.

5. The method according to claim 1 or 2, characterized in that: When the number of the stationary viewpoints is greater than a preset number threshold, after determining the stationary viewpoints in the process of displaying the panoramic video, the method further includes: Identifying a region of interest in the panoramic video corresponding to the stationary viewpoint; Determining a characteristic value of the region of interest, and screening the stationary viewpoints based on the characteristic value; and / or; Identify the viewing angle dwell time of the stationary viewing angle; The static viewing point is screened according to the viewing angle dwell time.

6. The method according to any one of claims 1 to 3, characterized in that: The method further comprises: Calculating the minimum distance between each viewing point and the viewing curve; Filter the viewpoints according to the minimum distance to obtain a target viewpoint; Performing a curve quadratic fitting based on the target viewing point and the static viewing point to obtain a target viewing angle curve; The panoramic video is edited based on the target viewing angle curve to obtain an editing result.

7. A panoramic video editing method, characterized in that: Applied to a terminal device, the terminal device is connected to a computer device; the method comprises: Acquire and display panoramic video; receiving a control instruction transmitted by the computer device, and determining a viewing point in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device; Determining a stationary viewing point in the process of displaying the panoramic video according to a change amplitude of the viewing angle parameter corresponding to the viewing angle point; Performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve; The panoramic video is edited based on the viewing angle curve to obtain an editing result.

8. A panoramic video editing device, characterized in that: Applied to computer equipment, the device comprises: A video acquisition module is used to acquire and display panoramic videos; A viewpoint determination module, configured to receive a control instruction for controlling the computer device, and determine a viewpoint in a process in which the computer device displays the panoramic video based on the control instruction; A stationary viewing point determination module, used to determine a stationary viewing point in the process of displaying the panoramic video according to the variation range of the viewing angle parameter corresponding to the viewing point; A curve fitting module, used for performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve; The editing module is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

9. A panoramic video editing device, characterized in that: Applied to a terminal device, the terminal device is connected to a computer device; the method comprises: A panoramic video acquisition module is used to acquire and display panoramic videos; An instruction receiving module, used for receiving control instructions transmitted by the computer device; A viewpoint determination module, configured to determine a viewpoint in the process of displaying the panoramic video based on the control instruction; the control instruction is an instruction for controlling the computer device; and to determine a stationary viewpoint in the process of displaying the panoramic video according to a variation range of a viewpoint parameter corresponding to the viewpoint; A fitting module, used for performing curve fitting based on the static viewing point and the viewing point to obtain a viewing angle curve; The video editing module is used to edit the panoramic video based on the viewing angle curve to obtain an editing result.

10. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 or claim 7 are implemented.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method of any one of claims 1 to 6 or claim 7 are implemented.

12. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method described in any one of claims 1 to 6 or claim 7 are implemented.