WO2021008424A1 - 图像合成方法、装置、电子设备及存储介质 - Google Patents

图像合成方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2021008424A1
WO2021008424A1 PCT/CN2020/100970 CN2020100970W WO2021008424A1 WO 2021008424 A1 WO2021008424 A1 WO 2021008424A1 CN 2020100970 W CN2020100970 W CN 2020100970W WO 2021008424 A1 WO2021008424 A1 WO 2021008424A1
Authority
WO
WIPO (PCT)
Prior art keywords
layer
screen
attribute
image
dynamic
Prior art date
Application number
PCT/CN2020/100970
Other languages
English (en)
French (fr)
Inventor
胡杰
杨海
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Priority to EP20840542.3A priority Critical patent/EP4002086A4/en
Publication of WO2021008424A1 publication Critical patent/WO2021008424A1/zh
Priority to US17/576,195 priority patent/US20220139352A1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/005Adapting incoming signals to the display format of the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1407General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • G09G5/397Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/04Display device controller operating with a plurality of display units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/08Details of image data interface between the display device controller and the data line driver circuit
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/20Details of the management of multiple sources of image data

Definitions

  • This application relates to the field of image display technology, and more specifically, to an image synthesis method, device, electronic equipment, and storage medium.
  • the display interface of electronic devices usually has multiple display layers.
  • the composite is displayed on the electronic device.
  • This application proposes an image synthesis method, device, electronic equipment, and storage medium to solve the problem that the synthesis ability and synthesis speed cannot be balanced in the image synthesis.
  • an embodiment of the present application provides an image synthesis method, which includes: acquiring a plurality of layers of an image to be displayed; determining the layer attribute of each of the plurality of layers, and the image
  • the layer attributes include the first attribute and the second attribute; the layer with the first attribute is synthesized by a graphics processing unit (GPU, Graphics Processing Unit) into the layer to be mixed; the layer to be mixed is combined with the layer with the second attribute
  • the layers are synthesized by the Multimedia Display Processor (MDP), and the synthesized result is displayed on the display screen.
  • MDP Multimedia Display Processor
  • an embodiment of the present application provides an image synthesis device, which includes: an acquisition module for acquiring multiple layers of an image to be displayed; a determining module for determining each of the multiple layers
  • the layer attributes of each layer, the layer attributes include the first attribute and the second attribute;
  • the intermediate module is used to use the graphics processing unit (GPU, Graphics Processing Unit) for the layer with the first attribute
  • the method is used to synthesize the layer to be mixed;
  • the synthesis module is used to synthesize the layer to be mixed and the layer with the second attribute using a multimedia display processor (MDP, Multimedia Display Processor), and pass the result of the synthesis through the display screen To display.
  • MDP Multimedia Display Processor
  • an embodiment of the present application provides an electronic device that includes one or more processors; a memory; one or more application programs, wherein the one or more application programs are stored in the memory And is configured to be executed by the one or more processors, and the one or more programs are configured to execute the method applied to the electronic device as described above.
  • an embodiment of the present application provides a computer-readable storage medium in which program code is stored, wherein the above-mentioned method is executed when the program code is running.
  • Fig. 1 shows a logical framework diagram of image processing provided by an embodiment of the present application.
  • Figure 2 shows a schematic diagram of a desktop display interface provided by an embodiment of the present application.
  • Fig. 3 shows a schematic diagram of various layers of a desktop display interface provided by an embodiment of the present application.
  • Fig. 4 shows a flowchart of an image synthesis method provided by an embodiment of the present application.
  • Fig. 5 shows a flowchart of an image synthesis method provided by another embodiment of the present application.
  • FIG. 6 shows a flowchart of determining whether a layer meets a preset condition in an image synthesis method provided by another embodiment of the present application.
  • FIG. 7 shows a flowchart of determining whether a layer meets a preset condition in an image synthesis method provided in another embodiment of the present application.
  • Fig. 8 shows a functional module diagram of an image synthesis apparatus provided by an embodiment of the present application.
  • Fig. 9 shows a structural block diagram of an electronic device proposed by an embodiment of the present application for executing the image synthesis method according to the embodiment of the present application.
  • FIG. 10 shows a storage medium provided by an embodiment of the present application for storing or carrying program code for implementing the image synthesis method according to the embodiment of the present application.
  • An application can create a window through the Windows manager.
  • the window manager creates a drawing surface for each window to draw various elements that need to be displayed on it, and each surface corresponds to one Layer, that is, a layer can be drawn on each surface.
  • each layer is rendered before composition. That is, each layer is drawn on the corresponding surface, that is, the corresponding layer is drawn on each surface.
  • HWUI hardware accelerated renderer
  • Skia graphics library to draw on the surface's canvas (cavas) Perform layer drawing.
  • the system then uses the layer transfer module (Surface Flinger) service to synthesize each surface, that is, synthesize each layer.
  • the SurfaceFlinger service runs in the system process and is used to uniformly manage the frame buffer of the system.
  • SurfaceFlinger obtains all the layers, and can use the graphics processor (GPU, Graphics Processing Unit) to synthesize all or part of the layers.
  • the result is saved to the frame buffer (FrameBuffer).
  • Multimedia Display Processor MDP, Multimedia Display Processor
  • MDP Multimedia Display Processor
  • HWC can call the Multimedia Display Processor (MDP, Multimedia Display Processor) to perform The composition of the layers finally forms a Buffer in the BufferQueue, and then under the action of the display driver, the image synthesized in the Buffer is used for display.
  • MDP Multimedia Display Processor
  • the specific synthesis strategy of which part of the layer is synthesized by the GPU and the HWC can be determined according to the actual situation.
  • the display screen of the electronic device can display the display interface, and the display interface may include multiple layers, that is, the display interface is composed of multiple layers. Among them, each layer is composed of many pixels, and each layer is superimposed to form the entire image to form the display interface of the electronic device. Layers can accurately locate elements on the page. Text, pictures, tables, plug-ins can be added to the layer, and layers can also be nested inside. For layers and images synthesized by layers, it can be generally understood that a layer is like a film containing elements such as text or graphics. The layers are stacked in a specified order to form the final image. The effect is the image formed by the combination of layers, such as the display interface of an electronic device.
  • the desktop display interface 100 of the electronic device shown in FIG. 2 includes multiple layers including a status bar 101, a navigation bar 102, a wallpaper 103, and an icon layer 104, respectively.
  • the system uses GPU to synthesize image layers.
  • the method of synthesis can be to determine the positional relationship between each layer according to the position of each layer in the image, and render the content of each layer to the temporary In the storage buffer, the positional relationship between the layers in the buffer is the positional relationship in the image.
  • the temporary storage buffer is transmitted to the display hardware so that when each layer is displayed on the screen, the The display position is its position in the image.
  • the GPU when the GPU is used to process image layers, the GPU has strong compositing ability when compositing the layers, that is, there is no limit to the number of composite layers, but the speed is slower, which may cause problems such as stuttering. Affect the user experience.
  • MDP hardware synthesis mechanism is to call the MDP hardware module through HWC to synthesize.
  • This synthesis method is fast but has a limit on the number of layers to be processed. When the number of layers exceeds the number that can be processed, the task of layer synthesis cannot be completed, which affects the display on the screen.
  • the inventor proposed the image synthesis method, device, electronic equipment, and storage medium in this application as a synthesis strategy, by acquiring multiple layers of the image to be displayed; determining the value of each of the multiple layers
  • the layer attribute, the layer attribute includes a first attribute and a second attribute; the layer with the first attribute is synthesized by a graphics processing unit (GPU, Graphics Processing Unit) into a layer to be mixed; the layer to be mixed is combined
  • the layer and the layer with the second attribute are synthesized using a Multimedia Display Processor (MDP), and the synthesized result is displayed on the display screen.
  • MDP Multimedia Display Processor
  • an embodiment of the present application provides an image synthesis method, and the execution subject of the processing procedure described in this embodiment may be an electronic device.
  • the specific method may include:
  • Step S110 Obtain multiple layers of the image to be displayed.
  • Existing electronic devices usually have a display screen, and the user usually interacts with the electronic device according to the content displayed on the display screen, and defines all content displayed on the display screen as images to be displayed.
  • a desktop scene needs to be displayed, then this desktop scene is the image to be displayed, refer to Figure 2.
  • the desktop scene is displayed, it is essentially the result of superimposing multiple layers.
  • the desktop scene can be superimposed and synthesized by four layers. These four layers can be the status bar layer and the navigation bar. Layer, wallpaper layer and icon layer.
  • the electronic device synthesizes the four layers, the image to be displayed is obtained, that is, the desktop scene. Refer to FIG. 3. In this way, multiple layers of the image to be displayed can be obtained for the next processing.
  • Step S120 Determine the layer attribute of each of the multiple layers, where the layer attribute includes a first attribute and a second attribute.
  • the layer attribute of each of the multiple layers can be determined. If the image to be displayed has four layers, the layer attributes of the four layers are determined in sequence, where the layer attributes include a first attribute and a second attribute. Among them, the layer with the first attribute may have relatively simple data content in the layer, and the time consumed to synthesize the layer under the same synthesis method is less than the preset time; the layer with the second attribute may be The data content in the layer is more complicated, and the time consumed to synthesize the layer under the same composition method is greater than or equal to the preset time.
  • Step S130 Use a graphics processor (GPU, Graphics Processing Unit) to synthesize the layer with the first attribute into a layer to be mixed.
  • GPU Graphics Processing Unit
  • the GPU Graphics Processing Unit
  • MDP Multimedia Display Processor
  • the GPU synthesis method has a lower processing speed than the MDP synthesis method, but there is no limit to the number of processing layers.
  • the MDP synthesis method has a faster processing speed for images, but the number of processing layers is limited.
  • GPU image processing tasks will be heavy. Due to the slow processing speed, it may cause equipment jams. If only MDP compositing is used, the processing layer The number is limited. In some multi-layered scenes, multiple composites are required, or layer composites cannot be completed, which affects the display of the scene.
  • some layers can be synthesized by using GPU, and some layers can be synthesized by using MDP.
  • the layer with the first attribute can be synthesized into the layer to be mixed by using the GPU. It is understandable that if all the layers in the image to be displayed are layers with the first attribute, then the layer to be mixed synthesized by the GPU is the final layer to be displayed, that is, the image to be displayed ; If part of the layer in the image to be displayed is a layer with the first attribute, use the GPU to synthesize the layer with the first attribute into the layer to be mixed, and then combine the layer to be mixed with other layers The image to be displayed can be obtained after synthesis.
  • step S140 the layer to be mixed and the layer with the second attribute are synthesized using a Multimedia Display Processor (MDP), and the synthesized result is displayed on the display screen.
  • MDP Multimedia Display Processor
  • the layer with the second attribute and the layer to be mixed can be synthesized using MDP, and the result of the synthesis can be sent to the display screen for display .
  • the layer to be mixed is sent to the frame buffer for caching, and the layer to be mixed is synthesized on the GPU.
  • MDP combines the layers with the second attribute into pre-composite layers to speed up the synthesis.
  • MDP synthesizes the pre-composited layer obtain the to-be-combined layer from the frame buffer, and then synthesize the to-be-combined layer and the pre-composited layer into a to-be-displayed image through MDP, and then combine the The image to be displayed is sent to the display screen for display, so that the image to be displayed can be displayed on the display screen of the electronic device.
  • the layer to be mixed is sent to the frame buffer for caching, and the MDP obtains it from the frame buffer.
  • the layer to be mixed and the layer with the second attribute are combined into an image to be displayed, and then the image to be displayed is sent to the display screen for display, so that the display of the electronic device The image to be displayed can be displayed on the screen.
  • the image synthesis method proposed in this application obtains multiple layers of an image to be displayed; determines the layer attribute of each of the multiple layers, and the layer attribute includes a first attribute and a second attribute;
  • the layer with the first attribute is synthesized by a graphics processor (GPU, Graphics Processing Unit) into the layer to be mixed; the layer to be mixed and the layer with the second attribute are combined with a multimedia display processor (MDP, Multimedia Display Processor) performs synthesis, and displays the synthesis result on the display screen.
  • GPU Graphics Processing Unit
  • MDP Multimedia Display Processor
  • another embodiment of the present application provides an image synthesis method.
  • this embodiment focuses on determining the attribute of each of the multiple layers by using preset conditions.
  • the method can include:
  • Step S210 Obtain multiple layers of the image to be displayed.
  • step S210 reference may be made to the corresponding part of the foregoing embodiment, which will not be repeated here.
  • Step S220 sequentially determine whether the layer attributes of each layer meet a preset condition.
  • the layer meeting the preset conditions means that it takes more time for the layer to be synthesized by the GPU, which has a greater impact on the operating speed of the electronic device; the layer does not meet the preset conditions, which means that the layer needs less time to be synthesized by the GPU. It has little effect on the running speed of electronic equipment.
  • Step S230 Use a layer that does not meet the preset condition as the first layer, and determine that the layer attribute of the first layer is the first attribute.
  • the layer may be used as the first layer, and the layer attribute of the first layer is determined as the first attribute.
  • the first attribute there are four layers in the desktop scene, namely the status bar layer, the navigation bar layer, the wallpaper layer, and the icon layer. Among them, if it is determined that the layers that do not meet the preset conditions are the status bar layer and the wallpaper layer, the status bar layer and the wallpaper layer can be used as the first layer, and the layer attributes of the status bar layer and the wallpaper layer can be determined as the first layer.
  • the layers that do not meet the preset conditions are the status bar layer and the wallpaper layer
  • the status bar layer and the wallpaper layer can be used as the first layer
  • the layer attributes of the status bar layer and the wallpaper layer can be determined as the first layer.
  • step S240 the layer meeting the preset condition is used as the second layer, and the layer attribute of the second layer is determined as the second attribute.
  • the layer may be used as the second layer, and the layer attribute of the second layer is determined as the second attribute.
  • the layers that meet the preset conditions are the navigation bar layer and the icon layer, the navigation bar layer and the icon layer can be used as the second layer, and the layer attributes of the navigation bar layer and the icon layer are determined to be the second layer. Attributes.
  • Step S250 Use a graphics processor (GPU, Graphics Processing Unit) to synthesize the first layer into a layer to be mixed.
  • GPU Graphics Processing Unit
  • the GPU uses the GPU to synthesize the layer with the first attribute, that is, the first layer. For example, if the layer attribute of the status bar layer and the wallpaper layer in the desktop scene is the first attribute, then the status bar layer and the wallpaper layer Use GPU to synthesize images into layers to be mixed. To proceed to the next step.
  • step S260 the layer to be mixed and the second layer are synthesized using a Multimedia Display Processor (MDP), and the synthesized result is displayed on the display screen.
  • MDP Multimedia Display Processor
  • the second layer and the to-be-mixed layer obtained by combining the GPU are combined using MDP.
  • MDP can be used to synthesize the layer to be mixed, the navigation bar layer and the icon layer into the final image to be displayed, and then send it to the display screen for display.
  • the user can see the desktop scene on the display screen of the electronic device.
  • the layer to be mixed is sent to the frame buffer for caching, and the MDP simultaneously combines the navigation bar layer and the icon layer Synthesize into a pre-composite layer, after MDP synthesizes the pre-composite layer, obtain the layer to be mixed from the frame buffer, and MDP synthesizes the layer to be mixed and the pre-composited layer into the image to be displayed , And then send it to the display for display.
  • the layer to be mixed is sent to the frame buffer for caching, and the MDP reads from the frame buffer.
  • the layer to be mixed is acquired, the layer to be mixed, the navigation bar layer, and the icon layer are combined together to form an image to be displayed, and the image is sent to the display screen for display.
  • the image synthesis method proposed in this application obtains multiple layers of the image to be displayed, and sequentially determines whether the layer attributes of each layer meet the preset conditions, and if so, the layer is taken as the second layer and determined
  • the layer attribute of the second layer is the second attribute, if it is not satisfied, the layer is taken as the first layer, and the layer attribute of the first layer is determined to be the first attribute;
  • the layer with the first attribute is synthesized by the GPU into the layer to be mixed, and the layer to be mixed and the layer with the second attribute are synthesized by the MDP into the image to be displayed, and sent to the display screen for the user to display.
  • choose the appropriate synthesis method according to the layer attribute of each layer and take into account the layer synthesis ability and synthesis speed of the electronic device to improve the image processing ability of the electronic device.
  • FIG. 6 another embodiment of the present application provides an image synthesis method. Based on the foregoing embodiments, this embodiment focuses on the process of judging whether a layer meets preset conditions through image data, that is, The embodiment of the present application is a detailed description of step S220 in the foregoing embodiment. For other steps of the image synthesis method, reference may be made to other embodiments, which will not be repeated here. Specifically, the method may include:
  • step S310 for each layer, image data corresponding to the layer is obtained.
  • step S320 it is determined whether the image data corresponding to the layer is greater than the preset data value, if so, step S330 is executed, and if not, step S340 is executed.
  • each layer contains a corresponding image
  • the image data corresponding to each layer can be obtained.
  • it can be determined whether the image data is greater than the preset data value,
  • the setting of the preset data value may be a critical value.
  • the image data is greater than the preset data value, it can be considered that the layer contains more content, and it is expensive to synthesize the layer Time is longer.
  • the image data corresponding to the layer may be image resolution or image size.
  • the resolution indicates how many pixels there are in each inch of the image, and the unit is PPI (Pixels Per Inch), which can indicate the amount of data contained in the image.
  • PPI Picture Per Inch
  • the image size indicates the amount of image data, that is, the number of bytes, bits, or storage space occupied by the image. The larger the image size, the more storage space the image occupies. Bigger.
  • the image data can be obtained by capturing an image in each layer, and the image resolution or image size can be obtained by analyzing the image. If the acquired image data is the image resolution, the preset data value is the preset resolution, and judging whether the image data corresponding to the layer is greater than the preset data value may be to compare the image resolution with the The size relationship of the preset resolution; if the acquired image data is the image size, the preset data value is the preset size value, and judging whether the image data corresponding to the layer is greater than the preset data value can be a judgment The relationship between the image size and the preset size value. Among them, the image data corresponding to the layer can be determined through experiments in advance according to the performance of GPU and MDP, no matter what parameters are limited. It may also be to obtain the size relationship between the image size corresponding to the layer and the preset size value. The size relationship is used to determine whether the image data corresponding to the layer meets the preset condition.
  • the parameters used to represent the image data are not limited to image resolution and image size, but may also include image frame rate and image depth.
  • the higher the image frame rate the faster the synthesis speed is required.
  • the image frame rate is greater than the preset frame rate value of the image frame rate, a faster layer synthesis method is required to synthesize the layers, so that the image can be determined according to whether the image frame rate is greater than the preset data value. Whether the image data of the layer meets the preset conditions.
  • the preset data value corresponding to the image frame rate can be a preset frame rate value, it is judged whether the image data corresponding to the layer is greater than the preset data value, and it can be compared whether the image frame rate in the layer is greater than the preset frame rate value . If it is greater than, it is determined that the image data corresponding to the layer is greater than the preset data value; if it is not greater, it is determined that the image data corresponding to the layer is not greater than the preset data value.
  • the depth of the image is greater than the preset depth value, it indicates that the image contains more content, and it takes longer to synthesize the layers of the image, and a faster layer synthesis method is required to combine the layers.
  • the preset data value corresponding to the image depth may be a preset depth value, it is determined whether the image data corresponding to the layer is greater than the preset data value, and whether the image depth in the layer is greater than the preset depth value can be compared. If it is greater than, it is determined that the image data corresponding to the layer is greater than the preset data value; if it is not greater, it is determined that the image data corresponding to the layer is not greater than the preset data value.
  • step S330 is executed; if it is determined that the image data corresponding to the layer is not greater than the preset data value, step S340 is executed.
  • step S330 is executed; if it is determined that the image data corresponding to the layer is not greater than the preset data value, step S340 is executed.
  • step S330 it is determined that the image data corresponding to the layer meets the preset condition.
  • the image data corresponding to the layer is greater than the preset data value, indicating that the layer synthesis is more time-consuming and requires faster synthesis speed. It can be determined that the image data corresponding to the layer meets the preset conditions for the multimedia display processor to perform synthesis.
  • the image data corresponding to the acquired layer is the image resolution
  • the image resolution is greater than the preset resolution
  • the layer attribute of the second layer is determined to be the second attribute, which indicates that the second layer contains more data.
  • the image data corresponding to the acquired layer is an image size
  • the image size is greater than a preset size value
  • the layer attribute of the second layer is the second attribute, indicating that the second layer contains more data content
  • the second layer is synthesized
  • step S340 it is determined that the image data corresponding to the layer does not satisfy the preset condition.
  • the image data corresponding to the layer is less than the preset data value, and it can be determined that the image data corresponding to the layer does not meet the preset condition.
  • the image data corresponding to the acquired layer is the image resolution
  • the image resolution is less than or equal to the preset resolution
  • the layer as the first layer and determining that the layer attribute of the first layer is the first attribute, it indicates that the first layer contains less data
  • the first layer is When synthesizing, it does not consume a long time, and a method with better synthesizing ability is selected to synthesize the first layer.
  • the image data corresponding to the acquired layer is the image size
  • the image size is less than or equal to the preset size value
  • the layer attribute of the first layer is the first attribute, indicating that the data content contained in the first layer is small
  • the first layer is When synthesizing, it does not take a long time, and a synthesizing method with better synthesizing ability can be selected to synthesize the first layer.
  • the image synthesis method proposed in this application determines whether the image data corresponding to the layer is greater than the preset data value by acquiring the image data corresponding to each layer; if it is greater, it is determined that the image data corresponding to the layer meets all requirements.
  • the preset condition if not greater than, it is determined that the image data corresponding to the layer does not meet the preset condition.
  • the image data it is judged whether the layer meets the preset conditions, and then the layer attribute corresponding to each layer is determined, and the layer is processed by selecting an appropriate layer synthesis method, taking into account the layer synthesis of electronic equipment Ability and synthesis speed to improve the image processing capabilities of electronic devices.
  • yet another embodiment of the present application provides an image synthesis method.
  • this embodiment focuses on describing that the electronic device uses a static layer or a dynamic layer in a split-screen display state.
  • the process of judging whether the layer attribute of each layer meets the preset conditions, that is, the embodiment of this application is a detailed description of step S220 in the foregoing embodiment, and other steps of the image synthesis method can be referred to other embodiments. I will not repeat them here.
  • the method may include:
  • Step S410 Determine whether the first screen and the second screen include static layers or dynamic layers.
  • the electronic equipment In electronic equipment, it usually has a split-screen display function, that is, in a display screen of an electronic device, there are two display screens that display different content, and the content characteristics displayed on the two screens may be completely different, such as one screen.
  • the content is static content
  • the content displayed on the other screen is dynamic content. Therefore, it can be divided into screens for synthesis according to the display characteristics of each screen.
  • the screen of the electronic device is divided into two different display screens with the middle of the screen as the boundary, the WeChat chat interface is displayed on the upper display screen, and the video is played on the lower display screen.
  • the two display screens of the electronic device in the split-screen display state can be used as the first screen and the second screen respectively.
  • the electronic device When layer synthesis is performed, the electronic device synthesizes and displays the layers in the first screen, and the second screen The layers are combined and displayed. Then, when performing split-screen display, the content displayed on the first screen and the second screen of the electronic device may be static content such as photos or dynamic content such as videos. Then, it can be determined whether the first screen and the second screen include static layers or dynamic layers.
  • judging whether it is a static layer or a dynamic layer can be judged according to the frame rate of the layer, where a preset frame rate can be set, and the frame rate of the layer in the first screen and the second screen can be compared with the preset The size of the frame rate. If the frame rate of the layer is greater than the preset frame rate, then the layer is determined to be a dynamic layer, and if the frame rate of the layer is less than or equal to the preset frame rate, then the image is determined The layer is a static layer.
  • step S420 if the static layer is included, it is determined that the layer attribute of the static layer does not meet the preset condition.
  • the first screen and the second screen include a static layer
  • All static layers can be synthesized by GPU, then it is determined that the static layers do not meet the preset conditions, the static layers in the first screen and the second screen can be used as the first layer, and the first The layer attribute of the static layer in the screen and the second screen is the first attribute.
  • step S430 if a dynamic layer is included, it is determined whether the first screen and the second screen both include a dynamic layer.
  • the first screen and the second screen include dynamic layers
  • all dynamic layers are synthesized through MDP, which may exceed the synthesis capability of MDP, and a screen needs to be selected
  • the dynamic layers of are synthesized by MDP; if only one screen includes dynamic layers, MDP can be considered for synthesis.
  • the dynamic layer may be acquired first, and then the source file corresponding to the dynamic layer may be acquired, and it may be determined according to the source file whether the source of the dynamic layer is the first screen or the second screen. If it is determined that the source of the dynamic layer is only the first screen, it is determined that only one of the first screen and the second screen includes the dynamic layer; if the source of the dynamic layer is only the second screen, it is determined that Only one of the one screen and the second screen includes a dynamic layer; if the source of the dynamic layer is the first screen and the second screen, it is determined that both the first screen and the second screen include the dynamic layer.
  • a dynamic layer in a case where it is determined that a dynamic layer is included, it may first obtain multiple layers in the first screen, and obtain multiple frame rates corresponding to each of the multiple layers. Compare the size of the multiple frame rates in the first screen with the preset frame rate, and if none of the multiple frame rates in the first screen is greater than the preset frame rate, it indicates that the If no dynamic layer is included in the first screen and the second screen, it is determined that only one of the first screen and the second screen includes a dynamic layer; if any one of the multiple frame rates is greater than the preset frame rate, continue to obtain the second screen
  • the multiple frames in the multiple layers in the second screen correspond to multiple frame rates one-to-one, and the multiple frame rates in the second screen are compared with the preset frame rate.
  • the multiple frame rates in the second screen If the frame rate is not greater than the preset frame rate, it indicates that the second screen does not include dynamic layers, and it is determined that only one of the first screen and the second screen includes dynamic layers; if more than one of the second screens If any one of the frame rates is greater than the preset frame rate, it is determined that both the first screen and the second screen include dynamic layers. In this embodiment, if there is only one layer in a screen, the multiple layers of the screen are one layer. When judging whether the screen includes a dynamic layer, the frame rate of the layer in the screen is compared with the preset frame rate to determine whether the layer included in the screen is a dynamic layer. If the frame rate of the layer is greater than the preset frame rate, the layer can be determined to be a dynamic layer; if the frame rate of the layer is not greater than the preset frame rate, the layer can be determined to be a static layer.
  • Step S440 If the frame rate of the dynamic layer in the first screen is higher than the frame rate of the dynamic layer in the second screen, it is determined that the layer attribute of the dynamic layer in the first screen satisfies a preset condition, and it is determined The layer attribute of the dynamic layer in the second screen does not meet the preset condition.
  • the frame rate corresponding to the dynamic layer can be obtained to determine whether the dynamic layer meets a preset condition. Specifically, the frame rates of all dynamic layers in the first screen and the frame rates of all dynamic layers in the second screen can be acquired, if the frame rate of the dynamic layers in the first screen is greater than that of the second screen.
  • the frame rate of the dynamic layer in the screen means that it takes more time to synthesize the dynamic layer in the first screen. It is determined that the layer attribute of the dynamic layer in the first screen meets the preset conditions, and it is determined in the second screen The layer attribute of the dynamic layer does not meet the preset condition.
  • the frame rate of the dynamic layer in the first screen is greater than that of the first screen. If the frame rate of the dynamic layer in the second screen is 30fps>24fps, it is determined that the layer attribute of the dynamic layer in the first screen satisfies the preset condition, and the dynamic layer in the second screen is determined to be all The layer attribute does not meet the preset conditions. It indicates that the content in the first screen is refreshed faster, and a faster synthesis method is required to synthesize the layer. The content in the second screen is refreshed slowly, and a synthesis method with better synthesis ability can be selected to synthesize the layer. The layers are combined.
  • the average frame rate of the dynamic layer in the screen can be used as the The frame rate of the dynamic layer on the screen is judged.
  • you can calculate the average of the dynamic layer in the screen The frame rate is used as the frame rate of the dynamic layer in this screen.
  • Step S450 If the frame rate of the dynamic layer in the first screen is not higher than the frame rate of the dynamic layer in the second screen, it is determined that the layer attribute of the dynamic layer in the first screen does not meet the preset condition , Determining that the layer attribute of the dynamic layer of the second screen satisfies the preset condition.
  • the frame rate corresponding to the dynamic layer can be obtained to determine whether the dynamic layer meets a preset condition. Specifically, the frame rates of all dynamic layers in the first screen and the frame rates of all dynamic layers in the second screen can be acquired. If the frame rates of all dynamic layers in the first screen are less than or equal to all The frame rate of the dynamic layer in the second screen indicates that it may take more time to synthesize the dynamic layer in the second screen. Then it is determined that the layer attribute of the dynamic layer in the first screen does not meet the preset conditions, and it is determined The layer attribute of the dynamic layer of the second screen satisfies a preset condition.
  • the frame rate of the dynamic layer on the first screen is 26 fps
  • the frame rate of the dynamic layer on the second screen is 29 fps
  • the frame rate of the dynamic layer on the first screen is less than the frame rate of the first screen.
  • the frame rate of the dynamic layer in the second screen is 26fps ⁇ 29fps
  • the layer properties meet the preset conditions. It indicates that the refresh rate of the content in the first screen is slow, then a synthesis method with better synthesis ability can be selected to synthesize the layer, and the content in the second screen refreshes faster, and a faster synthesis method is required
  • the layers are combined.
  • step S460 if only one of the first screen and the second screen includes a dynamic layer, it is determined that the dynamic layer meets a preset condition.
  • the dynamic layer if it is determined that only one of the first screen and the second screen includes a dynamic layer, it can be directly determined that the dynamic layer meets the preset condition. If only one screen includes a dynamic layer, it indicates that the layer composition pressure of the electronic device is not high, but because the dynamic layer needs to constantly update the display content, a composition method with a faster composition speed can be selected to synthesize the dynamic layer .
  • step S430 determines whether only one of the first screen and the second screen includes a dynamic layer. If it is determined in step S430 that only one of the first screen and the second screen includes a dynamic layer, only step S460 is executed, and step S440 and step S450 are not executed. If it is determined in step S430 that both the first screen and the second screen include dynamic layers, then step S440 or step S450 is selected according to the frame rate, and step S460 is not executed.
  • the image synthesis method proposed in this application judges whether the first screen and the second screen include a static layer or a dynamic layer in a split-screen electronic device; if a static layer is included, the layer of the static layer is determined The attributes do not meet the preset conditions; if dynamic layers are included, determine whether the first screen and the second screen include dynamic layers; if so, determine whether the preset conditions are met according to the frame rate of the dynamic layer, and then determine each The layer attribute corresponding to the layer is processed by selecting an appropriate layer synthesis method, taking into account the layer synthesis capability and synthesis speed of the electronic device, so as to improve the image processing capability of the electronic device.
  • FIG. 8 shows an image synthesis device 500 provided by an embodiment of the present application.
  • the device 500 includes an acquisition module 510, a determination module 520, an intermediate module 530, and a synthesis module 540.
  • the obtaining module 510 is used to obtain multiple layers of the image to be displayed; the determining module 520 is used to determine the layer attribute of each layer in the multiple layers, and the layer attribute includes a first attribute and a second attribute.
  • Two attributes the intermediate module 530 is used to synthesize the layer with the first attribute using a graphics processor (GPU, Graphics Processing Unit) into the layer to be mixed; the synthesis module 540 is used to combine the layer to be mixed with The layer of the second attribute is synthesized by the Multimedia Display Processor (MDP), and the synthesized result is displayed on the display screen.
  • MDP Multimedia Display Processor
  • the determining module 520 is further configured to sequentially determine whether the layer attributes of each layer meet a preset condition; take the layer that does not meet the preset condition as the first layer, and determine the first layer The layer attribute of the layer is the first attribute; the layer meeting the preset condition is taken as the second layer, and the layer attribute of the second layer is determined to be the second attribute.
  • the determining module 520 is also configured to obtain the image data corresponding to the layer for each layer; determine whether the image data corresponding to the layer is greater than the preset data value; if it is greater than, then determine the image data. The image data corresponding to the layer meets the preset condition; if it is not greater than, it is determined that the image data corresponding to the layer does not meet the preset condition.
  • the determining module 520 is also configured to compare whether the image resolution corresponding to the layer is greater than a preset resolution; if it is greater, it is determined that the image data corresponding to the layer is greater than the preset data value.
  • the determining module 520 is further configured to compare whether the image size corresponding to the layer is greater than a preset size value; if it is greater, it is determined that the image data corresponding to the layer is greater than the preset data value.
  • the determining module 520 is also used to determine whether the first screen and the second screen include a static layer or a dynamic layer, and if the static layer is included, determine that the layer attribute of the static layer does not meet a preset condition; If a dynamic layer is included, determine whether the first screen and the second screen both include a dynamic layer; if both the first screen and the second screen include a dynamic layer, determine whether the frame rate of the dynamic layer in the first screen is Higher than the frame rate of the dynamic layer in the second screen; if the frame rate of the dynamic layer in the first screen is higher than the frame rate of the dynamic layer in the second screen, determine the frame rate of the dynamic layer in the first screen If the layer attribute meets the preset condition, it is determined that the layer attribute of the dynamic layer in the second screen does not meet the preset condition; if the frame rate of the dynamic layer in the first screen is not higher than that in the second screen If the frame rate of the dynamic layer on the first screen is determined, the layer attribute of the dynamic layer on the first screen does not meet the preset condition
  • the intermediate module 530 is also used to send the synthesized layer to be mixed to the frame buffer for buffering, and the synthesis module is also used to synthesize the layer with the second attribute using the multimedia display processor.
  • Pre-compositing layer obtaining the layer to be mixed from the frame buffer, and then synthesizing the layer to be mixed and the pre-compositing layer into an image to be displayed using a multimedia display processor; sending the image to be displayed Display on the display.
  • the image synthesis method obtains multiple layers of the image to be displayed; determines the layer attribute of each of the multiple layers, and the layer attribute includes the first attribute And the second attribute; use a graphics processor (GPU, Graphics Processing Unit) to synthesize the layer with the first attribute into the layer to be mixed; combine the layer to be mixed with the layer with the second attribute using multimedia display processing Multimedia Display Processor (MDP) performs synthesis, and displays the synthesis result on the display screen.
  • MDP multimedia display processing Multimedia Display Processor
  • the coupling or direct coupling or communication connection between the displayed or discussed modules may be through some interfaces.
  • the indirect coupling or communication connection of the devices or modules may be electrical, Mechanical or other forms.
  • each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist alone physically, or two or more modules may be integrated into one module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or software functional modules.
  • the electronic device 600 may be an electronic device capable of running application programs, such as a smart phone, a tablet computer, or an e-book.
  • the electronic device 600 in this application may include one or more of the following components: a processor 610, a memory 620, and one or more application programs, where one or more application programs may be stored in the memory 620 and configured to be configured by One or more processors 610 execute, and one or more programs are configured to execute the methods described in the foregoing method embodiments.
  • the processor 610 may include one or more processing cores.
  • the processor 610 uses various interfaces and lines to connect various parts of the entire electronic device 600, and executes by running or executing instructions, programs, code sets, or instruction sets stored in the memory 620, and calling data stored in the memory 620.
  • the processor 610 may adopt at least one of digital signal processing (Digital Signal Processing, DSP), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA), and Programmable Logic Array (Programmable Logic Array, PLA).
  • DSP Digital Signal Processing
  • FPGA Field-Programmable Gate Array
  • PLA Programmable Logic Array
  • the processor 610 may be integrated with one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), a modem, and the like.
  • the CPU mainly processes the operating system, user interface, and application programs;
  • the GPU is used for rendering and drawing of display content;
  • the modem is used for processing wireless communication. It is understandable that the above-mentioned modem may not be integrated into the processor 610, but may be implemented by a communication chip alone.
  • the memory 620 may include random access memory (RAM) or read-only memory (Read-Only Memory).
  • the memory 620 may be used to store instructions, programs, codes, code sets or instruction sets.
  • the memory 620 may include a program storage area and a data storage area, where the program storage area may store instructions for implementing the operating system and instructions for implementing at least one function (such as touch function, sound playback function, image playback function, etc.) , Instructions for implementing the following method embodiments, etc.
  • the storage data area can also store data created by the electronic device 600 during use (such as phone book, audio and video data, chat record data) and the like.
  • FIG. 10 shows a structural block diagram of a computer-readable storage medium provided by an embodiment of the present application.
  • the computer-readable storage medium 700 stores program codes, and the program codes can be invoked by a processor to execute the methods described in the foregoing method embodiments.
  • the computer-readable storage medium 700 may be an electronic memory such as flash memory, EEPROM (Electrically Erasable Programmable Read Only Memory), EPROM, hard disk, or ROM.
  • the computer-readable storage medium 700 includes a non-transitory computer-readable storage medium.
  • the computer-readable storage medium 700 has a storage space for the program code 710 for executing any method steps in the above methods. These program codes can be read out from or written into one or more computer program products.
  • the program code 710 may be compressed in a suitable form, for example.

Abstract

本申请公开了一种图像合成方法、装置、电子设备及存储介质。所述方法包括:获取待显示图像的多个图层;确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;对具有第一属性的图层利用图形处理器合成为待混合图层;将所述待混合图层与具有第二属性的图层利用多媒体显示处理器进行合成,并将合成结果通过显示屏进行显示。根据每个图层的图层属性选择不同的合成方式,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。

Description

图像合成方法、装置、电子设备及存储介质
本申请要求于2019年7月17日提交的申请号为201910647137.9的中国专利申请的优先权,在此通过引用将其全部内容并入本文。
技术领域
本申请涉及图像显示技术领域,更具体地,涉及一种图像合成方法、装置、电子设备及存储介质。
背景技术
随着电子技术的发展,具有图像显示功能的电子设备(如手机或平板电脑等电子设备)越来越多,电子设备的显示界面通常有多个显示图层,通过对多个显示图层进行合成显示在电子设备上。
通常,电子设备在合成图层时,难以对电子设备的图层合成能力和合成速度进行兼顾,影响电子设备的使用体验。
发明内容
本申请提出了一种图像合成方法、装置、电子设备及存储介质,以解决图图像合成中不能兼顾合成能力和合成速度的问题。
第一方面,本申请实施例提供了一种图像合成方法,该方法包括:获取待显示图像的多个图层;确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层;将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。
第二方面,本申请实施例提供了一种图像合成的装置,该装置包括:获取模块,用于获取待显示图像的多个图层;确定模块,用于确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;中间模块,用于对所述具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)GPU的方式合成为待混合图层;合成模块,用于将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如上述应用于电子设备的方法。
第四方面,本申请实施列提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的 附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的图像处理的逻辑框架图。
图2示出了本申请实施例提供的桌面显示界面的示意图。
图3示出了本申请实施例提供的桌面显示界面的各个图层的示意图。
图4示出了本申请一个实施例提供的图像合成方法的流程图。
图5示出了本申请另一个实施例提供的图像合成方法的流程图。
图6示出了本申请又一个实施例提供的图像合成方法中确定图层是否满足预设条件的流程图。
图7示出了本申请再一个实施例提供的图像合成方法中确定图层是否满足预设条件的流程图。
图8示出了本申请一个实施例提供的图像合成的装置的功能模块图。
图9示出了本申请实施例提出的用于执行根据本申请实施例的图像合成方法的电子设备的结构框图。
图10示出了本申请实施例提供的用于保存或者携带实现根据本申请实施例的图像合成方法的程序代码的存储介质。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
应用程序(application)可以通过窗口管理器(Windows manager)创建窗口(window),窗口管理器为每一个窗口创建绘图表面(Surface)用于在上面绘制各种需要显示的元素,每个surface对应一个图层,即可以在每个surface绘制一个图层。
在显示界面(如Activity)中,可以包括多个图层,如导航栏、状态栏、程序界面等。每个图层在合成之前进行渲染。即,每个图层在相应的surface进行绘制,即在每个surface进行对应的图层的绘制,具体可以通过硬件加速渲染器(HWUI)和/或Skia图形库等在surface的画布(cavas)进行图层绘制。
系统(System)再使用图层传递模块(Surface Flinger)服务将各个surface进行合成,即将各个图层进行合成。其中,SurfaceFlinger服务运行在系统进程中,用来统一管理系统的帧缓冲区,SurfaceFlinger获取所有的图层,可以使用图像处理器(GPU,Graphics Processing Unit)对所有或者部分图层进行合成,将合成的结果保存到帧缓存区(FrameBuffer)。多媒体显示处理器(MDP,Multimedia Display Processor)可以将SurfaceFlinger通过GPU合成的结果与其他图层一起合成,具体的,如图1所示,HWC可以调用多媒体显示处理器(MDP,Multimedia Display Processor)进行图层的合成,最终形成BufferQueue中的一个Buffer,再在显示驱动的作用下,将Buffer中合成的图像用于显示。其中,GPU以及HWC分别对哪一部分图层进行合成的具体合成策略,可以根据实际情况确定。
电子设备的显示屏可以进行显示界面的显示,在显示界面中可能包括多个图层,即显示界面由多个图层合成。其中,每一个图层都是由许多像素组成的,各个图层通过叠加的方式组成整个图像,形成电子设备的显示界面。图层可以将页面上的元素精确定位,图层中可以加入文本、图片、表格、插件,也可以在里面再嵌套图层。对于图层以及图层合成的图像,可以通俗地理解为,图层就像是含有文字或图形等元素的胶片,一张张图层按指定的顺序叠放在一起,组合起来形成的最终图像效果,就是由图层组合形成的图像,例如电 子设备的显示界面。当然,可以理解的是,图层并不是真的胶片,上述描述只是为了便于理解的比喻。例如图2所示的电子设备的桌面显示界面100,包括的多个图层分别为状态栏101、导航栏102、墙纸103以及图标层104。
为了使显示界面在显示屏进行显示,需要将显示界面的各个图层进行合成。例如将图3所示的状态栏101、导航栏102、墙纸103以及图标层104合成为图2所示的显示界面100。通常的,系统会利用GPU进行图像图层的合成,其合成方式可以是,根据各个图层在图像中的位置确定各个图层之间的位置关系,将各个图层的内容用GPU渲染到暂存缓冲区中,使在缓冲区中,各个图层间的位置关系为在图像中的位置关系,最后将暂存缓冲区传送到显示硬件,使各个图层在显示屏显示时,图层的显示位置为其在图像中的位置。然而在使用GPU进行图像图层的处理时,GPU在对图层进行合成时,合成能力较强,即对合成图层的数量没有限制,但速度较慢,可能会引起卡顿等问题,从而影响用户的使用体验。
发明人经过研究发现,还可以通过多媒体显示处理器(MDP,Multimedia Display Processor)的硬件合成机制对图层进行合成。MDP硬件合成机制是通过HWC调用MDP硬件模块进行合成,这种合成方式速度快,但对处理的图层数量有限制。在图层的数量超过其所能处理的数量时,不能完成图层合成的任务,从而影响在显示屏上的显示。
也就是说,若通过GPU图像进行图层合成,虽然相对于MDP合成方式,对图层的处理数量没有限制,但速度较慢,从而影响电子设备的流畅性;若通过MDP进行图层合成,虽然速度较快,但能处理的图层数量有限,不能处理过多图层的场景,从而影响在显示屏上的显示。
因此,发明人提出了本申请中图像合成方法、装置、电子设备及存储介质作为一种合成策略,通过获取待显示图像的多个图层;确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层;将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。根据每个图层的图层属性选择合适的合成方式,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
请参阅图4,本申请实施例提供了一种图像合成方法,本实施例描述的处理流程的执行主体可以是电子设备。具体的该方法可以包括:
步骤S110,获取待显示图像的多个图层。
现有的电子设备中,通常会具有显示屏,用户通常根据显示屏所显示的内容与电子设备进行交互,将会显示在显示屏上的所有内容定义为待显示图像。例如,在一个显示屏中,需要显示一个桌面场景,那么这个桌面场景则为待显示图像,可参照图2。桌面场景在进行显示时,本质上是多个图层进行叠加所得到的结果,通常情况下,桌面场景可以是四个图层进行叠加合成,这四个图层可以是状态栏层、导航栏层、壁纸层以及图标层。电子设备对四个图层进行合成处理后得到待显示图像,即桌面场景,可参照图3。由此,可以获取到待显示图像的多个图层,以进行下一步的处理。
步骤S120,确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性。
获取到所述待显示图像的多个图层后,可以确定所述多个图层中每个图层的图层属性。若该待显示图像有四个图层,则依次确定所述四个图层的图层属性,其中图层属性包括第一属性和第二属性。其中,具有第一属性的图层可以是在图层中的数据内容较为简单,在 相同的合成方式下合成该图层所消耗的时间小于预设时间;具有第二属性的图层可以是在图层中的数据内容较为复杂,在相同的合成方式下合成该图层所消耗的时间大于或等于预设时间。
步骤S130,对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层。
在电子设备中,通常有多种图层合成方式,例如,在使用Android系统的电子设备中,对图层的合成有两种方式,一种是利用图形处理器(GPU,Graphics Processing Unit)对所述多个图层进行合成并显示,即GPU合成方式;另一种是利用多媒体显示处理器(MDP,Multimedia Display Processor)对图层进行合成并显示,即MDP合成方式。这两种合成的方式各有优缺点,具体的,GPU合成方式相对比于MDP合成方式,GPU合成方式的处理速度较低,但是对处理层数没有限制。那么MDP合成方式相比于GPU合成方式,MDP合成方式对图像的处理速度较快,但处理层数有限。基于这两种合成方式,若只采用GPU合成方式,则会导致GPU图像处理任务繁重,由于处理速度较慢,则可能会引起设备卡顿等现象,若只采用MDP合成方式,因其处理层数有限制,在某些多图层的场景下,需要多次合成,或是不能完成图层合成,从而影响场景的显示。
因此,在对图层的处理中,可以将一部分图层选用GPU的方式进行合成,一部分图层选用MDP的方式进行合成。具体的,可以将具有第一属性的图层利用GPU的方式合成为待混合图层。可以理解的是,若所述待显示图像中的所有图层都为具有第一属性的图层,那么利用GPU的方式合成的待混合图层则是最终的待显示图层,即待显示图像;若所述待显示图像中的部分图层为具有第一属性的图层,则利用GPU将具有第一属性的图层合成为待混合图层,再将待混合图层与其他图层进行合成后才能得到待显示图像。
步骤S140,将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。
在利用GPU将具有第一属性的图层合成为待混合图层后,可以将具有第二属性的图层与所述待混合图层利用MDP进行合成,并将合成结果发送到显示屏进行显示。
具体的,在一种实施方式中,可以是GPU将具有第一属性的图层合成为待混合图层后,将所述待混合图层发送到帧缓冲区进行缓存,在所述GPU合成待混合图层的同时,MDP将具有第二属性的图层和合成为预合成图层,加快合成速度。在MDP合成所述预合成图层后,从帧缓冲区获取所述待混合图层,再将所述待混合图层与所述预合成图层通过MDP合成为待显示图像,再将所述待显示图像发送给显示屏进行显示,从而,在电子设备的显示屏上可以显示所述待显示图像。
在另一种实施方式中,可以GPU将具有第一属性的图层合成为待混合图层后,将所述待混合图层发送到帧缓冲区进行缓存后,MDP从所述帧缓冲区获取所述待混合图层,将所述待混合图层与具有第二属性的图层一起合成为待显示图像,再将所述待显示图像发送给显示屏进行显示,从而,在电子设备的显示屏上可以显示所述待显示图像。
本申请提出的图像合成方法,通过获取待显示图像的多个图层;确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层;将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。根据每个图层的图层属性选择合适的合成方式,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
请参阅图5,本申请另一实施例提供了一种图像合成方法,本实施例在前述实施例的基础上,重点通过预设条件确定所述多个图层中的每个图层属性的过程,该方法可以包括:
步骤S210,获取待显示图像的多个图层。
步骤S210可参照前述实施例对应部分,在此不再赘述。
步骤S220,依次判断各个图层的所述图层属性是否满足预设条件。
在获取到待显示图像的多个图层时,可以依次判断各个图层的图层属性是否满足预设条件,以此来确定所述图层的图层属性。其中,图层满足预设条件表示图层通过GPU进行合成时间较多,对电子设备的运行速度具有较大影响;图层不满足预设条件表示图层通过GPU进行合成所需时间较少,对电子设备的运行速度影响不大。
具体的,可以是根据所述图层中的图像数据来判断是否满足预设条件,在所述图像数据大于预设数据值时,判定满足预设条件。也可以是根据图层是静态还是动态来判断是否满足预设条件,例如,在分屏显示时,在包括静态图层和动态图层时,判定静态图层不满足预设条件;若分屏显示的两个屏幕中只有一个屏幕包括动态图层时,判定动态图层满足预设条件;若分屏显示的两个屏幕中都包括动态图层时,则判定帧率高的动态图层满足预设条件。
步骤S230,将不满足所述预设条件的图层作为第一图层,确定所述第一图层的图层属性为第一属性。
对于不满足预设条件的图层,可以将所述图层作为第一图层,确定所述第一图层的图层属性为第一属性。具体的,例如在桌面场景下有四个图层,分别是状态栏层、导航栏层、壁纸层以及图标层。其中,确定不满足预设条件的图层为状态栏层和壁纸层,则可以将所述状态栏层和壁纸层作为第一图层,并确定状态栏层和壁纸层的图层属性为第一属性。
步骤S240,将满足所述预设条件的图层作为第二图层,确定所述第二图层的图层属性为第二属性。
对于满足预设条件的图层,可以将所述图层作为第二图层,确定所述第二图层的图层属性为第二属性。具体的,例如在桌面场景下有四个图层,分别是状态栏层、导航栏层、壁纸层以及图标层。其中,确定满足预设条件的图层为导航栏层和图标层,则可以将所述导航栏层和图标层作为第二图层,并确定导航栏层和图标层的图层属性为第二属性。
步骤S250,对所述第一图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层。
将具有第一属性的图层即第一图层利用GPU进行合成,例如,在桌面场景下的状态栏层和壁纸层的图层属性为第一属性,则将所述状态栏层与壁纸层利用GPU对图像进行合成为待混合图层。以进行下一步的处理。
步骤S260,将所述待混合图层与所述第二图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。
将第二图层以及GPU合成获得的待混合图层,利用MDP进行合成。例如,在桌面场景下,有四个图层,具有第一属性的状态栏层和壁纸层已经通过GPU合成为待混合图层,剩下的两个图层为具有第二属性的导航栏层和图标层,即第二图层。由此可以利用MDP将所述待混合图层,导航栏层以及图标层合成为最终的待显示图像,再发送给显示屏进行显示。由此,用户在电子设备的显示屏上可以看到桌面场景。
在一种实施方式中,在GPU将所述状态栏层和壁纸层合成为待混合图层后,将所述待混合图层发送给帧缓冲区进行缓存,MDP同时将导航栏层以及图标层合成为预合成图层, 在MDP合成所述预合成图层后,从所述帧缓冲区获取所述待混合图层,MDP将所述待混合图层以及预合成图层合成为待显示图像,再发送给显示屏进行显示。
在另一种实施方式中,在GPU将所述状态栏层和壁纸层合成为待混合图层后,将所述待混合图层发送给帧缓冲区进行缓存,MDP从所述帧缓冲区中获取所述待混合图层,将所述待混合图层、导航栏层以及图标层一起合成为待显示图像,发送给显示屏进行显示。
本申请提出的图像合成方法,通过获取待显示图像的多个图层,依次判断各个图层的图层属性是否满足预设条件,若满足,则将所述图层作为第二图层并确定所述第二图层的图层属性为第二属性,若不满足,则将所述图层作为第一图层,并确定所述第一图层的图层属性为第一属性;对具有第一属性的图层利用GPU合成为待混合图层,将所述待混合图层与具有第二属性的图层利用MDP合成为待显示图像,发送给显示屏给用户显示。根据每个图层的图层属性选择合适的合成方式,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
请参阅图6,本申请又一实施例提供了一种图像合成方法,本实施例在前述实施例的基础上,重点描述了通过图像数据判断图层是否满足预设条件的过程,也就是说,本申请实施例是对前述实施例中步骤S220的详细描述,该图像合成方法的其他步骤可以参见其他实施例,在此不再赘述。具体的,该方法可以包括:
步骤S310,对于每个图层,获取该图层对应的图像数据。
步骤S320,判断所述图层对应的图像数据是否大于预设数据值,若是,则执行步骤S330,若否,则执行步骤S340。
对于每个图层都包含对应的图像,则可以获取到每个图层对应的图像数据,在获取到所述图层对应的图像数据时,可以判断所述图像数据是否大于预设数据值,其中预设数据值的设定可以是一个临界值,在所述图像数据大于所述预设数据值时,则可以认为该图层所包含的内容的较多,合成该图层时所需要耗费的时间更长。
其中,所述图层对应的图像数据可以是图像分辨率或者图像大小。该分辨率表示每英寸图像内有多少个像素点,单位为PPI(Pixels Per Inch),可以表示图像中所包含的数据量,在图像尺寸大小一定的情况下,分辨率越高,表明该图像越清晰,所包含的数据内容越多;该图像大小表示图像数据量的多少,即表示图像所占字节数、比特数或者说存储空间,图像大小越大,表明该图像所占的存储空间越大。
图像数据的获取可以是捕捉每个图层中的图像,通过分析所述图像可以得到所述图像分辨率或者图像的大小。若获取的图像数据为图像分辨率,所述预设数据值则为预设分辨率,判断所述图层对应的图像数据是否大于预设数据值,可以是比对所述图像分辨率与所述预设分辨率的大小关系;若获取的图像数据为图像大小,所述预设数据值则为预设大小值,判断所述图层对应的图像数据是否大于预设数据值,可以是判断图像大小与预设大小值的大小关系。其中,图层对应的图像数据不管以何种参数限定,均可以根据GPU以及MDP的性能提前通过试验确定。也可以是获取所述图层对应的图像大小与预设大小值的大小关系。通过该大小关系判定所述图层对应的图像数据是否满足所述预设条件。
可以理解的是,用于表示所述图像数据的参数不局限于图像分辨率以及图像大小,还可以包括图像帧率以及图像深度等,所述图像帧率越高,则需要越快的合成速度,若图像帧率大于图像帧率的预设帧率值,则需要较快的图层合成方式对图层进行合成,由此可以根据图像帧率是否大于预设数据值来来确定所述图层的图像数据是否满足预设条件。对应图像帧率的预设数据值可以是预设帧率值,判断所述图层对应的图像数据是否大于预设数 据值,可以比对图层中的图像帧率是否大于预设帧率值。若大于,判定图层对应的图像数据大于预设数据值;若不大于,判定图层对应的图像数据不大于预设数据值。
所述图像深度大于预设深度值,则表明图像中包含的内容较多,对该图像的图层进行合成时所消耗的时间较长,则需要较快的图层合成方式对图层进行和合成,由此,可以根据图像深度是否大于预设数据值来确定所述图层的图像数据是否满足预设条件。即,对应图像深度的预设数据值可以是预设深度值,判断所述图层对应的图像数据是否大于预设数据值,可以比对图层中的图像深度是否大于预设深度值。若大于,判定图层对应的图像数据大于预设数据值;若不大于,判定图层对应的图像数据不大于预设数据值。
若判定所述图层对应的图像数据大于预设数据值,则执行步骤S330;若判定所述图层对应的图像数据不大于预设数据值,则执行步骤S340。下面仅以图像属性中的图像分辨率以及图像大小进行详细的说明。
步骤S330,则判定所述图层对应的图像数据满足所述预设条件。
图层对应的图像数据大于预设数据值,说明该图层合成更耗时,需要更快的合成速度,可以判定该图层对应的图像数据满足预设条件,以用于多媒体显示处理器进行合成。
例如,在获取的图层对应的图像数据为图像分辨率时,若所述图像分辨率大于预设分辨率,则判定所述图层对应的图像数据满足所述预设条件,可以将所述图层作为第二图层,并确定所述第二图层的图层属性为第二属性,表明所述第二图层中包含的数据较多,对所述第二图层进行合成时,耗费的时间较长,则需要选用合成速度较快的方式对所述第二图层进行合成。
又如,在获取的图层对应的图像数据为图像大小时,若所述图像大小大于预设大小值,则判定所述图层对应的图像数据满足所述预设条件,可以将所述图层作为第二图层,并进一步确定所述第二图层的图层属性为第二属性,表明所述第二图层中包含的数据内容较多,对所述第二图层进行合成时,耗费的时间较长,则需要选用合成速度较快的方式对所述第二图层进行合成。
步骤S340,则判定所述图层对应的图像数据不满足所述预设条件。
图层对应的图像数据小于预设数据值,可以判定该图层对应的图像数据不满足预设条件。
例如,在获取的图层对应的图像数据为图像分辨率时,若所述图像分辨率小于或等于预设分辨率,则判定所述图层对应的图像数据不满足所述预设条件,可以将所述图层作为第一图层,并确定所述第一图层的图层属性为第一属性,表明所述第一图层中包含的数据较少,对所述第一图层进行合成时,不会耗费较长的时间,则选择合成能力较好的方式对所述第一图层进行合成。
又如,在获取的图层对应的图像数据为图像大小时,若所述图像大小小于或等于预设大小值,则判定所述图层对应的图像数据不满足所述预设条件,可以将所述图层作为第一图层,并确定所述第一图层的图层属性为第一属性,表明所述第一图层中包含的数据内容较少,对所述第一图层进行合成时,不会耗费较长的时间,则可以选择合成能力较好的合成方式对所述第一图层进行合成。
本申请提出的图像合成方法,通过获取每个图层对应的图像数据,判断所述图层对应的图像数据是否大于预设数据值;若大于,则判定所述图层对应的图像数据满足所述预设条件;若不大于,则判定所述图层对应的图像数据不满足所述预设条件。根据所述图像数据来判断图层是否满足预设条件,进而确定每个图层对应的图层属性,以选择合适的图层 合成方式对所述图层进行处理,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
请参阅图7,本申请再一实施例提供了一种图像合成方法,本实施例在前述实施例的基础上,重点描述了电子设备在分屏显示状态下,通过静态图层或动态图层判断每个图层的图层属性是否满足预设条件的过程,也就是说,本申请实施例是对前述实施例中步骤S220的详细描述,该图像合成方法的其他步骤可以参见其他实施例,在此不再赘述。具体的,该方法可以包括:
步骤S410,判断第一屏幕以及第二屏幕中是否包括静态图层或者动态图层。
在电子设备中,通常会具备分屏显示功能,即在电子设备的一个显示屏中,有两个显示屏幕分别显示不同的内容,两个屏幕显示的内容特性可能完全不同,如一个屏幕显示的内容为静态内容,另一个屏幕显示的内容为动态内容,因此,可以根据各个屏幕的显示特点分屏幕进行合成。例如,以屏幕的中间为界限将电子设备的屏幕分为上下两个不同的显示屏幕,在上方的显示屏幕上显示微信聊天界面,在下方的显示屏幕中进行视频播放。可以将处于分屏显示状态的电子设备的两个显示屏幕分别作为第一屏幕和第二屏幕,在进行图层合成时,电子设备将第一屏幕中的图层进行合成显示,将第二屏幕的图层进行合成显示。那么在进行分屏显示时,电子设备的第一屏幕和第二屏幕中显示内容可以是静态内容如照片,也可以是动态内容如视频。那么,可以判断所述第一屏幕以及第二屏幕中是否包括静态图层或动态图层。
具体的,判断是静态图层还是动态图层可以根据图层的帧率来进行判断,其中,可以设置一个预设帧率,比较第一屏幕以及第二屏幕中图层的帧率与预设帧率的大小。若所述图层的帧率大于所述预设帧率,则判定所述图层为动态图层,若所述图层的帧率小于或等于所述预设帧率,则判定所述图层为静态图层。
步骤S420,若包括静态图层,判定静态图层的图层属性不满足预设条件。
其中,若所述第一屏幕以及第二屏幕中包括静态图层,由于在短时间内,该静态图层的内容不会发生变化,则不会耗费较长的时间对静态图层进行合成,所有静态图层可以都由GPU进行合成,则判定所述静态图层不满足预设条件,可以将所述第一屏幕和第二屏幕中的静态图层作为第一图层,并确定第一屏幕和第二屏幕中的静态图层的图层属性为第一属性。
步骤S430,若包括动态图层,判断是否第一屏幕以及第二屏幕中均包括动态图层。
其中,若第一屏幕以及第二屏幕中包括动态图层,若动态图层在两个屏幕中都有,则所有动态图层都通过MDP进行合成,可能超过MDP的合成能力,需要选取一个屏幕的动态图层由MDP合成;若只有一个屏幕包括动态图层,则可以考虑由MDP进行合成。
具体的,可以进一步判断是否第一屏幕以及第二屏幕中均包括动态图层。在一种实施方式中,可以是先获取所述动态图层,再获取所述动态图层对应的来源文件,根据所述来源文件确定所述动态图层来源是第一屏幕还是第二屏幕。若确定所述动态图层的来源只为第一屏幕,则判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;若所述动态图层的来源只为第二屏幕,则判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;若所述动态图层的来源为第一屏幕以及第二屏幕,则判定所述第一屏幕以及第二屏幕中均包括动态图层。
在另一种实施方式中,在确定包括动态图层的情况下,可以是先获取所述第一屏幕中的多个图层,获取所述多个图层一一对应的多个帧率,比对所述第一屏幕中的多个帧率与 所述预设帧率的大小,若所述第一屏幕中的多个帧率中都不大于预设帧率,则表明在第一屏幕中不包括动态图层,则判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;若所述多个帧率中的任意一个大于预设帧率,则继续获取所述第二屏幕中的多个图层一一对应的多个帧率,比对所述第二屏幕中的多个帧率与所述预设帧率的大小,若所述第二屏幕中的多个帧率中都不大于预设帧率,则表明在第二屏幕中不包括动态图层,则判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;若所述第二屏幕中的多个帧率中的任意一个大于预设帧率,则判定所述第一屏幕以及第二屏幕中均包括动态图层。在该实施方式中,若有屏幕中只有一个图层,则该屏幕的多个图层为一个图层。判断该屏幕中是否包括动态图层时,将该屏幕中的该图层的帧率与预设帧率比较,判断该屏幕中包括的图层是否为动态图层。若图层的帧率大于预设帧率,可以确定该图层为动态图层;若图层的帧率不大于预设帧率,可以确定该图层为静态图层。
步骤S440,若第一屏幕中的动态图层的帧率高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性满足预设条件,判定第二屏幕中的动态图层的所述图层属性不满足预设条件。
若判定第一屏幕以及第二屏幕中均包括动态图层,则可以获取所述动态图层对应的帧率来判断所述动态图层是否满足预设条件。具体的,可以获取所述第一屏幕中所有动态图层的帧率,以及第二屏幕中所有动态图层的帧率,若所述第一屏幕中动态图层的帧率大于所述第二屏幕中动态图层的帧率,则表示第一屏幕中动态图层的合成更花时间,则判定第一屏幕中的动态图层的所述图层属性满足预设条件,判定第二屏幕中的动态图层的所述图层属性不满足预设条件。
例如,获取的第一屏幕中的动态图层的帧率为30fps,获取的第二屏幕中的动态图层的帧率为24fps,那么第一屏幕中的动态图层的帧率大于所述第二屏幕中的动态图层的帧率,即30fps>24fps,则判定所述第一屏幕中的动态图层的所述图层属性满足预设条件,判定第二屏幕中的动态图层的所述图层属性不满足预设条件。表明第一屏幕中的内容刷新速度较快,需要较快的合成方式对所述图层进行合成,第二屏幕中的内容刷新速度较慢,则可以选用合成能力较好的合成方式对所述图层进行合成。
可选的,判断第一屏幕中动态图层与第二屏幕中动态图层的帧率高低时,若有屏幕中动态图层不止一个,可以以该屏幕中动态图层的平均帧率作为该屏幕中动态图层的帧率进行判断。可以在判断第一屏幕中的动态图层的帧率是否高于第二屏幕中的动态图层的帧率之前,若有屏幕中动态图层不止一个,可以计算该屏幕中动态图层的平均帧率作为该屏幕中动态图层的帧率。
步骤S450,若第一屏幕中的动态图层的帧率不高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性不满足预设条件,判定第二屏幕的动态图层的所述图层属性满足预设条件。
若判定第一屏幕以及第二屏幕中均包括动态图层,则可以获取所述动态图层对应的帧率来判断所述动态图层是否满足预设条件。具体的,可以获取所述第一屏幕中所有动态图层的帧率,以及第二屏幕中所有动态图层的帧率,若所述第一屏幕中所有动态图层的帧率小于或等于所述第二屏幕中动态图层的帧率,表示第二屏幕中动态图层的合成可能更花时间,则判定第一屏幕中的动态图层的所述图层属性不满足预设条件,判定第二屏幕的动态图层的所述图层属性满足预设条件。
例如,获取的第一屏幕中的动态图层的帧率为26fps,获取的第二屏幕中的动态图层的 帧率为29fps,那么第一屏幕中的动态图层的帧率小于所述第二屏幕中的动态图层的帧率,即26fps<29fps,则判定所述第一屏幕中的动态图层的所述图层属性不满足预设条件,判定第二屏幕的动态图层的所述图层属性满足预设条件。表明第一屏幕中的内容刷新速度较慢,则可以选用合成能力较好的合成方式对所述图层进行合成,第二屏幕中的内容刷新速度较快,需要较快的合成方式对所述图层进行合成。
步骤S460,若第一屏幕以及第二屏幕中只有一个屏幕包括动态图层,判定该动态图层满足预设条件。
其中,若判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层,则可以直接判定该动态图层满足预设条件。若只有一个屏幕中包括动态图层,表明电子设备的图层合成压力不大,但由于动态图层需要不断更新显示内容,则可以选用合成速度较快的合成方式对所述动态图层进行合成。
其中可以理解的是,若在步骤S430时判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层,则只执行步骤S460,不执行步骤S440以及步骤S450。若在步骤S430判定第一屏幕以及第二屏幕中均包括动态图层,则根据帧率择一执行步骤S440或步骤S450,不执行步骤S460。
本申请提出的图像合成方法,通过在分屏显示的电子设备中,判断第一屏幕以及第二屏幕中是否包括静态图层或动态图层;若包括静态图层,判定静态图层的图层属性不满足预设条件;若包括动态图层,判断是否第一屏幕以及第二屏幕中均包括动态图层,若是,根据动态图层的帧率来判断是否满足预设条件,进而确定每个图层对应的图层属性,以选择合适的图层合成方式对所述图层进行处理,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
请参阅图8,其示出了本申请实施例提供的一种图像合成装置500,所述装置500包括获取模块510,确定模块520,中间模块530以及合成模块540。
获取模块510,用于获取待显示图像的多个图层;确定模块520,用于确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;中间模块530,用于对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层;合成模块540,用于将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。
进一步的,所述确定模块520还用于依次判断各个图层的所述图层属性是否满足预设条件;将不满足所述预设条件的图层作为第一图层,确定所述第一图层的图层属性为第一属性;将满足所述预设条件的图层作为第二图层,确定所述第二图层的图层属性为第二属性。
进一步的,所述确定模块520还用于对于每个图层,获取该图层对应的图像数据;判断所述图层对应的图像数据是否大于预设数据值;若大于,则判定所述图层对应的图像数据满足所述预设条件;若不大于,则判定所述图层对应的图像数据不满足所述预设条件。
进一步的,所述确定模块520还用于比对所述图层对应的图像分辨率是否大于预设分辨率;若大于,则判定所述图层对应的图像数据大于预设数据值。
进一步的,所述确定模块520还用于比对所述图层对应的图像大小是否大于预设大小值;若大于,则判定所述图层对应的图像数据大于预设数据值。
进一步的,所述确定模块520还用于判断第一屏幕以及第二屏幕中是否包括静态图层或者动态图层,若包括静态图层,判定静态图层的图层属性不满足预设条件;若包括动态 图层,判断是否第一屏幕以及第二屏幕中均包括动态图层;若第一屏幕以及第二屏幕中均包括动态图层,判断第一屏幕中的动态图层的帧率是否高于第二屏幕中的动态图层的帧率;若第一屏幕中的动态图层的帧率高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性满足预设条件,判定第二屏幕中的动态图层的所述图层属性不满足预设条件;若第一屏幕中的动态图层的帧率不高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性不满足预设条件,判定第二屏幕的动态图层的所述图层属性满足预设条件;若第一屏幕以及第二屏幕中只有一个屏幕包括动态图层,判定该动态图层满足预设条件。
进一步的,所述中间模块530还用于将合成的待混合图层发送到帧缓冲区进行缓存,所述合成模块还用于将所述具有第二属性的图层利用多媒体显示处理器合成为预合成图层;从帧缓冲区获取所述待混合图层,再将所述待混合图层与所述预合成图层利用多媒体显示处理器合成为待显示图像;将所述待显示图像发送给显示屏进行显示。
需要说明的是,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
综上所述,本申请提供的图像合成方法,通过获取待显示图像的多个图层;确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;对具有第一属性的图层利用图形处理器(GPU,Graphics Processing Unit)合成为待混合图层;将所述待混合图层与具有第二属性的图层利用多媒体显示处理器(MDP,Multimedia Display Processor)进行合成,并将合成结果通过显示屏进行显示。根据每个图层的图层属性选择合适的合成方式,兼顾电子设备的图层合成能力和合成速度,以提升电子设备的图像处理能力。
在本申请所提供的几个实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图9,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备600可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本申请中的电子设备600可以包括一个或多个如下部件:处理器610、存储器620、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器620中并被配置为由一个或多个处理器610执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器610可以包括一个或者多个处理核。处理器610利用各种接口和线路连接整个电子设备600内的各个部分,通过运行或执行存储在存储器620内的指令、程序、代码集或指令集,以及调用存储在存储器620内的数据,执行电子设备600的各种功能和处理数据。可选地,处理器610可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器610可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器610中,单独通过一块通信芯片进行实现。
存储器620可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器620可用于存储指令、程序、代码、代码集或指令集。存储器620可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备600在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图10,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读存储介质700中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质700可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质700包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质700具有执行上述方法中的任何方法步骤的程序代码710的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码710可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (20)

  1. 一种图像合成方法,其特征在于,所述方法包括:
    获取待显示图像的多个图层;
    确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;
    对具有第一属性的图层利用图形处理器合成为待混合图层;
    将所述待混合图层与具有第二属性的图层利用多媒体显示处理器进行合成,并将合成结果通过显示屏进行显示。
  2. 根据权利要求1所述的方法,其特征在于,所述确定所述多个图层中每个图层的图层属性,包括:
    依次判断各个图层的所述图层属性是否满足预设条件;
    将不满足所述预设条件的图层作为第一图层,确定所述第一图层的图层属性为第一属性;
    将满足所述预设条件的图层作为第二图层,确定所述第二图层的图层属性为第二属性。
  3. 根据权利要求2所述的方法,其特征在于,所述依次判断各个图层的所述图层属性是否满足预设条件,包括:
    对于每个图层,
    获取该图层对应的图像数据;
    判断所述图层对应的图像数据是否大于预设数据值;
    若大于,则判定所述图层对应的图像数据满足所述预设条件;
    若不大于,则判定所述图层对应的图像数据不满足所述预设条件。
  4. 根据权利要求3所述的方法,其特征在于,所述判断所述图层对应的图像数据是否大于预设数据值,包括:
    比对所述图层对应的图像分辨率是否大于预设分辨率;
    若大于,则判定所述图层对应的图像数据大于预设数据值。
  5. 根据权利要求3所述的方法,其特征在于,所述判断所述图层对应的图像数据是否大于预设数据值,包括:
    比对所述图层对应的图像大小是否大于预设大小值;
    若大于,则判定所述图层对应的图像数据大于预设数据值。
  6. 根据权利要求5所述的方法,其特征在于,所述图像大小表示图像所占比特数或存储空间,图像大小越大,图像所占的存储空间越大。
  7. 根据权利要求3所述的方法,其特征在于,所述判断所述图层对应的图像数据是否大于预设数据值,包括:
    比对图层中的图像帧率是否大于预设帧率值;
    若大于,判定图层对应的图像数据大于预设数据值。
  8. 根据权利要求3所述的方法,其特征在于,所述判断所述图层对应的图像数据是否大于预设数据值,包括:
    比对图层中的图像深度是否大于预设深度值;
    若大于,判定图层对应的图像数据大于预设数据值。
  9. 根据权利要求2所述的方法,其特征在于,若电子设备处于分屏显示状态,以分屏显示状态中两个显示屏幕分别作为第一屏幕和第二屏幕,所述依次判断各个图层的所述图层属性是否满足预设条件,包括:
    判断第一屏幕以及第二屏幕中是否包括静态图层或者动态图层,
    若包括静态图层,判定静态图层的图层属性不满足预设条件;
    若包括动态图层,判断是否第一屏幕以及第二屏幕中均包括动态图层;
    若第一屏幕以及第二屏幕中均包括动态图层,判断第一屏幕中的动态图层的帧率是否高于第二屏幕中的动态图层的帧率;
    若第一屏幕中的动态图层的帧率高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性满足预设条件,判定第二屏幕中的动态图层的所述图层属性不满足预设条件;
    若第一屏幕中的动态图层的帧率不高于第二屏幕中的动态图层的帧率,判定第一屏幕中的动态图层的所述图层属性不满足预设条件,判定第二屏幕的动态图层的所述图层属性满足预设条件;
    若第一屏幕以及第二屏幕中只有一个屏幕包括动态图层,判定该动态图层满足预设条件。
  10. 根据权利要求9所述的方法,其特征在于,判断第一屏幕以及第二屏幕中是否包括静态图层或者动态图层,包括:
    比较所述第一屏幕以及第二屏幕中图层的帧率与预设帧率的大小;
    若所述图层的帧率大于所述预设帧率,判定所述图层为动态图层,
    若所述图层的帧率小于或等于所述预设帧率,判定所述图层为静态图层。
  11. 根据权利要求9或10所述的方法,其特征在于,所述判断第一屏幕中的动态图层的帧率是否高于第二屏幕中的动态图层的帧率之前,包括:若有屏幕中动态图层不止一个,计算该屏幕中动态图层的平均帧率作为该屏幕中动态图层的帧率。
  12. 根据权利要求9至11任一项所述的方法,其特征在于,判断是否第一屏幕以及第二屏幕中均包括动态图层,包括:
    获取所述动态图层对应的来源文件;
    根据所述来源文件确定所述动态图层来源是第一屏幕还是第二屏幕;
    若确定所述动态图层的来源只为第一屏幕或只为第二屏幕,判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;
    若所述动态图层的来源为第一屏幕以及第二屏幕,则判定所述第一屏幕以及第二屏幕中均包括动态图层。
  13. 根据权利要求9至12任一项所述的方法,其特征在于,判断是否第一屏幕以及第二屏幕中均包括动态图层,包括:
    获取所述第一屏幕中的多个图层一一对应的多个帧率;
    比对所述第一屏幕中的多个帧率与预设帧率的大小;
    若所述第一屏幕中的多个帧率都不大于预设帧率,判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;
    若所述第一屏幕中的多个帧率中的任意一个大于预设帧率,获取所述第二屏幕中的多个图层一一对应的多个帧率;
    比对所述第二屏幕中的多个帧率与所述预设帧率的大小;
    若所述第二屏幕中的多个帧率中都不大于预设帧率,判定第一屏幕以及第二屏幕中只有一个屏幕包括动态图层;
    若所述多个帧率中的任意一个大于预设帧率,则判定所述第一屏幕以及第二屏幕中均 包括动态图层。
  14. 如权利要求1至13任一项所述的方法,其特征在于,所述方法还包括:将合成的待混合图层发送到帧缓冲区进行缓存,
    所述将所述待混合图层与具有第二属性的图层利用多媒体显示处理器进行合成,并将合成结果通过显示屏进行显示,包括:
    将所述具有第二属性的图层利用多媒体显示处理器合成为预合成图层;
    从帧缓冲区获取所述待混合图层,再将所述待混合图层与所述预合成图层利用多媒体显示处理器合成为待显示图像;
    将所述待显示图像发送给显示屏进行显示。
  15. 如权利要求1至13任一项所述的方法,其特征在于,所述方法还包括:将合成的待混合图层发送到帧缓冲区进行缓存,
    所述将所述待混合图层与具有第二属性的图层利用多媒体显示处理器进行合成,并将合成结果通过显示屏进行显示,包括:
    从所述帧缓冲区获取所述待混合图层;
    将所述待混合图层与具有第二属性的图层一起合成为待显示图像;
    将所述待显示图像发送给显示屏进行显示。
  16. 根据权利要求1至15任一项所述的方法,其特征在于,相同的合成方式下,合成第一属性的图层所消耗的时间小于预设时间,合成第二属性的图层所消耗的时间大于或等于预设时间。
  17. 根据权利要求1至16任一项所述的方法,其特征在于,所述获取待显示图像的多个图层之前,还包括:
    对各个图层进行渲染。
  18. 一种图像合成装置,其特征在于,所述装置包括:
    获取模块,用于获取待显示图像的多个图层;
    确定模块,用于确定所述多个图层中每个图层的图层属性,所述图层属性包括第一属性和第二属性;
    中间模块,用于对具有第一属性的图层利用图形处理器的方式合成为待混合图层;
    合成模块,用于将所述待混合图层与具有第二属性的图层利用多媒体显示处理器进行合成,并将合成结果通过显示屏进行显示。
  19. 一种电子设备,其特征在于,所述电子设备包括:
    一个或多个处理器;
    存储器,与所述一个或多个处理器电连接;
    一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行如权利要求1至17任一项所述的方法。
  20. 一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1至17任一项所述的方法。
PCT/CN2020/100970 2019-07-17 2020-07-09 图像合成方法、装置、电子设备及存储介质 WO2021008424A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP20840542.3A EP4002086A4 (en) 2019-07-17 2020-07-09 IMAGE SYNTHESIS METHOD AND DEVICE, ELECTRONIC APPARATUS AND STORAGE MEDIA
US17/576,195 US20220139352A1 (en) 2019-07-17 2022-01-14 Method and Device for Image Composition, Electronic Device and Storage Medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910647137.9A CN110377263B (zh) 2019-07-17 2019-07-17 图像合成方法、装置、电子设备及存储介质
CN201910647137.9 2019-07-17

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/576,195 Continuation US20220139352A1 (en) 2019-07-17 2022-01-14 Method and Device for Image Composition, Electronic Device and Storage Medium

Publications (1)

Publication Number Publication Date
WO2021008424A1 true WO2021008424A1 (zh) 2021-01-21

Family

ID=68253733

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/100970 WO2021008424A1 (zh) 2019-07-17 2020-07-09 图像合成方法、装置、电子设备及存储介质

Country Status (4)

Country Link
US (1) US20220139352A1 (zh)
EP (1) EP4002086A4 (zh)
CN (1) CN110377263B (zh)
WO (1) WO2021008424A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377263B (zh) * 2019-07-17 2021-08-17 Oppo广东移动通信有限公司 图像合成方法、装置、电子设备及存储介质
CN110908757B (zh) * 2019-11-18 2022-01-28 腾讯科技(深圳)有限公司 一种媒体内容显示的方法以及相关装置
CN111325702B (zh) * 2020-01-19 2024-03-19 Oppo广东移动通信有限公司 图像融合方法及装置
CN111356026B (zh) * 2020-03-06 2022-03-29 Oppo广东移动通信有限公司 图像数据处理方法及相关装置
CN114327312B (zh) * 2020-09-25 2023-10-20 华为技术有限公司 投屏控制方法和装置
CN112330707A (zh) * 2020-11-17 2021-02-05 武汉联影医疗科技有限公司 图像处理方法、装置、计算机设备和存储介质
CN113012263A (zh) * 2021-03-16 2021-06-22 维沃移动通信有限公司 图层合成方式的配置方法和电子设备
CN112767231B (zh) * 2021-04-02 2021-06-22 荣耀终端有限公司 图层合成方法和设备
CN113110910B (zh) * 2021-04-20 2024-01-23 上海卓易科技股份有限公司 一种安卓容器实现的方法、系统及设备
CN113986162B (zh) * 2021-09-22 2022-11-11 荣耀终端有限公司 图层合成方法、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120139918A1 (en) * 2010-12-07 2012-06-07 Microsoft Corporation Layer combination in a surface composition system
CN106527656A (zh) * 2016-10-19 2017-03-22 北京奇虎科技有限公司 显示方法、装置及终端设备
US20180189922A1 (en) * 2016-12-31 2018-07-05 Intel IP Corporation Smart composition of output layers
CN110363831A (zh) * 2019-07-17 2019-10-22 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN110377263A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图像合成方法、装置、电子设备及存储介质
CN110377264A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8018472B2 (en) * 2006-06-08 2011-09-13 Qualcomm Incorporated Blending multiple display layers
CN103927710B (zh) * 2014-04-18 2018-08-03 Tcl集团股份有限公司 一种应用图层分流混合方法、系统以及装置
CN104010212A (zh) * 2014-05-28 2014-08-27 华为技术有限公司 一种多图层合成的方法和装置
US9953620B2 (en) * 2015-07-29 2018-04-24 Qualcomm Incorporated Updating image regions during composition
GB2544333B (en) * 2015-11-13 2018-02-21 Advanced Risc Mach Ltd Display controller
KR101876007B1 (ko) * 2015-12-28 2018-07-06 전자부품연구원 분산 및 병렬 프로그래밍 기반의 실시간 초다시점 3d 콘텐츠 합성 시스템 및 방법
KR102488333B1 (ko) * 2016-04-27 2023-01-13 삼성전자주식회사 그래픽 데이터를 합성하는 전자 장치 및 방법
CN106331831B (zh) * 2016-09-07 2019-05-03 珠海市魅族科技有限公司 图像处理的方法及装置
CN108509239B (zh) * 2018-03-07 2021-08-20 斑马网络技术有限公司 图层显示方法、装置、电子设备及存储介质
US20200226964A1 (en) * 2019-01-15 2020-07-16 Qualcomm Incorporated System and method for power-efficient ddic scaling utilization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120139918A1 (en) * 2010-12-07 2012-06-07 Microsoft Corporation Layer combination in a surface composition system
CN106527656A (zh) * 2016-10-19 2017-03-22 北京奇虎科技有限公司 显示方法、装置及终端设备
US20180189922A1 (en) * 2016-12-31 2018-07-05 Intel IP Corporation Smart composition of output layers
CN110363831A (zh) * 2019-07-17 2019-10-22 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN110377263A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图像合成方法、装置、电子设备及存储介质
CN110377264A (zh) * 2019-07-17 2019-10-25 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4002086A4 *

Also Published As

Publication number Publication date
US20220139352A1 (en) 2022-05-05
CN110377263B (zh) 2021-08-17
EP4002086A4 (en) 2022-10-26
EP4002086A1 (en) 2022-05-25
CN110377263A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
WO2021008424A1 (zh) 图像合成方法、装置、电子设备及存储介质
WO2021008373A1 (zh) 显示方法、装置、电子设备及计算机可读介质
WO2021008420A1 (zh) 图层合成方法、装置、电子设备及存储介质
CN110377264B (zh) 图层合成方法、装置、电子设备及存储介质
KR101401216B1 (ko) 외부 디스플레이에 대한 그래픽 컨텐츠 미러링
WO2021008418A1 (zh) 图层合成方法、装置、电子设备及存储介质
WO2021008427A1 (zh) 图像合成方法、装置、电子设备及存储介质
CN109587546B (zh) 视频处理方法、装置、电子设备和计算机可读介质
WO2021008390A1 (zh) 图层处理方法、装置、电子设备及计算机可读介质
US9786256B2 (en) Method and device for generating graphical user interface (GUI) for displaying
JP2019512749A (ja) アプリケーションプログラム処理方法及び端末デバイス
US9899004B2 (en) Method and device for generating graphical user interface (GUI) for displaying
US9883137B2 (en) Updating regions for display based on video decoding mode
CN112596843B (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN116821040B (zh) 基于gpu直接存储器访问的显示加速方法、装置及介质
CN109587555B (zh) 视频处理方法、装置、电子设备及存储介质
CN109587561B (zh) 视频处理方法、装置、电子设备及存储介质
US11169683B2 (en) System and method for efficient scrolling
US20110298816A1 (en) Updating graphical display content
CN114710702A (zh) 一种视频的播放方法和装置
CN110377258B (zh) 图像渲染方法、装置、电子设备及存储介质
CN108235144B (zh) 播放内容获取方法、装置及计算设备
CN115914737A (zh) 一种视频的播放方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20840542

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020840542

Country of ref document: EP

Effective date: 20220216