WO2022057384A1 - 拍摄方法和装置 - Google Patents

拍摄方法和装置 Download PDF

Info

Publication number
WO2022057384A1
WO2022057384A1 PCT/CN2021/103777 CN2021103777W WO2022057384A1 WO 2022057384 A1 WO2022057384 A1 WO 2022057384A1 CN 2021103777 W CN2021103777 W CN 2021103777W WO 2022057384 A1 WO2022057384 A1 WO 2022057384A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
subject
photographed
terminal
preview
Prior art date
Application number
PCT/CN2021/103777
Other languages
English (en)
French (fr)
Inventor
马飞龙
赵聪
陈瑞
王远强
李宇
宋星光
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022057384A1 publication Critical patent/WO2022057384A1/zh
Priority to US18/184,773 priority Critical patent/US20230224574A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/631Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
    • H04N23/632Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters for displaying or modifying preview images prior to image capturing, e.g. variety of image resolutions or capturing parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • H04N5/2226Determination of depth image, e.g. for foreground/background separation

Definitions

  • the present application relates to the field of photographing and image processing technology, and in particular, to a photographing method and device.
  • a third party such as a passerby
  • a third party is usually needed to help take pictures at present. Since it is difficult to find a third party willing to help most of the time, even if a third party willing to help is found, it is difficult to guarantee that the captured images will achieve satisfactory results. Therefore, how to solve the above-mentioned demand for group photos of multiple people has become an urgent technical problem to be solved.
  • the embodiments of the present application provide a shooting method and device, which do not require the help of a third party when multiple people take a group photo. Therefore, the implementation is convenient, and the user's satisfaction with the group photo result can be improved, thereby improving the user experience.
  • a photographing method is provided, which is applied to a terminal to photograph a plurality of subjects to be photographed, and the plurality of subjects to be photographed include a first subject to be photographed and a second subject to be photographed.
  • the method includes: acquiring a first image, where the first image includes an image of a first shooting background and an image of a first subject; displaying a first preview interface, where the first preview interface includes a first preview image; wherein the first preview image Including the image of the second shooting background and the image of the second subject; the degree of coincidence between the image of the second shooting background and the image of the first shooting background is greater than or equal to the preset coincidence degree; based on the first image and the first preview image , to obtain a target image; the target image includes an image of the first photographed subject and an image of the second photographed subject.
  • the terminal uses a part of the subjects as the first subject, and acquires a frame of images; the other part of the subjects is used as the second subject. , take another frame of image. Then, based on the two frames of images, a target image including the image of the first subject and the image of the second subject is acquired, so as to realize a group photo of the multiple subjects.
  • the help of a third party such as a passerby
  • the technical solution provided by the embodiments of the present application can further improve the user's satisfaction with the group photo result (ie, the target image), thereby improving the user experience.
  • the method before displaying the first preview interface, further includes: displaying a second preview interface, where the second preview interface includes the second preview image and the first information.
  • the second preview image includes the image of the third shooting background and the image of the second subject; the first information is used to instruct to adjust the image of the shooting background in the current preview image of the terminal. In this way, it helps to improve the degree of coincidence between the image of the shooting background of the current preview interface and the image of the first shooting background, thereby improving the fusion effect and the user's satisfaction with the target image.
  • the first information is specifically used to indicate at least one of the following: the degree of coincidence between the image of the third shooting background and the image of the first shooting background is less than a preset degree of coincidence; or, the target position of the terminal .
  • the first preview interface further includes: second information, where the second information is used to indicate at least one of the position, posture, or size of the image of the first photographed subject in the image of the second photographed background A sort of. This helps to achieve at least one of the position, posture and size of the second photographed subject instructed by the photographing user in the second photographing background, thereby improving the user experience effect and enhancing the user's satisfaction with the target image.
  • the second information specifically includes: the outline of the image of the first photographed subject; or, a semi-transparent image of the image of the first photographed subject.
  • acquiring the first image includes: outputting third information, where the third information is used to indicate that the second photographed subject is the user who photographed the first image.
  • a third preview image is displayed, and the third preview image includes the image of the first shooting background and the image of the first subject; the third preview image is determined as the first image, or the third preview image is determined as the first image.
  • the image obtained after processing is determined as the first image.
  • the terminal actively recommends the user who took the first image to the user, which helps to improve the user's sense of experience. In addition, when the recommendation rule used by the terminal is reasonable, it helps to improve the fusion effect of the first image and the first preview image, thereby improving user satisfaction.
  • outputting the third information includes: displaying a target shooting template, where the target shooting template is used to indicate the positional relationship between a plurality of photographed subjects, and the third information. In this way, after the terminal has determined the display target shooting template, it is not necessary to determine and display the third information separately, which saves the computing resources of the terminal.
  • the method further includes: displaying a target photographing template, where the target photographing template is used to indicate the positional relationship among the plurality of photographed subjects.
  • outputting the third information includes: outputting the third information based on the target shooting template.
  • the target shooting template is selected from a plurality of shooting templates in the shooting template library.
  • the shooting template library can reuse any shooting template library in the traditional technology, therefore, the application scope of this technical solution is wide.
  • outputting the third information based on the target shooting template includes: receiving a first operation; the first operation is used to select a user who shoots the first image in the target shooting template; in response to the first operation, outputting the first operation Three information.
  • the terminal determines the user who shoots the first image through human-computer interaction, which helps to improve the user's sense of participation and enhance the user experience.
  • the target shooting template is also used to indicate the poses of the plurality of subjects to be shot.
  • the user who takes the first image is a photographed subject whose overlapping range with other photographed subjects is less than or equal to a preset overlapping range among the multiple photographed subjects. In this way, it is helpful to improve the fusion effect of the target image, thereby improving the user's satisfaction with the target image.
  • the user who shoots the first image is the subject that is closest to the terminal among the multiple subjects to be photographed. In this way, it is helpful to improve the fusion effect of the target image, thereby improving the user's satisfaction with the target image.
  • the distance between the user taking the first image and the other photographed subjects among the plurality of photographed subjects is greater than the predetermined distance between the photographed subjects. In this way, it is helpful to improve the fusion effect of the target image, thereby improving the user's satisfaction with the target image.
  • obtaining the target image based on the first image and the first preview image includes: performing image segmentation on the first image based on the image of the second shooting background to obtain the image of the first subject; An image of the photographed subject and the first preview image are obtained to obtain a target image.
  • the terminal can refer to the overlapping relationship between the second shooting background and the first shooting background, and more accurately know whether the pixel is a pixel in the image of the first shooting background or a pixel in the image of the first subject, thereby improving the extraction efficiency. The accuracy of the first subject to be photographed, thereby improving the image fusion effect.
  • image segmentation is performed on the first preview image based on the image of the first shooting background to obtain the image of the second subject; the target image is obtained based on the image of the second subject and the first preview image .
  • the terminal can refer to the overlapping relationship between the second shooting background and the first shooting background to more accurately know whether the pixel is a pixel in the image of the second shooting background or a pixel in the image of the second subject, thereby improving the extraction efficiency.
  • a terminal is provided.
  • the terminal may be used to execute any one of the methods provided in the first aspect above.
  • the terminal can be divided into functional modules according to the first aspect and any method provided in any possible design manner thereof.
  • each function module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the present application may divide the terminal into a processing unit, a display unit, and the like according to functions.
  • the terminal includes a memory and a processor, the memory is used for storing computer instructions, and the processor is used for invoking the computer instructions, so as to execute the method provided by the first aspect and any possible design manners thereof. either method.
  • the display step in any method provided in the above-mentioned first aspect and any possible design manner may specifically be replaced by the control display step in this possible design.
  • the output step in any method provided in the first aspect or any possible design manner may specifically be replaced with a control output step in this possible design.
  • a terminal including: a processor, a memory and a display screen.
  • the display screen is used to display images and other information
  • the memory is used to store computer programs and instructions
  • the processor is used to invoke the computer programs and instructions, and cooperate with the display screen to execute the technical solutions provided by the first aspect or its corresponding possible designs.
  • a computer readable storage medium such as a computer non-transitory readable storage medium
  • a computer program (or instruction) is stored thereon, and when the computer program (or instruction) runs on a computer, the computer is made to execute any one of the methods provided by any one of the possible implementations of the first aspect.
  • the display step in any method provided in the above-mentioned first aspect and any possible design manner may specifically be replaced by the control display step in this possible design.
  • the output step in any method provided in the first aspect or any possible design manner may specifically be replaced with a control output step in this possible design.
  • a computer program product which, when run on a computer, causes any one of the methods provided by any one of the possible implementations of the first aspect or the second aspect to be performed.
  • the display step in any method provided in the above-mentioned first aspect and any possible design manner may specifically be replaced by the control display step in this possible design.
  • the output step in any method provided in the first aspect or any possible design manner may specifically be replaced with a control output step in this possible design.
  • any of the terminals, computer storage media, computer program products or chip systems provided above can be applied to the corresponding methods provided above. Therefore, the beneficial effects that can be achieved can refer to the corresponding methods. The beneficial effects in the method will not be repeated here.
  • FIG. 1 is a schematic diagram of a hardware structure of a terminal to which an embodiment of the application is applicable;
  • FIG. 2 is a software structural block diagram of a terminal to which the embodiments of the present application are applicable;
  • FIG. 3 is a flowchart of a photographing method provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a first image provided by an embodiment of the present application.
  • 5a is a schematic diagram of a first preview interface provided by an embodiment of the present application.
  • 5b is a schematic diagram of another first preview interface provided by an embodiment of the present application.
  • 5c is a schematic diagram of another first preview interface provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of a terminal aligning an image of a first shooting background and an image of a second shooting background according to an embodiment of the present application;
  • FIG. 7 is a schematic diagram of a target image provided by an embodiment of the present application.
  • FIG. 8a is a schematic process diagram of a fusion method provided by an embodiment of the present application.
  • FIG. 8b is a schematic diagram of a process for extracting an image of a first photographed subject according to an embodiment of the present application.
  • FIG. 8c is a schematic process diagram of another fusion method provided by an embodiment of the present application.
  • FIG. 9 is a schematic process diagram of an application scenario of the technical solution provided by the embodiment of the present application.
  • FIG. 10 is a flowchart of another shooting method provided by an embodiment of the present application.
  • 11a is a schematic diagram of a second preview interface provided by an embodiment of the present application.
  • 11b is a schematic diagram of a second preview interface provided by an embodiment of the present application.
  • FIG. 12 is a flowchart of a method for a terminal to acquire a first image in real time according to an embodiment of the present application
  • FIG. 13 is a schematic diagram of an operation process of a terminal outputting third information based on a target shooting template according to an embodiment of the present application;
  • FIG. 14 is a schematic diagram of an image instance segmentation provided by an embodiment of the present application.
  • 15 is a schematic diagram of a target shooting template provided by an embodiment of the application.
  • 16 is a schematic diagram of another target shooting template provided by an embodiment of the present application.
  • 17 is a schematic diagram of another target shooting template provided by an embodiment of the present application.
  • FIG. 18 is a flow chart of a method of an application example of the technical solution provided by the embodiment of the present application.
  • FIG. 19 is a schematic diagram of a process for determining a target shooting template provided by an embodiment of the present application.
  • FIG. 20 is a schematic structural diagram of a terminal according to an embodiment of the present application.
  • words such as “exemplary” or “for example” are used to represent examples, illustrations or illustrations. Any embodiments or designs described in the embodiments of the present application as “exemplary” or “such as” should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as “exemplary” or “such as” is intended to present the related concepts in a specific manner.
  • first and second are only used for description purposes, and cannot be understood as indicating or implying relative importance or implying the number of indicated technical features. Thus, a feature defined as “first” or “second” may expressly or implicitly include one or more of that feature.
  • plural means two or more.
  • the shooting method provided in the embodiment of the present application can be applied to a terminal, and the terminal can be a terminal with a camera, such as a smart phone, a tablet computer, a wearable device, an AR/VR device, or a personal computer (PC) ), a personal digital assistant (personal digital assistant, PDA), a netbook, and other devices, and may also be any other terminal capable of implementing the embodiments of the present application.
  • a camera such as a smart phone, a tablet computer, a wearable device, an AR/VR device, or a personal computer (PC) ), a personal digital assistant (personal digital assistant, PDA), a netbook, and other devices, and may also be any other terminal capable of implementing the embodiments of the present application.
  • PDA personal digital assistant
  • netbook netbook
  • the structure of the terminal may be as shown in FIG. 1 .
  • the terminal 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, Antenna 1, Antenna 2, Mobile Communication Module 150, Wireless Communication Module 160, Audio Module 170, Speaker 170A, Receiver 170B, Microphone 170C, Headphone Interface 170D, Sensor Module 180, Key 190, Motor 191, Indicator 192, Camera 193, Display screen 194, and subscriber identification module (subscriber identification module, SIM) card interface 195 and so on.
  • SIM subscriber identification module
  • the sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, and ambient light. Sensor 180L, bone conduction sensor 180M, etc.
  • the structure illustrated in this embodiment does not constitute a specific limitation on the terminal 100 .
  • the terminal 100 may include more or less components than shown, or combine some components, or separate some components, or different component arrangements.
  • the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • the processor 110 may control the display screen 194 to display a preview interface (such as a first preview interface, a second preview interface, etc.), display a target shooting template, display second information/third information, etc., relevant descriptions thereof See below.
  • the processor 110 is further configured to perform a fusion step, a registration step, a portrait segmentation step, and the like, the relevant descriptions of which can be referred to below.
  • the controller may be the nerve center and command center of the terminal 100 .
  • the controller can generate an operation control signal according to the instruction operation code and timing signal, and complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 110 for storing instructions and data.
  • the memory in processor 110 is cache memory. This memory may hold instructions or data that have just been used or recycled by the processor 110 . If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby increasing the efficiency of the system.
  • the processor 110 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the MIPI interface can be used to connect the processor 110 with peripheral devices such as the display screen 194 and the camera 193 .
  • MIPI interfaces include camera serial interface (CSI), display serial interface (DSI), etc.
  • the processor 110 communicates with the camera 193 through the CSI interface, so as to realize the shooting function of the terminal 100 .
  • the processor 110 communicates with the display screen 194 through the DSI interface to implement the display function of the terminal 100 .
  • the GPIO interface can be configured by software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the GPIO interface may be used to connect the processor 110 with the camera 193, the display screen 194, the wireless communication module 160, the audio module 170, the sensor module 180, and the like.
  • the GPIO interface can also be configured as I2C interface, I2S interface, UART interface, MIPI interface, etc.
  • the USB interface 130 is an interface that conforms to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 130 can be used to connect a charger to charge the terminal 100, and can also be used to transmit data between the terminal 100 and peripheral devices. It can also be used to connect headphones to play audio through the headphones. This interface can also be used to connect other terminals, such as AR devices, etc.
  • the interface connection relationship between the modules illustrated in this embodiment is only a schematic illustration, and does not constitute a structural limitation of the terminal 100 .
  • the terminal 100 may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the power management module 141 is used for connecting 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, and supplies power to the processor 110, the internal memory 121, the display screen 194, the camera 193, and the wireless communication module 160.
  • the power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle times, battery health status (leakage, impedance).
  • the power management module 141 may also be provided in the processor 110 .
  • the power management module 141 and the charging management module 140 may also be provided in the same device.
  • the wireless communication function of the terminal 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modulation and demodulation processor, the baseband processor, and the like.
  • the terminal 100 implements a display function through a GPU, a display screen 194, an application processor, and the like.
  • the GPU is a microprocessor for image processing, and is connected to the display screen 194 and the application processor.
  • the GPU is used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 110 may include one or more GPUs that execute program instructions to generate or alter display information.
  • Display screen 194 is used to display images, videos, and the like.
  • 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 or an active-matrix organic light-emitting diode (active-matrix organic light).
  • LED diode AMOLED
  • flexible light-emitting diode flexible light-emitting diode (flex light-emitting diode, FLED), Miniled, MicroLed, Micro-oled, quantum dot light-emitting diode (quantum dot light emitting diodes, QLED) and so on.
  • the terminal 100 may include one or N display screens 194 , where N is a positive integer greater than one.
  • a series of graphical user interfaces may be displayed on the display screen 194 of the terminal 100 , and these GUIs are the main screens of the terminal 100 .
  • GUIs graphical user interfaces
  • the size of the display screen 194 of the terminal 100 is fixed, and only limited controls can be displayed in the display screen 194 of the terminal 100 .
  • a control is a GUI element, which is a software component that is included in an application and controls all the data processed by the application and the interaction with this data. The user can interact with the control through direct manipulation (direct manipulation). , so as to read or edit the relevant information of the application.
  • controls may include icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, widgets, and other visual interface elements.
  • the terminal 100 can realize the shooting function through the ISP, the camera 193, the video codec, the GPU, the display screen 194 and the application processor.
  • the ISP is used to process the data fed back by the camera 193 .
  • the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye.
  • ISP can also perform algorithm optimization on image noise, brightness, and skin tone.
  • ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
  • the ISP may be provided in the camera 193 .
  • Camera 193 is used to capture still images or video.
  • the object is projected through the lens to generate an optical image onto the photosensitive element.
  • the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the optical signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal.
  • the ISP outputs the digital image signal to the DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other formats of image signals.
  • the terminal 100 may include 1 or N cameras 193 , where N is a positive integer greater than 1.
  • the above-mentioned camera 193 may include one or at least two types of cameras, such as a main camera, a telephoto camera, a wide-angle camera, an infrared camera, a depth camera, or a black-and-white camera.
  • the terminal may use one or at least two cameras described above to collect images (eg, the first image and the first preview image), and fuse the collected images.
  • a digital signal processor is used to process digital signals, in addition to processing digital image signals, it can also process other digital signals. For example, when the terminal 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the energy of the frequency point, and so on.
  • Video codecs are used to compress or decompress digital video.
  • Terminal 100 may support one or more video codecs.
  • the terminal 100 can play or record videos in various encoding formats, for example, moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, and so on.
  • MPEG moving picture experts group
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • Applications such as intelligent cognition of the terminal 100 can be implemented through the NPU, such as image recognition, face recognition, speech recognition, text understanding, and the like.
  • the external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the terminal 100.
  • the external memory card communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example to save files like music, video etc in external memory card.
  • Internal memory 121 may be used to store computer executable program code, which includes instructions.
  • the processor 110 executes various functional applications and data processing of the terminal 100 by executing the instructions stored in the internal memory 121 .
  • the processor 110 may acquire the gesture of the terminal 100 by executing the instructions stored in the internal memory 121 .
  • the internal memory 121 may include a storage program area and a storage data area.
  • the storage program area can store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), and the like.
  • the storage data area may store data (such as audio data, phone book, etc.) created during the use of the terminal 100 and the like.
  • the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (UFS), and the like.
  • the processor 110 executes various functional applications and data processing of the terminal 100 by executing instructions stored in the internal memory 121 and/or instructions stored in a memory provided in the processor.
  • the terminal 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playback, recording, etc.
  • the audio module 170 is used for converting digital audio information into analog audio signal output, and also for converting analog audio input into digital audio signal. Audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be provided in the processor 110 , or some functional modules of the audio module 170 may be provided in the processor 110 .
  • Speaker 170A also referred to as a "speaker" is used to convert audio electrical signals into sound signals.
  • the terminal 100 can listen to music through the speaker 170A, or listen to a hands-free call.
  • the receiver 170B also referred to as "earpiece" is used to convert audio electrical signals into sound signals.
  • the voice can be answered by placing the receiver 170B close to the human ear.
  • the microphone 170C also called “microphone” or “microphone” is used to convert sound signals into electrical signals.
  • the user can make a sound by approaching the microphone 170C through a human mouth, and input the sound signal into the microphone 170C.
  • the terminal 100 may be provided with at least one microphone 170C.
  • the terminal 100 may be provided with two microphones 170C, which can implement a noise reduction function in addition to collecting sound signals.
  • the terminal 100 may further be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify sound sources, and implement directional recording functions.
  • the earphone jack 170D is used to connect wired earphones.
  • the earphone interface 170D can be the USB interface 130, or can be a 3.5mm open mobile terminal platform (OMTP) standard interface, a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the pressure sensor 180A is used to sense pressure signals, and can convert the pressure signals into electrical signals.
  • the pressure sensor 180A may be provided on the display screen 194 .
  • the capacitive pressure sensor may be comprised of at least two parallel plates of conductive material. When a force is applied to the pressure sensor 180A, the capacitance between the electrodes changes.
  • the terminal 100 determines the intensity of the pressure according to the change in capacitance. When a touch operation acts on the display screen 194, the terminal 100 detects the intensity of the touch operation according to the pressure sensor 180A.
  • the terminal 100 may also calculate the touched position according to the detection signal of the pressure sensor 180A.
  • touch operations acting on the same touch position but with different touch operation intensities may correspond to different operation instructions. For example: when a touch operation with a touch operation intensity less than the first pressure threshold acts on the short message application icon, an instruction to view the short message is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold acts on the short message application icon, the instruction to create a new short message is executed.
  • the gyro sensor 180B may be used to determine the movement posture of the terminal 100 .
  • the angular velocity of terminal 100 about three axes ie, x, y, and z axes
  • the gyro sensor 180B can be used for image stabilization.
  • the gyroscope sensor 180B detects the angle at which the terminal 100 shakes, calculates the distance to be compensated by the lens module according to the angle, and allows the lens to counteract the shake of the terminal 100 through reverse motion to achieve anti-shake.
  • the gyro sensor 180B can also be used for navigation and somatosensory game scenarios.
  • the air pressure sensor 180C is used to measure air pressure.
  • the terminal 100 calculates the altitude through the air pressure value measured by the air pressure sensor 180C to assist in positioning and navigation.
  • the magnetic sensor 180D includes a Hall sensor.
  • the terminal 100 can detect the opening and closing of the flip holster using the magnetic sensor 180D.
  • the terminal 100 can detect the opening and closing of the flip according to the magnetic sensor 180D. Further, according to the detected opening and closing state of the leather case or the opening and closing state of the flip cover, characteristics such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 180E can detect the magnitude of the acceleration of the terminal 100 in various directions (generally three axes). When the terminal 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to recognize the terminal posture, and can be used for horizontal and vertical screen switching, pedometer and other applications.
  • the terminal 100 can measure the distance through infrared or laser. In some embodiments, when shooting a scene, the terminal 100 can use the distance sensor 180F to measure the distance to achieve fast focusing.
  • Proximity light sensor 180G may include, for example, light emitting diodes (LEDs) and light detectors, such as photodiodes.
  • the light emitting diodes may be infrared light emitting diodes.
  • the terminal 100 emits infrared light to the outside through light emitting diodes.
  • the terminal 100 detects infrared reflected light from nearby objects using a photodiode. When sufficient reflected light is detected, it can be determined that there is an object near the terminal 100 . When insufficient reflected light is detected, the terminal 100 may determine that there is no object near the terminal 100 .
  • the terminal 100 can use the proximity light sensor 180G to detect that the user holds the terminal 100 close to the ear to talk, so as to automatically turn off the screen to save power.
  • Proximity light sensor 180G can also be used in holster mode, pocket mode automatically unlocks and locks the screen.
  • the ambient light sensor 180L is used to sense ambient light brightness.
  • the terminal 100 can adaptively adjust the brightness of the display screen 194 according to the perceived ambient light brightness.
  • the ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the terminal 100 is in a pocket, so as to prevent accidental touch.
  • the fingerprint sensor 180H is used to collect fingerprints.
  • the terminal 100 can use the collected fingerprint characteristics to unlock the fingerprint, access the application lock, take a picture with the fingerprint, answer the incoming call with the fingerprint, and the like.
  • the temperature sensor 180J is used to detect the temperature.
  • the terminal 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold value, the terminal 100 reduces the performance of the processor located near the temperature sensor 180J, so as to reduce power consumption and implement thermal protection.
  • the terminal 100 when the temperature is lower than another threshold, the terminal 100 heats the battery 142 to avoid abnormal shutdown of the terminal 100 due to low temperature.
  • the terminal 100 boosts the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
  • Touch sensor 180K also called “touch device”.
  • the touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, which is also referred to as a "touch screen”.
  • the touch sensor 180K is used to detect a touch operation on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • Visual output related to touch operations may be provided through display screen 194 .
  • the touch sensor 180K may also be disposed on the surface of the terminal 100 , which is different from the position where the display screen 194 is located.
  • the bone conduction sensor 180M can acquire vibration signals.
  • the bone conduction sensor 180M can acquire the vibration signal of the vibrating bone mass of the human voice.
  • the bone conduction sensor 180M can also contact the pulse of the human body and receive the blood pressure beating signal.
  • the bone conduction sensor 180M can also be disposed in the earphone, combined with the bone conduction earphone.
  • the audio module 170 can analyze the voice signal based on the vibration signal of the vocal vibration bone block obtained by the bone conduction sensor 180M, so as to realize the voice function.
  • the application processor can analyze the heart rate information based on the blood pressure beat signal obtained by the bone conduction sensor 180M, and realize the function of heart rate detection.
  • the keys 190 include a power-on key, a volume key, and the like. Keys 190 may be mechanical keys. It can also be a touch key.
  • the terminal 100 may receive key input and generate key signal input related to user settings and function control of the terminal 100 .
  • Motor 191 can generate vibrating cues.
  • the motor 191 can be used for vibrating alerts for incoming calls, and can also be used for touch vibration feedback.
  • touch operations acting on different applications can correspond to different vibration feedback effects.
  • the motor 191 can also correspond to different vibration feedback effects for touch operations on different areas of the display screen 194 .
  • Different application scenarios for example: time reminder, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 192 can be an indicator light, which can be used to indicate the charging state, the change of the power, and can also be used to indicate a message, a missed call, a notification, and the like.
  • an operating system runs on the above-mentioned components.
  • the iOS operating system developed by Apple the Android open source operating system developed by Google
  • the Windows operating system developed by Microsoft the Windows operating system developed by Microsoft.
  • Applications can be installed and run on this operating system.
  • the operating system of the terminal 100 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • the embodiments of the present application take an Android system with a layered architecture as an example to exemplarily describe the software structure of the terminal 100 .
  • FIG. 2 is a block diagram of the software structure of the terminal 100 according to the embodiment of the present application.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate with each other through software interfaces.
  • the Android system is divided into four layers, which are, from top to bottom, an application layer, an application framework layer, an Android runtime (Android runtime) and a system library, and a kernel layer.
  • the application layer can include a series of application packages.
  • the application package can include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message and so on.
  • the camera application can access the camera interface management service provided by the application framework layer.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer may include window managers, content providers, view systems, telephony managers, resource managers, notification managers, and the like.
  • the application framework layer may provide the application layer with an API related to the photographing function, and provide the application layer with a camera interface management service to realize the photographing function.
  • a window manager is used to manage window programs.
  • the window manager can get the size of the display screen, determine whether there is a status bar, lock the screen, take screenshots, etc.
  • Content providers are used to store and retrieve data and make these data accessible to applications.
  • the data may include video, images, audio, calls made and received, browsing history and bookmarks, phone book, etc.
  • the view system includes visual controls, such as controls for displaying text, controls for displaying pictures, and so on. View systems can be used to build applications.
  • a display interface can consist of one or more views.
  • the display interface including the short message notification icon may include a view for displaying text and a view for displaying pictures.
  • the telephony manager is used to provide the communication function of the terminal 100 .
  • the management of call status including connecting, hanging up, etc.).
  • the resource manager provides various resources for the application, such as localization strings, icons, pictures, layout files, video files, etc.
  • the notification manager enables applications to display notification information in the status bar, which can be used to convey notification-type messages, and can disappear automatically after a brief pause without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc.
  • the notification manager can also display notifications in the status bar at the top of the system in the form of graphs or scroll bar text, such as notifications of applications running in the background, and notifications on the screen in the form of dialog windows. For example, text information is prompted in the status bar, a prompt tone is issued, the terminal vibrates, and the indicator light flashes.
  • Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.
  • the core library consists of two parts: one is the function functions that the java language needs to call, and the other is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application layer and the application framework layer as binary files.
  • the virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, safety and exception management, and garbage collection.
  • a system library can include multiple functional modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • surface manager surface manager
  • media library Media Libraries
  • 3D graphics processing library eg: OpenGL ES
  • 2D graphics engine eg: SGL
  • the Surface Manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of a variety of commonly used audio and video formats, as well as still image files.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer contains at least display drivers, camera drivers, audio drivers, and sensor drivers.
  • the touch sensor 180K receives the touch operation and reports it to the processor 110 , so that the processor 110 starts the camera application in response to the above-mentioned touch operation, and displays the user interface of the camera application on the display screen 194 .
  • the touch sensor 180K reports the touch operation on the camera application to the processor 110 , so that the processor 110 starts the camera application and displays it on the display screen 194 in response to the above touch operation
  • the camera's user interface may also start the camera application in other manners, and display the user interface of the camera application on the display screen 194 .
  • the terminal 100 when the terminal 100 is on a black screen, displays a lock screen interface, or displays a certain user interface after being unlocked, the terminal 100 may start the camera application in response to a user's voice command or a shortcut operation, and display the user interface of the camera application on the display screen 194 .
  • an embodiment of the present application provides a shooting method, which is applied to a group photo of multiple people.
  • FIG. 3 it is a flowchart of the photographing method provided by the embodiment of the present application.
  • the method shown in FIG. 3 is applied to the terminal for photographing multiple subjects to be photographed, and the multiple subjects to be photographed include a first subject to be photographed and a second subject to be photographed.
  • the method includes the following steps:
  • the terminal acquires a first image.
  • the first image includes an image of the first photographed background and an image of the first photographed subject.
  • the embodiment of the present application does not limit the acquisition manner of the first image.
  • the first image may be a frame of image acquired by the terminal in non-real time, or a frame of image acquired by the terminal in real time.
  • the first image may be a frame of image locally generated by the terminal, for example, the first image is an image stored by the terminal and collected by its own camera, or stored by the terminal to process images collected by its own camera (such as image cropping, One or more of image scaling or image fusion). Or, the first image is to receive a frame of image sent by other devices (such as other terminals or network devices, etc.).
  • the first image may include one or more images of the first subject.
  • FIG. 4 it is a schematic diagram of a first image provided by an embodiment of the present application.
  • the terminal displays a first preview interface, where the first preview interface includes a first preview image; wherein the first preview image includes an image of a second shooting background and an image of a second subject to be shot.
  • the degree of coincidence between the image of the second photographed background and the image of the first photographed background is greater than or equal to a preset degree of coincidence.
  • the first preview image may be any preview image in the preview video stream of the terminal that satisfies "the degree of coincidence between the image of the shooting background and the image of the first shooting background is greater than or equal to a preset degree of coincidence".
  • FIG. 5a it is a schematic diagram of a first preview interface provided by an embodiment of the present application.
  • the first preview interface includes a first preview image
  • the first preview image includes an image 405 of the second subject and a second shooting background
  • the first preview interface may also include some controls in the camera application interface of the terminal, such as controls such as "night scene”, “person”, “photograph”, “video”, and “photograph button” in Figure 5a.
  • the degree of coincidence between the image of the second shooting background and the image of the first shooting background refers to the area of the overlapping area between the image of the second shooting background and the image of the first shooting background, which accounts for the proportion of the image area of the first shooting background .
  • the embodiment of the present application does not limit the specific value of the preset coincidence degree and the determination method.
  • the preset coincidence degree may be determined based on the fusion technology used when performing S104, the user's satisfaction with the target image, and the like.
  • the degree of coincidence between the image of the second shooting background and the image of the first shooting background is less than or equal to a certain threshold, the higher the degree of coincidence, that is, the more similar the second shooting background and the first shooting background are, when S104 is executed the better the fusion effect.
  • the first preview image may include one or more images of the second subject.
  • the first preview interface may further include: second information.
  • the second information is used to indicate at least one of the position, posture, or size of the image of the first photographed subject in the image of the second photographed background. Further optionally, the second information specifically includes: the outline of the image of the first photographed subject; or, a semi-transparent image of the image of the first photographed subject.
  • the virtual group photo effect of the first subject and the second subject is displayed on the first preview interface, thereby helping the camera user to guide the position and posture of the second subject in the second shooting background. and at least one of the size, thereby improving the user experience effect and enhancing the user's satisfaction with the target image.
  • FIG. 5b it is a schematic diagram of another first preview interface provided by an embodiment of the present application.
  • Fig. 5b is drawn based on Fig. 5a, and on the basis of the first preview interface shown in Fig. 5a, the first preview interface shown in Fig. 5b further includes an outline 406 of the image of the first photographed subject.
  • the outline 406 indicates the position, posture and size of the first photographed subject in the second photographed background.
  • the terminal displays the second information on the first preview interface, which may include the following steps 11-14:
  • Step 11 The terminal extracts the image of the first photographed subject from the first image, and acquires position information of the image of the first photographed subject in the first photographed background image.
  • the position information is relative position information, such as the first position information of the image of the first photographed subject relative to the image of the target static object in the image of the first photographed background.
  • Step 12 The terminal acquires, based on the image of the first photographed subject, an outline/translucent image of the image of the first photographed subject.
  • Step 13 The terminal aligns the image of the first shooting background with the image of the second shooting background to obtain position information of the image of the first subject in the image of the second shooting background.
  • the position information is relative position information, such as the second position information of the image of the first photographed subject relative to the image of the target static object in the image of the second photographed background.
  • the positions indicated by the first position information and the second position information are consistent (eg, the same or the difference is within a preset range).
  • aligning the image of the first shooting background and the image of the second shooting background by the terminal may include: first, the terminal acquires the feature points in the image of the first shooting background and the image of the second shooting background, for example, using a constant scale.
  • Feature transform scale-invariant feature transform, SIFT
  • corner detection algorithm respectively detect the image of the first shooting background and the image of the second shooting background, and obtain the feature points in the image of the first shooting background and the second shooting background.
  • Feature points in the image of the background are taken.
  • the terminal uses a registration algorithm to determine feature point pairs that match between the image of the first photographed background and the image of the second photographed background. Wherein, two feature points in the matched feature point pair represent the same part of the same object, for example, the feature points both represent the thumb of the left hand of the same person.
  • the registration algorithm currently mainly includes the method based on traditional manual features and the registration method based on convolutional neural network (CNN).
  • methods based on traditional manual feature registration include: scaling an image to a certain size, then detecting local key points in the gray space of the scaled image, and then generating feature descriptors at the positions of the key points.
  • converting to grayscale space can effectively solve the feature mismatch problem caused by the brightness inconsistency problem.
  • Commonly used local keypoint detection descriptors are sift, surf, orb, etc.
  • the terminal can use surf as the final feature descriptor.
  • FIG. 6 it is a schematic diagram of a terminal aligning an image of a first shooting background and an image of a second shooting background according to an embodiment of the present application.
  • 6 is an example of aligning the image of the first shooting background as shown in FIG. 4 and the image of the second shooting background as shown in FIG. 5 a .
  • the two feature points connected by the same dotted line in FIG. 6 are matched feature point pairs.
  • the terminal may determine the overlapping area of the images of the two shooting backgrounds based on the alignment result of the images of the first shooting background and the images of the second shooting background.
  • the image in the bold rectangular frame in FIG. 6 represents the overlapping area of the image of the first photographed background and the image of the second photographed background.
  • Step 14 The terminal displays the outline/translucent image of the image of the first subject on the first preview interface. Wherein, the position of the outline/translucent image in the image of the second shooting background is consistent with the position of the image of the first subject in the image of the second shooting background.
  • the posture of the outline/translucent image is the same as the posture of the first photographed subject.
  • step 13 it may be necessary to zoom the first image or the first preview image.
  • the terminal taking the real-time collection of the first image by the terminal as an example, if the distances of the camera of the terminal to the same static object in the first shooting background and the second shooting background are different when the terminal collects the first image and the first preview image, the static The size of the object in the first shot background and the second shot background is inconsistent.
  • the terminal needs to zoom the first image or the first preview image, so that the size of the same static object in the first shooting background and the second shooting background is the same.
  • the terminal may display the zoomed outline/translucent image of the image of the first subject on the first preview interface based on the position information of the image of the first subject in the image of the second shooting background.
  • the terminal may display information indicating "the degree of coincidence between the image of the second shooting background and the image of the first shooting background" in the first preview interface.
  • the coincidence degree is 70%, or the displayed coincidence degree is greater than or equal to a preset coincidence degree, and the like.
  • the user can know the degree of coincidence information between the image of the second shooting background and the image of the first shooting background, and whether the image fusion requirements are met, thereby improving user experience.
  • FIG. 5c it is a schematic diagram of another first preview image provided in this embodiment of the present application.
  • Fig. 5c is drawn based on Fig. 5b, and on the basis of the first preview interface shown in Fig. 5b, the first preview interface shown in Fig. 5c further includes a prompt box 407, and the prompt box 407 displays a :
  • the degree of coincidence between the image of the second shooting background and the image of the first shooting background is greater than or equal to the preset coincidence degree.
  • S103 The terminal saves the first preview image.
  • the terminal may automatically save the first preview image when it is determined that the degree of coincidence between the image of the second shooting background and the image of the first shooting background is greater than or equal to a preset degree of coincidence.
  • the terminal may save the first preview image under the user's instruction, such as after the user clicks the "photograph button” in the first preview interface, or under the user's voice instruction.
  • the user may click the "photograph button” in the first preview interface based on the prompt of the prompt box 407, and in response to the click operation, the terminal saves the first preview image.
  • S103 is an optional step.
  • the terminal obtains the target image based on the first image and the first preview image.
  • the target image includes an image of the first subject and an image of the second subject.
  • the target image also includes an image of the target shooting background.
  • the target image is a group photo of the above-mentioned multiple photographed subjects.
  • the terminal displays the target image.
  • FIG. 7 it is a schematic diagram of a target image provided by an embodiment of the present application.
  • Fig. 7 is drawn based on Fig. 4 and Fig. 5a (or Fig. 5b or Fig. 5c).
  • the target image shown in FIG. 7 includes an image 401 of the first subject, an image 405 of the second subject, and an image of the target shooting background.
  • the terminal fuses the image A and the image B to obtain the target image.
  • the image A may be the first image, or an image obtained after processing the first image (eg, image cropping, scaling, etc.).
  • the image B may be the first preview image, or an image obtained by processing the first preview image (eg, after image cropping, scaling, etc.).
  • the above S104 may include the following steps 21-22:
  • Step 21 The terminal aligns image A and image B.
  • the terminal may not execute the step 21.
  • Step 22 The terminal fuses the aligned image A and image B. Specifically, it can be achieved in one of the following ways:
  • Mode 1 The terminal extracts the image of the first subject in the image A, and fuses the image of the first subject with the image B to obtain the target image.
  • the position of the image of the first subject in the image of the shooting background of the image A is consistent with the position of the image of the first subject in the image of the shooting background of the target image.
  • the same position here refers to the same relative position.
  • the relative position between the image of the first subject and the image of a certain static object in the image of the shooting background of image A, and the relative position of the image of the shooting background of the image B of the first subject are the same (or the difference is within a preset range).
  • the image of the target shooting background in the target image is specifically: the image in the shooting background image in the image B except the "background image occluded by the image of the first subject to be shot”.
  • FIG. 8a it is a schematic process diagram of a fusion method provided by an embodiment of the present application based on this method.
  • the image of the captured background in rectangle 501 in image A is the same as the image of the captured background in rectangle 502 in image B.
  • the image of the photographing background in the rectangle 503 in the target image is: among the images of the photographing background in the rectangle 502 in the image B, an image other than the background image occluded by the image of the first photographed subject.
  • extracting the image of the first subject in the image A includes: performing image segmentation on the image A based on the image of the second shooting background to obtain the image of the first subject.
  • FIG. 8b a schematic diagram of a process of extracting an image of a first photographed subject provided by an embodiment of the present application.
  • the image A is the first image as an example for description.
  • the first image and the image of the second photographing background are input into the image segmentation network to obtain an image 401 of the first photographed subject.
  • the working principle of the image segmentation network is shown in Fig. 8b. Specifically: referring to the image of the second shooting background, image segmentation is performed on the first image.
  • the terminal can directly determine that the pixel is the first pixel based on the pixel in the image of the second shooting background.
  • a pixel in the image of the background but not in the image of the first subject.
  • the terminal can refer to the overlapping relationship between the second photographed background and the first photographed background, and more accurately know that the pixel is the first photographed background.
  • the pixels in the image of the background are also the pixels in the image of the first subject, thereby improving the accuracy of extracting the first subject.
  • the parts with the same number in the image segmentation network represent the pixels of the same object in the first photographed background and the second photographed background.
  • parts 704 and 705 may represent different objects in the first image and the second image, respectively.
  • Part 706 represents a part determined based on parts 704 and 705 .
  • Mode 2 The terminal extracts the image of the second subject in the image B, and fuses the image of the second subject with the image A to obtain the target image.
  • the position of the image of the second subject in the image of the shooting background of the image B is consistent with the position of the image of the second subject in the image of the shooting background of the target image.
  • the same position here refers to the same relative position.
  • the relative position between the image of the second subject and the image of a certain static object in the image of the shooting background of image B, and the The relative positions between the images of the objects are the same (or the difference is within a preset range).
  • the image of the target shooting background in the target image is specifically: the image in the shooting background image in Image A except the "second background image occluded by the image of the shooting subject".
  • FIG. 8c it is a schematic process diagram of a fusion method provided by an embodiment of the present application based on this method.
  • the image of the shooting background in the rectangle 501 in the image A coincides with the image of the shooting background in the rectangle 502 in the image B.
  • the image of the photographing background in the rectangle 503 in the target image is: among the images of the photographing background in the rectangle 501 in the image A, an image other than the background image occluded by the image of the second photographed subject.
  • extracting the image of the second subject in the image B includes: performing image segmentation on the image B based on the image of the first shooting background to obtain the image of the second subject.
  • FIG. 8b For a specific example thereof, reference may be made to FIG. 8b, which will not be repeated here.
  • the embodiment of the present application does not limit whether the above-mentioned mode 1 or mode 2 is used.
  • the foregoing method 1 may be selected. If the number of the first subjects to be photographed is greater than the number of the second subjects to be photographed, the above method 2 can be selected. In this way, it is helpful to improve the accuracy of extracting the image of the photographed subject, thereby improving the accuracy of fusion.
  • the terminal uses a part of the subjects to be photographed as the first subject to be photographed, and acquires a frame of image;
  • the second subject to be photographed is photographed to obtain another frame of image.
  • a target image including the image of the first subject and the image of the second subject is acquired, so as to realize a group photo of the multiple subjects.
  • the help of a third party such as a passerby
  • the technical solution provided by the embodiments of the present application can further improve the user's satisfaction with the group photo result (ie, the target image), thereby improving the user experience.
  • the first image and the first preview image are used to obtain the target image as an example for description.
  • multiple people to take a group photo can take pictures in more than two times, and the terminal fuses the images obtained by taking all the times to obtain the target image.
  • FIG. 9 it is a schematic process diagram of an application scenario of the technical solution provided by the embodiment of the present application.
  • subject A takes photographs of subjects B and C (ie, the first photograph) to obtain a first image.
  • subject B or subject C in FIG. 8 , subject B is taken as an example
  • take a picture of subject A ie, take a second photo
  • the first preview interface includes a first preview image and outlines of the images of subjects B and C to be photographed.
  • the first preview interface includes an image of the subject A to be photographed.
  • the terminal fuses the first image and the first preview image to obtain a target image (ie, a group photo).
  • FIG. 10 it is a flowchart of another photographing method provided by an embodiment of the present application.
  • the method shown in FIG. 10 is applied to the terminal for photographing multiple subjects to be photographed, and the multiple subjects to be photographed include a first subject to be photographed and a second subject to be photographed.
  • the method includes the following steps:
  • the terminal displays a second preview interface, where the second preview interface includes a second preview image and first information.
  • the second preview image includes the image of the third shooting background and the image of the second subject to be shot.
  • the first information is used to instruct to adjust the image of the shooting background in the current preview image of the terminal.
  • the terminal may display the second preview image when it is determined that the degree of coincidence between the image of the third shooting background and the image of the first shooting background is less than the preset degree of coincidence.
  • the image of the shooting background in the current preview image of the terminal needs to be adjusted, so that the degree of coincidence between the image of the shooting background of the current preview interface and the image of the first shooting background is greater than or equal to the preset Coincidence degree" and the proposed technical solution.
  • the second preview image may be any one of the preview video streams of the terminal that satisfies "the coincidence degree between the image of the shooting background and the image of the first shooting background is less than the preset coincidence degree".
  • the first information is specifically used to indicate at least one of the following:
  • the embodiment of the present application does not limit the specific implementation manner of prompting that the coincidence degree is less than the preset coincidence degree, for example, it may be any one or a combination of any one or more manners such as text prompting, picture prompting, and highlighting.
  • FIG. 11a it is a schematic diagram of a second preview interface provided by an embodiment of the present application.
  • the second preview interface includes a second preview image and first information (such as a prompt box 408 ).
  • the second preview image includes an image 405 of a second subject and an image of a third shooting background.
  • the prompt box 408 includes the text "the degree of coincidence between the image of the third shooting background and the image of the first shooting background is less than the preset coincidence degree".
  • the second preview interface may also include some controls in the camera application interface of the terminal, such as “night scene”, “person”, “photograph”, “video” and “photograph button” in Figure 11a ” and other controls.
  • the target position of the terminal refers to the position after the terminal moves. After the user moves the terminal according to the first information, it helps to improve the degree of coincidence between the image of the shooting background of the current preview interface and the image of the first shooting background.
  • the embodiments of the present application do not limit the manner of determining the target position and the specific expression form of the target position.
  • the target position may be "move the terminal to a certain direction (such as translation, rotation, forward and backward movement, etc.)", “how many meters the terminal moves to a certain direction”, or “move the terminal to a certain position”, etc.
  • the front, back, left and right here may be relative to the user holding the terminal during the shooting process, of course, this is not the case in the specific implementation.
  • FIG. 11b it is a schematic diagram of a second preview interface provided by an embodiment of the present application.
  • the second preview interface includes a second preview image and first information (eg, a prompt box 409).
  • the second preview image in Fig. 11b is the same as the second preview image in Fig. 11a.
  • Prompt box 409 includes the text "Move Terminal Left". Wherein, "left" here is relative to the user holding the terminal during the shooting process.
  • the terminal acquires the feature points in the first image and the second preview image. Secondly, the terminal removes the feature points of the first subject in the first image to obtain the feature points of the image of the first shooting background; and removes the feature points of the second subject in the second preview image to obtain the third shot The feature points of the image of the background.
  • the terminal calculates a homography matrix between the image of the first shooting background and the image of the third shooting background based on the feature points of the image of the first shooting background and the feature points of the image of the third shooting background.
  • the homography transformation is used to describe the position mapping relationship between the object in the world coordinate system and the pixel coordinate system, and the corresponding transformation matrix is called the homography matrix.
  • the terminal determines the target position of the terminal based on the homography matrix.
  • the first information is: the degree of coincidence between the image of the third shooting background and the image of the first shooting background is 50%, or the like.
  • the position of the terminal can be adjusted based on the coincidence degree to adjust the background image of the current preview image.
  • S203-S205 Reference may be made to the above-mentioned S102-S104, of course, it is not limited to this.
  • the terminal guides the user to adjust the position of the terminal based on the degree of coincidence between the image of the shooting background in the current preview image and the image of the shooting background of the first image. After the position of the terminal is adjusted, the shooting background of the current preview image of the terminal will change accordingly. Therefore, it is helpful to improve the degree of coincidence between the image of the shooting background of the current preview interface and the image of the first shooting background, thereby improving the fusion. effect, and how satisfied the user is with the target image.
  • the following describes the method for the terminal to acquire the first image in real time provided by the embodiment of the present application.
  • FIG. 12 a flowchart of a method for a terminal to acquire a first image in real time according to an embodiment of the present application.
  • the method includes:
  • the terminal outputs third information, where the third information is used to instruct the user who took the first image.
  • the user who shoots the first image is the second subject. If there are multiple second photographed subjects, the user who photographed the first image may be one of the second photographed subjects.
  • the terminal displays third information on the display screen
  • the third information can be text, pictures, special marks (for example, the frame at the position of the second subject is displayed according to the frame that is different from the position of other subjects, such as highlighted display, bold display, different color display, etc.)
  • the terminal outputs the third information as voice information.
  • the specific implementation is not limited to this.
  • Manner 1 The terminal displays a target shooting template, and the target shooting template is used to indicate the positional relationship between a plurality of photographed subjects. Then, the terminal outputs the third information based on the target shooting template. In this manner, the terminal determines the third information based on a target shooting template, and the target shooting template is selected from a plurality of shooting templates in a shooting template library.
  • the shooting template library can reuse any shooting template library in the traditional technology, therefore, the application scope of this technical solution is wide.
  • Taking a stencil can also be referred to as taking a stencil image.
  • the photographing template may indicate the total number of photographed subjects, the positional relationship between photographed subjects, and the like.
  • the shooting template can also be used to indicate the pose of the subject to be shot.
  • the "posture” described in the embodiments of the present application may refer to the overall posture of the human body (eg, standing posture, sitting posture, etc.), or may refer to the partial posture of the human body (eg, gestures, etc.).
  • the number of portraits in the shooting template is determined based on the number of subjects to be photographed (that is, the number of people in a group photo, that is, the sum of the number of the first subject and the second subject), for example, in the shooting template.
  • the number of portraits is the same as the number based on the subject being photographed.
  • the shooting template may have a corresponding relationship with "the relationship between the characters of the subject to be shot (such as the relationship between lovers, girlfriends, family, etc.)". That is to say, when the relationship between the characters of the subjects being photographed is different, the target shooting templates can be different.
  • the shooting template may have a corresponding relationship with the shooting scene.
  • each shooting scene corresponds to one or more shooting templates.
  • the shooting scene may be, for example, but not limited to, one or more of a sunset scene, a seaside scene, a grass scene, a road scene, a wall scene, a staircase scene, a railing scene, an indoor scene, or a dining table scene.
  • multiple shooting templates are pre-stored in the terminal, the multiple shooting templates may be pre-downloaded by the terminal from a network device, and these shooting templates can be updated.
  • the terminal may obtain the current shooting scene based on the preview image after opening the camera application, or obtain the current shooting scene under the user's instruction (for example, after the terminal displays multiple shooting scenes, the user selects one of the shooting scenes as the current shooting scene) Then select a shooting template corresponding to the current shooting scene from a plurality of pre-stored shooting templates based on the current shooting scene, and use the selected shooting template as the target shooting template, and display the target shooting template on the display screen. .
  • the terminal may send the preview image to the network device after opening the camera application. Then, the network device acquires the current shooting scene based on the preview image, selects a shooting template corresponding to the current shooting scene from the pre-stored multiple shooting templates based on the current shooting scene, and uses the selected shooting template as the target shooting template. Next, the network device sends the information of the target shooting template to the terminal, and the terminal displays the target shooting template on the display screen.
  • the terminal outputs the third information based on the target shooting template, which can be implemented by the following scheme 1 or scheme 2:
  • Scheme 1 The terminal outputs the third information based on the target shooting template and the human-computer interaction operation.
  • the terminal receives a first operation, where the first operation is used to select a user who shoots the first image in the target shooting template; in response to the first operation, the third information is output.
  • the target shooting template displayed on the display screen of the terminal is as shown in Figure a in Figure 13
  • the target shooting template is the shooting template corresponding to the sunset scene.
  • the target shooting template includes a portrait 601 and a portrait 602, the positional relationship between the two, and the relationship between the two and the background are shown in Figure a in FIG. 13 .
  • the terminal receives the user's first operation (such as a touch screen operation, etc.) on the area where a certain subject to be photographed in the target shooting template is located. Touch the screen in the area where you are located.
  • the terminal specifically displays the border where the portrait targeted by the operation is located in bold, as shown in Figure c in FIG. 13 .
  • the user who took the first image is the user represented by the portrait in the frame displayed in bold.
  • the subject on the left is the first subject
  • the subject on the right is the second subject
  • the subject on the left is the first subject.
  • the second photographed subject is the user who photographed the first image.
  • the terminal determines the user who shoots the first image through human-computer interaction, which helps to improve the user's sense of participation and enhance the user experience.
  • Scheme 2 The terminal automatically outputs the third information based on the target shooting template.
  • the user who takes the first image may be any of the following:
  • the user who shoots the first image is a user represented by a portrait whose overlap range with other portraits in the target shooting template is less than or equal to a preset overlap range (eg, does not overlap with other portraits).
  • selecting the user represented by it as the user who takes the first image helps to improve the fusion effect of the target image, thereby improving the user's satisfaction with the target image.
  • the target shot template contains multiple portraits, as shown in a of FIG. 14 .
  • the visualization of the portrait in the target shooting template may be various, for example, it may be a cartoon, a stick figure, and the like.
  • the terminal may use an image instance segmentation algorithm to determine the user who took the first image.
  • image instance segmentation algorithm A schematic diagram of image instance segmentation is shown in Figure 14. specific:
  • the terminal inputs the target shooting template shown in Figure a in Figure 14 into the instance segmentation algorithm model, and the output of the model is the mask of each portrait in the template, as shown in Figure b in Figure 14 .
  • the mask for each portrait is a connected region.
  • the terminal obtains the degree of connection between the masks of every two portraits in b in FIG. 14 . If the degree of connection between the mask of a certain portrait and the masks of the portraits greater than or equal to the preset number is smaller than a certain threshold, it is determined that the overlap range between the portrait and other portraits is less than or equal to the preset overlap range, The user represented by the portrait is used as the user who takes the first image.
  • the target shot template contains masks for multiple portraits, as shown in b in FIG. 14 .
  • the terminal may obtain the degree of connection between the masks of each two portraits, and based on this, determine the user who takes the first image.
  • the specific method can refer to the above, and will not be repeated here.
  • the user who shoots the first image is the user represented by the portrait closest to the camera of the terminal in the target shooting template.
  • taking the user represented by the portrait as the user taking the first image helps to improve the fusion effect of the target image, thereby improving the user's satisfaction with the target image.
  • the terminal can implement the technical solution in 2) through the following steps:
  • the terminal adopts an image depth estimation algorithm to obtain the depth estimation result of each portrait in the target shooting template.
  • Figure a in Figure 15 is a schematic diagram of a target shooting template
  • Figure b in Figure 15 is the depth estimation result of each portrait in the target shooting template shown in Figure a in Figure 15 obtained by the terminal.
  • the terminal adopts the image instance segmentation algorithm to obtain the masks of each portrait in the target shooting template.
  • picture c in FIG. 15 is the mask of each portrait in the target shooting template shown in picture a in FIG. 15 obtained by the terminal.
  • the correspondence between the mask of each portrait acquired by the terminal and the depth estimation result of the portrait For example, there is a corresponding relationship between the depth estimation result of the portrait marked by the rectangular frame in b in FIG. 15 and the mask of the portrait marked by the rectangle in c in FIG. 15 .
  • the portrait is a portrait marked by a rectangular frame in a in FIG. 15 .
  • the terminal determines the depth value of each portrait in the target shooting template based on the corresponding relationship, thereby determining the distance between the user represented by each portrait and the camera of the terminal based on the depth value of each portrait.
  • the user who shoots the first image is the user represented by the outermost portrait in the target shooting template, or the user represented by the portrait whose distance from other portraits is greater than the preset distance.
  • a portrait whose distance from other portraits is greater than the preset distance can be understood as a portrait that deviates from other portraits.
  • Figure a in Figure 16 it is a schematic diagram of a target shooting template in this scene. In this target shot template, the portraits marked by the rectangular frame are far away from other portraits.
  • the image of the user in the target image is The tolerance of positional deviation is higher, therefore, the target image obtained after fusion is more likely to improve user satisfaction.
  • the terminal may obtain the mask of each portrait in the target shooting template based on the above instance segmentation method, and determine the distance between the two portraits based on the distance between the masks of every two portraits, so as to determine the shooting The user of the first image.
  • picture b in FIG. 16 is a mask of the portrait in the target shooting template obtained based on picture a in FIG. 16 .
  • the above-mentioned methods for determining the user who took the first image can all be applied to "merging the second subject into the first image (which can be replaced with the above-mentioned image A) to obtain the target image" in the scene.
  • This is in consideration of "in practical application, based on the public's photographing habits, when taking a group photo of multiple people, usually only one of them will be the second subject to be photographed, and the rest will be the first subject to be photographed; that is to say, usually the second The number of subjects to be photographed is less than or equal to the number of subjects to be photographed. In this case, merging the second subject to be photographed into the first image will make the fusion effect better.”
  • Manner 2 The terminal displays a target shooting template, where the target shooting template is used to indicate the positional relationship among the plurality of subjects to be photographed and the third information.
  • the target shooting template itself also indicates the third information.
  • the target shooting template is selected from a plurality of shooting templates in the shooting template library, and each shooting template predefines the user who shoots the first image (specifically, the position in the shooting template for shooting the first user is predefined, etc. ). In this way, after the terminal has determined the display target shooting template, it is not necessary to determine and display the third information separately, which saves the computing resources of the terminal.
  • the third information may be re-determined under the instruction of the user through human-computer interaction. That is to say, the user may not use the subject to be photographed recommended by the target photographing template as the user who photographed the first image, but the user may finally specify the user who photographed the first image in the target photographing template.
  • FIG. 17 it is a schematic diagram of a target shooting template provided by an embodiment of the present application.
  • the target shooting template is a shooting template corresponding to the sunset scene.
  • the target shot includes a portrait 601 and a portrait 602 , the positional relationship between the two, and the relationship between the two and the background are shown in FIG. 17 .
  • the target shooting template also indicates that the user represented by the portrait 602 is the user who took the first image by displaying the border of the region where the portrait 602 is located in bold (ie, the third information).
  • the terminal displays a third preview image, where the third preview image includes an image of the first shooting background and an image of the first subject to be shot.
  • S101c The terminal saves the third preview image, and determines the third preview image as the first image, or determines the image obtained after the third preview image is processed (eg, zoomed, cropped, etc.) as the first image.
  • the terminal automatically saves the preview image, or saves the preview image under the user's instruction (eg, after the user clicks a photo button).
  • the technical solution provided in this embodiment provides that in a scene of multiple people taking a group photo, the terminal actively recommends the user who took the first image to the user, which helps to improve the user's sense of experience.
  • the recommendation rule used by the terminal when the recommendation rule used by the terminal is reasonable, it helps to improve the fusion effect of the first image and the first preview image, thereby improving user satisfaction.
  • the method may include the following steps:
  • S301 The user opens the camera application in the terminal.
  • the terminal displays the user interface of the camera application on the display screen, and the user interface includes a "multi-person group photo mode" control.
  • S302 The user clicks on the "multi-person group photo mode" control, and in response to the click operation, the terminal displays a variety of candidate group photo modes on the display screen, such as couple photo mode, girlfriend photo mode, friends photo mode, family photo mode, and big photo mode Wait.
  • the user interface may also represent an input box for the number of people in the group photo. The user can input the number of people in the group photo into the input box for the terminal to use when recommending the target shooting template.
  • S303 The user selects a target candidate mode from multiple candidate modes.
  • S304 The terminal collects a preview image of the current shooting scene.
  • the terminal In response to the input operation and the preview image, the terminal displays the target shooting template.
  • the target shooting template contains information for instructing the user who shoots the first image.
  • the target shooting template is the shooting template corresponding to the current shooting scene
  • the number of portraits in the target shooting template is the same as the number of people to be photographed
  • FIG. 19 it is a schematic diagram of the process of steps S301-S305.
  • S306 The user takes the user who shoots the first image indicated by the target shooting template as the second subject to be shot.
  • the second subject to be photographed holds the terminal to take pictures of the remaining subjects to be photographed (ie, the first subject to be photographed). Correspondingly, the terminal obtains the first image.
  • the terminal obtains the first image.
  • the terminal obtains the target image based on the first image and the first preview image.
  • the specific implementation process can refer to the above.
  • the terminal may be divided into functional modules according to the foregoing method examples.
  • each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware, and can also be implemented in the form of software function modules. It should be noted that, the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and there may be other division manners in actual implementation.
  • FIG. 20 it is a schematic structural diagram of a terminal according to an embodiment of the present application.
  • the terminal 200 shown in FIG. 20 can be used to implement the functions of the terminal in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments.
  • the terminal may be the terminal 100 shown in FIG. 1 .
  • the terminal 200 includes: a processing unit 201 and a display unit 202 .
  • the terminal 200 is used for photographing a plurality of subjects to be photographed, and the plurality of subjects to be photographed include a first subject to be photographed and a second subject to be photographed.
  • the processing unit 201 is configured to acquire a first image, where the first image includes an image of a first shooting background and an image of a first subject to be shot.
  • the display unit 202 is configured to display a first preview interface, where the first preview interface includes a first preview image; wherein, the first preview image includes an image of the second shooting background and an image of the second subject to be shot; the image of the second shooting background
  • the degree of coincidence with the image of the first shooting background is greater than or equal to the preset degree of coincidence.
  • the processing unit 201 is further configured to obtain a target image based on the first image and the first preview image; the target image includes an image of the first photographed subject and an image of the second photographed subject.
  • the processing unit 201 may be used to perform S101 and S104, and the display unit 202 may be used to perform S102.
  • the display unit 202 is further configured to, before displaying the first preview interface, display a second preview interface, where the second preview interface includes a second preview image and the first information; wherein the second preview image includes a third shooting background and the image of the second subject; the first information is used to instruct to adjust the image of the shooting background in the current preview image of the terminal.
  • the display unit 202 may be used to perform S202.
  • the first information is specifically used to indicate at least one of the following: the degree of coincidence between the image of the third shooting background and the image of the first shooting background is less than a preset degree of coincidence; or, the target position of the terminal.
  • the first preview interface further includes: second information, where the second information is used to indicate at least one of the position, posture, or size of the image of the first photographed subject in the image of the second photographed background.
  • the second information specifically includes: the outline of the image of the first photographed subject; or, a translucent image of the image of the first photographed subject.
  • the terminal 200 further includes: an output unit 203, configured to output third information, where the third information is used to indicate that the second subject to be photographed is the user who photographed the first image.
  • the output unit 203 may be the display unit 202 or other output units, such as an audio output unit.
  • the display unit 202 is further configured to, after the output unit 203 outputs the third information, display a third preview image, where the third preview image includes an image of the first photographed background and an image of the first photographed subject.
  • the processing unit 201 is specifically configured to: determine the third preview image as the first image, or determine the image obtained by processing the third preview image as the first image.
  • the output unit 203 may be used to perform S101a
  • the display unit 202 may be used to perform S101b.
  • the output unit 203 is specifically configured to: display a target photographing template, where the target photographing template is used to indicate the positional relationship among the multiple photographed subjects, and the third information.
  • the output unit 203 is the display unit 202 .
  • the display unit 202 is further configured to display a target photographing template, where the target photographing template is used to indicate the positional relationship among the multiple photographed subjects.
  • the output unit 203 is specifically configured to output the third information based on the target shooting template.
  • the terminal 200 further includes: an input unit 204, configured to receive a first operation; the first operation is used to select a user who shoots the first image in the target shooting template.
  • the input unit 204 may be the display unit 202 or other input units, such as an audio input unit and the like.
  • the output unit 203 is specifically configured to: output the third information in response to the first operation.
  • the target photographing template is also used to indicate the postures of the multiple photographed subjects.
  • the user who shoots the first image is a subject whose overlap range with other subjects is less than or equal to a preset overlap range among the multiple subjects.
  • the user who shoots the first image is the subject that is closest to the terminal among the multiple subjects to be photographed.
  • the distance between the user who shoots the first image and the other subjects in the plurality of subjects to be photographed is greater than the predetermined distance.
  • the processing unit 201 is specifically configured to: perform image segmentation on the first image based on the image of the second shooting background to obtain the image of the first subject to be shot; and obtain the image based on the image of the first subject and the first preview image. target image.
  • the processing unit 201 is specifically configured to: perform image segmentation on the first preview image based on the image of the first shooting background to obtain the image of the second subject to be shot; based on the image of the second subject and the first preview image, Get the target image.
  • the functions of the display unit 202 described above may be implemented by the display screen 194 .
  • the functions of the above-mentioned processing unit 201 can all be implemented by the processor 110 calling and storing degree codes in the internal memory 121 .
  • the above-mentioned output unit 203 may be implemented by a device for outputting information, such as the display screen 114 or the speaker 170A.
  • the above-mentioned input unit 204 may be implemented by means of a display screen, a microphone 170C and other devices for inputting information.
  • Another embodiment of the present application also provides a terminal, including: a processor, a memory, and a display screen, where the display screen is used to display images, the memory is used to store computer programs and instructions, the processor is used to call the computer programs and instructions, and the display screen is used for The corresponding steps performed by the terminal in the method flow shown in the above method embodiments are performed cooperatively.
  • Another embodiment of the present application further provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium.
  • instructions are executed by the terminal, each step in the method flow shown in the above method embodiments is executed by the terminal.
  • the disclosed methods may be implemented as computer program instructions encoded in a machine-readable format on a computer-readable storage medium or on other non-transitory media or articles of manufacture.
  • the computer may be implemented in whole or in part by software, hardware, firmware or any combination thereof.
  • a software program it 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.
  • the computer-executed instructions are loaded and executed on the computer, the flow or function according to the embodiments of the present application is generated in whole or in part.
  • the computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
  • Computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, computer, server, or data center over a wire (e.g.
  • coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (eg infrared, wireless, microwave, etc.) means to transmit to another website site, computer, server or data center.
  • Computer-readable storage media can be any available media that can be accessed by a computer or data storage devices including one or more servers, data centers, etc., that can be integrated with the media.
  • Useful media may be magnetic media (eg, floppy disks, hard disks, magnetic tapes), optical media (eg, DVDs), or semiconductor media (eg, solid state disks (SSDs)), and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Studio Devices (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开了拍摄方法和装置,涉及拍摄领域及图像处理技术领域,在多人合影时,不需要借助第三方的帮助,因此实现方便,且能提高用户对合影结果的满意度,从而提升用户体验。该方法应用于拍摄包括第一被拍摄主体和第二被拍摄主体的多个被拍摄主体。该方法包括:首先获取包括第一拍摄背景的图像和第一被拍摄主体的第一图像。然后,显示第一预览界面,第一预览界面包括第一预览图像。第一预览图像包括第二拍摄背景的图像和第二被拍摄主体的图像。第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度。接着,基于第一图像和第一预览图像,得到目标图像;目标图像包括第一被拍摄主体的图像和第二被拍摄主体的图像。

Description

拍摄方法和装置
本申请要求于2020年09月17日提交国家知识产权局、申请号为202010981549.9、申请名称为“拍摄方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及拍摄领域及图像处理技术领域,尤其涉及拍摄方法和装置。
背景技术
在多人合影(如情侣/闺蜜/亲子/家庭/集体等多人合影)场景下时,目前通常需要借助第三方(如路人)帮助拍照。由于多数时候不好找到愿意提供帮助的第三方,即便是找到愿意提供帮助的第三方,也难以保证拍摄的图像达到满意效果。因此,如何解决多人合影的上述需求,成为亟待解决的技术问题。
发明内容
本申请实施例提供了拍摄方法和装置,在多人合影时,不需要借助第三方的帮助,因此,实现方便,并且能够提高用户对合影结果的满意度,从而提升用户体验。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供了一种拍摄方法,应用于终端拍摄多个被拍摄主体,多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体。该方法包括:获取第一图像,第一图像包括第一拍摄背景的图像和第一被拍摄主体的图像;显示第一预览界面,第一预览界面包括第一预览图像;其中,第一预览图像包括第二拍摄背景的图像和第二被拍摄主体的图像;第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度;基于第一图像和第一预览图像,得到目标图像;目标图像包括第一被拍摄主体的图像和第二被拍摄主体的图像。
本技术方案,在用户有对多个被拍摄主体进行合影的需求时,终端将其中一部分被拍摄主体作为第一被拍摄主体,获取到一帧图像;另一部分被拍摄主体作为第二被拍摄主体,拍摄得到另一帧图像。然后基于这两帧图像,获取包含第一被拍摄主体的图像和第二被拍摄主体的图像的目标图像,从而实现该多个被拍摄主体合影。与现有技术相比,不需要借助第三方(如路人)帮助,因此实现方便。另外,相比借助第三方帮助的技术方案,本申请实施例提供的技术方案,更能够提高用户对合影结果(即目标图像)的满意度,从而提升用户体验。
在一种可能的设计中,在显示第一预览界面之前,该方法还包括:显示第二预览界面,第二预览界面包括第二预览图像和第一信息。其中,第二预览图像包括第三拍摄背景的图像和第二被拍摄主体的图像;第一信息用于指示调整终端的当前预览图像中的拍摄背景的图像。这样,有助于提高当前预览界面的拍摄背景的图像与第一拍摄背景的图像之间的重合度,从而提高融合效果,以及用户对目标图像的满意程度。
在一种可能的设计中,第一信息具体用于指示以下至少一种:第三拍摄背景的图 像与第一拍摄背景的图像之间的重合度小于预设重合度;或者,终端的目标位置。
在一种可能的设计中,第一预览界面还包括:第二信息,第二信息用于指示第一被拍摄主体的图像在第二拍摄背景的图像中的位置、姿势、或大小中的至少一种。这有助于实现拍照用户指导第二被拍摄主体在第二拍摄背景中的位置、姿势和大小中的至少一种,从而提高用户体验效果,并增强用户对目标图像的满意度。
在一种可能的设计中,第二信息具体包括:第一被拍摄主体的图像的轮廓;或者,第一被拍摄主体的图像的半透明图像。
在一种可能的设计中,获取第一图像,包括:输出第三信息,第三信息用于指示第二被拍摄主体是拍摄第一图像的用户。在输出第三信息之后,显示第三预览图像,第三预览图像包括第一拍摄背景的图像和第一被拍摄主体的图像;将第三预览图像确定为第一图像,或者将第三预览图像经处理后得到的图像确定为第一图像。终端主动向用户推荐拍摄第一图像的用户,这样,有助于提升用户的体验感。并且,在终端所使用的推荐规则合理的情况下,有助于提升第一图像与第一预览图像的融合效果,从而提高用户满意度。
在一种可能的设计中,输出第三信息,包括:显示目标拍摄模版,目标拍摄模版用于指示多个被拍摄主体之间的位置关系,以及第三信息。这样,终端在确定了显示目标拍摄模版之后,不需要再单独确定并显示第三信息,节省了终端的计算资源。
在一种可能的设计中,该方法还包括:显示目标拍摄模版,目标拍摄模版用于指示多个被拍摄主体之间的位置关系。该情况下,输出第三信息,包括:基于目标拍摄模版,输出第三信息。目标拍摄模版选自拍摄模版库中的多个拍摄模版。该拍摄模版库可以复用任何一种传统技术中的拍摄模版库,因此,本技术方案的适用范围广。
在一种可能的设计中,基于目标拍摄模版,输出第三信息,包括:接收第一操作;第一操作用于选择目标拍摄模版中拍摄第一图像的用户;响应于第一操作,输出第三信息。终端通过人机交互确定拍摄第一图像的用户,有助于提高用户的参与感,增强用户体验。
在一种可能的设计中,目标拍摄模版还用于指示多个被拍摄主体的姿势。
在一种可能的设计中,拍摄第一图像的用户是多个被拍摄主体中与其他被拍摄主体的重合范围小于等于预设重合范围的被拍摄主体。这样,有助于提高目标图像的融合效果,从而提高用户对目标图像的满意度。
在一种可能的设计中,拍摄第一图像的用户是多个被拍摄主体中距离终端最近的被拍摄主体。这样,有助于提高目标图像的融合效果,从而提高用户对目标图像的满意度。
在一种可能的设计中,拍摄第一图像的用户与多个被拍摄主体中的与其他被拍摄主体之间的距离大于预设距离的被拍摄主体。这样,有助于提高目标图像的融合效果,从而提高用户对目标图像的满意度。
在一种可能的设计中,基于第一图像和第一预览图像,得到目标图像,包括:基于第二拍摄背景的图像对第一图像进行图像分割,得到第一被拍摄主体的图像;基于第一被拍摄主体的图像与第一预览图像,得到目标图像。这样,终端可以参考第二拍摄背景与第一拍摄背景的重合关系,更准确地获知该像素是第一拍摄背景的图像中的 像素,还是第一被拍摄主体的图像中的像素,从而提高提取第一被拍摄主体的准确性,进而提高图像融合效果。
在一种可能的设计中,基于第一拍摄背景的图像对第一预览图像进行图像分割,得到第二被拍摄主体的图像;基于第二被拍摄主体的图像与第一预览图像,得到目标图像。这样,终端可以参考第二拍摄背景与第一拍摄背景的重合关系,更准确地获知该像素是第二拍摄背景的图像中的像素,还是第二被拍摄主体的图像中的像素,从而提高提取第二被拍摄主体的准确性,进而提高图像融合效果。
第二方面,提供了一种终端。
在一种可能的设计中,该终端可以用于执行上述第一方面提供的任一种方法。本申请可以根据上述第一方面及其任一种可能的设计方式提供的任一种方法,对该终端进行功能模块的划分。例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。示例性的,本申请可以按照功能将该终端划分为处理单元和显示单元等。上述划分的各个功能模块执行的可能的技术方案和有益效果的描述均可以参考上述第一方面或其相应的可能的设计提供的技术方案,此处不再赘述。
在另一种可能的设计中,该终端包括存储器和处理器,存储器用于存储计算机指令,处理器用于调用所述计算机指令,以执行如第一方面及其任一种可能的设计方式提供的任一种方法。其中,上述第一方面及其任一种可能的设计方式提供的任一种方法中的显示步骤,在该可能的设计中具体可以替换为控制显示步骤。上述第一方面或任一种可能的设计方式提供的任一种方法中的输出步骤,在该可能的设计中具体可以替换为控制输出步骤。
第三方面,提供了一种终端,包括:处理器、存储器和显示屏。显示屏用于显示图像等信息,存储器用于存储计算机程序和指令,处理器用于调用该计算机程序和指令,与该显示屏协同执行上述第一方面或其相应的可能的设计提供的技术方案。
第四方面,提供了一种计算机可读存储介质,如计算机非瞬态的可读存储介质。其上储存有计算机程序(或指令),当该计算机程序(或指令)在计算机上运行时,使得该计算机执行上述第一方面中任一种可能的实现方式提供的任一种方法。其中,上述第一方面及其任一种可能的设计方式提供的任一种方法中的显示步骤,在该可能的设计中具体可以替换为控制显示步骤。上述第一方面或任一种可能的设计方式提供的任一种方法中的输出步骤,在该可能的设计中具体可以替换为控制输出步骤。
第五方面,提供了一种计算机程序产品,当其在计算机上运行时,使得第一方面或第二方面中的任一种可能的实现方式提供的任一种方法被执行。其中,上述第一方面及其任一种可能的设计方式提供的任一种方法中的显示步骤,在该可能的设计中具体可以替换为控制显示步骤。上述第一方面或任一种可能的设计方式提供的任一种方法中的输出步骤,在该可能的设计中具体可以替换为控制输出步骤。
可以理解的是,上述提供的任一种终端、计算机存储介质、计算机程序产品或芯片系统等均可以应用于上文所提供的对应的方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
在本申请中,上述图像处理装置或者各功能模块的名字对设备或功能模块本身不 构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例可适用的一种终端的硬件结构示意图;
图2为本申请实施例可适用的一种终端的软件结构框图;
图3为本申请实施例提供的拍摄方法的流程图;
图4为本申请实施例的提供的一种第一图像的示意图;
图5a为本申请实施例提供的一种第一预览界面的示意图;
图5b为本申请实施例提供的另一种第一预览界面的示意图;
图5c为本申请实施例提供的又一种第一预览界面的示意图;
图6为本申请实施例提供的一种终端对齐第一拍摄背景的图像与第二拍摄背景的图像的示意图;
图7为本申请实施例提供的一种目标图像的示意图;
图8a为本申请实施例提供的一种融合方法的过程示意图;
图8b为本申请实施例提供的一种提取第一被拍摄主体的图像的过程示意图;
图8c为本申请实施例提供的另一种融合方法的过程示意图;
图9为本申请实施例提供的技术方案的一种应用场景的过程示意图;
图10为本申请实施例提供的另一种拍摄方法的流程图;
图11a为本申请实施例提供的一种第二预览界面的示意图;
图11b为本申请实施例提供的一种第二预览界面的示意图;
图12为本申请实施例提供的一种终端实时获取第一图像的方法的流程图;
图13为本申请实施例提供的一种终端基于目标拍摄模版输出第三信息的操作过程示意图;
图14为本申请实施例提供的一种图像实例分割的示意图;
图15为本申请实施例提供的一种目标拍摄模版的示意图;
图16为本申请实施例提供的另一种目标拍摄模版的示意图;
图17为本申请实施例提供的又一种目标拍摄模版的示意图;
图18为本申请实施例提供的技术方案的一个应用示例的方法流程图;
图19为本申请实施例提供的一种确定目标拍摄模版的过程示意图;
图20为本申请实施例提供的一种终端的结构示意图。
具体实施方式
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实 施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例提供的拍摄方法可以应用于终端中,该终端可以是带有摄像头的终端,如智能手机、平板电脑、可穿戴设备、AR/VR设备,也可以是个人计算机(personal computer,PC)、个人数字助理(personal digital assistant,PDA)、上网本等设备,还可以是其他任一能够实现本申请实施例的终端。本申请对终端的具体形态不予限定。
在本申请中,终端的结构可以如图1所示。如图1所示,终端100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本实施例示意的结构并不构成对终端100的具体限定。在另一些实施例中,终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。例如,在本申请中,处理器110可以控制显示屏194显示预览界面(如第一预览界面、第二预览界面等)、显示目标拍摄模版、显示第二信息/第三信息等,其相关说明可以参考下文。处理器110还用于执行融合步骤,配准步骤、人像分割步骤等,其相关说明可以参考下文。
其中,控制器可以是终端100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口, 通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现终端100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现终端100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端100充电,也可以用于终端100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端,例如AR设备等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端100的结构限定。在本申请另一些实施例中,终端100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
终端100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
终端100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,终端100可以包括1个或N个显示屏194,N为大于1的正整数。
终端100的显示屏194上可以显示一系列图形用户界面(graphical user interface,GUI),这些GUI都是该终端100的主屏幕。一般来说,终端100的显示屏194的尺寸是固定的,只能在该终端100的显示屏194中显示有限的控件。控件是一种GUI元素,它是一种软件组件,包含在应用程序中,控制着该应用程序处理的所有数据以及关于这些数据的交互操作,用户可以通过直接操作(direct manipulation)来与控件交互,从而对应用程序的有关信息进行读取或者编辑。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
终端100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端100可以包括1个或N个摄像头193,N为大于1的正整数。例如,上述摄像头193可以包括主摄像头、长焦摄像头、广角摄像头、红外摄像头、深度摄像头或者黑白摄像头等一种或者至少两种摄像头。结合本申请实施例提供的技术方案,终端可以采用上述一种或者至少两种摄像头采集图像(如第一图像和第一预览图像),并将采集到的图像进融合等。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端100可以支持一种或多种视频编解码器。这样,终端100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括 指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端100的各种功能应用以及数据处理。例如,在本实施例中,处理器110可以通过执行存储在内部存储器121中的指令,获取终端100的姿势。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端100的各种功能应用以及数据处理。
终端100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。终端100可以设置至少一个麦克风170C。在另一些实施例中,终端100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。终端100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,终端100根据压力传感器180A检测所述触摸操作强度。终端100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指 令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定终端100的运动姿势。在一些实施例中,可以通过陀螺仪传感器180B确定终端100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测终端100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,终端100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。终端100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当终端100是翻盖机时,终端100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测终端100在各个方向上(一般为三轴)加速度的大小。当终端100静止时可检测出重力的大小及方向。还可以用于识别终端姿势,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。终端100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,终端100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。终端100通过发光二极管向外发射红外光。终端100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定终端100附近有物体。当检测到不充分的反射光时,终端100可以确定终端100附近没有物体。终端100可以利用接近光传感器180G检测用户手持终端100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。终端100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测终端100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。终端100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,终端100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,终端100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,终端100对电池142加热,以避免低温导致终端100异常关机。在其他一些实施例中,当温度低于又一阈值时,终端100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194, 由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于终端100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端100可以接收按键输入,产生与终端100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的Android开源操作系统,微软公司所开发的Windows操作系统等。在该操作系统上可以安装运行应用程序。
终端100的操作系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明终端100的软件结构。
图2是本申请实施例的终端100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。例如,在拍照时,相机应用可以访问应用程序框架层提供的相机接口管理服务。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。例如,在本申请实施例中,在拍照时,应用程序框架层可以为应用程序层提供拍照功能相关的API,并为应用程序层提供相机接 口管理服务,以实现拍照功能。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供终端100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
需要说明的是,本申请实施例虽然以Android系统为例进行说明,但是其基本原理同样适用于基于iOS或Windows等操作系统的终端。
下面结合图1和拍摄场景,示例性说明终端100软件以及硬件的工作流程。
触摸传感器180K接收到触摸操作,上报给处理器110,使得处理器110响应于上述触摸操作,启动相机应用,并在显示屏194上显示该相机应用的用户界面。例如,触摸传感器180K当接收到对相机应用图标的触摸操作后,向处理器110上报对相机应用的触摸操作,使得处理器110响应于上述触摸操作,启动相机应用,并在显示屏194上显示相机的用户界面。此外,本申请实施例中还可以通过其它方式使得终端100启动相机应用,并在显示屏194上显示相机应用的用户界面。例如,终端100在黑屏、显示锁屏界面或者解锁后显示某一用户界面时,可以响应于用户的语音指令或者快捷操作等,启动相机应用,并在显示屏194上显示相机应用的用户界面。
关于多人拍摄场景中,终端如何进行拍摄和图像处理,成为亟待解决的技术问题。
对此,本申请实施例提供了一种拍摄方法,应用于多人合影。
下面将结合附图对本申请实施例的实施方式进行详细描述。
如图3所示,为本申请实施例提供的拍摄方法的流程图。图3所示的方法应用于终端拍摄多个被拍摄主体,该多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体。该方法包括以下步骤:
S101:终端获取第一图像。第一图像包括第一拍摄背景的图像和第一被拍摄主体的图像。
本申请实施例对第一图像的获取方式不进行限定。
例如,第一图像可以是终端非实时获取的一帧图像,或者终端实时获取的一帧图像。
又如,第一图像可以是终端本地生成的一帧图像,如第一图像是终端保存的由自身摄像头采集的图像,或者是终端保存的对由自身摄像头采集的图像进行处理(如图像裁剪、图像缩放、或图像融合中的一种或多种)后得到的图像。或者,第一图像是接收其他设备(如其他终端或网络设备等)发送的一帧图像。
第一图像中可以包括一个或多个第一被拍摄主体的图像。
如图4所示,为本申请实施例的提供的一种第一图像的示意图。其中,第一图像包括第一被拍摄主体的图像401和第一拍摄背景的图像,第一拍摄背景的图像包括:“+”402、“=”403和“心形”404。
S102:终端显示第一预览界面,第一预览界面包括第一预览图像;其中,第一预览图像包括第二拍摄背景的图像和第二被拍摄主体的图像。第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度。
第一预览图像可以是终端的预览视频流中的任意一个满足“拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度”的预览图像。
如图5a所示,为本申请实施例提供的一种第一预览界面的示意图。第一预览界面包括第一预览图像,第一预览图像包括第二被拍摄主体的图像405和第二拍摄背景,第二拍摄背景包括:“+”402、“=”403和“心形”404。
第一预览界面除了包含第一预览图像之外,还可以包含终端的相机应用界面中的一些控件,如图5a中的“夜景”“人物”“拍照”“录像”“拍照按键”等控件。
第二拍摄背景的图像与第一拍摄背景的图像之间的重合度,是指第二拍摄背景的 图像与第一拍摄背景的图像的重合区域的面积,占第一拍摄背景的图像面积的比例。
本申请实施例对预设重合度的具体取值,以及确定方式均不进行限定。例如,预设重合度可以基于执行S104时所使用的融合技术、用户对目标图像的满意度等确定。通常,在第二拍摄背景的图像与第一拍摄背景的图像之间的重合度小于等于某一阈值时,该重合度越高,即第二拍摄背景与第一拍摄背景越相似,执行S104时的融合效果越好。
第一预览图像可以包括一个或多个第二被拍摄主体的图像。
可选的,第一预览界面还可以包括:第二信息。第二信息用于指示第一被拍摄主体的图像在第二拍摄背景的图像中的位置、姿势、或大小中的至少一种。进一步可选的,第二信息具体包括:第一被拍摄主体的图像的轮廓;或者,第一被拍摄主体的图像的半透明图像。
也就是说,在第一预览界面上显示第一被拍摄主体和第二被拍摄主体的虚拟合影效果,从而有助于实现拍照用户指导第二被拍摄主体在第二拍摄背景中的位置、姿势和大小中的至少一种,从而提高用户体验效果,并增强用户对目标图像的满意度。
如图5b所示,为本申请实施例提供的另一种第一预览界面的示意图。图5b是基于图5a进行绘制的,并且,在图5a所示的第一预览界面的基础之上,图5b中所示的第一预览界面还包括第一被拍摄主体的图像的轮廓406。该轮廓406指示了第一被拍摄主体在第二拍摄背景中的位置、姿势和大小。
终端在第一预览界面上显示第二信息,可以包括以下步骤11-14:
步骤11:终端从第一图像中提取第一被拍摄主体的图像,并获取第一被拍摄主体的图像在第一拍摄背景图像中的位置信息。其中,该位置信息是相对位置信息,如第一被拍摄主体的图像相对于第一拍摄背景的图像中的目标静态对象的图像的第一位置信息。
步骤12:终端基于第一被拍摄主体的图像,获取第一被拍摄主体的图像的轮廓/半透明图像。
步骤13:终端对齐第一拍摄背景的图像与第二拍摄背景的图像,以获取第一被拍摄主体的图像在第二拍摄背景的图像中的位置信息。其中,该位置信息是相对位置信息,如第一被拍摄主体的图像相对于第二拍摄背景的图像中的上述目标静态对象的图像的第二位置信息。第一位置信息所与第二位置信息所指示的位置一致(如相同或相差在预设范围内)。
可选的,终端对齐第一拍摄背景的图像与第二拍摄背景的图像,可以包括:首先,终端获取第一拍摄背景的图像与第二拍摄背景的图像中的特征点,如采用尺度不变特征变换(scale-invariant feature transform,SIFT)算法或角点检测算法,对第一拍摄背景的图像与第二拍摄背景的图像分别进行检测,获得第一拍摄背景的图像中的特征点和第二拍摄背景的图像中的特征点。然后,终端使用配准算法,确定第一拍摄背景的图像与第二拍摄背景的图像中相匹配的特征点对。其中,相匹配的特征点对中的两个特征点表示同一对象的同一部位,例如,该特征点均表示同一个人的左手的大拇指等。
配准算法当前主要有基于传统手工特征的方法和基于卷积神经网络 (convolutional neural network,CNN)的配准方法。例如,基于传统手工特征配准的方法包括:将图像缩放到一定尺寸,然后检测缩放后的图像的灰度空间的局部关键点,接着,在关键点位置生成特征描述符。其中,转为灰度空间可以有效解决亮度不一致问题产生的特征误匹配问题。常用的局部关键点检测描述符有sift、surf、orb等。可选的,综合考虑速度和精确性,终端可以使用surf作为最终的特征描述符。
如图6所示,为本申请实施例提供的一种终端对齐第一拍摄背景的图像与第二拍摄背景的图像的示意图。其中,图6是以对齐如图4中的第一拍摄背景的图像和如图5a中的第二拍摄背景的图像为例进行说明的。图6中的同一虚线连接的两个特征点是相匹配的特征点对。
需要说明的是,后续,终端可以基于第一拍摄背景的图像与第二拍摄背景的图像的对齐结果,确定这两个拍摄背景的图像的重合区域。例如,图6中的粗体矩形框中的图像表示第一拍摄背景的图像和第二拍摄背景的图像的重合区域。
步骤14:终端在第一预览界面上显示第一被拍摄主体的图像的轮廓/半透明图像。其中,该轮廓/半透明图像在第二拍摄背景的图像中的位置与第一被拍摄主体的图像在第二拍摄背景的图像中的位置一致。
例如,“图4中所示的第一被拍摄主体的图像401与目标静态对象“+”402之间的相对位置”,与“图5b中所示的第一被拍摄主体的图像401的轮廓406与目标静态对象“+”402之间的相对位置”相同。
由于第一预览图像中显示的是第一被拍摄主体的图像的轮廓/半透明图像,因此,该轮廓/半透明图像的姿势,与第一被拍摄主体的姿势相同。
可以理解的是,终端在执行步骤13之前,可能需要对第一图像或第一预览图像进行缩放。例如,以终端实时采集第一图像为例,如果终端采集第一图像和第一预览图像时,终端的摄像头针对第一拍摄背景和第二拍摄背景中的同一静态对象的距离不同,则该静态对象在第一拍摄背景和第二拍摄背景中的大小不一致。此时,终端在执行步骤13之前,需要对第一图像或第一预览图像进行缩放,以使同一静态对象在第一拍摄背景和第二拍摄背景中的大小一致。
终端对第一图像或第一预览图像进行缩放的过程中,对第一被拍摄主体的图像的轮廓/半透明图像进行了缩放。后续,终端可以基于第一被拍摄主体的图像在第二拍摄背景的图像中的位置信息,将缩放后的第一被拍摄主体的图像的轮廓/半透明图像显示在第一预览界面。
可选的,终端可以在第一预览界面中显示用于指示“第二拍摄背景的图像与第一拍摄背景的图像之间的重合度”的信息。例如,直接显示该重合度是70%,或者,显示重合度大于等于预设重合度等。这样,用户可以获知第二拍摄背景的图像与第一拍摄背景的图像之间的重合度信息,是否满足图像融合需求,从而提升用户体验。
如图5c所示,为本申请实施例提供的另一种第一预览图像的示意图。图5c是基于图5b进行绘制的,并且,在图5b所示的第一预览界面的基础之上,图5c中所示的第一预览界面还包括提示框407,该提示框407中显示有:第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度。
S103:终端保存第一预览图像。
例如,终端可以在确定第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度时,自动保存第一预览图像。
又如,终端可以在用户的指示下,如用户点击第一预览界面中的“拍照按键”后,或用户语音指示下等方式下,终端保存第一预览图像。例如,基于图5c,用户可以基于提示框407的提示,点击第一预览界面中的“拍照按键”,响应于该点击操作,终端保存第一预览图像。
需要说明的是,S103是可选的步骤。
S104:终端基于第一图像和第一预览图像,得到目标图像。目标图像包括第一被拍摄主体的图像和第二被拍摄主体的图像。另外,目标图像还包括目标拍摄背景的图像。
目标图像即为上述多个被拍摄主体的合影。可选的,终端显示目标图像。
如图7所示,为本申请实施例提供的一种目标图像的示意图。图7是基于图4和图5a(或图5b或图5c)进行绘制的。图7所示的目标图像中包含第一被拍摄主体的图像401、第二被拍摄主体的图像405和目标拍摄背景的图像。其中,目标拍摄背景的图像包括:“+”402、“=”403和“心形”404。
可选的,终端融合图像A和图像B,得到目标图像。其中,图像A可以是第一图像,或者是对第一图像进行处理(如图像裁剪、缩放等处理)后得到的图像。图像B可以是是第一预览图像,或者对第一预览图像进行处理(如图像裁剪、缩放等处理后)得到的图像。
基于此,上述S104可以包括以下步骤21-22:
步骤21:终端将图像A和图像B对齐。
可以理解的是,在执行上述步骤13的情况下,终端可以不执行步骤21。
步骤22:终端融合对齐后的图像A和图像B。具体可以通过以下方式之一实现:
方式1:终端提取图像A中的第一被拍摄主体的图像,并将第一被拍摄主体的图像与图像B进行融合,得到目标图像。
其中,第一被拍摄主体的图像在图像A的拍摄背景的图像中的位置与第一被拍摄拍摄主体的图像在目标图像的拍摄背景的图像中的位置一致。
这里的位置一致,是指相对位置一致。例如,第一被拍摄主体的图像与图像A的拍摄背景的图像中的某一静态对象的图像之间的相对位置,与,第一被拍摄主体的图像B的拍摄背景的图像中的该静态对象的图像之间的相对位置相同(或者之差在预设范围内)。
基于方式1,目标图像中的目标拍摄背景的图像,具体是:图像B中的拍摄背景图像中除“被第一被拍摄主体的图像遮挡的背景图像”之外的图像。
如图8a所示,为本申请实施例基于该方式提供的一种融合方法的过程示意图。图像A中矩形501中的拍摄背景的图像与图像B中的矩形502中的拍摄背景的图像相同。目标图像中的矩形503中的拍摄背景的图像是:图像B中的矩形502中的拍摄背景的图像中、除第一被拍摄主体的图像遮挡的背景图像之外的图像。
可选的,提取图像A中的第一被拍摄主体的图像,包括:基于第二拍摄背景的图像对图像A进行图像分割,得到第一被拍摄主体的图像。
如图8b所示,为本申请实施例提供的一种提取第一被拍摄主体的图像的过程示意图。其中,图8b中是以图像A是第一图像为例进行说明的。将第一图像和第二拍摄背景的图像输入到图像分割网路中,得到第一被拍摄主体的图像401。图像分割网络的工作原理如图8b所示。具体的:参考第二拍摄背景的图像,对第一图像进行图像分割。
由于第二拍摄背景的图像是已知的,并且,第一图像中的拍摄背景的图像(即第一拍摄背景的图像)与第二拍摄背景的图像中的部分/全部是重合(或相同)的,因此,在对第一图像进行图像分割时,对于二者重合部分中的每个像素来说,终端可以直接基于该像素是第二拍摄背景的图像中的像素,从而确定该像素是第一拍摄背景的图像中的像素,而非是第一被拍摄主体的图像中的像素。尤其对于第一被拍摄主体的图像与第一拍摄背景的图像的交界处的像素来说,终端可以参考第二拍摄背景与第一拍摄背景的重合关系,更准确地获知该像素是第一拍摄背景的图像中的像素,还是第一被拍摄主体的图像中的像素,从而提高提取第一被拍摄主体的准确性。
该图像分割网络中同一标号的部分表示第一拍摄背景和第二拍摄背景中同一对象的像素。例如,701部分、702部分和703部分可以分别表示这两个拍摄背景中的“+”402的像素、“=”403的像素和“心形”405的像素。另外,704部分、705部分可以分别表示第一图像和第二图像中不同的对象。706部分表示基于704部分和705部分确定的部分。
方式2:终端提取图像B中的第二被拍摄主体的图像,并将第二被拍摄主体的图像,与图像A进行融合,得到目标图像。
其中,第二被拍摄主体的图像在图像B的拍摄背景的图像中的位置与第二被拍摄主体的图像在目标图像的拍摄背景的图像中的位置一致。
这里的位置一致,是指相对位置一致。例如,第二被拍摄主体的图像与图像B的拍摄背景的图像中的某一静态对象的图像之间的相对位置,与,第二被拍摄主体的图像A的拍摄背景的图像中的该静态对象的图像之间的相对位置相同(或者之差在预设范围内)。
基于方式2,目标图像中的目标拍摄背景的图像,具体是:图像A中的拍摄背景图像中除“第二被拍摄主体的图像遮挡的背景图像”之外的图像。
如图8c所示,为本申请实施例基于该方式提供的一种融合方法的过程示意图。图像A中矩形501中的拍摄背景的图像与图像B中的矩形502中的拍摄背景的图像一致。目标图像中的矩形503中的拍摄背景的图像是:图像A中的矩形501中的拍摄背景的图像中、除第二被拍摄主体的图像遮挡的背景图像之外的图像。
可选的,提取图像B中的第二被拍摄主体的图像,包括:基于第一拍摄背景的图像对图像B进行图像分割,得到第二被拍摄主体的图像。其具体示例可以参考图8b,此处不再赘述。
需要说明的是,本申请实施例对选择使用上述方式1还是方式2不进行限定。可选的,如果第一被拍摄主体的数量小于第二被拍摄主体的数量,可以选择上述方式1。如果第一被拍摄主体的数量大于第二被拍摄主体的数量,可以选择上述方式2。这样,有助于提高提取被拍摄主体的图像的精确度,从而提高融合的精确度。
本申请实施例提供的拍摄方法,在用户有对多个被拍摄主体进行合影的需求时, 终端将其中一部分被拍摄主体作为第一被拍摄主体,获取到一帧图像;另一部分被拍摄主体作为第二被拍摄主体,拍摄得到另一帧图像。然后基于这两帧图像,获取包含第一被拍摄主体的图像和第二被拍摄主体的图像的目标图像,从而实现该多个被拍摄主体合影。与现有技术相比,不需要借助第三方(如路人)帮助,因此实现方便。另外,相比借助第三方帮助的技术方案,本申请实施例提供的技术方案,更能够提高用户对合影结果(即目标图像)的满意度,从而提升用户体验。
需要说明的是,上文中均是以第一图像和第一预览图像得到目标图像为例进行说明的。实际实现时,待合影的多人可以分两次以上进行拍照,终端将所有次拍照得到的图像进行融合,得到目标图像。
如图9所示,为本申请实施例提供的技术方案的一种应用场景的过程示意图。具体的,针对需要拍照的群体(包括被拍摄主体A、B和C)来说,先由被拍摄主体A给被拍摄主体B和C进行拍照(即第一次拍照),得到第一图像。再由被拍摄主体B或被拍摄主体C(图8中是以被拍摄主体B为例进行说明的)给被拍摄主体A进行拍照(即第二次拍照),得到第一预览界面。其中,第一预览界面包括第一预览图像,以及被拍摄主体B和C的图像的轮廓。第一预览界面包括被拍摄主体A的图像。接着,终端对第一图像和第一预览图像进行融合,得到目标图像(即合影照片)。
如图10所示,为本申请实施例提供的另一种拍摄方法的流程图。图10所示的方法应用于终端拍摄多个被拍摄主体,该多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体。该方法包括以下步骤:
S201:可以参考上述S101,当然不限于此。
S202:终端显示第二预览界面,第二预览界面包括第二预览图像和第一信息。其中,第二预览图像包括第三拍摄背景的图像和第二被拍摄主体的图像。第一信息用于指示调整终端的当前预览图像中的拍摄背景的图像。
具体的,终端可以在确定第三拍摄背景的图像和第一拍摄背景的图像之间的重合度小于预设重合度的情况下,显示第二预览图像。这是在考虑到“该情况下,需要调整终端的当前预览图像中的拍摄背景的图像,以使得当前预览界面的拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度”而提出的技术方案。
其中,第二预览图像可以是终端的预览视频流中的任意一个满足“拍摄背景的图像与第一拍摄背景的图像之间的重合度小于预设重合度”的预览图像。
可选的,第一信息具体用于指示以下至少一种:
1)、第三拍摄背景的图像与第一拍摄背景的图像之间的重合度小于预设重合度。
本申请实施例对提示该重合度小于预设重合度的具体实现方式不进行限定,例如,可以是文字提示、图片提示、高亮显示等任意一种或多种方式的结合。
如图11a所示,为本申请实施例提供的一种第二预览界面的示意图。该第二预览界面包括第二预览图像和第一信息(如提示框408),第二预览图像包括第二被拍摄主体的图像405和第三拍摄背景的图像,第三拍摄背景包括:“+”402的一部分、“=”403和“心形”404。提示框408中包括文字“第三拍摄背景的图像与第一拍摄背景的图像之间的重合度小于预设重合度”。
第二预览界面除了包含第二预览图像和第二信息之外,还可以包含终端的相机应 用界面中的一些控件,如图11a中的“夜景”“人物”“拍照”“录像”“拍照按键”等控件。
2)、终端的目标位置。
其中,终端的目标位置,是指终端移动后的位置。用户按照第一信息移动终端之后,有助于提高当前预览界面的拍摄背景的图像与第一拍摄背景的图像之间的重合度。
本申请实施例对目标位置的确定方式,以及目标位置的具体表现形式不进行限定。例如,目标位置可以是“终端向某个方位移动(如平移、旋转、前后移动等)”、“终端向某个方位移动多少米”或“将终端移动至某个位置”等。其中,这里的前后左右可以是相对于拍摄过程中手持终端的用户的,当然具体实现时不现于此。
如图11b所示,为本申请实施例提供的一种第二预览界面的示意图。该第二预览界面包括第二预览图像和第一信息(如提示框409)。图11b中的第二预览图像与图11a中的第二预览图像相同。提示框409包括文字“向左移动终端”。其中,这里的“左”是相对于拍摄过程中手持终端的用户的。
具体的:首先,终端获取第一图像和第二预览图像中的特征点。其次,终端去除第一图像中第一被拍摄主体的特征点,得到第一拍摄背景的图像的特征点;以及,去除第二预览图像中的第二被拍摄主体的特征点,得到第三拍摄背景的图像的特征点。接着,终端基于第一拍摄背景的图像的特征点和第三拍摄背景的图像的特征点,计算出第一拍摄背景的图像与第三拍摄背景的图像之间的单应性矩阵。其中,单应性(homography)变换,用来描述物体在世界坐标系和像素坐标系之间的位置映射关系,对应的变换矩阵称为单应性矩阵。最后,终端基于该单应性矩阵,确定终端的目标位置。
3)、第三拍摄背景的图像与第一拍摄背景的图像之间的重合度。
例如,第一信息为:第三拍摄背景的图像与第一拍摄背景的图像之间的重合度是50%等。对于用户来说,可以基于该重合度调整终端的位置,以调整当前预览图像的背景图像。
S203~S205:可以参考上述S102~S104,当然不限于此。
本实施例提供的拍摄方法,终端基于当前预览图像中的拍摄背景的图像与第一图像的拍摄背景的图像之间的重合度,指导用户调整终端的位置。由于终端的位置调整之后,终端的当前预览图像的拍摄背景会随之改变,因此,有助于提高当前预览界面的拍摄背景的图像与第一拍摄背景的图像之间的重合度,从而提高融合效果,以及用户对目标图像的满意程度。
以下,说明本申请实施例提供的终端实时获取第一图像的方法。
如图12所示,为本申请实施例提供的一种终端实时获取第一图像的方法流程图。该方法包括:
S101a、终端输出第三信息,第三信息用于指示拍摄第一图像的用户。其中,拍摄第一图像的用户是第二被拍摄主体。如果第二被拍摄主体有多个,则拍摄第一图像的用户可以是其中一个第二被拍摄主体。
例如,终端在显示屏上显示第三信息,第三信息可以是文字、图片、特殊标记(如第二被拍摄主体所在位置的边框按照区别于其他被拍摄主体所在位置的边框显示,如 高亮显示、加粗显示、不同颜色显示等)等形式。
又如,终端以语音信息输出第三信息。当然具体实现时不限于此。
本申请实施例对S101a的具体实现方式不进行限定。以下列举几种实现方式:
方式1、终端显示目标拍摄模版,目标拍摄模版用于指示多个被拍摄主体之间的位置关系。然后,终端基于目标拍摄模版,输出第三信息。该方式中,终端基于目标拍摄模版确定第三信息,目标拍摄模版选自拍摄模版库中的多个拍摄模版。该拍摄模版库可以复用任何一种传统技术中的拍摄模版库,因此,本技术方案的适用范围广。
拍摄模版,也可以被称作拍摄模版图像。拍摄模版可以指示被拍摄主体的总数、被拍摄主体之间的位置关系等。
可选的,拍摄模版还可以用于指示被拍摄主体的姿势(pose)。其中,本申请实施例中所描述的“姿势”可以是指人身体的整体姿势(如站姿、坐姿等),也可以是指人身体的局部姿势(如手势等)。
可选的,拍摄模版中的人像个数是基于被拍摄主体的个数(即合影人数,即第一被拍摄主体和第二被拍摄主体的人数之和)确定的,例如,拍摄模版中的人像个数与基于被拍摄主体的个数相同。
可选的,拍摄模版可以与“被拍摄主体的人物关系(如情侣关系、闺蜜关系、家人关系等)”存在对应关系。也就是说,被拍摄主体的人物关系不同时,目标拍摄模版可以不同。
可选的,拍摄模版可以与拍摄场景存在对应关系。例如,每个拍摄场景对应一个或多个拍摄模版。其中,拍摄场景可以例如但不限于:夕阳场景、海边场景、草地场景、马路场景、墙边场景、阶梯场景、栏杆场景、室内场景、或餐桌场景等中的一种或多种。
在一种实现方式中,终端中预存多个拍摄模版,该多个拍摄模版可以是终端从网络设备上预先下载的,且这些拍摄模版是可以更新的。该情况下,终端可以在打开相机应用之后,基于预览图像获取当前拍摄场景,或者在用户的指示下获取当前拍摄场景(例如,终端显示多种拍摄场景后,由用户选中其中一个拍照场景作为当前拍照场景等);然后基于当前拍摄场景从预存的多个拍摄模版中选择与当前拍摄场景对应的一个拍摄模版,并将所选择的拍摄模版作为目标拍摄模版,在显示屏上显示该目标拍摄模版。
在另一种实现方式中,终端可以在打开相机应用之后,将预览图像发送给网络设备。然后,由网络设备基于预览图像获取当前拍摄场景,并基于当前拍摄场景从预存的多个拍摄模版中选择与当前拍摄场景对应的一个拍摄模版,将所选择的拍摄模版作为目标拍摄模版。接着,网络设备将该目标拍摄模版的信息发送给终端,该终端在显示屏上显示该目标拍摄模版。
终端基于目标拍摄模版,输出第三信息,具体可以通过以下方案1或方案2实现:
方案1:终端基于目标拍摄模版和人机交互操作,输出第三信息。
具体的,终端接收第一操作,第一操作用于选择目标拍摄模版中拍摄第一图像的用户;响应于第一操作,输出第三信息。
在一个示例中,终端的显示屏上显示的目标拍摄模版如图13中的a图所示,该目 标拍摄模版是夕阳场景对应的拍摄模版。该目标拍摄模版中包括人像601和人像602,二者之间的位置关系,以及二者与背景之间的关系如图13中的a图所示。终端在显示目标拍摄模版之后,接收用户针对目标拍摄模版中的某一被拍摄主体所在的区域的第一操作(如触屏操作等),如图13中的b图所示,终端针对人像602所在的区域进行触屏操作。终端响应于第一操作,具体的,加粗显示该操作所针对的人像所在的边框,如图13中的c图所示。基于图13中的c图可知,拍摄第一图像的用户是位于加粗显示的边框中的人像所代表的用户。具体实现时,如果两个被拍摄主体需要按照如图13中的目标拍摄模版进行合影,则左侧被拍摄主体是第一被拍摄主体,右侧被拍摄主体是第二被拍摄主体,且第二被拍摄主体是拍摄第一图像的用户。
终端通过人机交互确定拍摄第一图像的用户,有助于提高用户的参与感,增强用户体验。
方案2:终端基于目标拍摄模版,自动输出第三信息。其中,拍摄第一图像的用户可以是以下任一种:
1)、拍摄第一图像的用户是目标拍摄模版中的与其他人像之间的重合范围小于或等于预设重合范围(如与其他人像不重合)的人像所代表的用户。
由于与其他人像无重合或者重合较小的人像,在与其他人像进行融合时,比较容易做图像融合,并且,对该人像在不同图像的背景图像中的位置之间的偏差的宽容度较大,因此,选择其所代表的用户作为拍摄第一图像的用户(即该用户作为第二被拍摄主体),有助于提高目标图像的融合效果,从而提高用户对目标图像的满意度。
在一个示例中,目标拍摄模版包含多个人像,如图14中的a图所示。其中,目标拍摄模版中的人像的可视化的方式可以是多样的,例如,可以是卡通、简笔画等。
该情况下,终端可以采用图像实例分割算法,确定拍摄第一图像的用户。一种图像实例分割的示意图如图14所示。具体的:
首先,终端将图14中的a图所示的目标拍摄模版输入至实例分割算法模型中,该模型的输出是该模版中的各个人像的掩膜,如图14中的b图所示。每个人像的掩膜是一个连通区域。
其次,终端获取图14中的b图中的每两个人像的掩膜之间的相接程度。如果某个人像的掩膜与大于等于预设数量个人像的掩膜之间的相接程度均小于某个阈值,则确定该人像与其他人像之间的重合范围小于或等于预设重合范围,并将该人像所代表的用户作为拍摄第一图像的用户。
在另一个示例中,目标拍摄模版包含多个人像的掩膜,如图14中的b图所示。该情况下,终端可以通过获取每两个人像的掩膜之间的相接程度,并基于此确定拍摄第一图像的用户,具体方法可以参考上文,此处不再赘述。
2)、拍摄第一图像的用户是目标拍摄模版中距离终端的摄像头最近的人像所代表的用户。
由于距离终端的摄像头最近的人像没有其他人像的遮挡,在与其他人像进行融合时,比较容易做图像融合,并且,对该人像在不同图像的背景图像中的位置之间的偏差的宽容度较大,因此,将该人像所代表的用户作为拍摄第一图像的用户(即将该用户作为第二被拍摄主体),有助于提高目标图像的融合效果,从而提高用户对目标图 像的满意度。
可选的,终端可以通过如下步骤实现2)中的技术方案:
首先,终端采用图像深度估计算法,得到目标拍摄模版中的各人像的深度估计结果。例如,图15中的a图为一种目标拍摄模版的示意图,图15中的b图是终端得到的图15中的a图所示的目标拍摄模版中的各人像的深度估计结果。
其次,终端采用图像实例分割算法,得到目标拍摄模版中的各人像的掩膜。例如,图15中的c图是终端得到的图15中的a图所示的目标拍摄模版中的各人像的掩膜。
接着,终端获取的每个人像的掩膜与该人像的深度估计结果之间的对应关系。例如,图15中的b图中矩形框标记的人像的深度估计结果,与图15中的c图中矩形框标记的人像的掩膜之间存在对应关系。相应的,该人像是图15中的a图中矩形框标记的人像。
最后,终端基于该对应关系,确定目标拍摄模版中的每个人像的深度值,从而基于每个人像的深度值确定每个人像所代表的用户与终端的摄像头之间的距离。
3)、拍摄第一图像的用户是目标拍摄模版中最外侧的人像所代表的用户,或者与其他人像之间的距离大于预设距离的人像所代表的用户。
与其他人像之间的距离大于预设距离的人像,可以理解为:偏离其他人像的人像。如图16中的a图所示,为该场景下的一种目标拍摄模版的示意图。在该目标拍摄模版中,矩形框标记的人像远离其他人像。
由于目标拍摄模版中最外侧的人像或者偏离其他人像的人像所代表的用户作为拍摄第一图像的用户(即第二拍摄主体)时,在图像融合时,对该用户的图像在目标图像中的位置的偏差的宽容度更高,因此,融合后得到的目标图像更容易提高用户的满意度。
具体的,终端可以基于上述实例分割方法,获取目标拍摄模版中每个人像的掩膜,并基于每两个人像的掩膜之间的距离,确定这两个人像之间的距离,从而确定拍摄第一图像的用户。例如,图16中的b图是基于图16中的a图得到的目标拍摄模版中的人像的掩膜。
需要说明的是,上说所列举的拍摄第一图像的用户的确定方式,均可以应用于“将第二被拍摄主体融合到第一图像(可以替换为上述图像A)中,得到目标图像”的场景中。这是在考虑到“实际应用时,基于大众的拍照习惯,多人合影时,通常仅会由其中一人作为第二被拍摄主体,其余人均作为第一被拍摄主体;也就是说,通常第二被拍摄主体的人数小于或等于第一被拍摄主体。而该情况下,将第二被拍摄主体融合到第一图像中,会使得融合效果更好”而提出的技术方案。
对于在“将第一被拍摄主体融合到第一预览图像(可以替换为上述图像B)中,得到目标图像”的场景下,如何确定拍摄第一图像的用户,可以基于上述思想得到,此处不再赘述。
方式2、终端显示目标拍摄模版,目标拍摄模版用于指示该多个被拍摄主体之间的位置关系,以及第三信息。
其中,终端确定目标拍摄模版的方法可以参考上述方式1中的相关描述,此处不再赘述。
该方式2下,目标拍摄模版除了方式1中所描述的功能之外,本身还指示了第三信息。例如,目标拍摄模版选自拍摄模版库中的多个拍摄模版,每个拍摄模版中预定义了拍摄第一图像的用户(具体是预定义了拍摄第一用户的在该拍摄模版中的位置等)。这样,终端在确定了显示目标拍摄模版之后,不需要再单独确定并显示第三信息,节省了终端的计算资源。
可选的,在该方式下,终端显示目标拍摄模版之后,可以通过人机交互,在用户的指示下,重新确定第三信息。也就是说,用户可以不使用目标拍摄模版所推荐的被拍摄主体作为拍摄第一图像的用户,而是由用户来最终指定目标拍摄模版中拍摄第一图像的用户。
如图17所示,为本申请实施例提供的一种目标拍摄模版的示意图。该目标拍摄模版是夕阳场景对应的拍摄模版。该目标拍摄包含人像601和人像602,二者之间的位置关系,以及二者与背景之间的关系如图17所示。另外,该目标拍摄模版中还通过加粗显示人像602所在区域的边框(即第三信息)来指示人像602所代表的用户是拍摄第一图像的用户。
S101b、终端显示第三预览图像,第三预览图像包括第一拍摄背景的图像和第一被拍摄主体的图像。
S101c、终端保存第三预览图像,并将第三预览图像确定为第一图像,或者将第三预览图像经处理(如缩放、裁剪等处理)后得到的图像确定为第一图像。
例如,终端自动保存预览图像,或者在用户的指示下(如用户点击拍照按键后)保存预览图像。
本实施例提供的技术方案提供了在多人合影的场景中,终端主动向用户推荐拍摄第一图像的用户,这样,有助于提升用户的体验感。并且,在终端所使用的推荐规则合理的情况下,有助于提升第一图像与第一预览图像的融合效果,从而提高用户满意度。
以下,说明本申请实施例提供的技术方案的一个应用示例:
如图18所示,为本申请实施例提供的技术方案的一个应用示例的方法流程图。该方法可以包括如下步骤:
S301:用户打开终端中的相机应用。相应的,终端在显示屏上显示该相机应用的用户界面,该用户界面中包含“多人合影模式”控件。
S302:用户点击“多人合影模式”控件,响应于该点击操作,终端在显示屏上显示多种候选合影模式,如情侣合影模式、闺蜜合影模式、朋友合影模式、家人合影模式、大合影模式等。可选的,用户界面中还可以表示合影人数的输入框。用户可以向该输入框中输入合影人数,以供终端推荐目标拍摄模版时使用。
S303:用户从多种候选模式中选择目标候选模式。
S304:终端采集当前拍摄场景的预览图像。
S305:响应于该输入操作以及该预览图像,终端显示目标拍摄模版。目标拍摄模版中包含用于指示拍摄第一图像的用户的信息。其中,该目标拍摄模版是当前拍摄场景对应的拍摄模版,该目标拍摄模版中的人像个数与待合影人数相同,并且,目标拍摄模版与“待合影的多人的人物关系”之间存在对应关系。
如图19所示,为步骤S301-S305的过程的示意图。
S306:用户将目标拍摄模版指示的拍摄第一图像的用户作为第二被拍摄主体。
S307:第二被拍摄主体手持终端对剩余的被拍摄主体(即第一被拍摄主体)进行拍照。相应的,终端获得第一图像。其中,终端获得第一图像的相关过程的描述可以参考上文。
S308:其中一个第一被拍摄主体手持终端对第二被拍摄主体进行拍照。相应的,终端获得第一预览图像。其中,终端获得第一预览图像的相关过程可以参考上文。
S309:终端基于第一图像和第一预览图像,得到目标图像。具体实现过程可以参考上文。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图20所示,为本申请实施例提供的一种终端的结构示意图。图20所示的终端200可以用于实现上述方法实施例中终端的功能,因此也能实现上述方法实施例所具备的有益效果。在本申请的实施例中,该终端可以是如图1所示的终端100。
终端200包括:处理单元201和显示单元202。终端200用于拍摄多个被拍摄主体,多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体。处理单元201,用于获取第一图像,第一图像包括第一拍摄背景的图像和第一被拍摄主体的图像。显示单元202,用于显示第一预览界面,第一预览界面包括第一预览图像;其中,第一预览图像包括第二拍摄背景的图像和第二被拍摄主体的图像;第二拍摄背景的图像与第一拍摄背景的图像之间的重合度大于等于预设重合度。处理单元201还用于,基于第一图像和第一预览图像,得到目标图像;目标图像包括第一被拍摄主体的图像和第二被拍摄主体的图像。例如,结合图3,处理单元201可以用于执行S101和S104,显示单元202可以用于执行S102。
可选的,显示单元202还用于,在显示第一预览界面之前,显示第二预览界面,第二预览界面包括第二预览图像和第一信息;其中,第二预览图像包括第三拍摄背景的图像和第二被拍摄主体的图像;第一信息用于指示调整终端的当前预览图像中的拍摄背景的图像。例如,结合图10,显示单元202可以用于执行S202。
可选的,第一信息具体用于指示以下至少一种:第三拍摄背景的图像与第一拍摄背景的图像之间的重合度小于预设重合度;或者,终端的目标位置。
可选的,第一预览界面还包括:第二信息,第二信息用于指示第一被拍摄主体的图像在第二拍摄背景的图像中的位置、姿势、或大小中的至少一种。
可选的,第二信息具体包括:第一被拍摄主体的图像的轮廓;或者,第一被拍摄主体的图像的半透明图像。
可选的,终端200还包括:输出单元203,用于输出第三信息,第三信息用于指示第二被拍摄主体是拍摄第一图像的用户。其中,输出单元203可以是显示单元202,也可以是其他输出单元,如音频输出单元等。显示单元202还用于,在输出单元203输出第三信息之后,显示第三预览图像,第三预览图像包括第一拍摄背景的图像和第一被拍摄主体的图像。处理单元201具体用于:将第三预览图像确定为第一图像,或者将第三预览图像经处理后得到的图像确定为第一图像。例如,结合图12,输出单元203可以用于执行S101a,显示单元202可以用于执行S101b。
可选的,输出单元203具体用于:显示目标拍摄模版,目标拍摄模版用于指示多个被拍摄主体之间的位置关系,以及第三信息。该情况下,输出单元203是显示单元202。
可选的,显示单元202还用于,显示目标拍摄模版,目标拍摄模版用于指示多个被拍摄主体之间的位置关系。输出单元203具体用于,基于目标拍摄模版,输出第三信息。
可选的,终端200还包括:输入单元204,用于接收第一操作;第一操作用于选择目标拍摄模版中拍摄第一图像的用户。其中,该输入单元204可以是显示单元202,也可以是其他输入单元,如音频输入单元等。输出单元203具体用于:响应于第一操作,输出第三信息。
可选的,目标拍摄模版还用于指示多个被拍摄主体的姿势。
可选的,拍摄第一图像的用户是多个被拍摄主体中与其他被拍摄主体的重合范围小于等于预设重合范围的被拍摄主体。
可选的,拍摄第一图像的用户是多个被拍摄主体中距离终端最近的被拍摄主体。
可选的,拍摄第一图像的用户与多个被拍摄主体中的与其他被拍摄主体之间的距离大于预设距离的被拍摄主体。
可选的,处理单元201具体用于:基于第二拍摄背景的图像对第一图像进行图像分割,得到第一被拍摄主体的图像;基于第一被拍摄主体的图像与第一预览图像,得到目标图像。
可选的,处理单元201具体用于:基于第一拍摄背景的图像对第一预览图像进行图像分割,得到第二被拍摄主体的图像;基于第二被拍摄主体的图像与第一预览图像,得到目标图像。
关于上述可选方式的具体描述可以参见前述的方法实施例,此处不再赘述。此外,上述提供的任一种终端200的解释以及有益效果的描述均可参考上述对应的方法实施例,不再赘述。
作为示例,结合图1,上述显示单元202的功能可以通过显示屏194实现。上述处理单元201的功能,均可以通过处理器110调用存储内部存储器121中的程度代码实现。上述输出单元203可以通过显示屏114或扬声器170A等用于输出信息的器件实 现。上述输入单元204可以通过显示屏、麦克风170C等用于输入信息的器件实现。
本申请另一实施例还提供一种终端,包括:处理器、存储器和显示屏,显示屏用于显示图像,存储器用于存储计算机程序和指令,处理器用于调用计算机程序和指令,与显示屏协同执行上述方法实施例所示的方法流程中该终端执行的相应步骤。
本申请另一实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在终端执行上述方法实施例所示的方法流程中该终端执行的各个步骤。
在一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。
应该理解,这里描述的布置仅仅是用于示例的目的。因而,本领域技术人员将理解,其它布置和其它元素(例如,机器、接口、功能、顺序、和功能组等等)能够被取而代之地使用,并且一些元素可以根据所期望的结果而一并省略。另外,所描述的元素中的许多是可以被实现为离散的或者分布式的组件的、或者以任何适当的组合和位置来结合其它组件实施的功能实体。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (25)

  1. 一种拍摄方法,其特征在于,应用于终端,所述终端用于拍摄多个被拍摄主体,所述多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体,所述方法包括:
    获取第一图像,所述第一图像包括第一拍摄背景的图像和所述第一被拍摄主体的图像;
    显示第一预览界面,所述第一预览界面包括第一预览图像;其中,所述第一预览图像包括第二拍摄背景的图像和所述第二被拍摄主体的图像;所述第二拍摄背景的图像与所述第一拍摄背景的图像之间的重合度大于等于预设重合度;
    基于所述第一图像和所述第一预览图像,得到目标图像;所述目标图像包括所述第一被拍摄主体的图像和所述第二被拍摄主体的图像。
  2. 根据权利要求1所述的方法,其特征在于,在所述显示第一预览界面之前,所述方法还包括:
    显示第二预览界面,所述第二预览界面包括第二预览图像和第一信息;其中,所述第二预览图像包括第三拍摄背景的图像和所述第二被拍摄主体的图像;所述第一信息用于指示调整所述终端的当前预览图像中的拍摄背景的图像。
  3. 根据权利要求2所述的方法,其特征在于,所述第一信息具体用于指示以下至少一种:
    所述第三拍摄背景的图像与所述第一拍摄背景的图像之间的重合度小于所述预设重合度;
    或者,所述终端的目标位置。
  4. 根据权利要求1至3任一项所述的方法,其特征在于,所述第一预览界面还包括:
    第二信息,所述第二信息用于指示所述第一被拍摄主体的图像在所述第二拍摄背景的图像中的位置、姿势、或大小中的至少一种。
  5. 根据权利要求4所述的方法,其特征在于,所述第二信息具体包括:
    所述第一被拍摄主体的图像的轮廓;
    或者,所述第一被拍摄主体的图像的半透明图像。
  6. 根据权利要求1至5任一项所述的方法,其特征在于,所述获取第一图像,包括:
    输出第三信息,所述第三信息用于指示所述第二被拍摄主体是拍摄所述第一图像的用户;
    在输出所述第三信息之后,显示第三预览图像,所述第三预览图像包括所述第一拍摄背景的图像和所述第一被拍摄主体的图像;
    将所述第三预览图像确定为所述第一图像,或者将所述第三预览图像经处理后得到的图像确定为所述第一图像。
  7. 根据权利要求6所述的方法,其特征在于,所述输出第三信息,包括:
    显示目标拍摄模版,所述目标拍摄模版用于指示所述多个被拍摄主体之间的位置关系,以及所述第三信息。
  8. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    显示目标拍摄模版,所述目标拍摄模版用于指示所述多个被拍摄主体之间的位置关系;
    所述输出第三信息,包括:
    基于所述目标拍摄模版,输出所述第三信息。
  9. 根据权利要求8所述的方法,其特征在于,所述基于所述目标拍摄模版,输出所述第三信息,包括:
    接收第一操作;所述第一操作用于选择所述目标拍摄模版中拍摄所述第一图像的用户;
    响应于所述第一操作,输出所述第三信息。
  10. 根据权利要求7至9任一项所述的方法,其特征在于,所述目标拍摄模版还用于指示所述多个被拍摄主体的姿势。
  11. 根据权利要求1至10任一项所述的方法,其特征在于,
    拍摄所述第一图像的用户是所述多个被拍摄主体中与其他被拍摄主体的重合范围小于等于预设重合范围的被拍摄主体;
    拍摄所述第一图像的用户是所述多个被拍摄主体中距离所述终端最近的被拍摄主体;
    或者,拍摄所述第一图像的用户与所述多个被拍摄主体中的与其他被拍摄主体之间的距离大于预设距离的被拍摄主体。
  12. 根据权利要求1至11任一项所述的方法,其特征在于,所述基于所述第一图像和所述第一预览图像,得到目标图像,包括:
    基于所述第二拍摄背景的图像对所述第一图像进行图像分割,得到所述第一被拍摄主体的图像;基于所述第一被拍摄主体的图像与所述第一预览图像,得到所述目标图像;
    或者,基于所述第一拍摄背景的图像对所述第一预览图像进行图像分割,得到所述第二被拍摄主体的图像;基于所述第二被拍摄主体的图像与所述第一预览图像,得到所述目标图像。
  13. 一种终端,其特征在于,用于拍摄多个被拍摄主体,所述多个被拍摄主体包括第一被拍摄主体和第二被拍摄主体,所述终端包括:
    处理单元,用于获取第一图像,所述第一图像包括第一拍摄背景的图像和所述第一被拍摄主体的图像;
    显示单元,用于显示第一预览界面,所述第一预览界面包括第一预览图像;其中,所述第一预览图像包括第二拍摄背景的图像和所述第二被拍摄主体的图像;所述第二拍摄背景的图像与所述第一拍摄背景的图像之间的重合度大于等于预设重合度;
    所述处理单元还用于,基于所述第一图像和所述第一预览图像,得到目标图像;所述目标图像包括所述第一被拍摄主体的图像和所述第二被拍摄主体的图像。
  14. 根据权利要求13所述的终端,其特征在于,
    所述显示单元还用于,在所述显示第一预览界面之前,显示第二预览界面,所述第二预览界面包括第二预览图像和第一信息;其中,所述第二预览图像包括第三拍摄背景的图像和所述第二被拍摄主体的图像;所述第一信息用于指示调整所述终端的当 前预览图像中的拍摄背景的图像。
  15. 根据权利要求14所述的终端,其特征在于,所述第一信息具体用于指示以下至少一种:
    所述第三拍摄背景的图像与所述第一拍摄背景的图像之间的重合度小于所述预设重合度;
    或者,所述终端的目标位置。
  16. 根据权利要求13至15任一项所述的终端,其特征在于,所述第一预览界面还包括:
    第二信息,所述第二信息用于指示所述第一被拍摄主体的图像在所述第二拍摄背景的图像中的位置、姿势、或大小中的至少一种。
  17. 根据权利要求16所述的终端,其特征在于,所述第二信息具体包括:
    所述第一被拍摄主体的图像的轮廓;
    或者,所述第一被拍摄主体的图像的半透明图像。
  18. 根据权利要求13至17任一项所述的终端,其特征在于,所述终端还包括:
    输出单元,用于输出第三信息,所述第三信息用于指示所述第二被拍摄主体是拍摄所述第一图像的用户;
    所述显示单元还用于,在所述输出单元输出所述第三信息之后,显示第三预览图像,所述第三预览图像包括所述第一拍摄背景的图像和所述第一被拍摄主体的图像;
    所述处理单元具体用于:将所述第三预览图像确定为所述第一图像,或者将所述第三预览图像经处理后得到的图像确定为所述第一图像。
  19. 根据权利要求18所述的终端,其特征在于,所述输出单元具体用于:
    显示目标拍摄模版,所述目标拍摄模版用于指示所述多个被拍摄主体之间的位置关系,以及所述第三信息。
  20. 根据权利要求18所述的终端,其特征在于,
    所述显示单元还用于,显示目标拍摄模版,所述目标拍摄模版用于指示所述多个被拍摄主体之间的位置关系;
    所述输出单元具体用于,基于所述目标拍摄模版,输出所述第三信息。
  21. 根据权利要求20所述的终端,其特征在于,所述终端还包括:
    输入单元,用于接收第一操作;所述第一操作用于选择所述目标拍摄模版中拍摄所述第一图像的用户;
    所述输出单元具体用于:响应于所述第一操作,输出所述第三信息。
  22. 根据权利要求19至21任一项所述的终端,其特征在于,所述目标拍摄模版还用于指示所述多个被拍摄主体的姿势。
  23. 根据权利要求13至22任一项所述的终端,其特征在于,
    拍摄所述第一图像的用户是所述多个被拍摄主体中与其他被拍摄主体的重合范围小于等于预设重合范围的被拍摄主体;
    拍摄所述第一图像的用户是所述多个被拍摄主体中距离所述终端最近的被拍摄主体;
    或者,拍摄所述第一图像的用户与所述多个被拍摄主体中的与其他被拍摄主体之 间的距离大于预设距离的被拍摄主体。
  24. 根据权利要求13至23任一项所述的终端,其特征在于,所述处理单元具体用于:
    基于所述第二拍摄背景的图像对所述第一图像进行图像分割,得到所述第一被拍摄主体的图像;基于所述第一被拍摄主体的图像与所述第一预览图像,得到所述目标图像;
    或者,基于所述第一拍摄背景的图像对所述第一预览图像进行图像分割,得到所述第二被拍摄主体的图像;基于所述第二被拍摄主体的图像与所述第一预览图像,得到所述目标图像。
  25. 一种终端,其特征在于,包括:处理器、存储器和显示屏,所述显示屏用于显示图像,所述存储器用于存储计算机程序和指令,所述处理器用于调用所述计算机程序和指令,与所述显示屏协同执行如权利要求1-12中任一项所述的方法。
PCT/CN2021/103777 2020-09-17 2021-06-30 拍摄方法和装置 WO2022057384A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/184,773 US20230224574A1 (en) 2020-09-17 2023-03-16 Photographing method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010981549.9A CN114205512B (zh) 2020-09-17 2020-09-17 拍摄方法和装置
CN202010981549.9 2020-09-17

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/184,773 Continuation US20230224574A1 (en) 2020-09-17 2023-03-16 Photographing method and apparatus

Publications (1)

Publication Number Publication Date
WO2022057384A1 true WO2022057384A1 (zh) 2022-03-24

Family

ID=80644838

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/103777 WO2022057384A1 (zh) 2020-09-17 2021-06-30 拍摄方法和装置

Country Status (3)

Country Link
US (1) US20230224574A1 (zh)
CN (1) CN114205512B (zh)
WO (1) WO2022057384A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116471429A (zh) * 2023-06-20 2023-07-21 上海云梯信息科技有限公司 基于行为反馈的图像信息推送方法及实时视频传输系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115529413A (zh) * 2022-08-26 2022-12-27 华为技术有限公司 拍摄方法及相关装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104170371A (zh) * 2014-01-03 2014-11-26 华为终端有限公司 实现自助合影的方法和照相设备
US20150067554A1 (en) * 2013-09-02 2015-03-05 Samsung Electronics Co., Ltd. Method and electronic device for synthesizing image
CN105631804A (zh) * 2015-12-24 2016-06-01 小米科技有限责任公司 图片处理方法及装置
CN105744170A (zh) * 2016-03-30 2016-07-06 努比亚技术有限公司 一种照片拍摄装置和方法
CN105809618A (zh) * 2014-12-31 2016-07-27 华为终端(东莞)有限公司 一种图片处理方法及装置
US20180070025A1 (en) * 2015-03-26 2018-03-08 Sony Corporation Information processing device, information processing method, and program
US20180075590A1 (en) * 2015-03-26 2018-03-15 Sony Corporation Image processing system, image processing method, and program

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108777766B (zh) * 2018-08-10 2021-01-15 维沃移动通信有限公司 一种多人拍照方法、终端及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150067554A1 (en) * 2013-09-02 2015-03-05 Samsung Electronics Co., Ltd. Method and electronic device for synthesizing image
CN104170371A (zh) * 2014-01-03 2014-11-26 华为终端有限公司 实现自助合影的方法和照相设备
CN105809618A (zh) * 2014-12-31 2016-07-27 华为终端(东莞)有限公司 一种图片处理方法及装置
US20180070025A1 (en) * 2015-03-26 2018-03-08 Sony Corporation Information processing device, information processing method, and program
US20180075590A1 (en) * 2015-03-26 2018-03-15 Sony Corporation Image processing system, image processing method, and program
CN105631804A (zh) * 2015-12-24 2016-06-01 小米科技有限责任公司 图片处理方法及装置
CN105744170A (zh) * 2016-03-30 2016-07-06 努比亚技术有限公司 一种照片拍摄装置和方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116471429A (zh) * 2023-06-20 2023-07-21 上海云梯信息科技有限公司 基于行为反馈的图像信息推送方法及实时视频传输系统
CN116471429B (zh) * 2023-06-20 2023-08-25 上海云梯信息科技有限公司 基于行为反馈的图像信息推送方法及实时视频传输系统

Also Published As

Publication number Publication date
CN114205512B (zh) 2023-03-31
US20230224574A1 (en) 2023-07-13
CN114205512A (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
WO2021147482A1 (zh) 一种长焦拍摄的方法及电子设备
WO2021179773A1 (zh) 图像处理方法和装置
WO2021244295A1 (zh) 拍摄视频的方法和装置
KR20220080195A (ko) 촬영 방법 및 전자 장치
WO2021104485A1 (zh) 一种拍摄方法及电子设备
WO2021185250A1 (zh) 图像处理方法及装置
EP4199499A1 (en) Image capture method, graphical user interface, and electronic device
US20230421900A1 (en) Target User Focus Tracking Photographing Method, Electronic Device, and Storage Medium
US20230224574A1 (en) Photographing method and apparatus
CN111669462A (zh) 一种显示图像的方法及相关装置
CN112150499B (zh) 图像处理方法及相关装置
CN115689963B (zh) 一种图像处理方法及电子设备
WO2022206589A1 (zh) 一种图像处理方法以及相关设备
JP2023500656A (ja) 表示要素の表示方法及び電子機器
WO2023093169A1 (zh) 拍摄的方法和电子设备
CN114283195B (zh) 生成动态图像的方法、电子设备及可读存储介质
CN115115679A (zh) 一种图像配准方法及相关设备
EP4209996A1 (en) Target tracking method and electronic device
WO2024131765A1 (zh) 一种图像识别方法以及相关设备
US20230014272A1 (en) Image processing method and apparatus
CN113497888B (zh) 照片预览方法、电子设备和存储介质
CN115268727A (zh) 显示方法及其装置
EP4383191A1 (en) Display method and electronic device
WO2023035868A1 (zh) 拍摄方法及电子设备
WO2022222705A1 (zh) 设备控制方法和电子设备

Legal Events

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

Ref document number: 21868213

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21868213

Country of ref document: EP

Kind code of ref document: A1