Picture recommendation method and electronic device

By generating differentiated image sequences in time and space dimensions and optimizing recommendation strategies in conjunction with user preferences, the problem of users finding it difficult to quickly obtain satisfactory images in non-static scenarios is solved, thereby improving user experience and efficiency.

CN117688195BActive Publication Date: 2026-06-09HUAWEI TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2022-08-30
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

In non-static scenarios, users find it difficult to quickly obtain satisfactory images. Existing technologies require multiple images with little difference, which is time-consuming and labor-intensive, and the recommendation strategy lacks personalization, resulting in a poor user experience.

Method used

By generating differentiated image sequences based on time and space dimensions and combining them with user preference learning, high-quality images are recommended based on comprehensive dimensions, thus optimizing the image recommendation strategy.

Benefits of technology

It increases the probability of obtaining satisfactory images within a limited time, improves user experience and efficiency, and meets the personalized needs of different users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117688195B_ABST
    Figure CN117688195B_ABST
Patent Text Reader

Abstract

The application provides a picture recommendation method and an electronic device. The method comprises the following steps: the electronic device displays an image acquisition interface; in response to an operation on an image acquisition button of the image acquisition interface, a first picture sequence is acquired through an image acquisition device; a second picture sequence is generated based on the first picture sequence, the second picture sequence comprising pictures with different time stamps and pictures with different observation angles in the first picture sequence; a third picture sequence is determined from the first picture sequence and the second picture sequence, the third picture sequence comprising N pictures with the first dimension score arranged in the top N positions and M pictures with the second dimension score arranged in the top M positions, N and M being positive integers; and the third picture sequence is recommended. The AI technology is used to recommend the "best moment" picture meeting the user's demand for the user, so that the user can obtain the satisfactory picture more conveniently and quickly.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to an image recommendation method and electronic device. Background Technology

[0002] Users often struggle to capture satisfactory images in non-static scenarios. For instance, when photographing moving individuals with a mobile phone, they may obtain unsatisfactory photos, such as those with limbs not fully extended during a jump, blurred body movements, closed eyes, or unwanted passersby. While mobile phones can currently take multiple photos in quick succession for users to choose from, these photos are often numerous and similar, making selection time-consuming and laborious, and preventing users from easily and quickly obtaining a satisfactory image. Summary of the Invention

[0003] This application discloses an image recommendation method and an electronic device that can recommend images that meet the user's needs, making it easier and faster for the user to obtain satisfactory images.

[0004] In a first aspect, embodiments of this application provide an image recommendation method applied to an electronic device. The method includes: displaying an image acquisition interface; responding to a first operation on an image acquisition button on the image acquisition interface, acquiring a first image sequence via an image acquisition device; generating a second image sequence based on the first image sequence, the second image sequence including images with timestamps different from those of the images in the first image sequence, and / or images with viewing angles different from those of the images in the first image sequence; determining a third image sequence from the first image sequence and the second image sequence, the third image sequence including N images ranked in the top N positions based on a first dimension score, and M images ranked in the top M positions based on a second dimension score, where N and M are positive integers; and recommending the third image sequence.

[0005] In one possible implementation, the second image sequence includes images whose timestamps are different from those of the images in the first image sequence. Specifically, this includes: the timestamp of any image in the second image sequence is different from the timestamps of all images in the first image sequence.

[0006] In one possible implementation, the second image sequence includes images whose viewing angles are different from those of the images in the first image sequence. Specifically, any image in the second image sequence has a different viewing angle than any image in the first image sequence whose timestamp is the same as that image's timestamp.

[0007] In the above method, the third image sequence recommended by the electronic device is selected from the first and second image sequences. The second image sequence is generated based on the collected first image sequence in the time and / or spatial dimensions, thereby increasing the number of differentiated, high-quality candidate images within a limited collection time, greatly improving the probability of the user obtaining the desired image. Furthermore, the third image sequence recommended by the electronic device includes N images that are superior in the first dimension and M images that are superior in the second dimension, thus meeting the different needs of different users and allowing them to obtain satisfactory images more conveniently and quickly.

[0008] In one possible implementation, the display image acquisition interface, responding to a first operation on the image acquisition button of the image acquisition interface, acquires a first image sequence through the image acquisition device, which can be replaced by: responding to an operation for selecting the first image sequence, obtaining the first image sequence from the image library of the electronic device.

[0009] In the above method, the first image sequence can also be obtained from an image library, which can meet the different user needs in different scenarios and broaden the application scenarios.

[0010] In one possible implementation, the step of determining a third image sequence from the first image sequence and the second image sequence, the third image sequence comprising N images ranked in the top N positions based on the first dimension's score, and M images ranked in the top M positions based on the second dimension's score, where N and M are positive integers, can be replaced by: determining P images ranked in the top P positions based on the third dimension's score from the first image sequence and the second image sequence, where P is a positive integer, saving the P images, and deleting all images from the first image sequence and the second image sequence except for the P images. Here, the third dimension is determined by the electronic device in response to an operation on the settings interface, or the third dimension is a dimension of user preferences learned by the electronic device.

[0011] In the above method, the electronic device can determine from the first image sequence and the second image sequence: either P images that are superior in the third dimension manually set by the user, or P images that are superior in the third dimension of the user's learned preferences, and save these P images and delete other images. This allows the user to quickly and conveniently obtain the images they need without having to manually select them, greatly improving the user experience.

[0012] In one possible implementation, the first dimension or the second dimension is any one of the following: a comprehensive dimension, the position of the subject in the image, the range of motion of the subject in the image, the expression of the subject in the image, and the image quality.

[0013] In one possible implementation, recommending the third image sequence includes: displaying a first interface, the first interface displaying first information, second information, the N images, and the M images, the first information indicating the first dimension, the first information being associated with the N images, the second information indicating the second dimension, and the second information being associated with the M images.

[0014] In the above method, users can obtain N images associated with the first dimension based on the first information, and M images associated with the second dimension based on the second information. The display method is simple and clear, making it convenient for users to obtain images under the required dimension and improving the user experience.

[0015] In one possible implementation, recommending the third image sequence includes: displaying a second interface displaying K images, where K is a positive integer greater than or equal to N, the K images including the N images and (KN) images other than the N images, the (KN) images belonging to the first image sequence and / or the second image sequence, the K images including a first image and a second image, the first image having a higher score in the first dimension than the second image having a higher score in the first dimension, and the first image being displayed before the second image in the second interface.

[0016] In the above method, electronic devices can prioritize displaying images with higher scores in the first dimension, avoiding situations where high-scoring images are displayed later, causing users to spend a lot of time to obtain them, thereby further improving the efficiency of users obtaining the required images and enhancing the user experience.

[0017] In one possible implementation, the (KN) images do not belong to the third image sequence. For example, the K images are the images whose scores in the first dimension are ranked in the top K positions in the first image sequence and the second image sequence.

[0018] In the above method, the electronic device can also display other images besides the recommended third image sequence (i.e., when K is greater than N), that is, provide more candidate images for the user to choose from, avoid the situation where the images in the third image sequence do not meet the user's needs and the user cannot obtain the required image, and further ensure the user experience.

[0019] In one possible implementation, the method further includes: receiving a second operation for selecting at least one image, the at least one image belonging to the first image sequence and / or the second image sequence; saving the at least one image; and deleting images from the first image sequence and the second image sequence other than the at least one image.

[0020] In the above method, the electronic device can save at least one picture selected by the user and delete other pictures, thus avoiding the use of other pictures that the user does not need to occupy the device's storage space and reducing the storage pressure on the device.

[0021] In one possible implementation, the third image sequence is obtained according to a first strategy; the method further includes: receiving a second operation for selecting at least one image, the at least one image belonging to the first image sequence and / or the second image sequence; and updating the first strategy according to the third image sequence and the at least one image.

[0022] In the above method, the electronic device can update the first strategy for determining the recommended third image sequence based on at least one image selected by the user. That is, the first strategy is learned according to user habits, and the first strategy is personalized, so that the recommended images determined according to the first strategy are more in line with the current user's needs and the user experience is improved.

[0023] In one possible implementation, generating a second image sequence based on the first image sequence includes: generating a fourth image sequence based on the first image sequence, wherein the timestamps of the images in the fourth image sequence are different from the timestamps of the images in the first image sequence; generating a fifth image sequence based on the first image sequence and the fourth image sequence, wherein the viewing angles of the images in the fifth image sequence are different from the viewing angles of the images in the first image sequence and the fourth image sequence, and the second image sequence includes the fourth image sequence and the fifth image sequence.

[0024] In one possible implementation, the timestamps of the images in the fourth image sequence are different from the timestamps of the images in the first image sequence. Specifically, the timestamp of any image in the fourth image sequence is different from the timestamps of all images in the first image sequence.

[0025] In one possible implementation, the viewing perspective of the images in the fifth image sequence is different from that of the images in the first image sequence and the fourth image sequence. Specifically, the viewing perspective of any image in the fifth image sequence is different from that of the images in the first image sequence and the fourth image sequence whose timestamps are the same as the timestamp of that image.

[0026] In the above method, the electronic device can first generate a fourth image sequence with a different timestamp from the first image sequence in the time dimension, and then generate a fifth image sequence with a different viewing angle from the first and fourth image sequences in the spatial dimension. Compared with only generating images with a different viewing angle from the first image sequence, this further expands the high-quality and differentiated candidate images, and the probability of the user obtaining the required image is further improved.

[0027] In one possible implementation, generating a fifth image sequence based on the first image sequence and the fourth image sequence includes: training a spatial awareness model based on the first image sequence and the fourth image sequence; obtaining a first spatial parameter, wherein the first spatial parameter is different from the spatial parameters of the images in the first image sequence and the second image sequence; and using the first spatial parameter as input to the spatial awareness model to obtain an output, wherein the output is the fifth image sequence.

[0028] In one possible implementation, the spatial awareness model is obtained through multiple rounds of iterative training.

[0029] In one possible implementation, the spatial parameters include the spatial coordinates of the image and the orientation of the image acquisition device used to acquire the image.

[0030] In the above method, the spatial perception model is obtained through iterative training based on the currently acquired first image sequence and the fourth image sequence generated from the first image sequence. Therefore, the spatial perception model can fully learn the current shooting scene. The accuracy of the fifth image sequence obtained through the spatial perception model is higher, that is, the accuracy of the candidate images is higher, which further improves the probability of the user obtaining the required image.

[0031] In one possible implementation, generating a second image sequence based on the first image sequence includes: training a spatiotemporal awareness model based on the first image sequence; obtaining a second spatial parameter and a first temporal parameter, wherein the second spatial parameter includes spatial parameters different from the spatial parameters of the images in the first image sequence, and the first temporal parameter includes temporal parameters different from the temporal parameters of the images in the first image sequence; and using the second spatial parameter and the first temporal parameter as input to the spatiotemporal awareness model to obtain an output, wherein the output is the second image sequence.

[0032] In one possible implementation, the spatiotemporal awareness model is obtained through multiple rounds of iterative training.

[0033] In one possible implementation, the time parameter includes the image's timestamp, or nested timestamps derived from the image's timestamp.

[0034] In the above method, the spatiotemporal awareness model is obtained through iterative training based on the currently acquired first image sequence. Therefore, the spatiotemporal awareness model can fully learn the current shooting scene. The accuracy of the second image sequence obtained through the spatiotemporal awareness model is higher, that is, the accuracy of the candidate images is higher, which further increases the probability that the user can obtain the required image.

[0035] Secondly, embodiments of this application provide an electronic device, including a transceiver, a processor, and a memory; the memory is used to store a computer program, and the processor calls the computer program to execute the image recommendation method provided by the first aspect of the embodiments of this application and any implementation thereof.

[0036] Thirdly, embodiments of this application provide a computer storage medium storing a computer program, which, when executed by a processor, is used to perform the image recommendation method provided by the first aspect of the embodiments of this application and any implementation thereof.

[0037] Fourthly, embodiments of this application provide a computer program product that, when run on an electronic device, causes the electronic device to execute the image recommendation method provided by the first aspect of the embodiments of this application and any implementation thereof.

[0038] Fifthly, embodiments of this application provide an electronic device that includes the methods or apparatus described in any embodiment of this application. The electronic device is, for example, a chip. Attached Figure Description

[0039] The following describes the accompanying drawings used in this application.

[0040] Figure 1 This is a schematic diagram of the hardware structure of an electronic device provided in this application;

[0041] Figure 2 This is a schematic diagram of the software architecture of an electronic device provided in this application;

[0042] Figure 3 This is a flowchart illustrating an image recommendation method provided in this application;

[0043] Figure 4 This is a schematic diagram of an image generation process provided in this application;

[0044] Figure 5 This is a schematic diagram of yet another image generation process provided in this application;

[0045] Figure 6 This is a schematic diagram of the location points of the human skeleton provided in this application;

[0046] Figure 7 This is a schematic diagram illustrating the process of obtaining a personalized dataset as provided in this application;

[0047] Figures 8-15 This is a schematic diagram of the software architecture of another electronic device provided in this application;

[0048] Figures 16-19 These are schematic diagrams of some user interface embodiments provided in this application. Detailed Implementation

[0049] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.

[0050] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.

[0051] When users capture images in non-static scenarios, such as capturing moving objects, electronic devices can take multiple pictures in succession and select the image with better image quality / clarity from these multiple pictures to recommend to the user. The user can then select the desired image from these multiple images based on the recommendations. However, the following technical issues still prevent users from conveniently and quickly obtaining satisfactory images.

[0052] Technical Issue 1: Electronic devices perform continuous shooting in chronological order, meaning they capture images within a limited shooting time. This may result in a situation where none of the captured images meet the user's needs.

[0053] Technical Issue 2: Electronic devices recommend images to users based solely on image quality, meaning the image recommendation strategy is simple and may result in recommended images of low quality that do not meet user needs.

[0054] Technical Issue 3: The image recommendation strategy is the same for all users, which does not take into account that different users may have different image needs, resulting in low-quality recommended images that do not meet user requirements.

[0055] This application provides an image recommendation method applied to electronic devices. This method allows users to conveniently and quickly obtain satisfactory images, improving user experience. In one embodiment, the electronic device can generate more images based on the captured image in time and / or spatial dimensions for user selection, i.e., increasing differentiated, high-quality candidate images within a limited shooting time, thus solving the first technical problem mentioned above. In another embodiment, the electronic device can also recommend images to users from multiple dimensions such as overall composition, the position of the subject (hereinafter referred to as subject position), the subject's movement, facial expression, and image quality, effectively optimizing the image recommendation strategy to solve the second technical problem mentioned above. In yet another embodiment, the electronic device can also update the image recommendation strategy based on the image selected by the user (which can be understood as on-device self-learning), realizing the personalization and continuous updating of the image recommendation strategy to solve the third technical problem mentioned above. This allows users to conveniently and quickly obtain satisfactory images, improving user experience.

[0056] In this application, the electronic device can be a mobile phone, tablet computer, handheld computer, desktop computer, laptop computer, ultra-mobile personal computer (UMPC), netbook, cellular phone, personal digital assistant (PDA), as well as smart home devices such as smart TVs and smart cameras, wearable devices such as smart bracelets, smartwatches, and smart glasses, extended reality (XR) devices such as augmented reality (AR), virtual reality (VR), and mixed reality (MR), in-vehicle devices, or smart city devices. The embodiments of this application do not impose special restrictions on the specific type of electronic device.

[0057] The following describes an exemplary electronic device 100 provided in the embodiments of this application.

[0058] Figure 1 An exemplary schematic diagram of the hardware structure of an electronic device 100 is shown.

[0059] Electronic device 100 may include processor 110, external memory interface 120, internal memory 121, universal serial bus (USB) interface 130, charging management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0060] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0061] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.

[0062] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.

[0063] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0064] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0065] The charging management module 140 is used to receive charging input from the charger.

[0066] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to power the processor 110, internal memory 121, display 194, camera 193, and wireless communication module 160, etc.

[0067] The wireless communication function of electronic device 100 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.

[0068] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network.

[0069] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G / 6G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In one embodiment, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In another embodiment, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.

[0070] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through audio devices (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In one embodiment, the modem processor may be a separate device. In another embodiment, the modem processor may be independent of the processor 110 and housed within the same device as the mobile communication module 150 or other functional modules.

[0071] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.

[0072] In one embodiment, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The aforementioned wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).

[0073] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0074] The display screen 194 is used to display images, videos, etc. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In one embodiment, the electronic device 100 may include one or N display screens 194, where N is a positive integer greater than 1.

[0075] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.

[0076] The ISP (Image Signal Processor) is used to process data fed back from the camera 193. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, transforming it into an image visible to the naked eye. The ISP can also perform algorithmic optimization of image noise, brightness, and skin tone. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In one implementation, the ISP can be integrated into the camera 193.

[0077] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into image signals in standard RGB, YUV, or other formats. In one embodiment, electronic device 100 may include one or N cameras 193, where N is a positive integer greater than 1.

[0078] The external storage interface 120 can be used to connect an external storage card, such as a Micro SD card, to expand the storage capacity of the electronic device 100.

[0079] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 performs various functional applications and data processing of electronic device 100 by executing instructions stored in internal memory 121 and / or instructions stored in memory disposed in the processor.

[0080] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.

[0081] Audio module 170 is used to convert digital audio information into analog audio signal output, and also to convert analog audio input into digital audio signal. Audio module 170 can also be used for encoding and decoding audio signals.

[0082] The loudspeaker 170A, also known as a "loudspeaker", is used to convert audio electrical signals into sound signals.

[0083] The receiver 170B, also known as the "earpiece", is used to convert audio electrical signals into sound signals.

[0084] The microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals.

[0085] The 170D headphone jack is used to connect wired headphones.

[0086] Pressure sensor 180A is used to sense pressure signals and can convert the pressure signals into electrical signals. In one embodiment, pressure sensor 180A can be disposed on display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When a force is applied to pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the intensity of the touch operation based on pressure sensor 180A. Electronic device 100 can also calculate the touch position based on the detection signal from pressure sensor 180A.

[0087] The gyroscope sensor 180B can be used to determine the motion attitude of the electronic device 100. In one embodiment, the angular velocity of the electronic device 100 about three axes (i.e., the x, y, and z axes) can be determined by the gyroscope sensor 180B.

[0088] The 180C barometric pressure sensor is used to measure barometric pressure.

[0089] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip cover.

[0090] The accelerometer 180E can detect the magnitude of acceleration of electronic device 100 in various directions (generally three axes).

[0091] Distance sensor 180F is used to measure distance.

[0092] The proximity sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The LED may be an infrared LED. The electronic device 100 emits infrared light outward through the LED. The electronic device 100 uses the photodiode to detect infrared reflected light from a nearby object. When sufficient reflected light is detected, it can be determined that an object is near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that no object is near the electronic device 100.

[0093] The 180L ambient light sensor is used to detect ambient light intensity.

[0094] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can utilize the characteristics of the collected fingerprints to achieve fingerprint unlocking, accessing application locks, taking photos with fingerprints, answering calls with fingerprints, etc.

[0095] The 180J temperature sensor is used to detect temperature.

[0096] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In another embodiment, touch sensor 180K can also be located on the surface of electronic device 100, in a different position than display screen 194.

[0097] The bone conduction sensor 180M can acquire vibration signals.

[0098] Button 190 includes the power button, volume buttons, etc.

[0099] Motor 191 can generate vibration alerts.

[0100] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.

[0101] The SIM card interface 195 is used to connect the SIM card.

[0102] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. For example, a layered architecture software system can be the Android system, the Harmony operating system (OS), or other software systems. This application embodiment uses the layered architecture Android system as an example to illustrate the software structure of electronic device 100.

[0103] Figure 2 An exemplary schematic diagram of the software architecture of an electronic device 100 is shown.

[0104] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0105] The application layer can include a series of application packages.

[0106] like Figure 2 As shown, the application package may include applications such as camera, gallery, music, calendar, SMS, call, navigation, Bluetooth, and browser. The application package in this application can also be replaced with other forms of software such as mini-programs.

[0107] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0108] like Figure 2 As shown, the application framework layer may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.

[0109] The window manager is used to manage windowed applications. It can retrieve screen size, determine the presence of a status bar, lock the screen, and capture screenshots, among other things.

[0110] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.

[0111] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.

[0112] The phone manager is used to provide communication functions for electronic device 100. For example, it manages call status (including connection and disconnection).

[0113] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.

[0114] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. For example, the notification manager can be used to notify users of completed downloads or message alerts. The notification manager can also display notifications as icons or scrolling text in the top status bar, such as notifications from background applications, or as dialog boxes on the screen. Examples include displaying text messages in the status bar, emitting sounds, vibrating electronic devices, and flashing indicator lights.

[0115] The Android Runtime consists of core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0116] The core library consists of two parts: one part is the functionalities that need to be called by the Java language, and the other part is the Android core library.

[0117] The application layer and application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0118] System libraries can include multiple functional modules. For example: surface manager, media libraries, 3D graphics processing libraries (e.g., OpenGL ES), 2D graphics engines (e.g., SGL), etc.

[0119] The Surface Manager is used to manage the display subsystem and provides the blending of 2D and 3D layers for multiple applications.

[0120] The media library supports playback and recording of various common audio and video formats, as well as still image files. It supports multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.

[0121] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0122] A 2D graphics engine is a graphics engine for 2D drawing.

[0123] The kernel layer is the layer between hardware and software. The kernel layer contains at least the display driver, camera driver, audio driver, and sensor driver.

[0124] The following example, using a scene of capturing a photograph, illustrates the workflow of the software and hardware of the electronic device 100.

[0125] When touch sensor 180K receives a touch operation, a corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into a raw input event (including touch coordinates, timestamp of the touch operation, etc.). The raw input event is stored in the kernel layer. The application framework layer retrieves the raw input event from the kernel layer and identifies the control corresponding to the input event. Taking a touch click as an example, where the corresponding control is the camera application icon, the camera application calls the application framework layer's interface to launch the camera application, and then calls the kernel layer to launch the camera driver, capturing still images or videos through camera 193.

[0126] The image recommendation method provided in the embodiments of this application will be introduced next.

[0127] Please see Figure 3 , Figure 3 This is a flowchart illustrating an image recommendation method provided in an embodiment of this application. This method can be applied to... Figure 1 The illustrated electronic device 100. This method can be applied to... Figure 2 The electronic device 100 shown. The method may include, but is not limited to, the following steps:

[0128] S101: The electronic device acquires the first image sequence.

[0129] In this application, an image sequence refers to at least one image.

[0130] In one embodiment, the electronic device can acquire a first image sequence by capturing images with a camera. In another embodiment, the electronic device can acquire a first image sequence captured by a connected device. In yet another embodiment, the electronic device can retrieve the first image sequence from its memory, such as from its image library. In yet another embodiment, the electronic device can acquire a first image sequence stored on a network device; for example, when a user uses a cloud photo album application on the electronic device, the electronic device can respond to a user operation to select a first image sequence from the cloud photo album by sending a request message to the cloud photo album application server and receiving the first image sequence sent by the application server. However, the first image sequence can also be acquired through at least two of the above embodiments. For example, the electronic device can capture a portion of the images in the first image sequence using a camera and acquire other images from the first image sequence captured by a connected device, excluding the captured portion. This application does not limit the specific method of acquiring the first image sequence.

[0131] S102: The electronic device generates a second image sequence based on the first image sequence.

[0132] In one implementation, the electronic device can generate a second image sequence based on the first image sequence in the time and / or spatial dimensions.

[0133] In one implementation, an electronic device can generate at least one image in a time dimension based on a first image sequence, and a second image sequence includes this at least one image. In some examples, the electronic device can first obtain the capture time (referred to as a timestamp) of each image in the first image sequence, assuming that the smallest and largest timestamps are timestamp 1 and timestamp 2, respectively. Then, the electronic device can generate at least one image with finer timestamps based on these timestamps and the first image sequence, wherein the timestamp of each image in this at least one image is greater than timestamp 1 and less than timestamp 2, and is different from the timestamp of any image in the first image sequence, similar to video frame interpolation. Examples of the above process can be found below. Figure 4 .

[0134] like Figure 4 As shown, the first image sequence may include four images: image 1, image 2, image 3, and image 4, with their timestamps in ascending order as t1, t2, t3, and t4. An electronic device can generate three images in the time dimension based on the first image sequence: image 5 with timestamp t5 between t1 and t2, image 6 with timestamp t6 between t2 and t3, and image 7 with timestamp t7 between t3 and t4. (Not limited to...) Figure 4As shown, in some other examples, for any two adjacent timestamps in the first image sequence, the electronic device can generate multiple images with timestamps between these two timestamps, such as generating multiple images with timestamps between t1 and t2. In other examples, for any two adjacent timestamps in the first image sequence, the electronic device may not generate images with timestamps between these two timestamps, such as not generating image 5 with timestamp t5 between t1 and t2. This application does not limit the specific generation method.

[0135] In one implementation, the electronic device can generate at least one image in a spatial dimension based on a first image sequence, for example, by synthesizing a new perspective based on a neural radiance field (NeRF) to obtain this at least one image, and the second image sequence includes this at least one image. In some examples, for any image in the first image sequence (which may be called a reference image), the electronic device can generate one or more images with different viewing angles, wherein the timestamp of this one or more images is the timestamp of the reference image, and the viewing angle of any one of these one or more images is different from the viewing angle of the reference image. If multiple images are generated, these multiple images correspond to different viewing angles. This process can be understood as synthesizing a new perspective from different viewing angles for a fixed timestamp, thereby obtaining at least one image with a new viewing angle. The electronic device can use some or all of the images in the first image sequence as reference images to generate at least one image with more viewing angles. Examples of the above process can be found below. Figure 5 , Figure 5 by Figure 4 Image 1 in the example is used as a reference image. The subject of the photograph in Image 1 is human body 1.

[0136] like Figure 5 As shown, human body 1 can be abstracted as a cube, and can be observed from different perspectives, such as, but not limited to: observing the front / front view of human body 1 from a frontal perspective, observing the back / back view of human body 1 from a rearal perspective, observing the left side of human body 1 from a leftal perspective, observing the right side of human body 1 from a rightal perspective, etc. Image 1, used as a reference image, is an image of human body 1 taken from a frontal perspective at timestamp t1. For timestamp t1 of image 1, the electronic device can generate: image 8 obtained by observing human body 1 from a rearal perspective, image 9 obtained by observing human body 1 from a leftal perspective, and image 10 obtained by observing human body 1 from a rightal perspective. (Not limited to...) Figure 5 As shown, in other examples, the electronic device can generate images with more or fewer viewing angles. For example, for timestamp t1 of image 1, the electronic device can also generate an image of human body 1 viewed from a top-down perspective. This application does not limit the specific generation method.

[0137] S103: The electronic device uses an aesthetic evaluation model to score each image in the first and second image sequences, and obtains a third image sequence with a higher score.

[0138] In one implementation, the electronic device can use each image in the first image sequence and the second image sequence as input to an aesthetic evaluation model to obtain a corresponding output. This output can include scores for the image across multiple dimensions, such as, but not limited to, the following: overall score (the corresponding score is called the overall score), subject position (the corresponding score is called the subject position score), the ease of movement of the subject (the corresponding score is called the ease of movement score), the expression of the subject (the corresponding score is called the expression score), and image quality (the corresponding score is called the image quality score). This can be understood as the aesthetic evaluation model scoring the image from multiple dimensions. The scoring method of the aesthetic evaluation model will be illustrated below using any image from the first image sequence and the second image sequence as an example: the first image.

[0139] In some examples, the aesthetic evaluation model can determine the subject position score based on the rate of change (i.e., acceleration) of the subject's velocity in the first image. This acceleration can be determined based on the velocities of the subject in the first image and adjacent images belonging to a first image sequence and a second image sequence. For example, but not limited to, images whose absolute difference between their timestamps and the timestamp of the first image is less than or equal to a preset threshold. For instance, when the acceleration of the subject in the first image shows a decreasing trend and its value is 0, the aesthetic evaluation model can consider the subject in the first image to be at the highest point of motion, and therefore set the subject position score of the first image to its maximum value. This decreasing trend can include an upward acceleration gradually decreasing from a positive number (gradually approaching 0). This trend can be obtained by comparing the acceleration of the subject in a previous image belonging to a first image sequence and a second image sequence, and whose timestamp is less than the timestamp of the first image. Not limited to the examples above, in other examples, the aesthetic evaluation model can also determine the subject position score based on the size of the area occupied by the subject in the first image. For example, the larger the area occupied, the higher the subject position score. In other examples, the aesthetic evaluation model can also determine the subject position score based on the position priority of the subject in the first image. For example, when the subject is located in the middle, the position priority is the highest, so the subject position score can be set to the maximum value. This application does not limit this.

[0140] In some examples, the aesthetic evaluation model can determine the motion extension score based on the distance to the skeletal location points of the subject in the first image. For instance, a larger distance indicates a more extended motion in the subject's movement, resulting in a higher motion extension score; conversely, a smaller distance (e.g., when the limbs are not fully extended during a jump) results in a lower motion extension score. Examples of the skeletal location points of the subject can be found in [link to relevant documentation]. Figure 6 , Figure 6 The subject shown is a human body, such as Figure 6 As shown, the human body can include multiple skeletal locations such as the head, neck, left / right shoulders, left / right elbows, left / right hands, left / right hips, left / right knees, and left / right feet. The distances mentioned above include, for example, […]. Figure 6 The distance between any two bone locations shown.

[0141] In some examples, the aesthetic evaluation model can determine the expression score based on the facial expression of the subject in the first image. For example, when the facial expression is a better expression such as smiling, laughing, or having the eyes wide open, the expression score is higher, and when the facial expression is a worse expression such as having the eyes closed, the expression score is lower. The better or worse expressions mentioned above can be preset, determined in response to user operation, or obtained by learning user preferences.

[0142] In some examples, the aesthetic evaluation model can determine an image quality score based on the image quality of the first image. For instance, a higher image quality score is obtained when the first image has higher image quality, and a lower image quality score is obtained when the first image has lower image quality (e.g., when the subject is blurred). Image quality may include, but is not limited to, dynamic range, saturation, contrast, and sharpness.

[0143] In some examples, the overall score can be a score that combines multiple indicators such as image quality, subject position, movement fluidity, facial expression, and whether there are moving objects (e.g., whether there are random passersby).

[0144] In one implementation, the electronic device can sort and filter the scores of images in a first and second image sequence across multiple dimensions (from multiple dimensions) from the output of an aesthetic evaluation model, and obtain a third image sequence with higher scores. The third image sequence may include multiple image sequences with higher scores in each of the aforementioned multiple dimensions. In some examples, the scores across multiple dimensions are the comprehensive score, subject position score, motion extensibility score, facial expression score, and image quality score as described above. Therefore, the third image sequence may include: image sequence 1 with a comprehensive score in the top N1 positions, image sequence 2 with a subject position score in the top N2 positions, image sequence 3 with a motion extensibility score in the top N3 positions, image sequence 4 with a facial expression score in the top N4 positions, and image sequence 5 with an image quality score in the top N5 positions, where N... i Let i be a positive integer, where i is a positive integer less than 6.

[0145] S104: The electronic device displays a third image sequence.

[0146] In one implementation, the electronic device may prioritize displaying / highlighting a third image sequence when displaying at least one image from a first image sequence and / or a second image sequence, for example, displaying images in the third image sequence before other images.

[0147] In another implementation, when the electronic device displays the third image sequence, it displays at least one image from the first image sequence and / or the second image sequence in response to a user action (e.g., a user action to return to the image list interface of a gallery application).

[0148] In one implementation, when the electronic device displays the third image sequence, it can prioritize displaying / highlighting images with higher scores. For example, when the electronic device displays image sequence 1, which ranks in the top N1 positions of the third image sequence, it can display the images in descending order of their overall scores, i.e., the image with the highest overall score is displayed at the front, the image with the second highest overall score is displayed in the second position, and so on.

[0149] In one implementation, when the electronic device displays the third image sequence, it can display the images with the highest scores, either in descending order of scores or in chronological order.

[0150] S105: The electronic device receives a user operation to select at least one picture (which may be referred to as the fourth picture sequence).

[0151] In one implementation, S105 is an optional step.

[0152] In one embodiment, when the electronic device displays the third image sequence, it can receive a user operation for selecting a fourth image sequence from the third image sequence. In another embodiment, when the electronic device displays the third image sequence, it also displays other images from the first image sequence and / or the second image sequence, and the electronic device can receive a user operation for selecting a fourth image sequence from the third image sequence and / or the other images.

[0153] In one embodiment, the fourth image sequence may include images from the first image sequence. In one embodiment, the fourth image sequence may include images from the second image sequence. In one embodiment, the fourth image sequence may include images from the third image sequence.

[0154] In one implementation, the electronic device can set the priority of images in the fourth image sequence based on received user operations; for example, the priority of the image selected first by the user is higher than the priority of the image selected later by the user.

[0155] In one implementation, the electronic device can determine the dimension corresponding to the image in the fourth image sequence based on the received user operation. This dimension can be any one of the multiple dimensions described in S103. For example, when the electronic device displays image sequence 1 with a high overall score, it receives a user operation to select image A. Therefore, the dimension corresponding to image A is overall.

[0156] S106: The electronic device updates the aesthetic evaluation model based on the third image sequence and at least one image selected by the user (i.e., the fourth image sequence).

[0157] In one implementation, the electronic device can set a score for the images in a fourth image sequence based on the scores of the images in a third image sequence. The fourth image sequence and the corresponding scores can be referred to as a personalized dataset, which can be used to update the aesthetic evaluation model.

[0158] In one implementation, for M images (M is a positive integer) in the fourth image sequence corresponding to the same dimension, taking this dimension as a comprehensive dimension as an example, if these M images are not image sequence 1 with a high comprehensive score in the third image sequence, the electronic device can set the comprehensive score corresponding to these M images as: the comprehensive score of the top M images in image sequence 1. These M images and their corresponding comprehensive scores can belong to a personalized dataset. The statement that these M images are not image sequence 1 can include: any one of these M images does not belong to image sequence 1, and / or, these M images... The priority order of any image in the sequence differs from the overall score of that image in image sequence 1. In some examples, for any image among the aforementioned M images (which can be referred to as the second image), assuming the priority of the second image ranks Kth among these M images (K is a positive integer less than or equal to M), if the second image does not belong to image sequence 1, or if the second image belongs to image sequence 1 but the image with the overall score ranked Kth in image sequence 1 is not the second image, the electronic device can set the overall score corresponding to the second image to the overall score of the third image with the overall score ranked Kth in image sequence 1. Not limited to the above implementation, in another implementation, when the electronic device sets the overall scores corresponding to these M images, for any image among these M images, if the image belongs to image sequence 1 and the priority order of the image is consistent with the order of the overall scores of that image in image sequence 1, then the electronic device may not set the overall score corresponding to that image. An example of the electronic device setting the scores of images in the fourth image sequence can be found below. Figure 7 Details will not be elaborated here.

[0159] In one implementation, the updated aesthetic evaluation model can be used for subsequent image scoring, for example... Figure 3 After S101-S106 are executed, an updated aesthetic evaluation model can be obtained. Then, the electronic device can execute S101-S104 again (the image sequence at this time can be different from the previous image sequence). At this time, the aesthetic evaluation model used in S103 can be the updated aesthetic evaluation model mentioned above.

[0160] Not limited to Figure 3 In another embodiment of the illustrated implementation, S102 and / or S103 may also be executed by a network device connected to the electronic device. For example, the electronic device may send a first image sequence to the network device, the network device may execute S102 and S103, and then send a third image sequence to the electronic device for display.

[0161] exist Figure 3In the method described, the electronic device can generate a second image sequence in both time and space dimensions. Based on multiple dimensions such as overall composition, subject position, motion extensibility, facial expression, and image quality, it selects a high-quality third image sequence from the first and second image sequences and recommends it to the user. This optimizes the image recommendation strategy, allowing users to easily and quickly obtain satisfactory images. While recommending the third image sequence, the first and second image sequences can also be displayed as candidate images, increasing the probability of the user obtaining the desired image. Furthermore, the electronic device can update the image recommendation strategy based on the image selected by the user, recommending different images to different users, further increasing the probability of the user obtaining the desired image.

[0162] Figure 7 An exemplary diagram illustrates the process of obtaining a personalized dataset.

[0163] like Figure 7 As shown, the third image sequence includes image sequence 1, which ranks in the top two in overall score, and image sequence 2, which ranks in the top three in subject position score. In image sequence 1, image 11 has an overall score of 1, which is higher than that of image 12. In image sequence 2, the subjects are arranged from highest to lowest subject position score as follows: image 21 (corresponding to subject position score 1), image 22 (corresponding to subject position score 2), and image 23 (corresponding to subject position score 3). The fourth image sequence includes images 11, 22, and 24. Image 11 corresponds to the overall score, while images 22 and 24 correspond to the subject position score, with image 22 having a higher priority than image 24.

[0164] Since image 11, which corresponds to the comprehensive dimension in the fourth image sequence, belongs to image sequence 1, and the priority order of image 11 and the order of the comprehensive score of image 11 in image sequence 1 are both first, it can be understood that the comprehensive score obtained by the aesthetic evaluation model meets the user's needs. Therefore, the personalized dataset may not include image 11 and its corresponding comprehensive score 1.

[0165] Since image 22, which corresponds to the subject position dimension in the fourth image sequence, belongs to image sequence 2, but the priority order (first position) of image 22 is different from the order of the comprehensive scores of image 22 in image sequence 2 (second position), the electronic device can set the subject position score corresponding to image 22 in the fourth image sequence to: the subject position score 1 of image 21, which is first in the comprehensive score order in image sequence 2. Accordingly, the personalized dataset can include image 22 and the corresponding subject position score 1.

[0166] Since image 24, which corresponds to the subject position dimension in the fourth image sequence, does not belong to image sequence 2, and since image 24 has the second priority, the electronic device can set the subject position score corresponding to image 24 in the fourth image sequence as: the subject position score 2 of image 22, which has the second overall score in image sequence 2. Accordingly, the personalized dataset can include image 24 and the corresponding subject position score 2.

[0167] Please see Figure 8 , Figure 8 An exemplary schematic diagram of the software architecture of another electronic device 100 is shown.

[0168] like Figure 8 As shown, the electronic device 100 may include an image generation module 200, an image recommendation module 300, a user selection module 400, a storage module 500, a personalized learning module 600, and an image library 700. The image library 700 may include an image sequence 701, which may be, for example, multiple images continuously captured by the electronic device 100 in response to user operation.

[0169] Image generation module 200 can receive image sequence 701 (as input), and generate image sequence 702 with new timestamps and / or new viewing angles in the time and / or spatial dimensions based on image sequence 701. Image sequence 702 can be output to image library 700. In one embodiment, image generation module 200 can be used to perform... Figure 3 S102 in the middle.

[0170] The image recommendation module 300 can receive an image library 700 (as input), and use an aesthetic evaluation model to score each image in the image library 700 from multiple dimensions such as overall quality, subject position, movement fluidity, expression, and image quality, and output a sequence 703 of images with higher scores. In one implementation, the image recommendation module 300 can be used to perform... Figure 3 S103. Electronic device 100 can display image sequence 703 to recommend to the user for selection.

[0171] The user selection module 400 can select an image sequence 704 (as output) from the displayed images based on user operation, when displaying an image sequence 703, optionally, and other images in the image library 700 (as input). In one embodiment, the user selection module 400 can be used to perform... Figure 3 S105 in the middle.

[0172] The storage module 500 can store the image sequence 704 output by the user selection module 400. In one embodiment, the storage module 500 can also delete images other than the image sequence 704 from the image library 700.

[0173] The personalized learning module 600 can receive image sequences 703 and 704 (as input), compare image sequences 703 and 704 to obtain a personalized dataset, and train (e.g., periodically train) a pre-update / historical aesthetic evaluation model based on the personalized dataset to obtain an updated aesthetic evaluation model (as output). In one implementation, the pre-update aesthetic evaluation model can be sent by the image recommendation module 300 to the personalized learning module 600 as input. The updated aesthetic evaluation model can be sent to the image recommendation module for use. In one implementation, the personalized learning module 600 can be used to perform... Figure 3 S106 in the middle.

[0174] The following examples illustrate this. Figure 8 The image generation module 200 in the electronic device 100 shown.

[0175] Please see Figure 9 , Figure 9 An exemplary schematic diagram of the software architecture of another electronic device 100 is shown.

[0176] like Figure 9 As shown, the image generation module 200 of the electronic device 100 may include a time-aware module 201 and a spatial-aware module 202. The time-aware module 201 receives an image sequence 701 from the image library 700 as input and generates an image sequence 705 with a new timestamp in the time dimension based on the image sequence 701 (as output). The time-aware module 201 is implemented, for example, based on video frame interpolation. The spatial-aware module 202 receives the image sequence 701 from the image library 700 and the image sequence 705 output by the time-aware module 201 as input and generates an image sequence 706 with a new viewing perspective in the spatial dimension based on the image sequences 701 and 705 (as output). The spatial-aware module 202 is implemented, for example, based on NeRF. Image sequences 705 and 706 can be output to the image library 700 to form image sequence 702, which can be the union of image sequences 705 and 706.

[0177] In one implementation, Figure 9 The spatial perception module 202 shown may include a model training module 202A, a parameter extraction module 202B, a spatial perception model 202C, and a new parameter generation module 202D. See details in [link to documentation]. Figure 10 The architecture of the electronic device 100 shown.

[0178] like Figure 10As shown, the process by which the spatial perception module 202 generates image sequence 706 based on image sequence 701 and image sequence 705 can include two steps: online training and image generation, as detailed below.

[0179] Online training: First, the parameter extraction module 202B can receive image sequence 701 and image sequence 705 as input, and output the spatial parameters of each image in image sequence 701 and image sequence 705. The spatial parameters include, but are not limited to, the coordinates of the scene shown in the image (which can be simply referred to as spatial coordinates, for example, represented as (x,y,z) in a spatial rectangular coordinate system / world coordinate system), and the pose / gesture of the camera of electronic device 100 (which can be simply referred to as camera pose, or can also be understood as the viewing direction, for example, represented as...). Among them, θ, (These are the azimuth and polar angles in a spherical coordinate system, respectively). Then, the spatial perception model 202C can receive the spatial parameters output by the parameter extraction module 202B as input, and output the image sequence 707 corresponding to these spatial parameters. For any image in image sequence 701 and image sequence 705 (which can be called image B), the spatial perception model 202C can receive the spatial parameter 1 of image B as input and output image C in image sequence 707. Image C can be understood as the image "simulated" by the spatial perception model 202C and corresponding to spatial parameter 1. Finally, the model training module 202A can receive image sequence 701, image sequence 705, and image sequence 707 output by the spatial awareness model 202C as input. Based on the loss function, it compares each image in image sequence 701 and image sequence 705 with the corresponding image in image sequence 707, and trains the spatial awareness model 202C according to the comparison results to obtain an updated spatial awareness model 202C (e.g., obtaining the model's weights). For any image (image B) in image sequence 701 and image sequence 705, the corresponding image in image sequence 707 is the output obtained by using the spatial parameter 1 of image B as input to the unupdated spatial awareness model 202C, i.e., image C. This process can be called a training process. Multiple training processes can be performed to obtain multiple updated spatial awareness models 202C. For example, the weights of spatial awareness model 202C before the first update are W0, and the weights of spatial awareness model 202C after the first update are W1. The parameter extraction module 202B, the model training module 202A, and the spatial awareness model 202C with weight W1 can be trained again (at this time, the output of spatial awareness model 202C may not be the image sequence 707) to perform a second update, obtaining the weights W2 of the spatial awareness model 202C after the second update. After multiple iterations, the weights Wn of the spatial awareness model 202C after multiple updates are obtained, where n is the number of updates. The spatial awareness model 202C after multiple updates is used to perform the following image generation steps.

[0180] Image Generation: The new parameter generation module 202D can receive the spatial parameters of each image in image sequences 701 and 705 output by the parameter extraction module 202B as input, and output different spatial parameters. For example, the new parameter generation module 202D can receive spatial parameter 1 of image B in image sequences 701 and 705 output by the parameter extraction module 202B as input, and output spatial parameter 2, which is different from spatial parameter 1. Assuming that spatial parameter 1 includes spatial coordinate 1 and camera pose 1, then spatial parameter 2 includes spatial coordinate 1 and camera pose 2. The spatial perception model 202C, after multiple updates, can receive the spatial parameters output by the new parameter generation module 202D as input, and output image sequences 706 corresponding to these spatial parameters. For example, the spatial perception model 202C, after multiple updates, can output images corresponding to spatial parameter 2.

[0181] Not limited to the above implementation, in another implementation, the input of the spatial perception module 202 is only the image sequence 701 in the image library 700. It can be understood that the time perception module 201 and the spatial perception module 202 are two independent modules in the image generation module 200.

[0182] In one implementation, Figure 10 The spatial perception model 202C shown may include two independent multilayer perception (MLP) modules (MLP1 and MLP2), as well as a volume rendering module. See details in [link to documentation]. Figure 11 The architecture of the electronic device 100 shown. Figure 11 The spatial parameters of the input spatial perception model 202C, including camera pose and spatial coordinates, will be used as an example for explanation.

[0183] like Figure 11 As shown, MLP1 can receive spatial coordinates from the spatial parameters as input for feature extraction, and output intermediate features and spatial density. MLP2 can receive the camera pose from the spatial parameters and the intermediate features output by MLP1 as input for feature extraction, and output color information. The stereo rendering module can receive the spatial density output by MLP1 and the color information output by MLP2 as input for stereo rendering, and output an image corresponding to the aforementioned spatial parameters. In some examples, learnable parameters are set in MLP1 and / or MLP2, and the above online training can specifically train MLP1 and / or MLP2.

[0184] Not limited to the image generation module 200 in the above embodiments, in another embodiment, the time-aware module 201 and the spatial-aware module 202 can be integrated together, as detailed in [reference needed]. Figure 12The architecture of the electronic device 100 shown.

[0185] like Figure 12 As shown, the image generation module 200 of the electronic device 100 may include a model training module 203, a parameter extraction module 204, a spatiotemporal awareness model 205, and a new parameter generation module 206. The image generation module 200 can receive an image sequence 701 from the image library 700 as input, and generate an image sequence 702 with new timestamps and new viewing perspectives based on the image sequence 701 in both the time and spatial dimensions, and output it to the image library 700. This process may include two steps: online training and image generation, as detailed below.

[0186] Online Training: First, the parameter extraction module 204 can receive the image sequence 701 as input and output the spatial and temporal parameters of each image in the image sequence 701. The spatial parameters include, but are not limited to, spatial coordinates and camera pose. The temporal parameters include, but are not limited to, timestamps and / or time embeddings. The time embedding of any image can be determined based on its timestamp, for example, by performing a Fourier transform on the timestamp to obtain a high-dimensional vector (e.g., a 128-dimensional vector), which is the determined time embedding. Then, the spatiotemporal awareness model 205 can receive the spatial and temporal parameters output by the parameter extraction module 204 and output the image sequence 702 corresponding to these spatial and temporal parameters. For any image in the image sequence 701 (which can be called image D), the spatiotemporal awareness model 205 can receive spatial parameter 3 and temporal parameter 1 of image D as input and output image E in the image sequence 708. Image E can be understood as the image "simulated" by the spatiotemporal awareness model 205 corresponding to spatial parameter 3 and temporal parameter 1. Finally, the model training module 203 can receive image sequence 701 and image sequence 708 output by the spatiotemporal awareness model 205 as input. Based on a loss function, it compares each image in image sequence 701 with the corresponding image in image sequence 708, and trains the spatiotemporal awareness model 205 according to the comparison results to obtain an updated spatiotemporal awareness model 205 (e.g., obtaining the model's weights). The above process can be called a single training process. Multiple training processes can be performed to obtain multiple updated spatiotemporal awareness models 205, as illustrated in the specific examples. Figure 10 The online training example described is similar and will not be repeated here. The spatiotemporal awareness model 205, after multiple updates, is used to perform the following image generation steps.

[0187] Image Generation: The new parameter generation module 206 can receive the spatial and temporal parameters of each image in the image sequence 701 output by the parameter extraction module 204 as input, and output different spatial and temporal parameters. For example, the new parameter generation module 206 can receive the spatial parameter 3 and temporal parameter 1 of image D in the image sequence 701 output by the parameter extraction module 204 as input, and output different spatial parameters 4 and different temporal parameters 2. The spatiotemporal perception model 205 after multiple updates can receive the spatial and temporal parameters output by the parameter extraction module 204 and the new parameter generation module 206 as input, and output the image sequence 702 corresponding to these spatial and temporal parameters respectively. For example, the spatiotemporal perception model 205 after multiple updates can receive the spatial parameter 3 and temporal parameter 1 of image D in the image sequence 701 output by the parameter extraction module 204, and the temporal parameter 2 and spatial parameter 4 output by the new parameter generation module 206 as input, and can output: image F corresponding to spatial parameter 3 and temporal parameter 2, image G corresponding to temporal parameter 1 and spatial parameter 4, and image H corresponding to spatial parameter 4 and temporal parameter 2.

[0188] In one implementation, Figure 12 The spatiotemporal perception model 205 shown may include two independent MLPs (MLP3 and MLP4) and a stereo rendering module, as detailed in [reference needed]. Figure 13 The architecture of the electronic device 100 shown. Figure 13 The following explanation uses the spatial parameters of the input spatiotemporal perception model 205, including camera pose and spatial coordinates, and the temporal parameters, including time nesting, as an example.

[0189] like Figure 13 As shown, MLP3 can receive spatial coordinates from the spatial parameters as input for feature extraction, and output intermediate features and spatial density. MLP4 can receive temporal nesting (temporal parameters), camera pose from the spatial parameters, and intermediate features output by MLP1 as input for feature extraction, and output color information. The stereo rendering module can receive the spatial density output by MLP3 and the color information output by MLP4 as input for stereo rendering, and output an image corresponding to the aforementioned spatial and temporal parameters. In some examples, learnable parameters are set in MLP3 and / or MLP4, and the above online training can specifically train MLP3 and / or MLP4.

[0190] Not limited to the image generation module 200 in the above embodiments, in another embodiment, the image generation module 200 may include a time-aware module 201 or a spatial-aware module 202. When the image generation module 200 only includes the spatial-aware module 202, the input of the spatial-aware module 202 is the image sequence 701 in the image library 700.

[0191] This application can generate a new image sequence 702 based on the captured image sequence 701 in the time and / or spatial dimensions. Image sequence 702 and image sequence 701 can be used together as candidate images to recommend images to users and provide them with options. This increases the number of differentiated and high-quality candidate images within a limited shooting time, improves the probability that users can obtain the images they need, and enhances the user experience.

[0192] The following examples illustrate this. Figure 8 The image recommendation module 300 in the electronic device 100 shown.

[0193] Please see Figure 14 , Figure 14 An exemplary schematic diagram of the software architecture of another electronic device 100 is shown.

[0194] like Figure 14 As shown, the image recommendation module 300 of the electronic device 100 may include an aesthetic evaluation model 301 and a filtering module 302. The aesthetic evaluation model 301 may be an updated aesthetic evaluation model output by the personalized learning module 600 of the electronic device 100. The aesthetic evaluation model 301 can receive each image in the image library 700 as input and output the score of each image in the image library 700 in multiple dimensions, taking the overall score, subject position score, motion extensibility score, expression score, and image quality score as examples. The filtering module 302 can receive the output of the aesthetic evaluation model 301 as input, sort and filter the scores in multiple dimensions, and obtain image sequences 703, which are multiple image sequences with high scores in multiple dimensions: image sequence 1 with the top N1 overall scores, image sequence 2 with the top N2 subject position scores, image sequence 3 with the top N3 motion extensibility scores, image sequence 4 with the top N4 expression scores, and image sequence 5 with the top N5 image quality scores, where N... i Let i be a positive integer, where i is a positive integer less than 6.

[0195] This application can conduct a comprehensive aesthetic evaluation and screening of candidate images from multiple dimensions such as overall quality, subject position, movement fluidity, expression, and image quality, and recommend images with high scores in multiple dimensions to users. This can meet the different preferences of different users, make image recommendations more accurate, increase the probability that users can obtain the images they need, and improve the user experience.

[0196] The following examples illustrate this. Figure 8 The personalized learning module 600 in the electronic device 100 shown.

[0197] Please see Figure 15 , Figure 15 An exemplary schematic diagram of the software architecture of another electronic device 100 is shown.

[0198] like Figure 15 As shown, the image recommendation module 300 of the electronic device 100 may include an aesthetic evaluation model 301 and a filtering module 302, as detailed in [reference needed]. Figure 14 The user selection module 400 of the electronic device 100 can receive the image sequence 703 (including multiple image sequences with high scores in multiple dimensions) output by the filtering module 302 as input, and select the image sequence 704 (as output) from the image sequence 703 according to the received user operation.

[0199] like Figure 15 As shown, the personalized learning module 600 of the electronic device 100 may include an image labeling module 601, a personalized dataset 602, and a model training module 603. The image labeling module 601 can receive the image sequence 703 and its corresponding score output by the filtering module 302, and the image sequence 704 output by the user selection module 400 as input. It sets the score corresponding to the image sequence 704 based on the image sequence 703 and its corresponding score. The image sequence 704 and its corresponding score output by the image labeling module 601 can constitute the personalized dataset 602. An implementation example of the image labeling module 601 can be found in [reference needed]. Figure 3 S106 and Figure 7 The model training module 603 can receive a personalized dataset 602 and the previous aesthetic evaluation model 301 as input. It uses the personalized dataset 602 to train the previous aesthetic evaluation model 301 and obtain the updated aesthetic evaluation model 301. The updated aesthetic evaluation model 301 can be output to the image recommendation module 300.

[0200] This application can train the aesthetic evaluation model 301 in the image recommendation module 300 based on the default recommended images and the images selected by the user, that is, to perform on-device self-learning, so that the scoring strategy of the aesthetic evaluation model 301 matches the user's habits as much as possible, realize personalized image recommendation, further increase the probability that the user can obtain the image they need, and improve the user experience.

[0201] In some examples, after different users use different electronic devices to perform their own on-device self-learning, the recommended third image sequence can be different after the two electronic devices obtain the first image sequence in the same scene (e.g., take multiple pictures in the same scene), thus achieving "personalized" image recommendation.

[0202] The following describes the application scenarios involved in the embodiments of this application and the user interface embodiments under these scenarios.

[0203] Figure 16 An exemplary user interface diagram of an image recommendation process is shown.

[0204] like Figure 16 As shown in (A), the electronic device 100 can display a user interface 1000 for a camera application. The user interface 1000 may include a viewfinder 1010, a shooting control 1020, and a thumbnail 1030. The viewfinder 1010 displays images captured in real-time by the electronic device 100 through the camera, the shooting control 1020 triggers the capture of an image through the camera, and the thumbnail 1030 displays the most recently captured image by the electronic device 100 through the camera. In one embodiment, the electronic device 100 can continuously capture multiple images in response to an operation on the shooting control 1020 (e.g., a touch operation, such as a single click or a long press). Figure 3 As shown in S101, these multiple images constitute the first image sequence. Then, the electronic device 100 can respond to an operation on the thumbnail 1030 (e.g., a touch operation, such as a click operation) to display any one of these multiple images, as detailed in [reference needed]. Figure 16 The user interface 2000 shown in (B) may include the image 2010 and control 2020 in the above multiple images.

[0205] In one implementation, the electronic device 100 can respond to an operation on the control 2020 (e.g., a touch operation, such as a click operation), recommending images to the user based on multiple dimensions such as comprehensive recommendation, subject position, motion extensibility, expression, and image quality from the aforementioned burst of images, and displaying the recommended images and other images, thus achieving... Figure 3 As shown in S102-S104, the recommended images are the third image sequence. The other images include at least one image from the first and second image sequences, excluding the third image sequence. See details in [link to relevant documentation]. Figure 16 The user interface 3000 is shown in (C).

[0206] like Figure 16As shown in (C), the user interface 3000 may include a return control 3010, a prompt message 3020, and a save control 3030. The return control 3010 is used to return to the previous screen. The save control 3030 is used to save the image selected by the user. The prompt message 3020 indicates the number of candidate images and the number of images selected by the user; for example, it may include the characters "Select Photos 0 / 30" to indicate that the number of candidate images is 30 and the number of images selected by the user is 0. In some examples, the candidate images include a first image sequence and a second image sequence. For example, the number of images obtained by the electronic device 100 in continuous shooting (i.e., the first image sequence) is 10, and the number of images in the second image sequence generated from these images in the time and / or spatial dimensions is 20; therefore, the number of candidate images is 30. In some examples, the folder in electronic device 100 used to store images may include information about a first image sequence and a second image sequence. For example, the storage locations of the first and second image sequences may differ, with the second image sequence stored, for instance, in a newly created temporary cache. Furthermore, the attributes of the first and second image sequences may differ, such as, but not limited to, different generation times or different tags. In some examples, after electronic device 100 captures the first image sequence but before receiving the aforementioned operation on control 2020, the folder in electronic device 100 used to store images may only contain the first image sequence. After receiving the aforementioned operation on control 2020, the folder may also include the second image sequence.

[0207] The user interface 3000 also includes a recommendation dimension 3040, an image list 3050, and a display box 3060. The recommendation dimension 3040 can include multiple dimensions such as comprehensive recommendation 3040A, subject position 3040B, motion expansiveness 3040C, expression 3040D, and image quality 3040E. The electronic device 100 can respond to an operation on any one of these dimensions (e.g., a touch operation, such as a single click) and set that dimension to a selected state; for example, comprehensive recommendation 3040A is currently selected. The image list 3050 displays recommended images and other images under the selected dimension of recommendation dimension 3040 (currently comprehensive recommendation 3040A). The recommended images include image 3051 displaying recommendation marker 3051A and image 3052 displaying recommendation marker 3052A. The other images include image 3052 and image 3054. Images in image list 3050 can be displayed sequentially from highest to lowest score in the corresponding dimension (currently the overall score). That is, the images in image list 3050, ranked from highest to lowest overall score, are image 3051, image 3052, image 3053, and image 3054. In some examples, electronic device 100 can display other images in image list 3050 in response to an operation on image list 3050 (e.g., a touch operation, such as a right-to-left swipe). Image list 3050 also includes control 3055, and display box 3060 is used to display the image pointed to by control 3055. For example, if control 3055 is currently pointing to image 3051, then display box 3060 is used to display a magnified version of image 3051.

[0208] In one implementation, when the electronic device 100 displays recommended images and other images, it can select an image in response to an operation on any of the images (e.g., a touch operation, such as a click operation). Figure 3 As shown in S105, for example, electronic device 100 can respond to... Figure 16 The operation of image 3054 in the user interface 3000 shown in (C) sets image 3054 to the selected state. For details, please refer to [link / reference]. Figure 17 The user interface shown is 4000.

[0209] like Figure 17As shown, user interface 4000 is similar to user interface 3000, except that image 3054 in image list 3050 displays information 4010, which includes the character "1," indicating that image 3054 is the first image selected by the user and / or the image with the highest priority selected by the user. Furthermore, control 3055 currently points to image 3054, and correspondingly, display box 3060 is used to display a magnified version of image 3054. Since the user has currently selected an image, the prompt information 3020 may include the characters "Select photo 1 / 30".

[0210] In one implementation, the electronic device 100 may respond to operations (e.g., click operations) targeting other dimensions in the recommendation dimension 3040 by displaying recommended images and other images for that dimension, for example... Figure 17 Following the illustrated implementation, the electronic device 100 can respond to... Figure 17 The user interface 4000 shown includes operations related to the subject position 3040B in the recommendation dimension 3040, displaying images and other images recommended based on the subject position 3040B. See details for further information. Figure 18 The user interface shown is 5000.

[0211] like Figure 18 As shown, user interface 5000 is similar to user interface 3000, except that the main subject position 3040B in recommendation dimension 3040 is selected. Therefore, user interface 5000 includes an image list 5010, which displays recommended images (i.e., images 5011 and 5012) under the main subject position 3040B, as well as other images (i.e., images 5013 and 5014). The images in image list 5010 are arranged in descending order of main subject position score as image 5011, image 5012, image 5013, and image 5014. Electronic device 100 can respond to an operation on image 5014 (e.g., a touch operation, such as a click operation) to set image 5014 to a selected state. Therefore, information 5020 is displayed on image 5014 in user interface 5000. Information 5020 includes the character "2", indicating that image 5014 is the second image selected by the user and / or the image with the second highest priority selected by the user. Furthermore, control 3055 currently points to image 5014, and correspondingly, display box 3060 is used to display the enlarged image 5014. Since the user has currently selected two images, the prompt message 3020 may include the characters "Select photo 2 / 30".

[0212] In one implementation, Figure 18 In the illustrated embodiment, the electronic device 100 can respond to a request for Figure 18The user interface 5000 shown includes a save control 3030 that saves the user-selected images 3054 and 5014 and deletes other images from the candidate images. In some examples, the electronic device 100 can implement this based on the user-selected images 3054 and 5014. Figure 3 S106 is shown.

[0213] Not limited to the above embodiments, in other embodiments, the electronic device 100 may also directly respond to the above embodiments. Figure 16 The operation of the shooting control 1020 in the user interface 1000 shown is displayed. Figure 16 The user interface 3000 is shown in (C). In other embodiments, the electronic device 100 may also receive a response to... Figure 16 Following an operation of the shooting control 1020 in the user interface 1000, in response to an operation on the thumbnail 1030 in the user interface 1000, the following is displayed: Figure 16 The user interface 3000 is shown in (C).

[0214] In another implementation, the user can select multiple images from the gallery, and the electronic device 100 can make image recommendations based on these multiple images, thus achieving... Figure 3 The method shown uses these multiple images as the first image sequence. See the example below for details. Figure 19 The user interface 6000 shown is for a gallery application. The user interface 6000 may include a prompt message 6010, an image list 6020, and a function list 6030. The image list 6020 may include multiple images, such as, but not limited to, images 6021, 6022, 6023, 6024, 6025, and 6026. Taking image 6021 as an example, image 6021 also displays a selection control 6021A. The selection control 6021A is used to select or deselect image 6021. The selection control 6021A in the user interface 6000 indicates that image 6021 has been selected. Similarly, images 6022, 6023, and 6025 are all selected. The prompt message 6010 indicates the number of images selected. For example, if four images are currently selected, the prompt message 6010 includes the text "4 items selected". The function list 6030 may include controls with multiple functions, such as, but not limited to, controls with sharing, deletion, select all, recommendation 6031, and more. The electronic device 100 may respond to an operation on control 6031 (e.g., a touch operation, such as a click operation) by using the user-selected images 6021, 6022, 6023, and 6025 as a first image sequence. Figure 3The method shown, which displays the user interface for the third image sequence, can be found in [reference needed]. Figure 16 The user interface 3000 is shown in (C). In some examples, images 3051 and 3052 in the image list 3050 shown in the user interface 3000 are the same as images 6021 and 6025 mentioned above, but images 3053 and 3054 in the image list 3050 do not belong to the first image sequence, that is, they belong to the second image sequence.

[0215] Not limited to the above embodiments, in another embodiment, the electronic device 100 can receive dimension 1 input by the user through the settings interface and determine the user's preferred dimension 1. Then, after the electronic device 100 continuously takes multiple pictures, it can recommend pictures to the user based on these multiple pictures from dimension 1. In some examples, the electronic device 100 can automatically save the pictures with higher scores in dimension 1 and delete other pictures. For example, if dimension 1 is... Figure 16 The comprehensive recommendation 3040A in the user interface 3000 shown in (C) is responded to by the electronic device 100. Figure 16 The shooting control 1020 in the user interface 1000 shown in (A) continuously captures multiple images and automatically saves the image with the highest overall score among these images. Figure 16 Images 3051 and 3052 in the user interface 3000 shown in (C) are deleted, along with other images such as images 3053 and 3054. Not limited to this, in another embodiment, the electronic device 100 can learn the user's preferred dimension without requiring the user to manually input dimension 1. For example, if most images in the gallery depict subjects with favorable expressions, the electronic device 100 can determine the user's preferred dimension 1 based on the images in the gallery.

[0216] The methods provided in the embodiments of this application can be implemented, in whole or in part, by software, hardware, firmware, or any combination thereof. When implemented in software, they can be implemented, in whole or in part, in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., digital video disc (DWD), or a semiconductor medium (e.g., solid-state drive). (disk, SSD, etc.). The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it; although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.

Claims

1. An image recommendation method, characterized in that, Applied to electronic devices, the method includes: Display image acquisition interface; In response to a first operation of the image acquisition button on the image acquisition interface, a first image sequence is acquired by the image acquisition device. A second image sequence is generated based on the first image sequence. The second image sequence includes images with timestamps different from those of the images in the first image sequence, and / or images with viewing angles different from those of the images in the first image sequence. A third image sequence is determined from the first image sequence and the second image sequence. The third image sequence includes N images ranked in the top N positions based on the scores in the first dimension, and M images ranked in the top M positions based on the scores in the second dimension, where N and M are positive integers. The third image sequence is recommended.

2. The method as described in claim 1, characterized in that, The first dimension or the second dimension can be any one of the following: comprehensive dimension, position of the subject in the picture, range of motion of the subject in the picture, expression of the subject in the picture, and image quality.

3. The method as described in claim 1 or 2, characterized in that, The recommended third image sequence includes: The first interface displays first information, second information, the N images, and the M images. The first information indicates the first dimension and is associated with the N images. The second information indicates the second dimension and is associated with the M images.

4. The method according to any one of claims 1-3, characterized in that, The recommended third image sequence includes: A second interface is displayed, showing K images, where K is a positive integer greater than or equal to N. The K images include the N images and (KN) images other than the N images. The (KN) images belong to the first image sequence and / or the second image sequence. The K images include the first image and the second image. The score of the first image in the first dimension is greater than the score of the second image in the first dimension. In the second interface, the first image is displayed before the second image.

5. The method according to any one of claims 1-4, characterized in that, The method further includes: Receive a second operation for selecting at least one image, wherein the at least one image belongs to the first image sequence and / or the second image sequence; Save the at least one image, and delete all images in the first image sequence and the second image sequence except for the at least one image.

6. The method according to any one of claims 1-5, characterized in that, The third image sequence is obtained according to the first strategy; the method further includes: Receive a second operation for selecting at least one image, wherein the at least one image belongs to the first image sequence and / or the second image sequence; The first strategy is updated based on the third image sequence and the at least one image.

7. The method according to any one of claims 1-6, characterized in that, The step of generating a second image sequence based on the first image sequence includes: A fourth image sequence is generated based on the first image sequence, wherein the timestamps of the images in the fourth image sequence are different from the timestamps of the images in the first image sequence; A fifth image sequence is generated based on the first image sequence and the fourth image sequence. The viewing angle of the images in the fifth image sequence is different from that of the images in the first image sequence and the fourth image sequence. The second image sequence includes the fourth image sequence and the fifth image sequence.

8. The method as described in claim 7, characterized in that, The step of generating a fifth image sequence based on the first image sequence and the fourth image sequence includes: A spatial awareness model is trained based on the first image sequence and the fourth image sequence. Obtain a first spatial parameter, which is different from the spatial parameters of the images in the first image sequence and the second image sequence. The first spatial parameter is used as the input to the spatial perception model to obtain the output, which is the fifth image sequence.

9. The method according to any one of claims 1-8, characterized in that, The step of generating a second image sequence based on the first image sequence includes: A spatiotemporal awareness model is trained based on the first image sequence; Obtain a second spatial parameter and a first temporal parameter. The second spatial parameter includes spatial parameters that are different from the spatial parameters of the images in the first image sequence. The first temporal parameter includes temporal parameters that are different from the temporal parameters of the images in the first image sequence. The second spatial parameter and the first temporal parameter are used as inputs to the spatiotemporal perception model to obtain the output, which is the second image sequence.

10. An electronic device, characterized in that, It includes a transceiver, a processor, and a memory, the memory being used to store a computer program, and the processor calling the computer program to perform the method as described in any one of claims 1-9.

11. A computer storage medium, characterized in that, The computer storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of claims 1-9.