Preview media generation methods, system and apparatuses, device and medium

By compressing and reducing the data volume of high-bitrate original images on the server side, and combining this with reverse processing on the client side to generate high-quality preview images, the problem of long loading times for network images is solved, thus improving the user experience.

WO2025222894A1PCT designated stage Publication Date: 2025-10-30BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/139620
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-25
Filing Date
2024-12-16
Publication Date
2025-10-30

Smart Images

  • Figure CN2024139620_30102025_PF_FP_ABST
    Figure CN2024139620_30102025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the embodiments of the present disclosure are preview media generation methods, system and apparatuses, a device and a medium. A preview media generation method is applied to a client of the preview media generation system, the system further comprising a server, and the method comprises: receiving image transmission data from the server, the image transmission data being data that is acquired and sent by the server after performing, in response to an issuing request sent by the client for a target image, first processing and second processing on the target image, wherein the first processing is processing for reducing the image bitrate of the target image, and the second processing is processing for reducing the data transmission volume of the image transmission data; and, on the basis of inverse processing of the second processing and the image transmission data, generating a preview image of the target image. Thus, the present disclosure can generate preview images on the basis of original images, thus improving users' experience in viewing images over the network.
Need to check novelty before this filing date? Find Prior Art

Description

Methods, systems, apparatus, devices, and media for generating preview media.

[0001] This application claims priority to Chinese Patent Application No. 202410508769.8, filed on April 25, 2024, entitled “Method, System, Apparatus, Device and Medium for Generating Preview Media”, the entire contents of which are incorporated herein by reference. Technical Field

[0002] This disclosure relates to the field of multimedia processing technology, and in particular to a method, system, apparatus, device, and medium for generating preview media. Background Technology

[0003] As the performance of image acquisition devices such as cameras improves, the quality of images on the network is getting higher and higher, and the amount of data is also increasing. When users view images, the time they have to wait for the images to load is also getting longer and longer. If the client displays a black screen during the image download process (before the image is fully downloaded), this will affect the user experience to some extent.

[0004] To improve user experience, the client can first load and display a low-bitrate image generated from a high-bitrate (high-quality) original image, and then download the high-bitrate original image in the background, replacing and displaying the original image after download. Therefore, providing a solution for generating low-bitrate images from high-bitrate original images is a pressing issue. Summary of the Invention

[0005] This disclosure provides one or more embodiments of a method, system, apparatus, device, and medium for generating preview media, thereby enabling the generation of preview images based on original images and further improving the user experience when viewing images on the network.

[0006] According to a first aspect, a method for generating preview media is provided, applied to a client of a system for generating preview media, the system for generating preview media further comprising a server, the method comprising: receiving image transmission data from the server, wherein the image transmission data is data obtained and transmitted by the server performing a first processing and a second processing on the target image in response to a request to send a target image sent by the client, the first processing being a process for reducing the image bitrate of the target image, and the second processing being a process for reducing the amount of transmitted data of the image transmission data; generating a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0007] According to a second aspect, a method for generating preview media is provided, applied to a server of a system for generating preview media, the system for generating preview media further comprising a client, the method comprising: responding to a client's request to send a target image, performing a first processing and a second processing on the target image to obtain image transmission data, the first processing being a process for reducing the image bitrate of the target image, and the second processing being a process for reducing the amount of transmission data of the image transmission data; sending the image transmission data to the client so that the client receives the image transmission data; and generating a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0008] According to a third aspect, a system for generating preview media is provided. The system includes a server and a client. The server is configured to, in response to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of image transmission data. The server then sends the image transmission data to the client. The client is configured to receive the image transmission data and, based on the inverse processing of the second processing and the image transmission data, generate a preview image of the target image.

[0009] According to a fourth aspect, an apparatus for generating preview media is provided, wherein a client is deployed in a system for generating preview media, and the system for generating preview media further includes a server. The apparatus includes: a receiving module configured to receive image transmission data from the server, wherein the image transmission data is data obtained and transmitted by the server performing a first processing and a second processing on the target image in response to a request to send a target image sent by the client, wherein the first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data; and a generating module configured to generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0010] According to a fifth aspect, an apparatus for generating preview media is provided, deployed on a server side of a system for generating preview media. The system for generating preview media further includes a client. The apparatus includes: a processing module configured to, in response to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data; the first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data; and a sending module configured to send the image transmission data to the client so that the client receives the image transmission data, and generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0011] According to a sixth aspect, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method described in the first or second aspect.

[0012] According to a seventh aspect, an electronic device is provided, including a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, it implements the method described in the first aspect or the second aspect.

[0013] According to an eighth aspect, a computer program product is provided, the computer program product being tangibly stored in a computer storage medium and including computer-executable instructions, which, when executed by a device, cause the device to perform the method described in the first or second aspect. Attached Figure Description

[0014] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0015] Figure 1 is a schematic diagram of the implementation framework of an embodiment disclosed in this disclosure;

[0016] Figure 2 is a schematic diagram of a data processing flow of a system for generating preview media provided in an embodiment;

[0017] Figure 3 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0018] Figure 4 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0019] Figure 5 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0020] Figure 6 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0021] Figure 7 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0022] Figure 8 is a schematic diagram of another data processing flow of the system for generating preview media provided in the embodiment;

[0023] Figure 9 is a flowchart illustrating a method for generating preview media provided in an embodiment.

[0024] Figure 10 is another flowchart illustrating the method for generating preview media provided in the embodiment;

[0025] Figure 11 is a schematic block diagram of an apparatus for generating preview media provided in an embodiment;

[0026] Figure 12 is a schematic block diagram of an apparatus for generating preview media provided in an embodiment;

[0027] Figure 13 is a schematic block diagram of an electronic device provided in an embodiment. Detailed Implementation

[0028] The technical solutions of the embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.

[0029] 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.

[0030] 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.

[0031] 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.

[0032] It is understood that the above notification and user authorization process are merely illustrative and do 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.

[0033] This disclosure provides a method, system, apparatus, device, and medium for generating preview media. The application scenarios and technical concepts of the method are first introduced below:

[0034] As mentioned earlier, to address the issue of increasingly large amounts of image data on the internet, leading to longer waiting times for users to view images, the client can first load and display a low-bitrate image generated from a high-bitrate (high-quality) original image, while simultaneously downloading the high-bitrate original image in the background and replacing it with the original image upon completion. Therefore, providing a solution for generating low-bitrate images from high-bitrate original images has become a pressing problem.

[0035] In related technologies, the process of generating a blurred version of a low-bitrate image based on a high-bitrate original image generally includes: processing the original image requested by the client on the server side using the blurhash algorithm to obtain image data containing some low-frequency information of the original image; then sending the image data containing some low-frequency information of the original image to the client; the client then uses the image data containing some low-frequency information of the original image to reconstruct an image containing some low-frequency information of the original image and displays it as a preview image.

[0036] The above-mentioned scheme for generating low-bitrate images from high-bitrate original images involves the server processing the original image to obtain image data containing only a portion of the low-frequency information of the original image, which can improve data transmission speed. However, when the client directly generates a preview image based on the image data containing only a portion of the low-frequency information of the original image, the resulting preview image only includes a portion of the low-frequency information of the original image and can only reproduce the average color and some coarse texture information of the original image, resulting in an unsatisfactory display effect.

[0037] In view of this, the present disclosure provides a new method, system, apparatus, device and medium for generating preview media, which can jointly generate preview images by the server and the client, thereby reducing the amount of image transmission data, increasing the data transmission rate, and allowing the client to recover part of the image transmission data, thus obtaining a preview image of better quality and improving the user experience.

[0038] Figure 1 illustrates an implementation scenario according to an embodiment disclosed in this disclosure. In this scenario, an exemplary system for generating preview media is shown. The system includes a server and a client. The server, in response to a client's request to send a target image, performs a first processing and a second processing on the target image to obtain image transmission data. The first processing reduces the image bitrate of the target image, and the second processing reduces the amount of image transmission data to be transmitted, thereby improving data transmission speed. After receiving the image transmission data, the client generates a preview image of the target image based on the inverse processing of the second processing and the image transmission data. The inverse processing of the second processing recovers some data from the image transmission data, allowing the subsequently generated preview image to contain more image information from the target image, thus ensuring the quality of the preview image to a certain extent and improving the user's experience when viewing images on the network.

[0039] The methods, systems, apparatus, devices, and media for generating preview media provided in this disclosure will be described in detail below with reference to specific embodiments.

[0040] Figure 2 illustrates a data processing flow diagram of a system for generating preview media according to an embodiment of this disclosure. The system for generating preview media includes a server 210 and a client 220, which can be installed in different electronic devices. These electronic devices can be implemented using any device, equipment, platform, device cluster, etc., with computing and processing capabilities. As shown in Figure 2:

[0041] Server 210 is configured to respond to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data. The first processing is used to reduce the image bitrate of the target image, and the second processing is used to reduce the amount of image transmission data. The server then sends the image transmission data to the client.

[0042] In some possible examples, the target image can be any frame of image requested by the client user, or it can be any specified image in the image frame sequence requested by the client user. The specified image can be one or more frames in the image frame sequence, such as the first N frames in the image frame sequence, where N is greater than or equal to 1.

[0043] For example, when a client user needs to view a target image, they can trigger a viewing command for the target image (e.g., performing a specified operation on the client's display window, such as a pull-down operation, or triggering a specified button on the client's display window). In response to the user's viewing command, the client can generate a request to send the target image and send this request to the server. Correspondingly, the server receives the client's request to send the target image and, in response, performs a first processing and a second processing on the target image to obtain image transmission data. The first processing is at the image layer, aimed at reducing the image bitrate of the target image; the second processing is at the image data layer, aimed at reducing the amount of image transmission data.

[0044] For example, when a client user has a need to view a certain image frame sequence, they can trigger a viewing instruction for that image frame sequence. In response to the user's triggering of the viewing instruction for the image frame sequence, the client generates a viewing request for the image frame sequence. After receiving the client's viewing request for the image frame sequence, the server can determine the image frame sequence indicated by the viewing request, identify the specified image from it, use it as the target image, recognize the viewing request for the image frame sequence as a request to send the target image, and in response to the request, perform first processing and second processing on the target image.

[0045] In some possible implementations, the first process includes at least one of the following processes: downsampling, first blurring, and image encoding. For example, the first process may include: image encoding; the first process may include: downsampling and image encoding; the first process may include: first blurring and image encoding; the first process may include: downsampling, first blurring, and image encoding. In some possible examples, the downsampling can be any process in the related art that reduces the spatial resolution of the image to reduce the amount of image data. This disclosure does not limit the specific method of downsampling.

[0046] In some possible implementations, the image encoding process included in the first process may be image compression processing. Correspondingly, the second process may include cropping processing, or the second process may include preset encoding processing and cropping processing. The preset encoding processing may be an encoding process that makes the image transmission data more compatible at the client, such as, but not limited to, the base64 encoding algorithm.

[0047] In one implementation, the process of the server 210 performing a first processing and a second processing on the target image to obtain image transmission data includes: performing a first processing on the target image to obtain image compressed data, the first processing including at least image compression processing; and obtaining image transmission data based on the image compressed data and cropping processing, wherein the data cropped by the cropping processing is data related to the parameters used in the aforementioned image compression processing.

[0048] In this embodiment, the first process includes at least image compression processing, such as JPEG image compression processing. This image compression processing can reduce the image data volume by reducing redundant and non-critical information in the image. The image compression processing may involve the following steps: performing color space conversion on the input image (e.g., the target image, or the image output from the processing prior to the image compression processing included in the first process) to obtain an intermediate processed image in the YCbCr color space; then dividing the intermediate processed image into blocks; performing DCT (Discrete Cosine Transform) on each block of the intermediate processed image to convert each block from the spatial domain to the frequency domain, obtaining DCT-transformed image data; further, quantizing the DCT-transformed image data using a preset quantization table to obtain quantized image data; reordering the quantized image data in a zigzag order to obtain sorted image data; and finally, performing Huffman processing on the sorted image data using a preset Huffman table to obtain compressed image data.

[0049] In some possible examples, after dividing the intermediate image into blocks, chroma subsampling can be performed on each block of the intermediate image. Subsequently, DCT (Discrete Cosine Transform) is performed on each block after chroma subsampling to further compress the amount of data in the aforementioned input image.

[0050] In the above process, the compressed image data obtained after image compression contains a relatively fixed header information. This header information includes the parameters used in the image compression process, such as the aforementioned preset quantization table and preset Huffman table. This header information is located at the beginning of the compressed image data, meaning it connects to the actual compressed image data at the end. Since the parameters used in the image compression process are fixed, i.e., the compression quality is fixed—meaning the same compression quality is applied to different input images—the header information in the compressed image data obtained after image compression will be identical for different input images.

[0051] Therefore, after the first processing of the target image, the header information in the resulting image compression data does not need to be transmitted. The relevant data for this header information is pre-stored on the client side, and after obtaining the image transmission data, it can be replenished based on the pre-stored header information. Correspondingly, the server 210 can obtain the image transmission data based on the image compression data and the cropping processing, where the cropped data is related to the parameters used in the image compression processing.

[0052] In one implementation, the data related to the parameters used in the image compression process (the data cropped by the cropping process) is the parameter used in the image compression process, i.e., the aforementioned file header information. In another implementation, the data related to the parameters used in the image compression process (the data cropped by the cropping process) is the data obtained after processing the parameters used in the image compression process (e.g., the aforementioned preset encoding process).

[0053] In some possible examples, the server and client can periodically or non-periodically synchronize and update the data related to the parameters used in the image compression process to ensure collaborative processing between the server and client.

[0054] In some other possible examples, the second processing can be any data encoding process that can encode the data, such that the amount of data in the encoded data is less than the amount of data in the original data (i.e., the data obtained from the first processing), and the data encoding process is reversible.

[0055] Subsequently, after receiving the image transmission data, the server sends the image transmission data to the client. For clarity, the process of sending this image transmission data will be described later.

[0056] Server 210 sends image transmission data to client. Correspondingly, client 220 is configured to receive the image transmission data and, based on the inverse processing of the second processing and the image transmission data, generate a preview image of the target image. In this step, after receiving the image transmission data, the client performs the inverse processing of the second processing on the image transmission data to obtain the data obtained after the aforementioned first processing (e.g., the aforementioned image compression data), and then generates a preview image corresponding to the target image based on this data. The client then displays the preview image.

[0057] In some possible implementations, where the aforementioned second processing includes cropping, the inverse processing of the second processing may include a first addition process corresponding to the cropping process. Through this first addition process, the client can add back the data cropped by the server from the data obtained after the aforementioned first processing to the image transmission data, thereby restoring part of the content of the image transmission data and obtaining the data obtained after the aforementioned first processing. Specifically, the server 210, based on the cropping process, crops the first data at a first preset position in the image compression data obtained after the first processing of the target image to obtain image transmission data, and sends the image transmission data to the client; correspondingly, the client 220 adds the first data pre-stored locally to the position corresponding to the first preset position in the image transmission data to obtain image compression data, i.e., the data obtained after the aforementioned first processing. Here, the first data is equivalent to the file header information at the header position in the aforementioned image compression data.

[0058] In some other possible implementations, where the aforementioned second processing includes preset encoding processing and cropping processing, the inverse processing of the second processing may include a second addition processing corresponding to the cropping processing and a decoding processing corresponding to the preset encoding processing. Accordingly, the client can sequentially perform the second addition processing on the image transmission data to add the cropped data from the server back into the image transmission data. Then, the client performs the decoding processing corresponding to the preset encoding processing on the added image transmission data to obtain the data obtained after the aforementioned first processing. Specifically, the server 210 performs preset encoding processing on the image compression data obtained after the first processing of the target image to obtain image encoded data. Based on the cropping processing, it crops the second data at the second preset position in the image encoded data to obtain image transmission data, and sends the image transmission data to the client. Correspondingly, the client 220 adds the second data pre-stored locally to the position corresponding to the second preset position in the image transmission data to obtain image encoded data. It then performs the decoding processing corresponding to the preset encoding processing on the image encoded data to obtain image compressed data, i.e., the data obtained after the aforementioned first processing. The second data is the data obtained after the aforementioned file header information is preset encoded and is located at the beginning of the image encoded data.

[0059] In some other possible implementations, where the aforementioned second processing includes the aforementioned data encoding processing, the inverse processing of the second processing is the data decoding processing corresponding to the data encoding processing. Accordingly, the client can perform the data decoding processing on the image transmission data to obtain the data obtained after the aforementioned first processing.

[0060] After obtaining the data from the first processing, the client generates a preview image based on that data. In some possible examples, the first processing includes at least image compression processing, and the data obtained after the first processing is compressed image data. Correspondingly, the client performs the inverse processing of the image transmission data (e.g., including the first addition processing corresponding to the aforementioned cropping processing; or including the second addition processing corresponding to the aforementioned cropping processing and the decoding processing corresponding to the aforementioned preset encoding processing) to obtain compressed image data, and then generates a preview image based on the compressed image data. In a specific example, the process of generating a preview image based on compressed image data by the client 220 may include: decompressing the compressed image data to obtain a decompressed image; and then generating a preview image based on the decompressed image. Here, the aforementioned decompression processing is the decompression processing corresponding to the aforementioned image compression processing, and is the inverse processing of image compression processing.

[0061] In some possible examples, the process of generating a preview image based on a decompressed image by the client may include: using the decompressed image as the preview image. In still other possible examples, the process of generating a preview image based on a decompressed image by the client may include: processing the decompressed image based on the client's display window size to obtain the preview image. In this implementation, the client can directly process the decompressed image based on the client's display window size (e.g., upsampling) to obtain a preview image with a size that meets the client's display window size and has better image quality, allowing the client to display a preview image with better quality and display effect. In one possible example, if the size of the decompressed image meets the client's display window size, the client can also directly display the decompressed image. Here, "meeting the client's display window size" can mean that the size is equal to the client's display window size.

[0062] In some possible examples, where the target image is marked as an image of a specified sensitivity type, to ensure the user's image viewing experience, the process of generating a preview image based on the decompressed image can include: performing a second blurring process on the decompressed image to obtain a blurred image; and processing the blurred image based on the client's display window size to obtain a preview image. In this implementation, the client first performs a second blurring process on the decompressed image to obtain a blurred image, and then processes the blurred image based on the client's display window size to obtain a preview image with better image quality that meets the client's display window size. For target images marked as having a specified sensitivity type, displaying a blurred preview image first can, to some extent, prevent users from viewing images that cause them discomfort, thus ensuring the user's viewing experience. In a subsequent implementation, after detecting a user-triggered command to view a clear version of the preview image, the client can continue loading the target image based on the target image loading address information sent by the server, and after loading is complete, replace the displayed preview image with the target image to meet the user's image viewing needs and improve the user experience.

[0063] It is understood that in the embodiments of this disclosure, the blur radii of the second blurring process and the first blurring process can be the same or different. The first blurring process and the second blurring process can be blurring processes based on Gaussian blur algorithm or other blurring algorithms that can achieve image blurring.

[0064] In some other possible examples, to further reduce the amount of image transmission data, if downsampling and / or blurring are included before the first processing (image encoding), and to ensure the display effect of the preview image and avoid jagged edges and / or mosaic effects, the client's process of generating a preview image based on the decompressed image may include: performing a second blurring process on the decompressed image to obtain a blurred image; and processing the blurred image based on the client's display window size to obtain the preview image. In this implementation, performing a second blurring process on the decompressed image can smooth out jagged edges and / or mosaic effects in the decompressed image, thereby improving the display effect of the preview image and enhancing the user experience.

[0065] In some other possible examples, where the first processing includes image encoding, to avoid the decompressed image from having jagged edges and / or mosaic effects, the client can also first perform a second blurring process on the decompressed image to obtain a blurred image; based on the client's display window size, the blurred image is processed to obtain a preview image to ensure the display effect of the preview image.

[0066] The above process provides a scheme for collaborative generation of preview images by both the server and client. On the server side, through first and second processing, the amount of image data transmitted is reduced, and the transmission speed is increased. On the client side, through the inverse processing of the second processing, some of the transmitted image data is recovered, resulting in a preview image containing more image information about the target image. This collaborative processing between the server and client can better reduce the amount of transmitted data and increase data transmission speed while preserving as much image information as possible about the target image. This allows users to quickly view a high-quality preview image that includes more image information about the target image, improving the user experience.

[0067] The following describes the process of the server sending image transmission data to the client.

[0068] In some possible implementations, the server can directly send image transmission data to the client. In some implementations, the process of the server sending image transmission data to the client may include the following steps: adding the image transmission data to the first field of the request response corresponding to the request; and sending the request response with the image transmission data added to the first field to the client. It is understood that the server, in response to the client's request, needs to provide feedback to the client. For example, it can generate a request response, i.e., an API (Application Programming Interface) Response, for the request. In this implementation, the server can add the image transmission data as part of the request response to the first field of the request response. This first field is a reserved field in the request response for adding the image transmission data. Then, the request response with the image transmission data added to the first field is sent to the client to improve data transmission speed. The client 220 receives the request response corresponding to the request from the server; parses the image transmission data from the first field of the request response; and performs subsequent operations on the image transmission data, allowing the user to quickly view a high-quality preview image that may include more target image information.

[0069] In some other possible implementations, the process of sending image transmission data to the client by the server 210 may include the following steps: sending image transmission data and the loading address information of the target image (e.g., the URL (Uniform Resource Locator) of the target image) to the client; correspondingly, the client 220 is also configured to load the target image using the loading address information; after the target image is loaded, the displayed preview image is replaced with the target image. This allows the client 220 to obtain and display a preview image based on the inverse processing of the second process and the image transmission data; on the other hand, it can load the target image in the background based on the loading address information, and replace the displayed preview image with the target image after loading, thereby improving the user experience to some extent while the target image is being loaded in the background.

[0070] For example, when the target image is a specified image frame in the image frame sequence requested by the user of the client, the loading address information can be the loading address information of the image frame sequence. In this case, the client can display a preview image corresponding to the target image to the user while loading the image frame sequence containing the target image in the background. After the number of image frames in the image frame sequence loaded by the client meets the preset condition (e.g., the first X% of image frames in the image frame sequence are loaded), the preview image to be displayed will be replaced with the image frames in the loaded image frame sequence, and the client will continue to load other image frames in the image frame sequence in the background.

[0071] In some specific examples, during the process of sending image transmission data and target image loading address information to the client, server 210 may add the image transmission data to the first field of the request response corresponding to the sent request and add the loading address information to the second field of the request response; then, it sends the request response with the added image transmission data and loading address information to client 220. Correspondingly, client 220 receives the request response corresponding to the sent request from the server; it parses the image transmission data from the first field of the request response and the loading address information from the second field. Then, client 220, on the one hand, obtains a preview image based on the reverse processing of the second process and the image transmission data, and displays the preview image; on the other hand, based on the loading address information, it loads the target image in the background, so that a preview image can be displayed to the user during the loading of the target image, thereby improving the user experience to some extent.

[0072] Based on the description of the foregoing embodiments, FIG3, by way of example, illustrates a data processing schematic diagram of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG3, the first process includes image compression processing, and the second process includes cropping processing; correspondingly, the inverse processing of the second process includes a first addition processing corresponding to the cropping processing.

[0073] Specifically, as shown in Figure 3, server 210, in response to the client's request to send the target image, performs image compression processing on the target image to obtain image compressed data; it then performs cropping processing on the image compressed data, specifically cropping the first data at a first preset position from the image compressed data to obtain image transmission data; and finally sends the image transmission data to the client. Here, the first preset position can be the header position of the aforementioned image compressed data, which can be pre-stored in a corresponding preset storage space on the server. The first data can be the file header information included in the aforementioned image compressed data, including the parameters used in the image compression processing.

[0074] Accordingly, as shown in Figure 3, the client 220 receives image transmission data, performs a first addition process on the image transmission data, that is, adds the first data pre-stored locally to the position corresponding to the aforementioned first preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image compressed data. Then, the image compressed data is decompressed to obtain a decompressed image. The decompressed image is then subjected to a second blurring process to obtain a blurred image. Based on the display window size of the client, the blurred image is processed (e.g., upsampled) to obtain a preview image.

[0075] The aforementioned addition of the first data pre-stored locally to the position corresponding to the first preset position in the image transmission data can refer to splicing the first data pre-stored locally to the header position of the image transmission data, so as to add the data that the server cut out from the image compression data back to the image transmission data and restore the image compression data.

[0076] Based on the description of the foregoing embodiments, FIG4, by way of example, illustrates another data processing procedure of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG4, the first process includes image compression processing, and the second process includes preset encoding processing (base64 processing as shown in FIG4) and cropping processing; the inverse processing of the corresponding second process includes decoding processing corresponding to the preset encoding processing and second addition processing corresponding to the cropping processing.

[0077] Specifically, as shown in Figure 4, server 210, in response to the client's request to send the target image, performs image compression processing on the target image to obtain image compressed data; performs base64 processing on the image compressed data to obtain image encoded data; performs cropping processing on the image encoded data, that is, cropping the second data at the second preset position from the image encoded data to obtain image transmission data; and sends the image transmission data to the client. Here, the second preset position can be the header position of the image encoded data, which can be determined based on the header position of the image compressed data; the second data can be the data obtained by base64 processing of the file header information included in the aforementioned image compressed data, which may include the data obtained by base64 processing of the parameters used in the image compression processing.

[0078] Accordingly, as shown in Figure 4, the client 220 receives image transmission data and performs a second addition process on the image transmission data, that is, adds the aforementioned second data pre-stored locally to the position corresponding to the second preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image encoded data; performs base64 decoding processing on the image encoded data to obtain image compressed data; then, performs decompression processing on the image compressed data to obtain a decompressed image; performs a second blurring processing on the decompressed image to obtain a blurred image; and processes the blurred image based on the display window size of the client to obtain a preview image.

[0079] The aforementioned addition of the pre-stored second data to the position corresponding to the second preset position in the image transmission data can refer to splicing the pre-stored second data to the header position of the image transmission data, so as to add the data that the server cut out from the image encoding data back to the image transmission data and restore the image encoding data.

[0080] Based on the description of the foregoing embodiments, FIG5, by way of example, illustrates another data processing procedure of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG5, the first processing includes downsampling and image compression processing, and the second processing includes cropping processing; the inverse processing of the corresponding second processing includes a first addition processing corresponding to the cropping processing.

[0081] Specifically, as shown in Figure 5, server 210, in response to the client's request to send the target image, downsamples the target image to obtain a downsampled image, compresses the downsampled image to obtain compressed image data, and then crops the compressed image data by removing the first data at a first preset position from the compressed image data to obtain image transmission data. The image transmission data is then sent to the client. Here, the first preset position can be the header position of the aforementioned compressed image data, and the first data can be the file header information included in the aforementioned compressed image data, including the parameters used in the image compression process.

[0082] Accordingly, as shown in Figure 5, the client 220 receives image transmission data, performs a first addition process on the image transmission data, that is, adds the first data pre-stored locally to the position corresponding to the aforementioned first preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image compressed data. Then, the image compressed data is decompressed to obtain a decompressed image. The decompressed image is then subjected to a second blurring process to obtain a blurred image. Based on the display window size of the client, the blurred image is upsampled to obtain a preview image.

[0083] Based on the description of the foregoing embodiments, FIG6, by way of example, illustrates another data processing procedure of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG6, the first processing includes downsampling and image compression processing, and the second processing includes preset encoding processing (base64 processing as shown in FIG6) and cropping processing; the inverse processing of the corresponding second processing includes decoding processing corresponding to the preset encoding processing and second addition processing corresponding to the cropping processing.

[0084] Specifically, as shown in Figure 6, server 210, in response to the client's request to send the target image, downsamples the target image to obtain a downsampled image, compresses the downsampled image to obtain compressed image data, performs base64 encoding on the compressed image data to obtain image encoded data, and performs cropping on the compressed image data, specifically removing the second data at a second preset position from the image encoded data to obtain image transmission data; and sends the image transmission data to the client. Here, the second preset position can be the header position of the image encoded data, which can be determined based on the header position of the compressed image data; the second data can be the data obtained by base64 encoding of the file header information included in the aforementioned compressed image data, which may include data obtained by base64 encoding of the parameters used in the image compression process.

[0085] Accordingly, as shown in Figure 6, the client 220 receives image transmission data and performs a second addition process on the image transmission data, that is, adds the aforementioned second data pre-stored locally to the position corresponding to the second preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image encoded data; performs base64 decoding processing on the image encoded data to obtain image compressed data; then, performs decompression processing on the image compressed data to obtain a decompressed image; performs a second blurring processing on the decompressed image to obtain a blurred image; and upsamples the blurred image based on the client's display window size to obtain a preview image.

[0086] Based on the description of the foregoing embodiments, FIG7, by way of example, illustrates another data processing procedure of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG7, the first processing includes downsampling, first blurring, and image compression processing, and the second processing includes cropping processing; the inverse processing of the corresponding second processing includes a first addition processing corresponding to the cropping processing.

[0087] Specifically, as shown in Figure 7, server 210, in response to the client's request to send the target image, downsamples the target image to obtain a downsampled image; performs a first blurring process on the downsampled image to obtain a blurred image; performs image compression processing on the blurred image to obtain image compressed data; performs cropping processing on the image compressed data, that is, crops out the first data at a first preset position from the image compressed data to obtain image transmission data; and sends the image transmission data to the client. Here, the first preset position can be the header position of the aforementioned image compressed data, and the first data can be the file header information included in the aforementioned image compressed data, including parameters collected during image compression processing.

[0088] Accordingly, as shown in Figure 7, the client 220 receives image transmission data, performs a first addition process on the image transmission data, that is, adds the first data pre-stored locally to the position corresponding to the aforementioned first preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image compressed data. Then, the image compressed data is decompressed to obtain a decompressed image; the decompressed image is then subjected to a second blurring process to obtain a blurred image; and based on the client's display window size, the blurred image is upsampled to obtain a preview image. The blur radii corresponding to the first blurring process and the second blurring process can be the same or different.

[0089] Based on the description of the foregoing embodiments, FIG8, by way of example, illustrates another data processing procedure of a system for generating preview media according to an embodiment of the present disclosure. As shown in FIG8, the first processing includes downsampling, first blurring, and image compression processing, and the second processing includes preset encoding processing (base64 processing as shown in FIG8) and cropping processing; the inverse processing of the corresponding second processing includes decoding processing corresponding to the preset encoding processing and second addition processing corresponding to the cropping processing.

[0090] Specifically, as shown in Figure 8, server 210, in response to the client's request to send the target image, downsamples the target image to obtain a downsampled image; performs a first blurring process on the downsampled image to obtain a blurred image; performs image compression processing on the blurred image to obtain image compressed data; performs base64 processing on the image compressed data to obtain image encoded data; performs cropping processing on the image encoded data, that is, cropping the second data at a second preset position from the image encoded data to obtain image transmission data; and sends the image transmission data to the client. Here, the second preset position can be the header position of the image encoded data, which can be determined based on the header position of the image compressed data; the second data can be the data obtained by base64 processing of the file header information included in the aforementioned image compressed data, which may include the data obtained by base64 processing of the parameters used in the image compression processing.

[0091] Accordingly, as shown in Figure 8, the client 220 receives image transmission data and performs a second addition process on the image transmission data, that is, adds the aforementioned second data pre-stored locally to the position corresponding to the second preset position in the image transmission data (i.e., the header position of the image transmission data), to obtain image encoded data; performs base64 decoding processing on the image encoded data to obtain image compressed data; then, performs decompression processing on the image compressed data to obtain a decompressed image; performs a second blurring processing on the decompressed image to obtain a blurred image; and upsamples the blurred image based on the client's display window size to obtain a preview image.

[0092] As shown in Figures 7 and 8, in the data processing flow, downsampling and the first blurring process can work together to help image compression better reduce the image bitrate, resulting in image compressed data with a smaller data volume. Subsequent cropping of the compressed image data, since the size of the cropped data is fixed, combined with the downsampling, first blurring, and image compression processes included in the first processing, can further reduce the amount of image data to be transmitted. For example, assuming the target image size is 1024*1280 and the data volume is 1.16M (megabytes), the target image is downsampled to obtain a downsampled image of size 33*42. Then, a first blurring process with a blur radius of, for example, 50, is performed on the downsampled image to obtain a blurred image. Next, image compression is performed on the blurred image to obtain compressed image data, where the compression quality is set to 50. Finally, the compressed image data is cropped, removing the header information (i.e., the image compression data) from the beginning of the compressed image data. The parameters used are cropped out (or the image compression data is pre-encoded to obtain image encoded data, and then the image encoded data is cropped out, that is, the file header information (i.e. the parameters used in the image compression) at the beginning of the image encoded data is cropped out after pre-encoding), to obtain image transmission data, where the size of the image transmission data is 468 bytes (or less). In this way, the image transmission data achieves a compression ratio of 1 / 2500 compared to the target image, with better compression effect, smaller amount of data to be transmitted, and faster transmission speed.

[0093] On the client side, the inverse processing based on the second processing and the image transmission data can recover part of the image transmission data. Combined with the server-side processing, it can better reduce the amount of transmitted data while preserving as much image information of the target image as possible, further protecting the quality of the preview image. This allows users to quickly view a high-quality preview image that includes more image information of the target image, further improving the user experience.

[0094] In some other possible examples, in the system for generating preview media, the server-side first processing may further include first blurring and image compression, and the second processing includes cropping; the client-side inverse processing includes a second addition process corresponding to the cropping. In some other possible examples, in the system for generating preview media, the server-side first processing may further include first blurring and image compression, and the second processing includes preset encoding and cropping; the client-side inverse processing includes decoding corresponding to the preset encoding and a second addition process corresponding to the cropping, etc., so that through the joint processing of the server and client, the user can quickly view a higher-quality preview image that includes more image information of the target image. In the above examples, the respective data processing procedures of the server and client in the system for generating preview media can be found in the foregoing examples of server and client data processing procedures, and will not be repeated here.

[0095] The scheme described in this disclosure allows a client to receive image transmission data from a server after performing a first and a second processing on a target image. The first and second processing methods reduce the bitrate of the target image and the amount of transmitted image data, respectively, resulting in smaller image transmission data and faster network transmission speed. The client then uses the inverse processing of the second processing and the image transmission data to recover a portion of the image transmission data, thereby generating a preview image. This provides a scheme for collaborative preview image generation between the server and client. This scheme reduces the amount of image transmission data, increases transmission speed, and recovers a portion of the image transmission data on the client side, resulting in a preview image containing more image information about the target image. The generated preview image is of relatively good quality, improving the user experience when viewing images on the network.

[0096] The scheme described in this disclosure refines the specific processing method of the first processing, and achieves the reduction of the image bit rate of the target image through at least one of downsampling, first blurring processing and image encoding processing.

[0097] The scheme described in this disclosure involves cropping data related to the parameters used in the image compression process. Cropping this type of data does not damage the actual image information of the target image, and this type of data can be pre-stored on the client to help recover the corresponding cropped data from the image compression data. Through the collaborative processing of the server and client, the amount of data transmitted in the image compression data can be reduced, the data transmission rate can be increased, and the loss of some actual image information can be avoided to a certain extent. More information about the target image can be preserved in the preview image to a certain extent, thus improving the quality of the preview image.

[0098] The scheme described in this disclosure allows the server to directly crop the image compressed data. The client, in collaboration with the server, adds the cropped first data to the position corresponding to the first preset position in the image transmission data to restore the cropped data. Through the collaborative processing of the server and client, the amount of image compressed data transmitted can be reduced, the data transmission rate can be increased, and the loss of actual image information can be avoided to a certain extent. Furthermore, more information about the target image can be preserved in the preview image, improving the quality of the preview image and enhancing the user experience.

[0099] The scheme described in this disclosure involves cropping the image encoded data obtained from image compression data encoding on the server side. This type of image encoded data can achieve better compatibility across different clients. Furthermore, the client, in collaboration with the server, adds the cropped second data to the position corresponding to the second preset position in the image transmission data to restore the cropped data. Through the collaborative processing of the server and client, the amount of image compressed data transmitted can be reduced, the data transmission rate can be increased, and the loss of image information can be avoided to a certain extent. This further ensures that more information of the target image can be retained in the preview image, improving the quality of the preview image. This type of image transmission data can achieve better compatibility on the client side, further improving the user experience.

[0100] The scheme described in this disclosure upsamples the decompressed image based on the client's display window size to obtain a preview image with a suitable client display window size, thereby further improving the display quality of the preview image and enhancing the user experience.

[0101] The scheme described in this disclosure blurs the decompressed image, which can smooth out jagged edges and / or mosaic effects that may occur in the decompressed image, thus improving the display effect of the preview image. Based on the display window size of the client, the blurred image is upsampled to obtain a preview image with a suitable display window size for the client, further improving the display quality of the preview image and enhancing the user experience.

[0102] The scheme described in this disclosure adds image transmission data to the first field of the request response corresponding to the request and sends it to the client, which can further improve data transmission speed, quickly provide users with a preview image containing more target image information, and improve user experience.

[0103] The scheme described in this disclosure generates a preview image and then displays it, thereby avoiding a black screen during the loading of the target image and improving the user experience.

[0104] The solution described in this disclosure receives image transmission data and target image loading address information from the server. The client can load the target image in the background based on the loading address information, generate and display a preview image during the loading process, and then display the target image to the user after loading is complete, thereby improving the user experience.

[0105] The scheme described in this disclosure involves the server performing first and second processing on the target image requested by the client to obtain image transmission data with a relatively smaller data volume by reducing the bit rate of the target image and the amount of image transmission data, thereby improving the network transmission speed of the image transmission data. Correspondingly, the client performs inverse processing based on the second processing and the image transmission data to recover part of the image transmission data and generate a preview image. This provides a scheme for the joint generation of preview images by the server and client. This scheme can reduce the amount of image transmission data, improve the transmission speed, and recover part of the image transmission data on the client to obtain a preview image containing more image information of the target image to a certain extent, thereby improving the user's experience when viewing images on the network.

[0106] The scheme described in this disclosure refines the specific processing method of the first processing, and achieves the reduction of the image bit rate of the target image through at least one of downsampling, first blurring processing and image encoding processing.

[0107] The scheme described in this disclosure involves cropping data related to the parameters used in the image compression process. Cropping this type of data does not damage the actual image information of the target image, and this type of data can be pre-stored on the client to help recover the corresponding cropped data from the image compression data. Through the collaborative processing of the server and client, the amount of data transmitted in the image compression data can be reduced, the data transmission rate can be increased, and the loss of some actual image information can be avoided to a certain extent. More information about the target image can be preserved in the preview image to a certain extent, thus improving the quality of the preview image.

[0108] The scheme described in this disclosure allows the server to obtain image transmission data through different cropping schemes, thereby reducing the amount of image transmission data. Furthermore, the cropped data can be recovered on the client side. This cropping process does not cause any actual loss of image data. Through collaborative processing between the server and client, the amount of image compression data transmitted can be reduced, the data transmission rate can be increased, and the loss of image information can be avoided to a certain extent. This further ensures that more information of the target image can be retained in the preview image, improving the quality of the preview image.

[0109] The scheme described in this disclosure adds image transmission data to the first field of the request response corresponding to the sent request before sending it to the client. This further improves data transmission speed, quickly provides users with preview images containing more target image information, and enhances the user experience.

[0110] The scheme described in this disclosure sends image transmission data and target image loading address information to the client, enabling the client to load the target image in the background based on the loading address information. During the loading process, a preview image is generated and displayed. After the target image is fully loaded, the target image is then displayed to the user, thus improving the user experience.

[0111] The scheme described in this disclosure involves the server performing first and second processing on the target image requested by the client to obtain image transmission data with a relatively smaller data volume by reducing the bit rate of the target image and the amount of image transmission data, thereby improving the network transmission speed of the image transmission data. Correspondingly, the client performs inverse processing based on the second processing and the image transmission data to recover part of the image transmission data and generate a preview image. This provides a scheme for the joint generation of preview images by the server and client. This scheme can reduce the amount of image transmission data, improve the transmission speed, and recover part of the image transmission data on the client to obtain a preview image containing more image information of the target image to a certain extent, thereby improving the user's experience when viewing images on the network.

[0112] According to the method, system, apparatus, device, and medium for generating preview media provided in the embodiments of this disclosure, a scheme for jointly generating preview images by a server and a client is provided. This scheme can reduce the amount of image transmission data, increase the transmission speed, and recover part of the image transmission data on the client side to obtain a preview image containing more image information of the target image to a certain extent, thereby improving the user's experience when viewing images on the network.

[0113] Corresponding to the above system embodiments, this disclosure also provides a method for generating preview media. The method is applied to a client of a system for generating preview media, and the system further includes a server. The method can be implemented through a first program, which can be installed on any electronic device. This electronic device can be implemented through any device, equipment, platform, device cluster, etc., with computing and processing capabilities. As shown in FIG9, the method may include the following steps S910-S920:

[0114] In step S910, image transmission data is received from the server. This image transmission data is data obtained and transmitted by the server in response to a client's request to send a target image, after performing a first processing and a second processing on the target image. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data. The implementation process of step S910 can be found in the preceding embodiments describing the process of receiving image transmission data, and will not be repeated here.

[0115] In step S920, a preview image of the target image is generated based on the inverse processing of the aforementioned second processing and the image transmission data. The implementation process of step S920 can be found in the preceding embodiments describing the process of generating the preview image of the target image, and will not be repeated here.

[0116] In some possible implementations, the first process includes at least one of the following processes: downsampling, first blurring, and image encoding.

[0117] In some possible implementations, the image transmission data is data obtained based on image compression data and cropping processing, wherein the image compression data is data obtained by performing the first processing on the target image, the first processing includes at least image compression processing, and the cropping processing cropped data is data related to the parameters used in the image compression processing.

[0118] In some possible implementations, the cropping process is a process for cropping first data at a first preset position in the image compressed data; correspondingly, step S920 includes the following steps 11-13: In step 11, the first data pre-stored locally is added to the position corresponding to the first preset position in the image transmission data to obtain the image compressed data. In step 12, the image compressed data is decompressed to obtain a decompressed image. In step 13, the preview image is generated based on the decompressed image.

[0119] In some possible implementations, the cropping process is a process for cropping second data at a second preset position in the image encoded data, where the image encoded data is data obtained by performing a preset encoding process on the image compressed data. Correspondingly, step S920 includes the following steps 21-24: In step 21, the second data pre-stored locally is added to the position corresponding to the second preset position in the image transmission data to obtain the image encoded data. In step 22, the image encoded data is subjected to decoding processing corresponding to the preset encoding process to obtain the image compressed data. In step 23, the image compressed data is decompressed to obtain a decompressed image. In step 24, the preview image is generated based on the decompressed image.

[0120] In some possible implementations, the aforementioned process of generating the preview image based on the decompressed image includes: upsampling the decompressed image based on the display window size of the client to obtain the preview image. In some possible implementations, the aforementioned process of generating the preview image based on the decompressed image includes: performing a second blurring process on the decompressed image to obtain a blurred image; and upsampling the blurred image based on the display window size of the client to obtain the preview image.

[0121] In some possible implementations, the image transmission data is added to the first field of the request response corresponding to the sending request and sent to the client; receiving the image transmission data from the server includes: receiving the request response corresponding to the sending request from the server; and parsing the image transmission data from the first field of the request response. In some possible implementations, after generating the preview image of the target image, the method further includes: displaying the preview image.

[0122] In some possible implementations, step S910 includes: receiving the image transmission data and the loading address information corresponding to the target image from the server; the method further includes: loading the target image using the loading address information; after loading the target image, replacing the displayed preview image with the target image. Corresponding to the above system embodiments, this disclosure also provides a method for generating preview media, wherein the method is applied to a server of a system for generating preview media, the system for generating preview media further includes a client, and the method can be implemented by a second program that can be installed in any electronic device, which can be implemented by any device, equipment, platform, device cluster, etc., with computing and processing capabilities. As shown in FIG9, the method may include the following steps S1010-S1020:

[0123] In step S1010, in response to the client's request to send the target image, the target image undergoes a first processing and a second processing to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of image transmission data. The implementation process of step S1010 can be found in the image transmission data acquisition process described in the foregoing embodiments, and will not be repeated here.

[0124] In step S1020, image transmission data is sent to the client so that the client can receive the image transmission data. Based on the inverse processing of the aforementioned second process and the image transmission data, a preview image of the target image is generated. The implementation process of step S1020 can be found in the implementation process of sending the image transmission data to the client described in the previous embodiments, and will not be repeated here.

[0125] In some possible implementations, the first processing includes at least one of the following processes: downsampling, first blurring, and image encoding.

[0126] In some possible implementations, step S1010 may include the following steps: performing the first processing on the target image to obtain image compressed data, wherein the first processing includes at least image compression processing; and obtaining the image transmission data based on the image compressed data and the cropping processing, wherein the data cropped by the cropping processing is data related to the parameters used in the image compression processing. In some possible implementations, the cropping processing is a process for cropping first data at a first preset position in the image compressed data.

[0127] In some possible implementations, the cropping process is a process for cropping second data at a second preset position in the image encoded data, wherein the image encoded data is data obtained by performing preset encoding processing on the image compressed data.

[0128] In some possible implementations, step S1020 includes the following steps: adding the image transmission data to the first field of the request response corresponding to the sending request; and sending the request response with the image transmission data added to the first field to the client.

[0129] In some possible implementations, step S1020 includes the following steps: sending the image transmission data and the loading address information of the target image to the client; enabling the client to load the target image using the loading address information; and after the target image is loaded, replacing the displayed preview image with the target image. The above describes specific embodiments of this disclosure; other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims may be performed in a different order than in the embodiments, and the desired result may still be achieved. Furthermore, the processes depicted in the drawings do not necessarily need to follow the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous. Corresponding to the above system and method embodiments, this disclosure provides an apparatus 1100 for generating preview media, the schematic block diagram of which is shown in FIG11. It is used to execute the method shown in FIG9. The apparatus 1100 is deployed on a client of a system for generating preview media. The system for generating preview media further includes a server. The apparatus 1100 for generating preview media includes: a receiving module 1110 configured to receive image transmission data from the server, wherein the image transmission data is data obtained and sent by the server after performing a first processing and a second processing on the target image in response to a request to send a target image sent by the client. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data; and a generating module 1120 configured to generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0130] In some possible implementations, the first process includes at least one of the following processes: downsampling, first blurring, and image encoding.

[0131] In some possible implementations, the image transmission data is data obtained based on image compression data and cropping processing, wherein the image compression data is data obtained by performing the first processing on the target image, the first processing includes at least image compression processing, and the cropping processing cropped data is data related to the parameters used in the image compression processing.

[0132] In some possible implementations, the cropping process is used to crop the first data at a first preset position in the image compressed data; correspondingly, the generation module 1120 is specifically configured to add the first data pre-stored locally to the position corresponding to the first preset position in the image transmission data to obtain the image compressed data; decompress the image compressed data to obtain a decompressed image; and generate the preview image based on the decompressed image.

[0133] In some possible implementations, the cropping process is a process for cropping second data at a second preset position in the image encoded data, where the image encoded data is data obtained by performing a preset encoding process on the image compressed data; correspondingly, the generation module 1120 is specifically configured to add the second data pre-stored locally to the position corresponding to the second preset position in the image transmission data to obtain the image encoded data; perform decoding processing corresponding to the preset encoding process on the image encoded data to obtain the image compressed data; perform decompression processing on the image compressed data to obtain a decompressed image; and generate the preview image based on the decompressed image.

[0134] In some possible implementations, the generation module 1120 is specifically configured to upsample the decompressed image based on the display window size of the client to obtain the preview image.

[0135] In some possible implementations, the generation module 1120 is specifically configured to perform a second blurring process on the decompressed image to obtain a blurred image; and to upsample the blurred image based on the display window size of the client to obtain the preview image.

[0136] In some possible implementations, the image transmission data is sent to the client by being added to the first field of the request response corresponding to the sending request; the receiving module 1110 is specifically configured to receive the request response corresponding to the sending request from the server; and parse the image transmission data from the first field of the request response.

[0137] In some possible implementations, a display module (not shown) is also included, configured to display the preview image after the preview image of the target image is generated.

[0138] In some possible implementations, the receiving module 1110 is specifically configured to receive image transmission data and loading address information corresponding to the target image from the server; correspondingly, the device further includes: a loading display module (not shown in the figure), configured to load the target image using the loading address information; after the target image is loaded, the displayed preview image is replaced with the target image.

[0139] Corresponding to the above system and method embodiments, this disclosure provides an apparatus 1200 for generating preview media, the schematic block diagram of which is shown in FIG12. It is used to execute the method shown in FIG10. The apparatus 1200 for generating preview media is deployed on the server side of a system for generating preview media. The system for generating preview media further includes a client. The apparatus 1200 for generating preview media includes: a processing module 1210, configured to, in response to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data; and a sending module 1220, configured to send the image transmission data to the client so that the client receives the image transmission data, and generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0140] In some possible implementations, the first processing includes at least one of the following processes: downsampling, first blurring, and image encoding.

[0141] In some possible implementations, the processing module 1210 is specifically configured to perform the first processing on the target image to obtain image compressed data, wherein the first processing includes at least image compression processing; and based on the image compressed data and cropping processing, to obtain the image transmission data, wherein the data cropped by the cropping processing is data related to the parameters used in the image compression processing.

[0142] In some possible implementations, the cropping process is a process for cropping first data at a first preset position in the image compressed data.

[0143] In some possible implementations, the cropping process is a process for cropping second data at a second preset position in the image encoded data, wherein the image encoded data is data obtained by performing preset encoding processing on the image compressed data.

[0144] In some possible implementations, the sending module 1220 is specifically configured to add the image transmission data to the first field of the request response corresponding to the sending request; and send the request response with the image transmission data added to the first field to the client.

[0145] In some possible implementations, the sending module 1220 is specifically configured to send the image transmission data and the loading address information of the target image to the client; so that the client can use the loading address information to load the target image; after the target image is loaded, the preview image to be displayed is replaced with the target image.

[0146] The above method embodiments, device embodiments, and system embodiments correspond to each other. For detailed descriptions, please refer to the description in the system embodiments section, which will not be repeated here. The method embodiments and device embodiments are derived based on the corresponding system embodiments and have the same technical effects as the corresponding system embodiments. For detailed descriptions, please refer to the corresponding system embodiments.

[0147] This disclosure provides an electronic device, including a memory and a processor. The memory stores executable code, and when the processor executes the executable code, it implements the method shown in FIG9 or FIG10. Referring now to FIG13, a schematic diagram of a structure suitable for implementing an electronic device according to an embodiment of this disclosure is shown. The electronic device shown in FIG13 is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this disclosure.

[0148] As shown in Figure 13, the electronic device may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 1301, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1302 or a program loaded from a storage device 1308 into a random access memory (RAM) 1303. The RAM 1303 also stores various programs and data required for the operation of the electronic device. The processing unit 1301, ROM 1302, and RAM 1303 are interconnected via a bus 1304. An input / output (I / O) interface 1305 is also connected to the bus 1304.

[0149] Typically, the following devices can be connected to I / O interface 1305: input devices 1306 including, for example, touchscreens, touchpads, keyboards, mice, etc.; output devices 1307 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1308 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1309. Communication device 1309 allows the electronic device to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 6 shows an electronic device with various devices, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively. Each box shown in Figure 13 may represent one device, or multiple devices may be represented as needed.

[0150] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 1309, or installed from storage device 1308, or installed from ROM 1302. When the computer program is executed by processing device 1301, it performs the functions defined in the methods of embodiments of this disclosure.

[0151] This disclosure also provides a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method shown in FIG9 or FIG10 provided in this disclosure.

[0152] It should be noted that the computer-readable medium described in the embodiments of this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having 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 device, magnetic storage device, or any suitable combination thereof. In the embodiments of this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In the embodiments of this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium may be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (Radio Frequency), etc., or any suitable combination thereof.

[0153] 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. The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: respond to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data, wherein the first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data; send the image transmission data to the client so that the client receives the image transmission data; and generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0154] Alternatively, the electronic device may: receive image transmission data from a server, wherein the image transmission data is data obtained and transmitted by the server in response to a request from the client to send a target image, performing a first processing and a second processing on the target image, wherein the first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data; and generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

[0155] Computer program code for performing the operations of embodiments of this disclosure can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and 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 can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0156] The various embodiments in this disclosure are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the embodiments for storage media and computing devices are basically similar to the method embodiments, so they are described more simply; relevant parts can be referred to the descriptions of the method embodiments.

[0157] Those skilled in the art will recognize that the functions described in the embodiments of this disclosure in one or more of the foregoing examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented in software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium.

[0158] The specific embodiments described above further illustrate the purpose, technical solutions, and beneficial effects of the embodiments of this disclosure. It should be understood that the above descriptions are merely specific embodiments of the present disclosure and are not intended to limit the scope of protection of this disclosure. Any modifications, equivalent substitutions, or improvements made based on the technical solutions of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A method for generating preview media, applied to a client of a system for generating preview media, the system for generating preview media further comprising a server, the method comprising: Image transmission data is received from the server, wherein the image transmission data is data obtained and sent by the server in response to the client's request to send a target image, after performing a first processing and a second processing on the target image, wherein the first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data. Based on the inverse processing of the second processing and the image transmission data, a preview image of the target image is generated.

2. The method of claim 1, wherein the first processing includes at least one of the following processes: downsampling, first blurring, and image encoding.

3. The method of claim 1, wherein the image transmission data is data obtained based on image compression data and cropping processing, wherein, The image compression data is the data obtained by performing the first processing on the target image. The first processing includes at least image compression processing, and the data cropped by the cropping processing is data related to the parameters used in the image compression processing.

4. The method as described in claim 1 or 3, wherein the cropping process is a process for cropping the first data at a first preset position in the image compressed data; The step of generating a preview image of the target image based on the inverse processing of the second processing and the image transmission data includes: The first data, which is pre-stored locally, is added to the position corresponding to the first preset position in the image transmission data to obtain the image compressed data; The image compression data is decompressed to obtain a decompressed image; The preview image is generated based on the decompressed image.

5. The method as described in claim 1 or 3, wherein the cropping process is a process for cropping second data at a second preset position in the image encoded data, and the image encoded data is data obtained by performing preset encoding processing on the image compressed data; The step of generating a preview image of the target image based on the inverse processing of the second processing and the image transmission data includes: The second data, which is pre-stored locally, is added to the position corresponding to the second preset position in the image transmission data to obtain the image encoded data; The image encoded data is subjected to decoding processing corresponding to the preset encoding processing to obtain the image compressed data; The image compression data is decompressed to obtain a decompressed image; The preview image is generated based on the decompressed image.

6. The method of claim 4 or 5, wherein generating the preview image based on the decompressed image comprises: Based on the display window size of the client, the decompressed image is upsampled to obtain the preview image.

7. The method of claim 4 or 5, wherein generating the preview image based on the decompressed image comprises: The decompressed image is subjected to a second blurring process to obtain a blurred image; Based on the display window size of the client, the blurred image is upsampled to obtain the preview image.

8. The method of claim 1, wherein the image transmission data is added to the first field of the request response corresponding to the sending request and sent to the client; Receiving image transmission data from the server includes: Receive the request response corresponding to the sending request from the server; The image transmission data is parsed from the first field of the request response.

9. The method of claim 1, wherein receiving image transmission data from the server includes: Receive the image transmission data and the loading address information corresponding to the target image from the server; The method further includes: The target image is loaded using the loading address information; After the target image is loaded, the preview image will be replaced with the target image.

10. A method for generating preview media, applied to a server of a system for generating preview media, the system for generating preview media further comprising a client, the method comprising: In response to a client's request to send a target image, the target image is subjected to a first processing and a second processing to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data. The image transmission data is sent to the client so that the client receives the image transmission data. Based on the inverse processing of the second processing and the image transmission data, a preview image of the target image is generated.

11. The method of claim 10, wherein the first processing includes at least one of the following processes: downsampling, first blurring, and image encoding.

12. The method of claim 10, wherein performing a first processing and a second processing on the target image to obtain image transmission data includes: The target image is subjected to the first processing to obtain image compressed data, wherein the first processing includes at least image compression processing; Based on the image compression data and cropping process, the image transmission data is obtained, wherein the data cropped by the cropping process is data related to the parameters used in the image compression process.

13. The method as described in claim 10 or 12, wherein the cropping process is a process for cropping first data at a first preset position in the image compressed data; Alternatively, the cropping process can be used to crop the second data at a second preset position in the image encoded data, where the image encoded data is the data obtained by performing preset encoding processing on the image compressed data.

14. The method of claim 10, wherein sending the image transmission data to the client comprises: The image transmission data is added to the first field of the request response corresponding to the sending request; The request reply containing the image transmission data in the first field is sent to the client.

15. The method of claim 10, wherein sending the image transmission data to the client comprises: The image transmission data and the loading address information of the target image are sent to the client, so that the client can load the target image using the loading address information; After the target image is loaded, the preview image will be replaced with the target image.

16. A system for generating preview media, the system comprising a server and a client, wherein, The server is configured to respond to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted image transmission data. The image transmission data is sent to the client; The client is configured to receive the image transmission data and generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

17. An apparatus for generating preview media, wherein a client deployed in a system for generating preview media further includes a server, the apparatus comprising: The receiving module is configured to receive image transmission data from the server. The image transmission data is data obtained by the server performing a first processing and a second processing on the target image in response to a request to send a target image sent by the client. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data. The generation module is configured to generate a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

18. An apparatus for generating preview media, wherein a server of a system for generating preview media is deployed, the system for generating preview media further comprising a client, the apparatus comprising: The processing module is configured to respond to a client's request to send a target image, perform a first processing and a second processing on the target image to obtain image transmission data. The first processing is for reducing the image bitrate of the target image, and the second processing is for reducing the amount of transmitted data of the image transmission data. The sending module is configured to send the image transmission data to the client so that the client receives the image transmission data and generates a preview image of the target image based on the inverse processing of the second processing and the image transmission data.

19. An electronic device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 1-9 or 10-15.

20. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method according to any one of claims 1-9 or 10-15.

21. A computer program product tangibly stored in a computer storage medium and comprising computer-executable instructions that, when executed by a device, cause the device to perform the method according to any one of claims 1-9 or 10-15.

Citation Information

Patent Citations

  • Method and device for displaying pictures

    CN110069728A

  • Network image display method and system, electronic equipment and storage medium

    CN111581553A

  • Preview generation method and device and electronic equipment

    CN117594197A

  • Method, system and device for generating preview media, equipment and medium

    CN118433448A

  • Communication apparatus, control method, and storage medium

    US20180357232A1