Video code rate conversion method, device, equipment, medium and product

By extracting keyframe images from the video stream and performing Gaussian kernel convolution image processing and splicing encoding, the problems of video quality degradation and low efficiency in traditional methods are solved, achieving efficient and lossless video bitrate conversion.

CN121309840APending Publication Date: 2026-01-09CHINA MOBILE INTERNET CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511341704.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-19
Publication Date
2026-01-09

Smart Images

  • Figure CN121309840A_ABST
    Figure CN121309840A_ABST
Patent Text Reader

Abstract

The invention relates to a video code rate conversion method and device, equipment, a medium and a product, and the method comprises the steps: extracting a key frame image of an original video stream, and determining a Gaussian kernel convolution image based on the key frame image; determining a plurality of image key points based on pixel extreme points in a target image area of the Gaussian kernel convolution image; wherein the target image region is a region with an average pixel value greater than a preset threshold value in the Gaussian kernel convolution image; determining a to-be-spliced area matched with each image key point, and splicing the to-be-spliced areas with the information overlapping degree meeting the requirement in the plurality of to-be-spliced areas to obtain a spliced image; coding the key frame image based on the spliced image to obtain a to-be-processed video stream; and under the condition that the video code rate conversion loss rate of the to-be-processed video stream is within the code rate loss range, packaging the to-be-processed video stream to obtain a target video stream. According to the invention, lossless conversion of the video code rate can be realized, and the transcoding efficiency and quality can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of lossless video transcoding technology, and in particular to a video bitrate conversion method, apparatus, device, medium, and product. Background Technology

[0002] Lossless video bitrate conversion refers to the technical means of changing the video encoding format to adapt to different transmission, storage or playback requirements without losing the original information and quality of the video. Lossless video bitrate conversion can improve transcoding efficiency while ensuring the integrity of the video's visual effects, so as to meet users' needs for high-quality video conversion.

[0003] In related technologies, traditional lossless video bitrate conversion methods are prone to introducing compression artifacts, which leads to a loss of video quality; in addition, traditional video bitrate conversion methods also have the problem of low transcoding efficiency, which cannot meet the lossless conversion requirements of scenarios with strict requirements for video quality. Summary of the Invention

[0004] This disclosure provides a video bitrate conversion method, apparatus, device, medium, and product.

[0005] According to a first aspect of this disclosure, a video bitrate conversion method is provided, the method comprising: Extract keyframe images from the original video stream, and determine Gaussian kernel convolution images based on the keyframe images; Multiple image key points are determined based on the pixel extreme points in the target image region of the Gaussian kernel convolution image; wherein, the target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold; Determine the region to be stitched that matches each of the image key points, and stitch together the regions to be stitched together if the information overlap of the multiple regions to be stitched meets the requirements, to obtain the stitched image; The keyframe image is encoded based on the stitched image to obtain the video stream to be processed. If the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream.

[0006] Further, the extraction of keyframe images from the original video stream includes: The extraction frame interval of the keyframe image is calculated based on the first formula; wherein, the first formula is: , The extracted frame interval, The time interval between the first image frame and the second image frame in the original video stream, wherein the first image frame and the second image frame are image frames containing the main video content and whose similarity threshold is less than a preset threshold. The number of image frames containing the main video content in the original video stream. This is the video analysis delay correction factor; Based on the extraction frame interval, image frames are extracted from the original video stream, and the extracted image frames are determined as the keyframe images.

[0007] Further, determining the Gaussian kernel convolution image based on the keyframe image includes: The high-dimensional features of the keyframe image are extracted by a neural network model, and the high-dimensional features are processed by the neural network model to obtain the Gaussian kernel convolution image of the keyframe image.

[0008] Furthermore, the determination of multiple image key points based on pixel extrema points in the target image region of the Gaussian kernel convolution image includes: The Gaussian kernel convolution image is segmented to obtain multiple segmentation regions; Determine the average pixel value of each segmented region, and identify the segmented regions whose average pixel value is greater than a preset threshold as target regions; The extreme pixel points in the target region are identified as the key points of the image.

[0009] Further, determining the region to be stitched that matches each of the image key points includes: Each image key point is used as the center, and the area to be stitched is expanded outward according to a preset size.

[0010] Furthermore, the step of stitching together the multiple regions to be stitched that meet the information overlap requirements includes: Calculate the information overlap between any two regions to be spliced ​​from the plurality of regions to be spliced; Any two regions to be stitched together that have an information overlap greater than a preset threshold are stitched together to obtain the stitched image.

[0011] Further, calculating the information overlap between any two regions to be spliced ​​among the plurality of regions to be spliced ​​includes: The information overlap is calculated based on the second formula; wherein, the second formula is: D represents the degree of information overlap. This represents the amount of information contained in the region to be stitched corresponding to the i-th image keypoint. This represents the amount of information contained in the region to be stitched where the (i+1)th image keypoint is located. This represents the amount of information overlap in the regions to be stitched together where the i-th image keypoint and the (i+1)-th image keypoint are located.

[0012] Further, the step of encoding the keyframe image based on the stitched image to obtain the video stream to be processed includes: The stitched image is input into a classifier model to obtain a scene image set; wherein, the scene image set includes at least: a dynamic scene image set and a static scene image set; The keyframe images corresponding to the dynamic scene image set are sorted from high to low resolution to generate a first encoding queue, and the keyframe images corresponding to the static scene image set are sorted from high to low resolution to generate a second encoding queue. The first encoding queue is encoded based on the encoding parameters to obtain a first video stream, and the second encoding queue is encoded based on the encoding parameters to obtain a second video stream; The first video stream and the second video stream are merged to obtain the video stream to be processed.

[0013] Furthermore, the method also includes: If the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range, calculate the coding efficiency threat factor for each keyframe image; Based on the coding efficiency threat factor, missing frame images are filtered out from all the keyframe images; The encoding parameters are adjusted to obtain adjusted encoding parameters, and the lost frame image is encoded based on the adjusted encoding parameters to obtain the target encoded image; The video stream to be processed is completed based on the target encoded image to obtain the completed video stream; The completed video stream is then encapsulated to obtain the corrected video.

[0014] Further, the calculation of the coding efficiency threat factor for each of the keyframe images includes: Through formula Calculate the coding efficiency threat factor for each of the keyframe images. This refers to the coding efficiency threat factor. Let be the processing bitrate of the u-th keyframe image during the bitrate conversion process. Let be the image compression ratio of the u-th keyframe image during the bitrate conversion process. For the keyframe image and The processing bitrate with the smallest absolute value of the difference. For the keyframe image and The image compression ratio with the smallest absolute value of the difference.

[0015] According to a second aspect of this disclosure, a video bitrate conversion apparatus is provided, the apparatus comprising: An extraction module is used to extract keyframe images from the original video stream and determine Gaussian kernel convolution images based on the keyframe images; The determination module is used to determine multiple image key points based on the pixel extreme points in the target image region of the Gaussian kernel convolution image; wherein, the target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold; The stitching module is used to determine the region to be stitched that matches each key point of the image, and to stitch together the regions to be stitched that meet the information overlap requirements to obtain the stitched image. The first encoding module is used to encode the keyframe image based on the stitched image to obtain the video stream to be processed; The first encapsulation module is used to encapsulate the video stream to be processed to obtain the target video stream when the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range.

[0016] According to a third aspect of this disclosure, an electronic device is provided. The electronic device includes a memory and a processor, wherein the memory stores a computer program, and the processor executes the program to implement the method described above.

[0017] According to a fourth aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the methods described above.

[0018] According to a fifth aspect of this disclosure, a computer program product is provided. The computer program product includes a computer program that, when executed by a processor, implements the methods described above in this disclosure.

[0019] This disclosure provides a video bitrate conversion method, apparatus, device, medium, and product. In this embodiment, firstly, keyframe images of the original video stream are extracted, and a Gaussian kernel convolution image is determined based on the keyframe images. Then, multiple image keypoints are determined based on pixel extrema points in the target image region of the Gaussian kernel convolution image. The target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold. Next, a region to be stitched matching each image keypoint is determined, and the regions to be stitched together with sufficient information overlap are stitched together to obtain a stitched image. Then, the keyframe images are encoded based on the stitched image to obtain the video stream to be processed. Finally, if the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream.

[0020] As described above, the technical solution of this disclosure can accurately focus on the core content of the original video stream by extracting key frame images from the original video stream and determining the Gaussian kernel convolution image. Furthermore, by determining the image key points through the pixel extreme points in the Gaussian kernel convolution image, the important visual information regions in the original video stream can be effectively locked. This allows for the identification of the stitching region that matches each image key point. By stitching together regions with sufficient information overlap, a stitched image is obtained. This process optimizes the efficiency of image information integration while reducing interference from redundant information. Finally, when the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream. The technical solution of this disclosure ensures that the video quality can be effectively controlled during the transcoding process through a strict quality verification mechanism, thereby improving the video bitrate conversion efficiency while guaranteeing the quality of the target video stream. Attached Figure Description

[0021] The above and other objects, features, and advantages of this disclosure will become more apparent from the more detailed description of the embodiments thereof in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the embodiments of this disclosure to explain the disclosure and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0022] Figure 1 A flowchart of a video bitrate conversion method provided as an exemplary embodiment of this disclosure; Figure 2 A flowchart of a video bitrate conversion method provided as another exemplary embodiment of this disclosure; Figure 3 A schematic block diagram of the functional modules of a video bitrate conversion apparatus provided in an exemplary embodiment of this disclosure; Figure 4 A structural block diagram of an electronic device provided as an exemplary embodiment of this disclosure; Figure 5 A structural block diagram of a computer system provided as an exemplary embodiment of this disclosure; Figure 6 A structural block diagram of a computer program product provided for an exemplary embodiment of this disclosure. Detailed Implementation

[0023] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0024] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.

[0025] The term "comprising" and its variations as used herein are open-ended, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below. It should be noted that the concepts of "first", "second", etc., used in this disclosure are only used to distinguish different devices, modules, or units, and are not intended to limit the order of functions performed by these devices, modules, or units or their interdependencies.

[0026] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more". The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.

[0027] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.

[0028] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.

[0029] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device. It is understood that the above notification and user authorization process is merely illustrative and does not constitute a limitation on the implementation of this disclosure; other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.

[0030] In one embodiment, such as Figure 1 As shown, a video bitrate conversion method is provided, including the following steps: Step 101: Extract keyframe images from the original video stream and determine the Gaussian kernel convolution image based on the keyframe images.

[0031] Here, the execution entity can use FFmpeg architecture configuration to separate audio and video in videos requiring bitrate conversion, obtaining the original video stream. FFmpeg architecture configuration refers to the targeted settings and adjustments made to the core components, parameters, and functional modules of FFmpeg, an open-source cross-platform multimedia processing framework, to adapt to different audio and video processing scenarios. After obtaining the original video stream, the execution entity can extract keyframe images from the original video stream and determine the Gaussian kernel convolution image based on the keyframe images. It should be noted that, besides using FFmpeg architecture configuration, other methods can also be used to separate audio and video in videos, and no restrictions are placed here.

[0032] In one possible embodiment, before extracting keyframe images from the original video stream, the execution entity needs to decode the original video stream. The specific operation process is as follows: First, the execution entity sends the original video stream to the encoder for encoding processing through the avcodec_send_frame function. The encoder encodes the original video stream into compressed data packets according to the encoding format and bitrate in the encoding request from the user's front end. Then, the execution entity receives the encoded data packets from the encoder through the avcodec_receive_packet function. Next, the execution entity sends the data packets to the decoder for decoding processing through the avcodec_send_packet function. Finally, the execution entity receives the decoded original video stream from the decoder through the avcodec_receive_frame function.

[0033] In one possible embodiment, extracting keyframe images from the original video stream includes the following steps: The extraction frame interval of the keyframe image is calculated based on the first formula; Based on the extraction frame interval, image frames are extracted from the original video stream, and the extracted image frames are determined as keyframe images.

[0034] Specifically, after obtaining the original video stream, the executing entity first calculates the extraction frame interval of the keyframe images based on the first formula, where the first formula is: , To extract the frame interval, The time interval between the first and second image frames in the original video stream, where the first and second image frames are image frames containing the main video content and whose similarity threshold is less than a preset threshold. This represents the number of image frames in the original video stream that contain the main video content. As a video analysis delay correction coefficient, the executing entity calculates the extraction frame interval of the keyframe image, extracts image frames from the original video stream based on the extraction frame interval, and determines the extracted image frames as keyframe images.

[0035] In one possible embodiment, for example, the timestamp of the first image frame in the original video stream is t=12s, the timestamp of the second image frame is t=15s, and both the first and second image frames contain the main video content and the similarity threshold is less than a preset threshold. Then, the time interval between the first and second image frames in the original video stream is... =3s, the number of image frames containing the main video content in the original video stream. =120, Video analysis delay correction factor =1.2, then the extraction frame interval is calculated. =120 × 1.2 × 3 = 432 frames, after calculating the extraction frame interval of the keyframe image. Then, by extraction Extracting image frames from the original video stream, because =432 frames, then one image frame is extracted from the original video stream every 432 frames as a keyframe image.

[0036] In one possible embodiment, after extracting the keyframe image, the executing entity can perform Gaussian filtering on the keyframe image. Gaussian filtering can effectively suppress noise interference in the keyframe image and smooth image details. The formula for Gaussian filtering is:

[0037] in, These are the x and y coordinates of a pixel in the keyframe image, respectively. These are the pixel coordinates in the keyframe image after Gaussian filtering. This represents the standard deviation of the filter.

[0038] In one possible embodiment, determining the Gaussian kernel convolution image based on the keyframe image includes the following steps: High-dimensional features of keyframe images are extracted using a neural network model, and these high-dimensional features are then processed using the same neural network model to obtain Gaussian kernel convolutional images of the keyframe images.

[0039] Specifically, after extracting the keyframe images from the original video stream, the executing entity can extract high-dimensional features of the keyframe images through a neural network model, and process the high-dimensional features through the neural network model to obtain the Gaussian kernel convolution image of the keyframe images.

[0040] In one possible embodiment, after extracting the keyframe images of the original video stream, the executing entity extracts high-dimensional features of the keyframe images through a neural network model, and extracts pixels with fixed pixel values ​​and pixel incrementing scale directions from the high-dimensional features through the neural network model, thereby constructing a Gaussian kernel convolution image of the keyframe images.

[0041] Step 102: Determine multiple image key points based on pixel extreme points in the target image region of the Gaussian kernel convolution image.

[0042] Here, after determining the Gaussian kernel convolution image of the keyframe image, the executing entity can determine multiple image key points based on the pixel extreme points in the target image region of the Gaussian kernel convolution image. The target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold.

[0043] In one possible embodiment, determining multiple image key points based on pixel extrema points in the target image region of a Gaussian kernel convolution image includes the following steps: The image convolved with a Gaussian kernel is segmented to obtain multiple segmentation regions; Determine the average pixel value of each segmented region, and identify the segmented regions with an average pixel value greater than a preset threshold as target regions; The extreme pixel points in the target region are identified as key points in the image.

[0044] Specifically, after determining the Gaussian kernel convolution image of the keyframe image, the executing entity first segments the Gaussian kernel convolution image to obtain multiple segmentation regions. Then, the executing entity determines the average pixel value of each segmentation region and determines the segmentation region with an average pixel value greater than a preset threshold as the target region. Finally, the executing entity determines the pixel extreme points in the target region as image key points.

[0045] In one possible embodiment, for example, firstly, the executing entity uses a deep learning image segmentation model to uniformly divide the Gaussian kernel convolution image into 16×16 grids, resulting in 256 segmentation regions. Then, the executing entity calculates the average pixel value of each of these 256 segmentation regions. Assuming a preset threshold of 150, the executing entity filters out regions with an average pixel value greater than 150 from these 256 segmentation regions and identifies these regions as target regions. Finally, the executing entity determines the pixel extrema points in these target regions as image key points. It should be noted that pixel extrema points can be either maximum or minimum values, and there is no limitation on this.

[0046] Step 103: Determine the regions to be stitched that match the key points of each image, and stitch together the regions to be stitched that meet the information overlap requirements to obtain the stitched image.

[0047] Here, after the executing entity determines multiple image key points, it can determine the region to be stitched that matches each image key point, and stitch together the regions to be stitched together if the information overlap of the multiple regions meets the requirements, to obtain the stitched image.

[0048] In one possible embodiment, determining the region to be stitched that matches each image keypoint includes the following steps: Each image key point is used as the center, and the area to be stitched is expanded outward according to a preset size.

[0049] Specifically, after the executing entity determines multiple image key points, it can use each key point as a center and expand outward from the center point according to a preset size to obtain the area to be stitched. For example, assuming the multiple image key points determined by the executing entity are A, B, and C, where the coordinates of image key point A are (63, 118), the executing entity will use (63, 118) as the center and expand outward by 10 pixels to obtain a square pixel block with a side length of 20 pixels. This square pixel block is the area to be stitched. It should be noted that the shape and size of the area to be stitched can be flexibly adjusted according to the actual situation, and the specific shape and size of the area to be stitched are not limited here.

[0050] In one possible embodiment, splicing multiple regions to be spliced ​​together where the information overlap meets the requirements includes the following steps: Step 1031: Calculate the information overlap between any two regions to be spliced ​​in multiple regions.

[0051] Here, after determining the region to be stitched that matches each key point in the image, the executing entity can calculate the information overlap between any two regions to be stitched.

[0052] In one possible embodiment, calculating the information overlap between any two regions to be spliced ​​from a plurality of regions to be spliced ​​includes the following steps: The degree of information overlap is calculated based on the second formula.

[0053] Specifically, after determining the regions to be stitched that match each image keypoint, the executing entity calculates the information overlap between any two regions to be stitched using a second formula, whereby the second formula is: D represents the degree of information overlap. This represents the amount of information contained in the region to be stitched corresponding to the i-th image keypoint. This represents the amount of information contained in the region to be stitched where the (i+1)th image keypoint is located. This represents the amount of information overlap in the regions to be stitched together where the i-th image keypoint and the (i+1)-th image keypoint are located.

[0054] In one possible embodiment, before calculating the information overlap degree D, the executing entity needs to first calculate the amount of information contained in the region to be stitched corresponding to the i-th image key point. The amount of information contained in the region to be stitched where the (i+1)th image key point is located. and the amount of information overlap contained in the regions to be stitched where the i-th image keypoint and the (i+1)-th image keypoint are located. , as well as The calculation formula is:

[0055] in, Let be the average grayscale value of the region to be stitched corresponding to the i-th image keypoint. This is a similarity distribution function.

[0056] The calculation formula is:

[0057] The executing entity calculates , as well as Afterwards, , as well as Substitute into the second formula The information overlap degree D between any two regions to be spliced ​​can be obtained by calculation.

[0058] Step 1032: Stitch together any two regions to be stitched together that have an information overlap greater than a preset threshold to obtain the stitched image.

[0059] Here, after calculating the information overlap between any two regions to be stitched in multiple regions, the executing entity can stitch together any two regions with an information overlap greater than a preset threshold to obtain the stitched image.

[0060] In one possible embodiment, for example, assuming that the information overlap D1 between regions A and B to be stitched is 0.6 and the information overlap D2 between regions C and D to be stitched is 0.8, the executing entity stitches the corresponding regions C and D with an information overlap greater than a preset threshold of 0.7 to obtain the stitched image.

[0061] Step 104: Encode the keyframe images based on the stitched images to obtain the video stream to be processed.

[0062] Here, the execution entity stitches together multiple regions that meet the information overlap requirements, and after obtaining the stitched image, it can encode the keyframe image based on the stitched image to obtain the video stream to be processed.

[0063] In one possible embodiment, the keyframe images are encoded based on the stitched images to obtain the video stream to be processed, including the following steps: The stitched images are then input into the classifier model to obtain the scene image set; The keyframe images corresponding to the dynamic scene image set are sorted from high to low resolution to generate the first encoding queue, and the keyframe images corresponding to the static scene image set are sorted from high to low resolution to generate the second encoding queue. The first encoding queue is encoded based on the encoding parameters to obtain the first video stream, and the second encoding queue is encoded based on the encoding parameters to obtain the second video stream; The first and second video streams are merged to obtain the video stream to be processed.

[0064] Specifically, the execution entity stitches together regions with sufficient information overlap from multiple regions to be stitched together to obtain a stitched image. First, the execution entity inputs the stitched image into a classifier model to obtain a scene image set, which includes at least a dynamic scene image set and a static scene image set. Then, the execution entity sorts the keyframe images corresponding to the dynamic scene image set from high to low resolution to generate a first encoding queue, and sorts the keyframe images corresponding to the static scene image set from high to low resolution to generate a second encoding queue. Then, the execution entity encodes the first encoding queue based on the encoding parameters to obtain a first video stream, and encodes the second encoding queue based on the encoding parameters to obtain a second video stream. Finally, the execution entity merges the first video stream and the second video stream to obtain the video stream to be processed.

[0065] In one possible embodiment, for example, the executing entity obtains 100 stitched images, numbered 0-99. Each of these 100 stitched images corresponds to a keyframe image. First, the executing entity inputs the stitched images 0-99 into a classifier model, which can detect whether the stitched images belong to a dynamic scene or a static scene: for stitched images belonging to a dynamic scene, the stitched images are included in the dynamic scene image set; for stitched images belonging to a static scene, the stitched images are included in the static scene image set. Then, the executing entity sorts the keyframe images corresponding to the stitched images in the dynamic scene image set from high to low resolution to generate a first encoding queue, and sorts the keyframe images corresponding to the stitched images in the static scene image set from high to low resolution to generate a second encoding queue.

[0066] Then, the execution entity encodes the first encoding queue based on the encoding parameters to obtain the first video stream, and encodes the second encoding queue based on the encoding parameters to obtain the second video stream. The encoding parameters are the user device parameters and the real-time network bandwidth data. For example, if the user device screen resolution is 720p and the real-time network bandwidth is poor, the execution entity will sort the keyframe images corresponding to the images after the dynamic scene images are stitched together from high to low resolution to generate the first encoding queue, and prioritize encoding the keyframe images in the first encoding queue into 720p resolution images to obtain the first video stream. After the execution entity completes the encoding of the first encoding queue, it will encode the keyframe images in the second encoding queue into 720p resolution images to obtain the second video stream. Finally, the execution entity will merge the first video stream and the second video stream to obtain the video stream to be processed.

[0067] Step 105: If the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, encapsulate the video stream to be processed to obtain the target video stream.

[0068] Here, after the executing entity obtains the video stream to be processed, it can encapsulate the video stream to be processed, provided that the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, to obtain the target video stream.

[0069] In one possible embodiment, after obtaining the video stream to be processed, the executing entity calculates the video bitrate conversion loss rate of the video stream to be processed, and the calculation formula is as follows:

[0070] Where loss is the video bitrate conversion loss rate of the video stream to be processed, u is the subscript representing the u-th keyframe image, and U is the total number of keyframe images. The length of the code segment that is resampled during the encoding process for the u-th keyframe image. The closest of all keyframe images Code segment length, Let be the processing delay time of the u-th keyframe image during the bitrate conversion process. The closest of all keyframe images Processing delay time, , and These are the percentage factors affecting the video bitrate conversion loss rate, namely, the impact of the resampled code segment and the processing delay duration. Let be the processing bitrate of the u-th keyframe image during the bitrate conversion process. Let be the image compression ratio of the u-th keyframe image during the bitrate conversion process. For keyframe images and The processing bitrate with the smallest absolute value of the difference. For keyframe images and The image compression ratio with the smallest absolute value of the difference.

[0071] After calculating the video bitrate conversion loss rate of the video stream to be processed, the executing entity encapsulates the video stream to be processed to obtain the target video stream if the video bitrate conversion loss rate is within the bitrate loss range. For example, if the video bitrate conversion loss rate of the video stream to be processed is 0.05, and the video bitrate conversion loss rate is 0.05, which is within the bitrate loss range, the executing entity encapsulates the video stream to be processed to obtain the target video stream.

[0072] This disclosure provides a video bitrate conversion method, apparatus, device, medium, and product. In this embodiment, firstly, keyframe images of the original video stream are extracted, and a Gaussian kernel convolution image is determined based on the keyframe images. Then, multiple image keypoints are determined based on pixel extrema points in the target image region of the Gaussian kernel convolution image. The target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold. Next, a region to be stitched matching each image keypoint is determined, and the regions to be stitched together with sufficient information overlap are stitched together to obtain a stitched image. Then, the keyframe images are encoded based on the stitched image to obtain the video stream to be processed. Finally, if the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream.

[0073] As described above, the technical solution of this disclosure can accurately focus on the core content of the original video stream by extracting key frame images from the original video stream and determining the Gaussian kernel convolution image. Furthermore, by determining the image key points through the pixel extreme points in the Gaussian kernel convolution image, the important visual information regions in the original video stream can be effectively locked. This allows for the identification of the stitching region that matches each image key point. By stitching together regions with sufficient information overlap, a stitched image is obtained. This process optimizes the efficiency of image information integration while reducing interference from redundant information. Finally, when the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream. The technical solution of this disclosure ensures that the video quality can be effectively controlled during the transcoding process through a strict quality verification mechanism, thereby improving the video bitrate conversion efficiency while guaranteeing the quality of the target video stream.

[0074] In one embodiment, such as Figure 2 As shown, a video bitrate conversion method is also provided, including the following steps: Step 201: Calculate the coding efficiency threat factor for each keyframe image, provided that the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range.

[0075] Here, if the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range, the execution entity can calculate the coding efficiency threat factor for each keyframe image.

[0076] In one possible embodiment, calculating the coding efficiency threat factor for each keyframe image includes the following steps: Through formula Calculate the coding efficiency threat factor for each keyframe image.

[0077] Specifically, when the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range, the executing entity uses the formula... Calculate the coding efficiency threat factor for each keyframe image, where, As a threat factor to coding efficiency, Let be the processing bitrate of the u-th keyframe image during the bitrate conversion process. Let be the image compression ratio of the u-th keyframe image during the bitrate conversion process. For keyframe images and The processing bitrate with the smallest absolute value of the difference. For keyframe images and The image compression ratio with the smallest absolute value of the difference.

[0078] Step 202: Based on the coding efficiency threat factor, filter out the missing frame images from all keyframe images.

[0079] Here, after calculating the coding efficiency threat factor for each keyframe image, the executing entity can filter out the missing frame images from all keyframe images based on the coding efficiency threat factor.

[0080] In one possible embodiment, for example, the executing entity calculates the coding efficiency threat factor of 1000 keyframe images, and if the coding efficiency threat factor of 2 keyframe images is greater than a preset threshold, then the executing entity determines these two keyframe images as lost frame images.

[0081] Step 203: Adjust the encoding parameters to obtain the adjusted encoding parameters, and encode the lost frame image based on the adjusted encoding parameters to obtain the target encoded image.

[0082] Here, after the execution entity filters out the lost frame images from all keyframe images based on the coding efficiency threat factor, it can adjust the coding parameters to obtain the adjusted coding parameters, and then encode the lost frame images based on the adjusted coding parameters to obtain the target coded image.

[0083] In one possible embodiment, after the executing entity filters out the lost frame images from all keyframe images based on the coding efficiency threat factor, it can increase the coding resolution in the coding parameters according to the characteristics of the lost frame images, thereby reducing the compression intensity to reduce the loss of details. At the same time, the executing entity can fine-tune the coding frame rate in the coding parameters from 30fps to 29.97fps to optimize the processing latency. After determining the adjusted coding parameters, the executing entity can encode the lost frame images based on the adjusted coding parameters to obtain the target coded image.

[0084] Step 204: Complete the video stream to be processed based on the target encoded image to obtain the completed video stream.

[0085] Here, after encoding the lost frame image based on the adjusted encoding parameters to obtain the target encoded image, the execution entity can complete the video stream to be processed based on the target encoded image to obtain the completed video stream.

[0086] Step 205: Encapsulate the completed video stream to obtain the corrected video.

[0087] Here, after obtaining the completed video stream, the executing entity encapsulates the completed video stream to finally obtain the corrected video.

[0088] In this embodiment, firstly, the execution entity calculates the coding efficiency threat factor for each keyframe image, assuming the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range. Then, based on the coding efficiency threat factor, the execution entity filters out lost frame images from all keyframe images. Next, the execution entity adjusts the coding parameters to obtain adjusted coding parameters, and encodes the lost frame images based on the adjusted coding parameters to obtain the target coded image. Then, the execution entity completes the video stream to be processed based on the target coded image to obtain the completed video stream. Finally, the execution entity encapsulates the completed video stream to obtain the corrected video.

[0089] As described above, when the video bitrate conversion loss rate of the video stream to be processed exceeds the bitrate loss range, the executing entity can accurately locate the missing frame images in all keyframe images by calculating the coding efficiency threat factor of each keyframe image. This avoids invalid processing of frames without quality problems, improves the targeting and efficiency of problem investigation, and on this basis, adjusts the coding parameters for the missing frame images and performs secondary coding to obtain the target coded image. That is, by optimizing the coding strategy, the quality defects of the missing frame images are specifically repaired, which can effectively make up for the information loss in the transcoding process. This forms a closed-loop processing mechanism from problem location, parameter optimization to quality repair, which significantly improves the quality control capability of video bitrate conversion and ensures the lossless and complete nature of the corrected video.

[0090] As described above, the technical solution of this disclosure calculates and extracts frame intervals by considering the similarity, number, and delay correction coefficient of image frames containing the main video subject. This enables precise location of keyframe images. Furthermore, a neural network is used to extract high-dimensional features from the keyframe images to generate Gaussian kernel convolution images, thereby improving the accuracy and efficiency of feature extraction. Regarding the processing of image key points and the regions to be stitched, this technical solution segments the Gaussian kernel convolution image and filters target regions with average pixel values ​​exceeding a threshold. This accurately identifies important visual information regions. The regions to be stitched can then be determined using image key points, and the information overlap can be calculated using a quantization formula. Based on the information overlap, the regions to be stitched are then stitched together. This process effectively optimizes the efficiency of image information integration while reducing redundant information interference. In the encoding stage, the technical solution of this disclosure… This solution divides dynamic and static scene image sets into categories using a classifier and generates encoding queues by sorting them by resolution, thus rationally allocating transcoding resources and improving the targeting and efficiency of encoding. Regarding transcoding quality control, this disclosed technical solution ensures the quality of the target video stream by calculating the video bitrate conversion loss rate. When the loss rate exceeds the acceptable range, it can accurately locate lost frame images based on the encoding efficiency threat factor and perform secondary encoding to complete the image by adjusting encoding parameters. This forms a full-process control mechanism of "problem location - optimization and correction - quality closed loop," effectively avoiding quality issues such as compression artifacts and loss of detail. While improving video transcoding efficiency, this disclosed technical solution fully guarantees the lossless nature of the transcoding process, providing reliable technical support for high-quality video transmission and storage in various scenarios such as professional video editing, film production, and medical imaging.

[0091] By dividing each function into corresponding functional modules, this disclosure provides a video bitrate conversion device, which can be a server or a chip applied to a server. Figure 3 This is a schematic block diagram of the functional modules of a video bitrate conversion apparatus provided as an exemplary embodiment of this disclosure. Figure 3 As shown, the video bitrate conversion device includes: Extraction module 301 is used to extract key frame images from the original video stream and determine Gaussian kernel convolution images based on the key frame images; The determining module 302 is used to determine multiple image key points based on the pixel extreme points in the target image region of the Gaussian kernel convolution image; wherein, the target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold; The stitching module 303 is used to determine the stitching region that matches each of the image key points, and stitch together the stitching regions with the required information overlap to obtain the stitched image. The first encoding module 304 is used to encode the keyframe image based on the stitched image to obtain the video stream to be processed; The first encapsulation module 305 is used to encapsulate the video stream to be processed to obtain the target video stream when the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range.

[0092] In one embodiment, the extraction module 301 includes: A first calculation unit is used to calculate the extraction frame interval of the keyframe image based on a first formula; wherein, the first formula is: , The extracted frame interval, The time interval between the first image frame and the second image frame in the original video stream, wherein the first image frame and the second image frame are image frames containing the main video content and whose similarity threshold is less than a preset threshold. The number of image frames containing the main video content in the original video stream. This is the video analysis delay correction factor; The extraction unit is used to extract image frames from the original video stream based on the extraction frame interval, and to determine the extracted image frames as the keyframe images.

[0093] In one embodiment, the extraction module 301 includes: The processing unit is used to extract high-dimensional features of the keyframe image through a neural network model, and process the high-dimensional features through the neural network model to obtain a Gaussian kernel convolution image of the keyframe image.

[0094] In one embodiment, the determining module 302 includes: The segmentation unit is used to segment the Gaussian kernel convolution image to obtain multiple segmented regions; The first determining unit is used to determine the average pixel value of each segmented region and to determine the segmented region whose average pixel value is greater than a preset threshold as the target region. The second determining unit is used to determine the pixel extreme points in the target region as the image key points.

[0095] In one embodiment, the splicing module 303 includes: The third determining unit is used to take each of the image key points as the center and expand outward according to a preset size to obtain the area to be stitched.

[0096] In one embodiment, the splicing module 303 includes: The second calculation unit is used to calculate the information overlap between any two regions to be spliced ​​in the plurality of regions to be spliced. The stitching unit is used to stitch together any two regions to be stitched that have an information overlap greater than a preset threshold to obtain the stitched image.

[0097] In one embodiment, the splicing module 303 includes: The third calculation unit is used to calculate the information overlap degree based on the second formula; wherein, the second formula is: D represents the degree of information overlap. This represents the amount of information contained in the region to be stitched corresponding to the i-th image keypoint. This represents the amount of information contained in the region to be stitched where the (i+1)th image keypoint is located. This represents the amount of information overlap in the regions to be stitched together where the i-th image keypoint and the (i+1)-th image keypoint are located.

[0098] In one embodiment, the first encoding module 304 includes: The fourth determining unit is used to input the stitched image into a classifier model to obtain a scene image set; wherein the scene image set includes at least: a dynamic scene image set and a static scene image set; The sorting unit is used to sort the keyframe images corresponding to the dynamic scene image set from high to low resolution to generate a first encoding queue, and sort the keyframe images corresponding to the static scene image set from high to low resolution to generate a second encoding queue. An encoding unit is configured to encode the first encoding queue based on encoding parameters to obtain a first video stream, and to encode the second encoding queue based on the encoding parameters to obtain a second video stream; The merging unit is used to merge the first video stream and the second video stream to obtain the video stream to be processed.

[0099] In one embodiment, the apparatus further includes: The calculation module is used to calculate the coding efficiency threat factor for each keyframe image when the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range. The filtering module is used to filter out lost frame images from all the keyframe images based on the coding efficiency threat factor; The second encoding module is used to adjust the encoding parameters to obtain the adjusted encoding parameters, and to encode the lost frame image based on the adjusted encoding parameters to obtain the target encoded image; The completion module is used to complete the video stream to be processed based on the target encoded image to obtain the completed video stream; The second encapsulation module is used to encapsulate the completed video stream to obtain the corrected video.

[0100] In one embodiment, the computing module includes: The fourth calculation unit is used to calculate using formulas. Calculate the coding efficiency threat factor for each of the keyframe images. This refers to the coding efficiency threat factor. Let be the processing bitrate of the u-th keyframe image during the bitrate conversion process. Let be the image compression ratio of the u-th keyframe image during the bitrate conversion process. For the keyframe image and The processing bitrate with the smallest absolute value of the difference. For the keyframe image and The image compression ratio with the smallest absolute value of the difference.

[0101] Figure 4 This is a schematic diagram of the structure of an electronic device provided as an exemplary embodiment of this disclosure. For example... Figure 4 As shown, the electronic device 400 includes at least one processor 401 and a memory 402 coupled to the processor 401, which can perform the corresponding steps in the methods disclosed in the embodiments of this disclosure.

[0102] The processor 401 described above can also be called a central processing unit (CPU), which can be an integrated circuit chip with signal processing capabilities. Each step in the method disclosed in this embodiment can be implemented by the integrated logic circuitry in the processor 401 or by software instructions. The processor 401 can be a general-purpose processor, a digital signal processor (DSP), an ASIC, a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this embodiment can be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules can be located in the memory 402, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The processor 401 reads information from the memory 402 and, in conjunction with its hardware, completes the steps of the method described above.

[0103] Furthermore, various operations / processes according to this disclosure, implemented via software and / or firmware, can be transmitted from a storage medium or network to a computer system with a dedicated hardware architecture, such as... Figure 5 The computer system 500 shown is equipped with the programs that constitute the software. When various programs are installed, the computer system is able to perform various functions, including functions such as those described above. Figure 5 A block diagram of a computer system provided for an exemplary embodiment of this disclosure.

[0104] Computer system 500 is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. Electronic devices may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of this disclosure described and / or claimed herein.

[0105] like Figure 5As shown, the computer system 500 includes a computing unit 501, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. The RAM 503 may also store various programs and data required for the operation of the computer system 500. The computing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0106] Multiple components in the computer system 500 are connected to the I / O interface 505, including: an input unit 506, an output unit 507, a storage unit 508, and a communication unit 509. The input unit 506 can be any type of device capable of inputting information into the computer system 500. The input unit 506 can receive input numerical or character information and generate key signal inputs related to user settings and / or function control of the electronic device. The output unit 507 can be any type of device capable of presenting information and may include, but is not limited to, a monitor, speaker, video / audio output terminal, vibrator, and / or printer. The storage unit 508 may include, but is not limited to, a hard disk and an optical disk. The communication unit 509 allows the computer system 500 to exchange information / data with other devices via a network such as the Internet, and may include, but is not limited to, a modem, network card, infrared communication device, wireless communication transceiver, and / or chipset, such as Bluetooth™ device, WiFi device, WiMax device, cellular communication device, and / or the like.

[0107] The computing unit 501 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 501 performs the various methods and processes described above. For example, in some embodiments, the methods disclosed in this disclosure can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 508. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 400 via ROM 502 and / or communication unit 509. In some embodiments, the computing unit 501 can be configured to perform the methods disclosed in this disclosure by any other suitable means (e.g., by means of firmware).

[0108] This disclosure also provides a computer-readable storage medium, wherein when the instructions in the computer-readable storage medium are executed by a processor of an electronic device, the electronic device is able to perform the methods disclosed in this disclosure.

[0109] The computer-readable storage medium in this disclosure can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. The aforementioned computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specifically, the aforementioned computer-readable storage medium may include electrical connections based on one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0110] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.

[0111] Figure 6 A computer program product 600 is provided as an exemplary embodiment of the present disclosure. The computer program product 600 includes a computer program 601, wherein the computer program 601, when executed by a processor, implements the methods disclosed in the embodiments of the present disclosure.

[0112] In embodiments of this disclosure, computer program code for performing the operations of this disclosure can be written in one or more programming languages ​​or a combination thereof. These programming languages ​​include, but are not limited to, object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network (including a local area network (LAN) or a wide area network (WAN)), or it can be connected to an external computer.

[0113] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0114] The modules, components, or units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the modules, components, or units do not necessarily constitute a limitation on the module, component, or unit itself.

[0115] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary hardware logic components that can be used include: field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.

[0116] The above description is merely an embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.

[0117] While specific embodiments of this disclosure have been described in detail by way of example, those skilled in the art should understand that the examples are for illustrative purposes only and not intended to limit the scope of this disclosure. Those skilled in the art should understand that modifications can be made to the above embodiments without departing from the scope and spirit of this disclosure. The scope of this disclosure is defined by the appended claims.

Claims

1. A video bitrate conversion method, characterized in that, The method includes: Extract keyframe images from the original video stream, and determine Gaussian kernel convolution images based on the keyframe images; Multiple image key points are determined based on the pixel extreme points in the target image region of the Gaussian kernel convolution image; wherein, the target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold; Determine the region to be stitched that matches each of the image key points, and stitch together the regions to be stitched together if the information overlap of the multiple regions to be stitched meets the requirements, to obtain the stitched image; The keyframe image is encoded based on the stitched image to obtain the video stream to be processed. If the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range, the video stream to be processed is encapsulated to obtain the target video stream.

2. The method according to claim 1, characterized in that, The extraction of keyframe images from the original video stream includes: The extraction frame interval of the keyframe image is calculated based on the first formula; wherein, the first formula is: , The extracted frame interval, The time interval between the first image frame and the second image frame in the original video stream, wherein the first image frame and the second image frame are image frames containing the main video content and whose similarity threshold is less than a preset threshold. The number of image frames containing the main video content in the original video stream. This is the video analysis delay correction factor; Based on the extraction frame interval, image frames are extracted from the original video stream, and the extracted image frames are determined as the keyframe images.

3. The method according to claim 1, characterized in that, Determining the Gaussian kernel convolution image based on the keyframe image includes: The high-dimensional features of the keyframe image are extracted by a neural network model, and the high-dimensional features are processed by the neural network model to obtain the Gaussian kernel convolution image of the keyframe image.

4. The method according to claim 1, characterized in that, The determination of multiple image key points based on pixel extrema points in the target image region of the Gaussian kernel convolution image includes: The Gaussian kernel convolution image is segmented to obtain multiple segmentation regions; Determine the average pixel value of each segmented region, and identify the segmented regions whose average pixel value is greater than a preset threshold as target regions; The extreme pixel points in the target region are identified as the key points of the image.

5. The method according to claim 1, characterized in that, The step of determining the region to be stitched that matches each of the image key points includes: Each image key point is used as the center, and the area to be stitched is expanded outward according to a preset size.

6. The method according to claim 1, characterized in that, The step of stitching together multiple regions of information overlap that meet the requirements includes: Calculate the information overlap between any two regions to be spliced ​​from the plurality of regions to be spliced; Any two regions to be stitched together that have an information overlap greater than a preset threshold are stitched together to obtain the stitched image.

7. The method according to claim 6, characterized in that, The calculation of the information overlap between any two regions to be spliced ​​among the plurality of regions to be spliced ​​includes: The information overlap is calculated based on the second formula; wherein, the second formula is: D represents the degree of information overlap. This represents the amount of information contained in the region to be stitched corresponding to the i-th image keypoint. This represents the amount of information contained in the region to be stitched where the (i+1)th image keypoint is located. This represents the amount of information overlap in the regions to be stitched together where the i-th image keypoint and the (i+1)-th image keypoint are located.

8. The method according to claim 1, characterized in that, The process of encoding the keyframe image based on the stitched image to obtain the video stream to be processed includes: The stitched image is input into a classifier model to obtain a scene image set; wherein, the scene image set includes at least: a dynamic scene image set and a static scene image set; The keyframe images corresponding to the dynamic scene image set are sorted from high to low resolution to generate a first encoding queue, and the keyframe images corresponding to the static scene image set are sorted from high to low resolution to generate a second encoding queue. The first encoding queue is encoded based on the encoding parameters to obtain a first video stream, and the second encoding queue is encoded based on the encoding parameters to obtain a second video stream; The first video stream and the second video stream are merged to obtain the video stream to be processed.

9. The method according to claim 1, characterized in that, The method further includes: If the video bitrate conversion loss rate of the video stream to be processed is not included in the bitrate loss range, calculate the coding efficiency threat factor for each keyframe image; Based on the coding efficiency threat factor, missing frame images are filtered out from all the keyframe images; The encoding parameters are adjusted to obtain adjusted encoding parameters, and the lost frame image is encoded based on the adjusted encoding parameters to obtain the target encoded image; The video stream to be processed is completed based on the target encoded image to obtain the completed video stream; The completed video stream is then encapsulated to obtain the corrected video.

10. The method according to claim 9, characterized in that, The calculation of the coding efficiency threat factor for each keyframe image includes: Through formula Calculate the coding efficiency threat factor for each of the keyframe images. This refers to the coding efficiency threat factor. Let be the processing bitrate of the u-th keyframe image during the bitrate conversion process. Let be the image compression ratio of the u-th keyframe image during the bitrate conversion process. For the keyframe image and The processing bitrate with the smallest absolute value of the difference. For the keyframe image and The image compression ratio with the smallest absolute value of the difference.

11. A video bitrate conversion device, characterized in that, The device includes: An extraction module is used to extract keyframe images from the original video stream and determine Gaussian kernel convolution images based on the keyframe images; The determination module is used to determine multiple image key points based on the pixel extreme points in the target image region of the Gaussian kernel convolution image; wherein, the target image region is the region in the Gaussian kernel convolution image where the average pixel value is greater than a preset threshold; The stitching module is used to determine the region to be stitched that matches each key point of the image, and to stitch together the regions to be stitched that meet the information overlap requirements to obtain the stitched image. The first encoding module is used to encode the keyframe image based on the stitched image to obtain the video stream to be processed; The first encapsulation module is used to encapsulate the video stream to be processed to obtain the target video stream when the video bitrate conversion loss rate of the video stream to be processed is within the bitrate loss range.

12. An electronic device, characterized in that, include: At least one processor; Memory for storing the at least one processor-executable instruction; The at least one processor is configured to execute the instructions to implement the method as described in any one of claims 1-10.

13. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is enabled to perform the method as described in any one of claims 1-10.

14. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-10.