Method and device for improving display fluency of intelligent glasses, equipment and medium

By calculating the motion vectors in the video frame queue of smart glasses, predicted frames are generated to solve the problem of discontinuous images in split AR/VR devices during fast movements, thus achieving a smoother display effect.

CN121665064APending Publication Date: 2026-03-13GEER TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-25
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

In existing technologies, split-type AR/VR devices exhibit severe screen jumping, ghosting, and motion blur when the user turns their head or moves quickly, resulting in discontinuous display.

Method used

By acquiring the queue of rendered video frames, the motion vectors of the current frame and the reference frame are calculated using a block matching algorithm, and a prediction frame is generated to fill in the gaps in visual information and improve display smoothness.

Benefits of technology

It effectively reduces screen flickering and ghosting, improves visual comfort and immersion, and significantly enhances display continuity and smoothness.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121665064A_ABST
    Figure CN121665064A_ABST
Patent Text Reader

Abstract

The invention relates to the field of wearable equipment, in particular to a method, device and equipment for improving the display fluency of intelligent glasses and a medium. The method comprises the following steps: acquiring a rendered video frame queue; calculating a motion vector of each block in the current frame through a block matching algorithm based on the current frame and the reference frame in the queue; and based on the calculated motion vector, generating a prediction frame based on the reference frame so as to improve the display fluency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of wearable devices, and more specifically, to a method, apparatus, device, and medium for improving the display smoothness of smart glasses. Background Technology

[0002] In existing technologies, split-type AR / VR devices, in order to balance weight, power consumption, and computing performance, generally adopt a solution where a mobile terminal or PC (hereinafter collectively referred to as the host) performs high-intensity graphics rendering, and then transmits the video stream to the head-mounted display device (glasses) via wired or wireless means. Under this architecture, in order to solve the mismatch between the instantaneous fluctuations in rendering speed and transmission and display speed, the system usually uses a buffer queue. The host stores the rendered video frames sequentially into this queue, and the encoding module retrieves frames from the queue, compresses them, and then transmits them to the glasses.

[0003] However, this solution has a significant drawback: when a user turns their head or moves quickly, their movement speed may exceed the device's fixed rendering and transmission frame rate. Since the buffer queue is only responsible for sequentially transmitting rendered frames, the image received by the glasses is a discontinuous "snapshot" on the timeline. Under rapid movement, the lack of necessary visual transition information between these discrete snapshots results in the human eye perceiving drastic image jumps, ghosting, and motion blur. Summary of the Invention

[0004] One objective of this disclosure is to provide a method for improving the smoothness of smart glasses displays, which can solve the problem of unclear images when the user turns their head.

[0005] According to a first aspect of this disclosure, a method for improving the display smoothness of smart glasses is provided, the method comprising: Get the queue of rendered video frames; Based on the current frame and reference frame in the queue, the motion vector of each block in the current frame is calculated using a block matching algorithm; Based on the calculated motion vectors, a prediction frame is generated based on the reference frame to improve display smoothness.

[0006] According to a second aspect of this disclosure, an apparatus for improving the display smoothness of smart glasses is provided, comprising: The acquisition module is used to acquire the queue of rendered video frames. The calculation module is used to calculate the motion vector of each block in the current frame based on the current frame and the reference frame in the queue using a block matching algorithm; The generation module is used to generate a prediction frame based on the reference frame, based on the calculated motion vector, in order to improve the smoothness of the display.

[0007] According to a third aspect of this disclosure, an electronic device is provided, including a processor and a memory, the memory storing computer instructions that, when executed by the processor, implement any of the methods in the first aspect.

[0008] According to a fourth aspect of this disclosure, a storage medium is provided that stores computer instructions thereon, which, when executed by a processor, implement any of the methods of the first aspect.

[0009] One technical advantage of this disclosure is that it provides a method to improve the smoothness of smart glasses displays. This method intelligently calculates precise motion vectors between existing, discrete rendered frames and generates and inserts smoothly transitioning predicted frames. This effectively compensates for the information loss along the timeline in the original frame sequence, transforming the user's perceived image from a series of discontinuous "snapshots" into a continuous, smooth dynamic image. This significantly reduces screen jumps, ghosting, and motion blur that occur when quickly turning the head or moving, greatly enhancing visual comfort and immersion.

[0010] Other features and advantages of the embodiments of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0011] The accompanying drawings, which form part of this specification, illustrate embodiments of the present disclosure and, together with the specification, serve to explain the principles of the embodiments of the present disclosure.

[0012] Figure 1 This is a flowchart of the method for improving the display smoothness of smart glasses provided in this application; Figure 2 This is a schematic diagram of the device provided in this application for improving the display smoothness of smart glasses; Figure 3 This is a schematic diagram of the electronic device provided in this application; Detailed Implementation Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the invention.

[0013] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the invention or its application or use.

[0014] Technologies and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such technologies and equipment should be considered part of the instruction manual.

[0015] In all the examples shown and discussed herein, any specific values ​​should be interpreted as merely exemplary and not as limitations. Therefore, other examples of exemplary embodiments may have different values.

[0016] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0017] It should be noted that all actions involving the acquisition of signals, information, or data in this embodiment are carried out in compliance with the relevant data protection laws and regulations of the country where the location is situated, and with authorization from the owner of the relevant equipment.

[0018] In one example of this embodiment, a method for improving the display smoothness of smart glasses is provided, the method including steps S11-S13.

[0019] Step S11: Obtain the queue of rendered video frames.

[0020] In this embodiment, the video frame sequence can first be obtained from the rendering device or the glasses themselves. Currently, smart glasses adopt a split architecture, where the glasses themselves do not undertake the main rendering task; all video frames are rendered and generated by the connected mobile terminal or computing host. However, the smart glasses themselves can also be used for rendering. These rendered video frames are typically continuously fed into a first-in, first-out buffer, forming a continuous video frame queue. This queue, acting as an intermediary between the rendering device and the display device, alleviates fluctuations in rendering and transmission rates and provides the necessary data foundation for subsequent image processing.

[0021] Step S12: Based on the current frame and reference frame in the queue, calculate the motion vector of each block in the current frame using a block matching algorithm.

[0022] During the motion vector calculation phase, the current frame can be selected from the video frame queue, and the adjacent previous frame can be used as the reference frame. The reference frame can usually be the frame before the current frame, or it can be a previous frame in the queue with a specific time interval, depending on the actual processing requirements.

[0023] Next, a block matching algorithm is used for motion estimation. First, the current frame is divided into multiple regular image blocks, assuming that the pixels within each block have a consistent motion trend. For each image block in the current frame, a search is performed within the corresponding region of the reference frame to find the most similar image block. By comparing the similarity of pixel features between the two image blocks, the best matching position is found, thus determining the displacement of the image block from the reference frame to the current frame. This displacement vector is the desired motion vector.

[0024] Step S13: Based on the calculated motion vectors, a prediction frame is generated based on the reference frame to improve display smoothness.

[0025] In this embodiment, based on the obtained motion vector data, the system reconstructs the image content in the reference frame by displacement. Specifically, each image block in the reference frame moves according to the direction and distance indicated by its corresponding motion vector. These displacement-adjusted image blocks are then recombined into a complete image, thus generating a predicted frame between the reference frame and the current frame.

[0026] This predicted frame effectively fills in the visual information gaps between adjacent frames in the original video sequence. When this newly generated frame is inserted into the corresponding position in the original video frame queue, the number of images displayed per unit of time is increased. This process significantly improves the resolution of image updates, thereby effectively reducing image ghosting and jerking caused by insufficient frame rate in fast-moving scenes, ultimately achieving a substantial improvement in display smoothness.

[0027] In one example of this embodiment, calculating the motion vector using the block matching algorithm includes: dividing the current frame into multiple non-overlapping blocks; for a first target block in the current frame, setting a search window in a reference frame, wherein the first target block is any block in the current frame; determining the similarity metric between the first target block and each candidate block in the search window; and, based on the similarity metric, determining a target candidate block that matches the first target block from the search window, and using the displacement of the target candidate block relative to the current block as the motion vector of the first target block.

[0028] In this example, during the calculation of motion vectors using the block matching algorithm, the current frame is first uniformly divided into multiple non-overlapping regular image blocks. For any selected block in the current frame, a search region of a predetermined size is set around the corresponding position in the reference frame. This search region can be rectangular, circular, or a shape corresponding to the shape of the image block in the current frame. Within the set search region, the algorithm sequentially compares the similarity between the selected block and candidate blocks at each possible position in the reference frame. This similarity is quantified using a specific metric; the greater the similarity, the higher the matching degree between the two image blocks. By traversing all possible candidate positions within the search region, the candidate block that best matches the selected block in the current frame is finally found. The positional difference between these two blocks constitutes the motion vector of that image block, which accurately describes the trajectory of the image content from the reference frame to the current frame. By repeating the above process for each image block in the current frame, the complete inter-frame motion can be obtained.

[0029] In one example of this embodiment, the similarity metric is the sum of the absolute differences in the grayscale values ​​of corresponding pixels in the first target block and the candidate block. for:

[0030] in, Let (u, v) be the pixel size of the first target block, and (u, v) be the displacement vector of the candidate block relative to the first target block. The pixel of the current frame grayscale value, Pixels of the reference frame grayscale value, The reference coordinates of the first target block in the current frame.

[0031] In this example, the sum of absolute differences can be used as a metric to measure the similarity of image patches. This method evaluates the similarity between two image patches by calculating the grayscale differences of all corresponding pixels. Specifically, for a target patch with reference coordinates (i,j) in the current frame and a candidate patch with displacement vector (u,v) in the reference frame, the calculation process for the sum of absolute differences is as follows: Pixels at the same relative positions in the two image patches are compared one by one, and the absolute difference between the grayscale values ​​of these two pixels is taken. Then, the absolute differences of all pixels within the image patch are accumulated, and the final sum is the similarity metric. The smaller this value, the closer the two image patches are in visual content, and the higher their matching degree.

[0032] This measurement method can be implemented through simple arithmetic operations, and has the advantages of high computational efficiency and simple hardware implementation, making it particularly suitable for high frame rate application scenarios that require real-time processing.

[0033] In one example of this embodiment, determining the target candidate block that matches the first target block from the search window based on the similarity metric includes: summing the absolute differences. The smallest candidate block is determined as the target candidate block.

[0034] In determining the best matching block, the filtering can be accomplished by comparing the similarity metrics of all candidate blocks within the search window. Specifically, the algorithm records the sum of the absolute differences between each candidate block and the current target block, and then searches for the minimum of these values.

[0035] The motion vector of the target candidate block can be obtained by referring to the following formula.

[0036] in, Let W be the motion vector of the target candidate block, and W be the search window.

[0037] When a candidate block is found that minimizes the sum of absolute differences, it is determined as the target candidate block that best matches the current target block. The physical meaning of this selection mechanism is that the smaller the grayscale difference between corresponding pixels between two image blocks, the closer their visual content is. Therefore, the candidate block corresponding to the minimum sum of absolute differences is naturally the most similar image block.

[0038] This minimum difference-based matching criterion effectively ensures the accuracy of motion vector estimation, laying the foundation for generating high-quality prediction frames. The entire matching process can be completed through simple numerical comparisons, meeting the requirements of real-time processing while ensuring accuracy.

[0039] In one example of this embodiment, the search window is a rectangular area in the reference frame coordinate system, centered on the reference coordinates of the first target block and extending P pixels along each coordinate axis direction.

[0040] When determining the search area, a rectangular search window can be drawn within the coordinate system of the reference frame, which can be a rectangular area with a range of (2P+1)×(2P+1). The positioning reference of this window is the initial position coordinates of the target block in the current frame, that is, its corresponding point in the reference frame is used as the center reference point.

[0041] Starting from the central reference point, the search area expands outwards by a predetermined pixel distance along both the horizontal and vertical directions of the image. This expansion distance is determined by the parameter P, and the resulting search area is a regular rectangle whose boundary is exactly P pixels from the center point.

[0042] In this example, by appropriately setting the value of the extension parameter P, the number of candidate locations that the algorithm needs to traverse can be effectively controlled while ensuring the accuracy of motion estimation. This design considers both the maximum possible displacement of the image content and the computational efficiency requirements in practical applications, providing a reasonable search space for the subsequent block matching process.

[0043] In one example of this embodiment, a pixel-level compensation method based on motion vectors can be used during the generation of the prediction frame. Specifically, the grayscale value of each pixel in the prediction frame is not obtained by re-rendering, but is generated by precisely displacing the pixels at the corresponding positions in the reference frame.

[0044] For the coordinates in the predicted frame are The grayscale value of each pixel is derived from its corresponding position in the reference frame after motion vector adjustment. Specifically, this position is determined by the optimal motion vector of the target block. Decision, i.e., in the reference frame The pixel grayscale value at the coordinates. In this way, the image content in the reference frame is shifted and reassembled according to the calculated motion trajectory, ultimately forming a complete prediction frame.

[0045] This compensation mechanism can accurately reproduce the continuous motion of image content between frames, effectively filling the visual information gaps in the original frame sequence. The generated predicted frames maintain visual coherence with the preceding and following frames while significantly improving the temporal resolution of the image, providing key technical support for improving display smoothness.

[0046] In this embodiment, the predicted frame is inserted between the current frame and the reference frame to form a higher frame rate video frame queue for video output.

[0047] In this example, after the predicted frame is generated, it is inserted between the corresponding reference frame and the current frame in the original video frame sequence. This insertion adds a visual transition frame between two previously adjacent frames, thus enriching the continuity of the image in the temporal dimension.

[0048] After frame interpolation, the frame rate of the video frame queue is substantially improved. If the original queue has a frame rate of K frames per second, the frame rate of the new queue after inserting the predicted frames will increase to 2K frames per second. This doubling of the frame rate significantly shortens the display time interval between each frame.

[0049] Finally, this enhanced high frame rate video frame queue will be sent to the video encoding module for compression processing, and then transmitted to the display device. By increasing the number of frames displayed per unit time, this technology effectively reduces image ghosting and jerking in fast-moving scenes, significantly improving the smoothness and stability of visual display.

[0050] In one example of this embodiment, the startup and execution of the solution can be triggered by various conditions to ensure automatic operation when needed, thereby achieving a balance between optimizing display effects and saving system resources. For example, it can be based on data judgment from motion sensors. The inertial measurement units such as gyroscopes and accelerometers built into the smart glasses continuously monitor the user's head movement state. When the system detects that the head angular velocity or linear acceleration exceeds a preset threshold, it determines that the user is in a state of rapid head turning or movement, and immediately initiates the motion estimation and compensation process of this solution. This motion state-based triggering mechanism can accurately match the user's actual experience needs and provide timely image optimization in scenarios most prone to motion blur. Alternatively, it can be achieved through real-time monitoring of system performance. The system continuously tracks key performance indicators such as rendering frame rate and transmission latency. When the frame rate is detected to be lower than a set threshold, or when abnormal fluctuations occur in frame transmission latency, the frame interpolation processing function of this solution is automatically activated. This performance-oriented triggering condition ensures that even when the system's rendering capabilities are insufficient or the transmission link is unstable, a smooth visual experience can still be maintained through subsequent processing.

[0051] Furthermore, this solution supports intelligent triggering based on application type. The system can intelligently enable or disable motion compensation based on the currently running application type (such as games, video playback, user interfaces, etc.) and its requirements for display smoothness. For interactive applications requiring fast response, the system can be set to run this solution continuously; while for static or low-speed motion scenarios, the processing frequency can be appropriately reduced to achieve energy saving. This multi-layered triggering mechanism ensures that the technical solution achieves maximum effectiveness in the most suitable scenarios.

[0052] This application provides a device 100 for improving the display smoothness of smart glasses, such as... Figure 2 As shown, it includes: an acquisition module 110, used to acquire a queue of rendered video frames; a calculation module 120, used to calculate the motion vector of each block in the current frame based on the current frame and the reference frame in the queue using a block matching algorithm; and a generation module 130, used to generate a prediction frame based on the calculated motion vector and the reference frame to improve display smoothness. Optionally, calculating the motion vector using the block matching algorithm includes: dividing the current frame into multiple non-overlapping blocks; for a first target block in the current frame, setting a search window in a reference frame, where the first target block is any block in the current frame; determining the similarity metric between the first target block and each candidate block in the search window; based on the similarity metric, determining a target candidate block that matches the first target block from the search window, and using the displacement of the target candidate block relative to the current block as the motion vector of the first target block.

[0053] Optionally, the similarity metric is the sum of the absolute differences in the grayscale values ​​of corresponding pixels in the first target block and the candidate block. for:

[0054] in, Let (u, v) be the pixel size of the first target block, and (u, v) be the displacement vector of the candidate block relative to the first target block. The pixel of the current frame grayscale value, Pixels of the reference frame grayscale value, The reference coordinates of the first target block in the current frame.

[0055] Optionally, based on a similarity metric, target candidate blocks matching the first target block are determined from the search window, including: Sum of absolute differences The smallest candidate block is determined as the target candidate block.

[0056] Optionally, the search window is a rectangular area in the reference frame coordinate system, centered on the reference coordinates of the first target block, and extending P pixels along each coordinate axis direction.

[0057] Optionally, the predicted frame is compensated based on the following formula:

[0058] in, To predict pixels in a frame grayscale value, The motion vector of the target candidate block.

[0059] Optionally, the predicted frame is inserted between the current frame and the reference frame to form a higher frame rate video frame queue for video output.

[0060] This application also provides an electronic device 200, as shown in FIG3, including a processor 201 and a memory 202. The memory 202 stores computer instructions. When the computer instructions are executed by the processor 201, they implement any one of the above-described methods for improving the display smoothness of smart glasses and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0061] This application also provides a storage medium storing computer instructions. When executed by a processor, the computer instructions implement any one of the above-described embodiments for improving the display smoothness of smart glasses, and achieve the same technical effect. To avoid repetition, further details are omitted here. 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 device and apparatus embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0062] The foregoing has described specific embodiments of this disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0063] Embodiments of this disclosure may be systems, methods, and / or computer program products. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of the embodiments of this disclosure.

[0064] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination thereof. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0065] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0066] Computer program instructions used to perform the operations of embodiments of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute 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 a remote computer, the remote computer may 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 may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized based on state information from the computer-readable program instructions. This electronic circuitry can execute the computer-readable program instructions to implement various aspects of the embodiments of this disclosure.

[0067] Various aspects of embodiments of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0068] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0069] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0070] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions. It will be known to those skilled in the art that implementation in hardware, implementation in software, and implementation in a combination of software and hardware are equivalent.

[0071] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, and are not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for improving the display smoothness of smart glasses, characterized in that, include: Get the queue of rendered video frames; Based on the current frame and reference frame in the queue, the motion vector of each block in the current frame is calculated using a block matching algorithm; Based on the calculated motion vectors, a predicted frame is generated based on the reference frame to improve display smoothness.

2. The method according to claim 1, characterized in that, The calculation of motion vectors using the block matching algorithm includes: Divide the current frame into multiple non-overlapping blocks; For the first target block in the current frame, a search window is set in the reference frame, where the first target block is any block in the current frame; Determine the similarity metric between the first target block and each candidate block within the search window; Based on the similarity metric, a target candidate block matching the first target block is determined from the search window, and the displacement of the target candidate block relative to the current block is used as the motion vector of the first target block.

3. The method according to claim 2, characterized in that, The similarity metric is the sum of the absolute differences in the grayscale values ​​of corresponding pixels in the first target block and the candidate block. for: in, Let (u,v) be the pixel size of the first target block, and (u,v) be the displacement vector of the candidate block relative to the first target block. The pixel of the current frame grayscale value, The pixel of the reference frame grayscale value, The reference coordinates of the first target block in the current frame.

4. The method according to claim 3, characterized in that, The step of determining the target candidate block matching the first target block from the search window based on the similarity metric value includes: Sum of the absolute differences The smallest candidate block is determined as the target candidate block.

5. The method according to claim 3, characterized in that, The search window is a rectangular area in the reference frame coordinate system, centered on the reference coordinates of the first target block, and extending P pixels along each coordinate axis direction.

6. The method according to claim 3, characterized in that, The predicted frame is compensated based on the following formula: in, For the pixels in the predicted frame grayscale value, The motion vector of the target candidate block.

7. The method according to claim 1, characterized in that, The predicted frame is inserted between the current frame and the reference frame to form a higher frame rate video frame queue for video output.

8. A device for improving the display smoothness of smart glasses, characterized in that, include: The acquisition module is used to acquire the queue of rendered video frames. The calculation module is used to calculate the motion vector of each block in the current frame based on the current frame and the reference frame in the queue using a block matching algorithm; The generation module is used to generate a prediction frame based on the reference frame, based on the calculated motion vector, in order to improve the smoothness of the display.

9. An electronic device, characterized in that, It includes a processor and a memory, the memory storing computer instructions that, when executed by the processor, implement the method according to any one of claims 1-7.

10. A storage medium, characterized in that, It stores computer instructions, which, when executed by a processor, implement the steps of the method described in any one of claims 1-7.