WO2025256485A1 - 电子设备和防抖方法 - Google Patents
电子设备和防抖方法Info
- Publication number
- WO2025256485A1 WO2025256485A1 PCT/CN2025/099812 CN2025099812W WO2025256485A1 WO 2025256485 A1 WO2025256485 A1 WO 2025256485A1 CN 2025099812 W CN2025099812 W CN 2025099812W WO 2025256485 A1 WO2025256485 A1 WO 2025256485A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- camera
- electronic device
- control module
- offset
- motion data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/02—Constructional features of telephone sets
- H04M1/0202—Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
- H04M1/026—Details of the structure or mounting of specific components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/02—Constructional features of telephone sets
- H04M1/0202—Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
- H04M1/026—Details of the structure or mounting of specific components
- H04M1/0264—Details of the structure or mounting of specific components for a camera module assembly
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72454—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/57—Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/685—Vibration or motion blur correction performed by mechanical compensation
Definitions
- This application belongs to the field of electronic equipment technology, specifically relating to an electronic device and a stabilization method.
- the purpose of this application is to provide an electronic device and a stabilization method that can solve the problem of large camera size caused by traditional stabilization solutions.
- embodiments of this application provide an electronic device, which includes a motherboard, a driving component, and at least two cameras, wherein the motherboard includes a motion sensor and a main control chip;
- the motion sensor is used to collect motion data from the electronic device
- the input terminal of the main control chip is connected to the motion sensor, and the first output terminal is connected to the input terminal of the drive component. It is used to receive the motion data collected by the motion sensor, determine the position offset of the first camera corresponding to the at least two cameras respectively based on the motion data, and send the position offset of the first camera to the drive component.
- the driving component is used to drive the at least two cameras to move according to the position offset of the first camera.
- embodiments of this application provide a stabilization method applied to the electronic device described in the first aspect, the stabilization method comprising:
- Motion data of electronic devices are collected using motion sensors
- the main control chip receives the motion data collected by the motion sensor, determines the position offset of the first camera corresponding to at least two cameras based on the motion data, and sends the position offset of the first camera to the drive component.
- the driving component drives the at least two cameras to move according to the position offset of the first camera.
- embodiments of this application provide a readable storage medium on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the second aspect.
- embodiments of this application provide a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the steps of the method described in the second aspect.
- embodiments of this application provide a computer program product stored in a storage medium, which is executed by at least one processor to implement the steps of the method described in the second aspect.
- the calculation function in the drive component is transferred to the motherboard.
- the position offset of the first camera can be obtained without setting a microcontroller unit in the drive component, which can reduce the size of the drive component, thereby reducing the size of the camera module and improving the user experience during the shooting process.
- Figure 1 is a schematic diagram of the structure of the first electronic device provided in an embodiment of this application.
- Figure 2 is a schematic diagram of the structure of a second electronic device provided in an embodiment of this application.
- Figure 3 is a flowchart illustrating the first camera image stabilization method provided in this application embodiment
- Figure 4 is a flowchart illustrating the second camera image stabilization method provided in an embodiment of this application.
- Figure 5 is a schematic diagram of the structure of the third electronic device provided in the embodiment of this application.
- Figure 6 is a schematic diagram of the hardware structure of the electronic device provided in the embodiments of this application.
- first,” “second,” etc. used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first,” “second,” etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more.
- “and/or” indicates at least one of the connected objects, and the character “/” generally indicates that the preceding and following objects are in an “or” relationship.
- driver IC with a microcontroller unit can determine the impact of electronic device shake on image capture and drive the camera to move, thus achieving image stabilization.
- driver ICs with microcontroller units are relatively large, which in turn leads to a larger camera size.
- driver components with computational capabilities i.e., microcontroller units
- driver components can only be installed in a single camera, resulting in low utilization.
- different cameras often use different stabilization algorithms, leading to inconsistent stabilization performance across different cameras and impacting the user's shooting experience.
- IMUs inertial measurement units
- AP application processor
- the electronic device in this embodiment may include a motherboard, a driver component, and at least two cameras.
- the driver component may be integrated onto the motherboard or independent of it; this is not limited. If the driver component is integrated onto the motherboard, the number of driver components can be one or more. If there are multiple cameras and one driver component, one driver component can drive the motors of multiple cameras to move separately, thereby improving the utilization rate of the driver component.
- the relationship between these driver components and the multiple cameras can be one-to-one or one-to-many, without limitation.
- the motherboard can integrate one, two, three, or four driver components.
- the driver component is independent of the motherboard, it can be located within the camera. If the driver component is located within the camera, there can be at least two driver components, and each camera can have one driver component.
- the electronic device can be a terminal with camera functionality.
- Exemplary examples include mobile phones, tablets, laptops, handheld computers, in-vehicle electronic devices, mobile internet devices (MIDs), augmented reality (AR)/virtual reality (VR) devices, robots, wearable devices, ultra-mobile personal computers (UMPCs), netbooks, or personal digital assistants (PDAs), etc.
- the operating system of the electronic device can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit the specific operating system used.
- Figure 1 shows a schematic diagram of the structure of an electronic device provided in an embodiment of this application.
- the electronic device 100 provided in this embodiment may include a motherboard 11 and a camera 12.
- the motherboard 11 may integrate a motion sensor 111, a main control chip 112, and a second application processor 113.
- the camera 12 may be equipped with an image sensor 121 and a driving component 122. There may be at least two cameras 12.
- the image sensor 121 can be used to acquire images.
- motion sensor 111 can be a sensor used to collect motion data from an electronic device.
- Motion sensor 111 can be, for example, an IMU (Integrated Mutual Actuation Unit).
- Motion sensor 111 can include a gyroscope and an accelerometer.
- the gyroscope can be used to measure the angular velocity of the electronic device
- the accelerometer can be used to measure the linear acceleration of the electronic device. Therefore, motion data can include the angular rate collected by the gyroscope and the acceleration value collected by the accelerometer.
- the main control chip (sensor hub) 112 may include an input terminal, a first output terminal, and a second output terminal.
- the input terminal of the main control chip 112 can be connected to the motion sensor 111 to receive motion data sent by the motion sensor 111 and to determine the first camera position offset corresponding to at least two cameras 12 based on the motion data.
- the first output terminal can be connected to the input terminal of the driving component 122 to send the first camera position offset to the driving component 122.
- the first camera position offset can represent the distance to be moved by the camera 12.
- the first camera position offset can be 1 micrometer, 3 micrometers, etc.
- the drive component 122 can be used to drive at least two cameras to move based on the position offset of the first camera.
- the camera 12 may also include a motor.
- the output of the drive component 122 can be connected to the motor in the camera 12, and after receiving the position offset of the first camera, drive the motor to move based on the position offset of the first camera, so that the motor drives the camera 12 to move.
- the drive component 122 can convert the position offset of the first camera into current control information, and drive the motor to move through the current corresponding to the current control information.
- the calculation function in the drive component is transferred to the motherboard.
- the position offset of the first camera can be obtained without setting a microcontroller unit in the drive component, which can reduce the size of the drive component and thus the size of the camera module, improving the user experience during shooting.
- the position offset of the first camera can be obtained without setting a microcontroller unit in the driving component, which can reduce the investment cost of the driving component and thus reduce the cost of achieving the image stabilization performance of the camera.
- the two functions of camera stabilization and screen adaptive rotation can be realized, thereby reducing the complexity of the circuits in electronic devices and the manufacturing cost of electronic devices.
- some embodiments may include a first application processor.
- the input of the first application processor can be connected to a motion sensor, and the output of the first application processor can be connected to a main control chip. It is used to receive motion data sent by the motion sensor, control the screen rotation of the electronic device based on the motion data, and send motion data to the main control chip.
- the main control chip 112 may include a first control module 1121 and a second control module 1122 corresponding to at least two cameras 12.
- the input terminal of the first control module 1121 can be directly connected to the output terminal of the motion sensor 111, or it can be connected to the motion sensor 111 through a motion data buffer module 1123; this is not limited here.
- the input terminal of the first control module 1121 can be connected to the output terminal of the motion sensor 111, and the first control module 1121 can receive motion data collected by the motion sensor 111.
- the input terminal of the motion data cache module 1123 can be connected to the output terminal of the motion sensor 111, and the output terminal of the motion data cache module 1123 can be connected to the input terminal of the first control module 1121 for caching motion data and sending motion data to the first control module 1121.
- the first control module 1121 can determine the offset of the electronic device corresponding to the motion data. This offset can include angular offset and acceleration offset. Specifically, after receiving angular velocity and acceleration values, the first control module 1121 can perform data preprocessing such as denoising, calibration, and filtering on the angular velocity to convert it into an angular velocity offset; and perform data preprocessing such as denoising, calibration, and filtering on the acceleration values to convert them into acceleration offsets.
- data preprocessing such as denoising, calibration, and filtering on the angular velocity to convert it into an angular velocity offset
- data preprocessing such as denoising, calibration, and filtering on the acceleration values to convert them into acceleration offsets.
- the output of the first control module 1121 can be connected to the input of at least two second control modules 1122 to send electronic device offset to at least two second control modules 1122.
- the first control module 1121 can first determine the second target camera used by the user, and then send the electronic device offset to the second control module 1122 corresponding to the second target camera.
- the second target camera can be a camera corresponding to the shooting mode of the electronic device.
- the electronic device may display shooting previews corresponding to multiple second target cameras, or it may first display shooting previews corresponding to one second target camera, and then display shooting previews corresponding to another second target camera.
- the electronic device can display a shooting preview screen corresponding to two secondary target cameras.
- the electronic device can first display the shooting preview screen corresponding to the 1X zoom ratio secondary target camera, and then display the shooting preview screen corresponding to the 2X zoom ratio secondary target camera.
- the first control module 1121 can also be used to determine the first target camera corresponding to the shooting preview screen among at least two cameras 12, and send the electronic device offset to the second control module 1122 corresponding to the first target camera.
- the first control module can identify camera A as the first target camera and send an electronic device offset to the second control module corresponding to camera A, causing the second control module to control camera A to perform image stabilization (while camera B remains stationary).
- the first control module can identify camera B as the first target camera and send an electronic device offset to the second control module corresponding to camera B, causing the second control module to control camera B to perform image stabilization (while camera A remains stationary).
- the shooting preview can display the shooting images shared by both cameras.
- the first control module can identify both cameras as the first target camera and send electronic device offsets to the corresponding second control modules for each camera, enabling the respective second control modules to control both cameras for image stabilization.
- the second control module corresponding to the first target camera can control the first target camera to perform image stabilization, which can ensure the image stabilization effect of the camera corresponding to the shooting preview image, that is, ensure the stability of the shooting preview image, and thus ensure the shooting effect.
- the output of the second control module 1122 can be connected to the input of the drive component 122 to map the electronic device offset to the first camera position offset and to send the first camera position offset to the drive component 122.
- m can be the position offset of the first camera
- k1 can be the conversion coefficient between angle and displacement
- p can be the angle offset in the offset of the electronic device
- d can be the calibration stroke of the camera
- r can be the calibration angle of the camera.
- m can be the position offset of the first camera
- n can represent the autofocus position of the second camera
- q can be the offset of the electronic device
- k2 can include the conversion coefficient between angle and displacement, the conversion coefficient between acceleration and displacement, and the calibration coefficient of the camera related to lens focal length, lens posture, etc.
- the data preprocessing process can be completed in the first control module to obtain the electronic device offset, and then the data mapping process from the electronic device offset to the position offset of the first camera can be completed by the second control module corresponding to the first target camera.
- the main control chip 112 may also include a Hall data buffer module 1124.
- the input terminal of the Hall data buffer module 1124 can be connected to the input terminal of the motion data buffer module 1123 and the input terminal of the first control module 1121 respectively, for receiving and buffering motion data sent by the motion data buffer module 1123 and electronic device offset sent by the first control module 1121.
- the output of the Hall data buffer module 1124 can be connected to the input of the second application processor 113 to send motion data with the same timestamp and the electronic device offset to the second application processor 113.
- the second application processor 113 can be used to perform image restoration processing on images captured by the electronic device based on the Electric Image Stabilization (EIS) algorithm, according to the motion data with the same timestamp and the electronic device offset.
- the image can be any frame from the image sequence corresponding to the video.
- the actual movement of the camera may involve overshoot or delayed arrival, resulting in a discrepancy between the actual and theoretical movement information, which in turn affects the camera's image stabilization performance.
- the electronic device may also include a Hall sensor.
- the output terminal of the Hall sensor can be connected to the input terminal of the first control module 1121 to collect lens position data of at least two cameras 12 and send lens position data to the first control module 1121.
- the lens position data can be the camera position information obtained after image stabilization processing (i.e., moving the camera according to the position offset of the first camera).
- the first control module 1121 can also be used to determine the position offset of the second camera based on the lens position data and the position offset of the first camera, and to send the position offset of the second camera to the drive component 122.
- the position offset of the second camera can be compensation data for the camera to be moved, determined based on the position offset of the first camera.
- the drive component 122 can also be used to drive at least two cameras to move according to the position offset of the second camera.
- OIS data request modules may include, for example, a dual-camera bokeh processing module and an EIS algorithm module.
- the dual-camera bokeh processing module can perform image alignment processing on the images captured by the two cameras based on the cached data in the Hall data cache module 1124.
- the electronic device in this application embodiment can act as an execution subject to perform the camera stabilization method.
- Figure 3 shows a flowchart illustrating a camera image stabilization method according to an embodiment of this application. As shown in Figure 3, the operation method provided in this embodiment includes steps S310-S330.
- the S310 collects motion data from electronic devices using motion sensors.
- the device can load motion data collected by motion sensors and identify the camera identifiers corresponding to multiple cameras. After identifying the multiple camera identifiers, the electronic device can also load the calibration parameters corresponding to each of the multiple camera identifiers (i.e., the multiple cameras).
- the device can determine whether it is a multi-camera shooting scenario based on the camera mode.
- the electronic device In portrait mode, the electronic device can use two cameras simultaneously.
- the electronic device can first use the camera with the 1x zoom ratio to shoot, and then use the camera with the 2x zoom ratio to shoot.
- S320 receives motion data collected by motion sensors through the main control chip, determines the position offset of the first camera corresponding to at least two cameras based on the motion data, and sends the position offset of the first camera to the drive component.
- the above-mentioned S320 may specifically include:
- the first control module receives motion data sent by the motion sensor, determines the electronic device offset corresponding to the motion data, and sends the electronic device offset to at least two second control modules.
- the second control module maps the electronic device offset to the first camera position offset and sends the first camera position offset to the drive component.
- the first control module can perform data preprocessing such as denoising, calibration, and filtering on the motion data to obtain the electronic device offset, and send the electronic device offset to the second control modules corresponding to at least two second target cameras.
- the second target cameras can be cameras corresponding to the shooting mode of the electronic device.
- the first control module can register an OIS driver within the main control chip, and start n+1 threads (where n is the number of OIS cameras) within the OIS driver.
- Each self-developed OIS camera can have its own dedicated thread for algorithm calculation and communication with the Inter-Integrated Circuit (IIC) bus, while the remaining thread can read motion data and perform preliminary processing and distribution of the motion data.
- This thread can read motion data and perform preliminary processing and distribution of the motion data at a frequency of 1kHz through the Serial Peripheral Interface (SPI).
- SPI Serial Peripheral Interface
- the first control module can send electronic device offsets to each of the multiple second target cameras according to a polling strategy.
- the following may be included:
- the first control module determines the first target camera that corresponds to the preview image among at least two cameras
- the aforementioned sending of electronic device offsets from the first control module to at least two second control modules may specifically include:
- the first control module sends the electronic device offset to the second control module corresponding to the first target camera.
- the first control module can then identify camera A as the first target camera and send an electronic device offset to the second control module corresponding to camera A, causing the second control module to control camera A to perform image stabilization (while camera B remains stationary).
- the first control module can identify camera B as the first target camera and send an electronic device offset to the second control module corresponding to camera B, causing the second control module to control camera B to perform image stabilization (while camera A remains stationary).
- the shooting preview can display the shooting images shared by both cameras.
- the first control module can identify both cameras as the first target camera and send electronic device offsets to the corresponding second control modules for each camera, enabling the respective second control modules to control both cameras for image stabilization.
- S330 drives at least two cameras to move according to the position offset of the first camera via a drive component.
- the system collects lens position data from at least two cameras using Hall sensors and sends the lens position data to the first control module.
- the first control module determines the position offset of the second camera based on the lens position data and the position offset of the first camera, and sends the position offset of the second camera to the drive component.
- the driving component drives at least two cameras to move according to the position offset of the second camera.
- the calculation function in the drive component is transferred to the motherboard.
- the position offset of the first camera can be obtained without setting a microcontroller unit in the drive component, which can reduce the size of the drive component, thereby reducing the size of the camera module and improving the user experience during the shooting process.
- the image stabilization method may include steps S410-S490.
- S410 identifies the shooting mode while the user is taking pictures using the electronic device
- S420 determines multiple second target cameras based on the shooting mode through the first control module
- S430 determines the first target camera corresponding to the shooting preview screen from multiple second target cameras through the first control module;
- S440 Receive motion data sent by the motion sensor through the first control module, determine the offset of the electronic device based on the motion data, and send the offset of the electronic device to the target second control module corresponding to the first target camera.
- the target second control module maps the electronic device offset to the first camera position offset corresponding to the first target camera, and sends the first camera position offset to the drive component corresponding to the first target camera;
- S460 converts the position offset of the first camera into current control information through the drive component, and drives the motor of the first target camera to move through the current corresponding to the current control information, so that the motor drives the first target camera to move.
- S470 collects lens position data of the first target camera through a Hall sensor and sends the lens position data to the first control module;
- the first control module determines the position offset of the second camera based on the lens position data and the position offset of the first camera, and sends the position offset of the second camera to the drive component;
- S490 converts the position offset of the second camera into current control information through the drive component, and drives the motor of the first target camera to move through the current corresponding to the current control information, so that the motor drives the first target camera to move.
- the first control module can first complete the data preprocessing process to obtain the electronic device offset, and then the second control module corresponding to the first target camera can complete the data mapping process from the electronic device offset to the position offset of the first camera.
- This achieves image stabilization control of the cameras through a single image stabilization algorithm, ensuring the consistency of image stabilization effects across multiple cameras.
- the image stabilization effect of the cameras can be guaranteed.
- this application embodiment also provides an electronic device 500, including a processor 501 and a memory 502.
- the memory 502 stores a program or instructions that can run on the processor 501.
- the program or instructions are executed by the processor 501, they implement the various steps of the above-described camera anti-shake method embodiment and can achieve the same technical effect. To avoid repetition, they will not be described again here.
- Figure 6 is a schematic diagram of the hardware structure of an electronic device that implements an embodiment of this application.
- the electronic device 600 includes, but is not limited to, components such as: radio frequency unit 601, network module 602, audio output unit 603, input unit 604, sensor 605, display unit 606, user input unit 607, interface unit 608, memory 609, and processor 610.
- the electronic device 600 may also include a power supply (such as a battery) for powering various components.
- the power supply can be logically connected to the processor 610 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system.
- the electronic device structure shown in Figure 6 does not constitute a limitation on the electronic device.
- the electronic device may include more or fewer components than shown, or combine certain components, or have different component arrangements, which will not be elaborated here.
- the input unit 604 may include a graphics processing unit (GPU) 6041 and a microphone 6042.
- the GPU 6041 processes image data of still images or videos obtained by an image capture device (such as a camera) in video capture mode or image capture mode.
- the display unit 606 may include a display panel 6061, which may be configured in the form of a liquid crystal display, an organic light-emitting diode, or the like.
- the user input unit 607 includes at least one of a touch panel 6071 and other input devices 6072.
- the touch panel 6071 is also called a touch screen.
- the touch panel 6071 may include a touch detection device and a touch controller.
- Other input devices 6072 may include, but are not limited to, a physical keyboard, function keys (such as volume control buttons, power buttons, etc.), a trackball, a mouse, and a joystick, which will not be described in detail here.
- the memory 609 can be used to store software programs and various data.
- the memory 609 may primarily include a first storage area for storing programs or instructions and a second storage area for storing data.
- the first storage area may store the operating system, application programs or instructions required for at least one function (such as sound playback, image playback, etc.).
- the memory 609 may include volatile memory or non-volatile memory, or both.
- the non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory.
- Volatile memory can be random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM).
- RAM random access memory
- SRAM static random access memory
- DRAM dynamic random access memory
- SDRAM synchronous dynamic random access memory
- DDRSDRAM double data rate synchronous dynamic random access memory
- ESDRAM enhanced synchronous dynamic random access memory
- SLDRAM synchronous link dynamic random access memory
- DRRAM direct memory bus RAM
- the memory 609 in this embodiment includes, but is not limited to, these and any other suitable types of memory.
- Processor 610 may include one or more processing units; optionally, processor 610 integrates an application processor and a modem processor, wherein the application processor mainly handles operations involving the operating system, user interface, and applications, and the modem processor mainly handles wireless communication signals, such as a baseband processor. It is understood that the aforementioned modem processor may also not be integrated into processor 610.
- This application also provides a readable storage medium storing a program or instructions.
- the program or instructions When the program or instructions are executed by a processor, they implement the various processes of the above-described camera image stabilization method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.
- the processor is the processor in the electronic device described in the above embodiments.
- the readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.
- This application embodiment also provides a chip, which includes a processor and a communication interface.
- the communication interface is coupled to the processor.
- the processor is used to run programs or instructions to implement the various processes of the above-described camera image stabilization method embodiments and achieve the same technical effect. To avoid repetition, it will not be described again here.
- chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
- This application provides a computer program product, which is stored in a storage medium and executed by at least one processor to implement the various processes of the above-described camera image stabilization method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be described again here.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Environmental & Geological Engineering (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Studio Devices (AREA)
Abstract
本申请公开了一种电子设备和防抖方法,属于电子设备技术领域。该电子设备包括主板、驱动组件和至少两个摄像头,主板包括运动传感器和主控芯片;运动传感器用于采集电子设备的运动数据;主控芯片的输入端与运动传感器连接,第一输出端与驱动组件的输入端连接,用于接收运动传感器采集的运动数据,根据运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量;驱动组件的输出端用于根据第一摄像头位置偏移量驱动至少两个摄像头进行移动。
Description
相关申请的交叉引用
本申请要求享有于2024年06月12日提交的名称为“电子设备和防抖方法”的中国专利申请202410757810.5的优先权,该申请的全部内容通过引用并入本文中。
本申请属于电子设备技术领域,具体涉及一种电子设备和防抖方法。
随着越来越多的用户使用电子设备中的摄像功能进行拍摄,如何提升摄像头的防抖性能,进而提升电子设备的拍摄画质至关重要。
目前,传统摄像头防抖的方案通常为:在摄像头中设置具有微控制单元的驱动组件,以使驱动组件可以确定电子设备的抖动对摄像产生的影响,进而驱动摄像头移动来实现防抖。但是,上述方式导致摄像头的体积较大。
本申请实施例的目的是提供一种电子设备和防抖方法,能够解决传统防抖方案导致摄像头的体积较大的问题。
第一方面,本申请实施例提供了一种电子设备,该电子设备包括主板、驱动组件和至少两个摄像头,所述主板包括运动传感器和主控芯片;
所述运动传感器用于采集电子设备的运动数据;
所述主控芯片的输入端与所述运动传感器连接,第一输出端与所述驱动组件的输入端连接,用于接收所述运动传感器采集的所述运动数据,根据所述运动数据确定与所述至少两个摄像头分别对应的第一摄像头位置偏移量,以及向所述驱动组件发送所述第一摄像头位置偏移量;
所述驱动组件用于根据所述第一摄像头位置偏移量驱动所述至少两个摄像头进行移动。
第二方面,本申请实施例提供了一种防抖方法,应用于第一方面中的电子设备,所述防抖方法包括:
通过运动传感器采集电子设备的运动数据;
通过主控芯片接收所述运动传感器采集的所述运动数据,根据所述运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送所述第一摄像头位置偏移量;
通过所述驱动组件根据所述第一摄像头位置偏移量驱动所述至少两个摄像头进行移动。
第三方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第二方面所述的方法的步骤。
第四方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第二方面所述的方法的步骤。
第五方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第二方面所述的方法的步骤。
在本申请实施例中,通过在电子设备的主板上集成主控芯片,主控芯片的输入端与运动传感器连接,第一输出端与驱动组件的输入端连接,以及通过主控芯片接收运动传感器发送的运动数据,根据运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量,也即,将驱动组件中的计算功能转移到主板中,无需在驱动组件中设置微控制单元即可获取第一摄像头位置偏移量,能够减小驱动组件的体积,进而减小摄像头模组的体积,提升了在拍摄过程中的使用体验。
图1是本申请实施例提供的第一种电子设备的结构示意图;
图2是本申请实施例提供的第二种电子设备的结构示意图;
图3是本申请实施例提供的第一种摄像头的防抖方法的流程示意图;
图4是本申请实施例提供的第二种摄像头的防抖方法的流程示意图;
图5是本申请实施例提供的第三种电子设备的结构示意图;
图6是本申请实施例中提供的电子设备的硬件结构示意图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
如背景技术部分所述,具有微控制单元的驱动组件(driverIC)可以确定电子设备的抖动对摄像产生的影响并驱动摄像头移动来实现防抖。但是设置有微控制单元的驱动组件的体积较大,进而导致摄像头的体积较大。
另外,具有计算功能(即设置有微控制单元)的驱动组件通常具有较高的成本,导致摄像头的成本较高,进而导致实现摄像头的防抖性能的成本较高。另外,目前驱动组件只能设置一个摄像头内,导致驱动组件的利用率较低。且不同摄像头对应的驱动组件通常使用不同的防抖算法进行防抖,导致不同摄像头的防抖效果不一致,影响用户的拍摄体验。
此外,目前电子设备中通常包括两个惯性传感器(Inertial Measurement Unit,IMU),或一个惯性传感器和两个接口,用于将一路IMU数据发送至驱动组件发送IMU数据,以使驱动组件基于IMU进行摄像头防抖,将另一路IMU数据发送至应用处理器(Application Processor,AP),以使AP根据IMU数据控制电子设备的屏幕进行自适应旋转。但是,在电子设备中设置两个惯性传感器或者设置一个惯性传感器和两个接口,均会增加电子设备中电路的复杂程度和电子设备的制造成本。
如此,为了解决现有技术问题,本申请实施例提供了一种电子设备和防抖方法。其中,该防抖方法可以应用于利用该电子设备进行拍摄的场景。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的电子设备进行详细地说明。
本申请实施例中的电子设备可以包括主板、驱动组件和至少两个摄像头。其中,驱动组件可以集成在主板上,也可以独立于主板,在此不做限定。若驱动组件集成在主板上,则驱动组件的数量可以是一个,也可以是多个。若摄像头为多个,且驱动组件为一个,则一个驱动组件可以驱动多个摄像头的马达分别运动,以使马达带动摄像头移动。如此,能够提高驱动组件的利用率。
若驱动组件的数量为多个,则多个驱动组件和多个摄像头之间可以是一一对应的关系,也可以是一对多的关系,在此不做限定。例如,在电子设备包括四个摄像头的情况下,主板上可以集成有一个驱动组件、两个驱动组件、三个驱动组件或四个驱动组件。
另外,若驱动组件独立于主板,则驱动组件可以设置在摄像头中。若驱动组件设置在摄像头中,则驱动组件的数量可以为至少两个,驱动组件与摄像头可以一一对应,即每个摄像头可以设置有一个驱动组件。
下面以将驱动组件设置在摄像头中为例,对本申请实施例中的电子设备进行介绍。该电子设备可以是具有摄像功能的终端。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等。该电子设备的操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
图1示出了本申请实施例提供的一种电子设备的结构示意图。如图1所示,本申请实施例提供的电子设备100可以包括主板11和摄像头12。主板11上可以集成有运动传感器111、主控芯片112和第二应用处理器113。摄像头12中可以设置有图像传感器121和驱动组件122。其中,摄像头12可以为至少两个。图像传感器(Sensor)121可以用于获取图像。
具体的,运动传感器111可以是用于采集电子设备的运动数据的传感器。运动传感器111例如可以为IMU。运动传感器111可以包括陀螺仪(Gyro)和加速度计。陀螺仪可以用于测量电子设备的角速度,加速度计可以用于测量电子设备的线性加速度。因此,运动数据可以包括陀螺仪采集到的角速率和加速度计采集到的加速度值。
主控芯片(sensorhub)112可以包括输入端、第一输出端和第二输出端。主控芯片112的输入端可以与运动传感器111连接,用于接收运动传感器111发送的运动数据,以及根据运动数据确定与至少两个摄像头12分别对应的第一摄像头位置偏移量。第一输出端可以与驱动组件122的输入端连接,用于向驱动组件122发送第一摄像头位置偏移量。其中,第一摄像头位置偏移量可以表示摄像头12的待移动距离。第一摄像头位置偏移量例如可以为1微米、3微米等。
另外,驱动组件122可以用于根据第一摄像头位置偏移量驱动至少两个摄像头进行移动。具体的,摄像头12中还可以包括马达。驱动组件122的输出端可以和摄像头12中的马达连接,用于在接收到第一摄像头位置偏移量之后,根据第一摄像头位置偏移量驱动马达运动,以使马达带动摄像头12移动。具体的,驱动组件122可以将第一摄像头位置偏移量转换为电流控制信息,并通过与电流控制信息对应的电流驱动马达运动。
如此,通过在电子设备的主板上集成主控芯片,主控芯片的输入端与运动传感器连接,第一输出端与驱动组件的输入端连接,以及通过主控芯片接收运动传感器发送的运动数据,根据运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量,也即,将驱动组件中的计算功能转移到主板中,无需在驱动组件中设置微控制单元即可获取第一摄像头位置偏移量,能够减小驱动组件的体积,进而减小摄像头模组的体积,提升了在拍摄过程中的使用体验。
此外,本申请实施例通过将驱动组件中的计算功能转移到主板中,无需在驱动组件中设置微控制单元即可获取第一摄像头位置偏移量,能够减少对驱动组件的投入成本,进而能够降低实现摄像头的防抖性能的成本。
基于此,为了降低电子设备中电路的复杂程度和电子设备的制造成本,在一些实施例中,第二应用处理器113的输入端可以和主控芯片112的第二输出端连接,用于接收主控芯片112发送的运动数据,并根据运动数据控制电子设备的屏幕进行旋转。
这样,通过第二应用处理器113接收主控芯片112发送的运动数据,而不是运动传感器111发送的运动数据,在主板中集成一个运动传感器111,以及设置运动传感器111的一个接口,即可实现摄像头防抖和屏幕自适应旋转两个功能,进而能够降低电子设备中电路的复杂程度和电子设备的制造成本。
另外,为了降低电子设备中电路的复杂程度和电子设备的制造成本,在一些实施例中,电子设备中还可以包括第一应用处理器。第一应用处理器的输入端可以与运动传感器连接,第一应用处理器的输出端可以与主控芯片连接,用于接收运动传感器发送的运动数据,根据运动数据控制电子设备的屏幕进行旋转,以及向主控芯片发送运动数据。
下面以将驱动组件设置在摄像头中为例,对本申请实施例中的电子设备进行进一步介绍。
图2示出了本申请实施例提供的另一种电子设备的结构示意图。如图2所示,本申请实施例提供的电子设备200可以包括主板11和摄像头12。主板11可以包括运动传感器111、主控芯片112和第二应用处理器113。主控芯片112可以包括第一控制模块1121、第二控制模块1122、运动数据缓存模块1123和霍尔数据缓存模块1124。其中,至少两个摄像头12可以包括第一摄像头和第二摄像头。第一摄像头可以包括长焦摄像头、微距摄像头、超广角摄像头等。第二摄像头可以是不包括霍尔传感器的闭环摄像头。第二摄像头可以与第一摄像头共同拍摄。具体的,第一摄像头和第二摄像头中均可以设置有图像传感器和驱动组件。另外,第二控制模块1122可以包括与第一摄像头对应的第三控制模块和与第二摄像头对应的第四控制模块等。
基于此,为了提升电子设备中所有摄像头防抖效果的一致性,在一些实施例中,如图2所示,主控芯片112可以包括第一控制模块1121以及与至少两个摄像头12一一对应的第二控制模块1122。其中,第一控制模块1121的输入端可以与运动传感器111的输出端直接连接,也可以通过运动数据缓存模块1123与运动传感器111连接,在此不做限定。
作为一种示例,若主控芯片112中不包括运动数据缓存模块1123,则第一控制模块1121的输入端可以与运动传感器111的输出端连接,第一控制模块1121可以接收运动传感器111采集的运动数据。
作为另一种示例,若主控芯片112还包括运动数据缓存模块1123,则运动数据缓存模块1123的输入端可以与运动传感器111的输出端连接,运动数据缓存模块1123的输出端可以与第一控制模块1121的输入端连接,用于对运动数据进行缓存,以及向第一控制模块1121发送运动数据。
第一控制模块1121在接收到运动数据之后,可以确定与运动数据对应的电子设备偏移量。其中,电子设备偏移量可以包括角度偏移量和加速度偏移量。具体的,第一控制模块1121在接收到角速率和加速度值之后,可以对角速率进行去噪、校准、滤波等数据预处理,将角速率转换为角速度偏移量,以及对加速度值进行去噪、校准、滤波等数据预处理,将加速度值转换为加速度偏移量。
另外,第一控制模块1121的输出端可以与至少两个第二控制模块1122的输入端连接,用于向至少两个第二控制模块1122发送电子设备偏移量。
由于电子设备可以包括多个摄像头,且拍摄可能用到多个摄像头中的一部分摄像头,因此,在用户使用电子设备进行拍摄的过程中,第一控制模块1121还可以先确定用户拍摄所使用的第二目标摄像头,再向用户拍摄所使用的第二目标摄像头对应的第二控制模块1122发送电子设备偏移量。其中,第二目标摄像头可以是与电子设备的拍摄模式对应的摄像头。
另外,针对不同的拍摄模式,电子设备中可能显示多个第二目标摄像头共同对应的拍摄预览画面,也可能先显示一个第二目标摄像头对应的拍摄预览画面,再显示另一个第二目标摄像头对应的拍摄预览画面。
例如,在人像模式中,电子设备中可以显示两个第二目标摄像头共同对应的拍摄预览画面。在用户选择1.9X变焦倍率进行拍摄的过程中,电子设备可以先显示与1X变焦倍率的第二目标摄像头对应的拍摄预览画面,再显示与2X变焦倍率的第二目标摄像头对应的拍摄预览画面。
基于此,为了保证与拍摄预览画面对应的摄像头的防抖效果,进而保证拍摄效果,在一些实施例中,第一控制模块1121还可以用于在至少两个摄像头12中确定与拍摄预览画面对应的第一目标摄像头,以及向第一目标摄像头对应的第二控制模块1122发送电子设备偏移量。
作为一种示例,假设用户使用两个摄像头A和B进行拍摄,且当前拍摄预览画面显示的是A摄像头拍摄的内容,则第一控制模块可以将A摄像头确定为第一目标摄像头,并向A摄像头对应的第二控制模块发送电子设备偏移量,以使该第二控制模块控制A摄像头进行防抖(此时B摄像头锁在中心不动)。在拍摄预览画面切换到B摄像头拍摄的内容时,第一控制模块可以将B摄像头确定为第一目标摄像头,并向B摄像头对应的第二控制模块发送电子设备偏移量,以使该第二控制模块控制B摄像头进行防抖(此时A摄像头锁在中心不动)。
作为另一种示例,针对双摄虚化等场景(如拍摄模式为人像模式),则拍摄预览画面可以显示两个摄像头共同对应的拍摄画面。如此,第一控制模块可以将两个摄像头共同确定为第一目标摄像头,并向两个摄像头各自对应的第二控制模块发送电子设备偏移量,以使两个摄像头各自对应的第二控制模块分别控制两个摄像头进行防抖。
这样,通过第一控制模块根据拍摄预览画面确定第一目标摄像头,以及向第一目标摄像头对应的第二控制模块发送电子设备偏移量,由第一目标摄像头对应的第二控制模块控制第一目标摄像头进行防抖,能够保证与拍摄预览画面对应的摄像头的防抖效果,即保证拍摄预览画面的稳定性,进而能够保证拍摄效果。
此外,第二控制模块1122的输出端可以与驱动组件122的输入端连接,用于将电子设备偏移量映射为第一摄像头位置偏移量,以及向驱动组件122发送第一摄像头位置偏移量。
这里,第三控制模块可以通过如下公式(1)将电子设备偏移量映射为第一摄像头位置偏移量:
m=k1×p×d/r (1)
m=k1×p×d/r (1)
在上述公式(1)中,m可以是第一摄像头位置偏移量,k1可以是角度和位移之间的转换系数,p可以是电子设备偏移量中的角度偏移量,d可以是摄像头的标定行程,r可以是摄像头的标定角度。
另外,第四控制模块可以通过如下公式(2)将电子设备偏移量映射为第一摄像头位置偏移量:
m=n-q×k2 (2)
m=n-q×k2 (2)
在上述公式(2)中,m可以是第一摄像头位置偏移量,n可以表示第二摄像头的自动对焦位置,q可以是电子设备偏移量,k2可以包括角度和位移之间的转换系数、加速度和位移之间的转换系数和与镜头焦距、镜头姿势等相关的摄像头的标定系数。
由此,通过在主控芯片中设置第一控制模块以及与至少两个摄像头一一对应的第二控制模块,能够先由第一控制模块中完成数据预处理过程,得到电子设备偏移量,再由与第一目标摄像头对应的第二控制模块完成从电子设备偏移量到第一摄像头位置偏移量的数据映射过程,实现通过一套防抖算法进行摄像头的防抖控制,保证多个摄像头防抖效果的一致性。
此外,如图2所示,主控芯片112还可以包括霍尔数据缓存模块1124。霍尔数据缓存模块1124的输入端可以与运动数据缓存模块1123的输入端和第一控制模块1121的输入端分别连接,用于接收并缓存运动数据缓存模块1123发送的运动数据和第一控制模块1121发送电子设备偏移量。
另外,霍尔数据缓存模块1124的输出端可以与第二应用处理器113的输入端连接,用于将具有相同时间戳的运动数据和电子设备偏移量发送至第二应用处理器113。第二应用处理器113可以用于基于电子防抖(Electric Image Stabilization,EIS)算法,根据具有相同时间戳的运动数据和电子设备偏移量对电子设备拍摄的图片进行图像修复处理。其中,图片可以是视频对应的图片序列帧中的任意一帧。
这样,通过在主板上的主控芯片中进行数据缓存,并向第二应用处理器发送具有相同时间戳的运动数据和电子设备偏移量,而不是在驱动组件中处理上述过程,能够提高数据处理效率,提高摄像头的防抖效果。
此外,在实际情况中,摄像头的实际移动过程可能存在过冲或者到达不及时的情况,导致摄像头的实际移动信息和理论移动信息存在偏差,进而影响摄像头的防抖效果。
基于此,为了保证摄像头的防抖效果,在一些实施例中,电子设备中还可以包括霍尔传感器,霍尔传感器的输出端可以与第一控制模块1121的输入端连接,用于采集至少两个摄像头12的镜头位置数据,以及向第一控制模块1121发送镜头位置数据。其中,镜头位置数据可以是对摄像头进行防抖处理(即根据第一摄像头位置偏移量对摄像头进行移动)后得到的摄像头的位置信息。
基于此,第一控制模块1121还可以用于根据镜头位置数据和第一摄像头位置偏移量确定第二摄像头位置偏移量,以及向驱动组件122发送第二摄像头位置偏移量。第二摄像头位置偏移量可以是根据第一摄像头位置偏移量确定的摄像头待移动的补偿数据。
驱动组件122还可以用于根据第二摄像头位置偏移量驱动至少两个摄像头进行移动。
这样,通过负反馈机制对摄像头的防抖过程进行监控和及时调整,能够保证摄像头的防抖效果。
另外,霍尔传感器的输出端还可以和霍尔数据缓存模块1124的输入端连接,用于将摄像头的镜头位置数据发送至霍尔数据缓存模块1124,以使其他光学防抖(Optical Image Stabilization,OIS)数据需求模块可以基于计算需求确定是否获取。OIS数据需求模块例如可以包括双摄虚化处理模块和EIS算法模块。双摄虚化处理模块可以根据霍尔数据缓存模块1124中的缓存数据对两个摄像头拍摄得到的图像进行图像对齐处理。
本申请实施例中的电子设备可以作为执行主体执行摄像头的防抖方法。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的防抖方法进行详细地说明。
图3示出了本申请实施例提供的一种摄像头的防抖方法的流程示意图。如图3所示,本申请实施例提供的操作方法包括步骤S310-S330。
S310,通过运动传感器采集电子设备的运动数据。
在用户打开电子设备中的“相机”应用的情况下,电子设备即可以加载运动传感器采集的运动数据,以及确定与多个摄像头分别对应的摄像头标识。在确定多个摄像头标识之后,电子设备还可以加载与多个摄像头标识(即多个摄像头)分别对应的标定参数。
另外,在用户使用电子设备进行拍摄的过程中,电子设备还可以根据摄像模式确定是否为多摄像头拍摄场景。在人像模式中,电子设备可以使用两个摄像头共同拍摄。在用户选择1.9X变焦倍率进行拍摄的情况下,电子设备可以先使用与1X变焦倍率的摄像头进行拍摄,再使用与2X变焦倍率的摄像头进行拍摄。
S320,通过主控芯片接收运动传感器采集的运动数据,根据运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量。
基于此,为了提升电子设备中所有摄像头防抖效果的一致性,在一些实施例中,上述S320具体可以包括:
通过第一控制模块接收运动传感器发送的运动数据,确定与运动数据对应的电子设备偏移量,以及向至少两个第二控制模块发送电子设备偏移量;
通过第二控制模块将电子设备偏移量映射为第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量。
第一控制模块可以对运动数据进行去噪、校准、滤波等数据预处理,得到电子设备偏移量,以及向至少两个第二目标摄像头分别对应的第二控制模块发送电子设备偏移量。其中,第二目标摄像头可以是与电子设备的拍摄模式对应的摄像头。
另外,第一控制模块可以在主控芯片内注册OIS驱动,在OIS驱动内启动n+1个线程(n为OIS摄像头的个数)。每个自研OIS可以独占一个线程进行算法计算与集成电路总线(Inter-Integrated Circuit,IIC)通信,剩余一个线程可以读取运动数据,运动数据的初步处理与分发。该线程可以1K hz的频率通过串行外围接口(Serial Peripheral Interface,SPI)读取运动数据,以及进行运动数据的初步处理与分发。
如果第二目标摄像头的数量为多个,则第一控制模块可以按照轮询策略向多个第二目标摄像头分别发送电子设备偏移量。
基于此,为了保证与拍摄预览画面对应的摄像头的防抖效果,进而保证拍摄效果,在一些实施例中,在上述通过第一控制模块向至少两个第二控制模块发送电子设备偏移量之前,还可以包括:
通过第一控制模块在至少两个摄像头中确定与拍摄预览画面对应的第一目标摄像头;
基于此,上述通过第一控制模块向至少两个第二控制模块发送电子设备偏移量,具体可以包括:
通过第一控制模块向第一目标摄像头对应的第二控制模块发送电子设备偏移量。
作为一种示例,假设用户使用两个摄像头A和B进行拍摄(摄像头A和摄像头B均可以为第二目标摄像头),且当前拍摄预览画面显示的是A摄像头拍摄的内容,则第一控制模块可以将A摄像头确定为第一目标摄像头,并向A摄像头对应的第二控制模块发送电子设备偏移量,以使该第二控制模块控制A摄像头进行防抖(此时B摄像头锁在中心不动)。在拍摄预览画面切换到B摄像头拍摄的内容时,第一控制模块可以将B摄像头确定为第一目标摄像头,并向B摄像头对应的第二控制模块发送电子设备偏移量,以使该第二控制模块控制B摄像头进行防抖(此时A摄像头锁在中心不动)。
作为另一种示例,针对双摄虚化等场景(如拍摄模式为人像模式),则拍摄预览画面可以显示两个摄像头共同对应的拍摄画面。如此,第一控制模块可以将两个摄像头共同确定为第一目标摄像头,并向两个摄像头各自对应的第二控制模块发送电子设备偏移量,以使两个摄像头各自对应的第二控制模块分别控制两个摄像头进行防抖。
S330,通过驱动组件根据第一摄像头位置偏移量驱动至少两个摄像头进行移动。
基于此,为了保证摄像头的防抖效果,在一些实施例中,在上述S330之后,还可以包括:
通过霍尔传感器采集至少两个摄像头的镜头位置数据,以及向第一控制模块发送镜头位置数据;
通过第一控制模块根据镜头位置数据和第一摄像头位置偏移量确定第二摄像头位置偏移量,以及向驱动组件发送第二摄像头位置偏移量;
通过驱动组件根据第二摄像头位置偏移量驱动至少两个摄像头进行移动。
除此之外,本申请实施例中的其他步骤可参见上文描述,在此不再详细赘述。
在本申请实施例中,通过在电子设备的主板上集成主控芯片,主控芯片的输入端与运动传感器连接,第一输出端与驱动组件的输入端连接,以及通过主控芯片接收运动传感器发送的运动数据,根据运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送第一摄像头位置偏移量,也即,将驱动组件中的计算功能转移到主板中,无需在驱动组件中设置微控制单元即可获取第一摄像头位置偏移量,能够减小驱动组件的体积,进而减小摄像头模组的体积,提升了在拍摄过程中的使用体验。
为了更好地描述摄像头的防抖方法,基于上述各实施例,举一些具体的例子。
例如,如图4所示,防抖方法可以包括步骤S410-S490。
S410,在用户使用电子设备拍摄的过程中,识别拍摄模式;
S420,通过第一控制模块根据拍摄模式确定多个第二目标摄像头;
S430,按照轮询策略,通过第一控制模块在多个第二目标摄像头中确定与拍摄预览画面对应的第一目标摄像头;
S440,通过第一控制模块接收运动传感器发送的运动数据,根据运动数据确定电子设备偏移量,以及向第一目标摄像头对应的目标第二控制模块发送电子设备偏移量;
S450,通过目标第二控制模块将电子设备偏移量映射为与第一目标摄像头对应的第一摄像头位置偏移量,以及向第一目标摄像头对应的驱动组件发送第一摄像头位置偏移量;
S460,通过驱动组件将第一摄像头位置偏移量转换为电流控制信息,并通过电流控制信息对应的电流驱动第一目标摄像头的马达运动,以使马达带动第一目标摄像头移动;
S470,通过霍尔传感器采集第一目标摄像头的镜头位置数据,以及向第一控制模块发送镜头位置数据;
S480,第一控制模块根据镜头位置数据和第一摄像头位置偏移量确定第二摄像头位置偏移量,以及向驱动组件发送第二摄像头位置偏移量;
S490,通过驱动组件将第二摄像头位置偏移量转换为电流控制信息,并通过电流控制信息对应的电流驱动第一目标摄像头的马达运动,以使马达带动第一目标摄像头移动。
由此,通过在主控芯片中设置第一控制模块以及与至少两个摄像头一一对应的第二控制模块,能够先由第一控制模块中完成数据预处理过程,得到电子设备偏移量,再由与第一目标摄像头对应的第二控制模块完成从电子设备偏移量到第一摄像头位置偏移量的数据映射过程,实现通过一套防抖算法进行摄像头的防抖控制,保证多个摄像头防抖效果的一致性。另外,通过负反馈机制对摄像头的防抖过程进行监控和及时调整,能够保证摄像头的防抖效果。
可选地,如图5所示,本申请实施例还提供一种电子设备500,包括处理器501和存储器502,存储器502上存储有可在所述处理器501上运行的程序或指令,该程序或指令被处理器501执行时实现上述摄像头的防抖方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
图6为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备600包括但不限于:射频单元601、网络模块602、音频输出单元603、输入单元604、传感器605、显示单元606、用户输入单元607、接口单元608、存储器609、以及处理器610等部件。
本领域技术人员可以理解,电子设备600还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器610逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图6中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
应理解的是,本申请实施例中,输入单元604可以包括图形处理器(Graphics Processing Unit,GPU)6041和麦克风6042,图形处理器6041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元606可包括显示面板6061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板6061。用户输入单元607包括触控面板6071以及其他输入设备6072中的至少一种。触控面板6071,也称为触摸屏。触控面板6071可包括触摸检测装置和触摸控制器两个部分。其他输入设备6072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器609可用于存储软件程序以及各种数据。存储器609可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器609可以包括易失性存储器或非易失性存储器,或者,存储器609可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器609包括但不限于这些和任意其它适合类型的存储器。
处理器610可包括一个或多个处理单元;可选的,处理器610集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器610中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述摄像头的防抖方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述摄像头的防抖方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述摄像头的防抖方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (15)
- 一种电子设备,包括主板、驱动组件和至少两个摄像头,所述主板包括运动传感器和主控芯片;所述运动传感器用于采集电子设备的运动数据;所述主控芯片的输入端与所述运动传感器连接,第一输出端与所述驱动组件的输入端连接,用于接收所述运动传感器采集的所述运动数据,根据所述运动数据确定与所述至少两个摄像头分别对应的第一摄像头位置偏移量,以及向所述驱动组件发送所述第一摄像头位置偏移量;所述驱动组件用于根据所述第一摄像头位置偏移量驱动所述至少两个摄像头进行移动。
- 根据权利要求1所述的电子设备,所述电子设备还包括第一应用处理器;所述第一应用处理器的输入端与所述运动传感器连接,所述第一应用处理器的输出端与所述主控芯片连接,用于接收所述运动传感器采集的所述运动数据,根据所述运动数据控制所述电子设备的屏幕进行旋转,以及向所述主控芯片发送所述运动数据。
- 根据权利要求1所述的电子设备,其中,所述主控芯片包括第一控制模块以及与所述至少两个摄像头一一对应的第二控制模块;所述第一控制模块的输入端与所述运动传感器的输出端连接,所述第一控制模块的输出端与至少两个所述第二控制模块的输入端连接,用于接收所述运动传感器发送的所述运动数据,确定与所述运动数据对应的电子设备偏移量,以及向至少两个所述第二控制模块发送所述电子设备偏移量;所述第二控制模块的输出端与所述驱动组件的输入端连接,用于将所述电子设备偏移量映射为所述第一摄像头位置偏移量,以及向所述驱动组件发送所述第一摄像头位置偏移量。
- 根据权利要求3所述的电子设备,所述第一控制模块还用于在所述至少两个摄像头中确定与拍摄预览画面对应的第一目标摄像头,以及向所述第一目标摄像头对应的所述第二控制模块发送所述电子设备偏移量。
- 根据权利要求3所述的电子设备,所述主控芯片还包括运动数据缓存模块,所述运动数据缓存模块的输入端与所述运动传感器的输出端连接,所述运动数据缓存模块的输出端与所述第一控制模块的输入端连接,用于对所述运动数据进行缓存,以及向所述第一控制模块发送所述运动数据。
- 根据权利要求5所述的电子设备,所述电子设备还包括第二应用处理器,所述主控芯片还包括霍尔数据缓存模块;所述第二应用处理器的输入端与所述主控芯片的第二输出端连接,用于接收所述主控芯片发送的所述运动数据,并根据所述运动数据控制所述电子设备的屏幕旋转;所述霍尔数据缓存模块的输入端与所述运动数据缓存模块的输入端和所述第一控制模块的输入端分别连接,所述霍尔数据缓存模块的输出端与所述应用处理器的输入端连接,用于接收并缓存所述运动数据缓存模块发送的所述运动数据和所述第一控制模块发送所述电子设备偏移量;所述第二应用处理器还用于接收所述霍尔数据缓存模块发送的具有相同时间戳的所述运动数据和所述电子设备偏移量,以及基于电子防抖算法,根据具有相同时间戳的所述运动数据和所述电子设备偏移量对所述电子设备拍摄的图片进行图像修复处理。
- 根据权利要求3所述的电子设备,所述电子设备还包括霍尔传感器;所述霍尔传感器的输出端与所述第一控制模块的输入端连接,用于采集所述至少两个摄像头的镜头位置数据,以及向所述第一控制模块发送所述镜头位置数据;所述第一控制模块还用于根据所述镜头位置数据和所述第一摄像头位置偏移量确定第二摄像头位置偏移量,以及向所述驱动组件发送所述第二摄像头位置偏移量;所述驱动组件还用于根据所述第二摄像头位置偏移量驱动所述至少两个摄像头进行移动。
- 一种防抖方法,由权利要求1-7任一项所述的电子设备执行,所述方法包括:通过运动传感器采集电子设备的运动数据;通过主控芯片接收所述运动传感器采集的所述运动数据,根据所述运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送所述第一摄像头位置偏移量;通过所述驱动组件根据所述第一摄像头位置偏移量驱动所述至少两个摄像头进行移动。
- 根据权利要求8所述的方法,其中,通过所述主控芯片根据所述运动数据确定与至少两个摄像头分别对应的第一摄像头位置偏移量,以及向驱动组件发送所述第一摄像头位置偏移量,包括:通过第一控制模块接收所述运动传感器发送的所述运动数据,确定与所述运动数据对应的电子设备偏移量,以及向至少两个第二控制模块发送所述电子设备偏移量;通过所述第二控制模块将所述电子设备偏移量映射为所述第一摄像头位置偏移量,以及向所述驱动组件发送所述第一摄像头位置偏移量。
- 根据权利要求9所述的方法,通过所述第一控制模块向至少两个第二控制模块发送所述电子设备偏移量之前,所述方法还包括:通过所述第一控制模块在所述至少两个摄像头中确定与拍摄预览画面对应的第一目标摄像头;所述通过所述第一控制模块向至少两个第二控制模块发送所述电子设备偏移量,包括:通过所述第一控制模块向所述第一目标摄像头对应的所述第二控制模块发送所述电子设备偏移量。
- 根据权利要求9所述的方法,所述通过所述驱动组件根据所述第一摄像头位置偏移量驱动所述至少两个摄像头进行移动之后,所述方法还包括:通过霍尔传感器采集所述至少两个摄像头的镜头位置数据,以及向所述第一控制模块发送所述镜头位置数据;通过所述第一控制模块根据所述镜头位置数据和所述第一摄像头位置偏移量确定第二摄像头位置偏移量,以及向所述驱动组件发送所述第二摄像头位置偏移量;通过所述驱动组件根据所述第二摄像头位置偏移量驱动所述至少两个摄像头进行移动。
- 一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求8-11任一项所述的防抖方法的步骤。
- 一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如权利要求8-11任一项所述的防抖方法的步骤。
- 一种计算机程序产品,所述程序产品被存储在存储介质中,所述程序产品被至少一个处理器执行以实现如权利要求8-11任一项所述的防抖方法的步骤。
- 一种电子设备,所述电子设备被配置成用于执行如权利要求8-11中任一项所述的防抖方法的步骤。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410757810.5A CN118474232A (zh) | 2024-06-12 | 2024-06-12 | 电子设备和防抖方法 |
| CN202410757810.5 | 2024-06-12 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025256485A1 true WO2025256485A1 (zh) | 2025-12-18 |
Family
ID=92156003
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2025/099812 Pending WO2025256485A1 (zh) | 2024-06-12 | 2025-06-09 | 电子设备和防抖方法 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN118474232A (zh) |
| WO (1) | WO2025256485A1 (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118474232A (zh) * | 2024-06-12 | 2024-08-09 | 维沃移动通信有限公司 | 电子设备和防抖方法 |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109842753A (zh) * | 2019-03-26 | 2019-06-04 | Oppo广东移动通信有限公司 | 摄像头防抖系统、方法、电子设备和存储介质 |
| CN110035228A (zh) * | 2019-03-26 | 2019-07-19 | Oppo广东移动通信有限公司 | 摄像头防抖系统、方法、电子设备和计算机可读存储介质 |
| WO2023061326A1 (zh) * | 2021-10-11 | 2023-04-20 | 维沃移动通信有限公司 | 拍摄方法、装置及电子设备 |
| CN116156290A (zh) * | 2023-02-20 | 2023-05-23 | 维沃移动通信有限公司 | 摄像电路、摄像方法及电子设备 |
| CN116170687A (zh) * | 2022-11-30 | 2023-05-26 | 维沃移动通信有限公司 | 镜头组件、防抖拍摄方法和装置、电子设备和存储介质 |
| CN116266885A (zh) * | 2021-12-16 | 2023-06-20 | 北京小米移动软件有限公司 | 摄像模组控制方法、装置、电子设备和存储介质 |
| CN116761074A (zh) * | 2022-10-28 | 2023-09-15 | 荣耀终端有限公司 | 光学防抖模组、光学防抖方法及电子设备 |
| CN118474232A (zh) * | 2024-06-12 | 2024-08-09 | 维沃移动通信有限公司 | 电子设备和防抖方法 |
-
2024
- 2024-06-12 CN CN202410757810.5A patent/CN118474232A/zh active Pending
-
2025
- 2025-06-09 WO PCT/CN2025/099812 patent/WO2025256485A1/zh active Pending
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109842753A (zh) * | 2019-03-26 | 2019-06-04 | Oppo广东移动通信有限公司 | 摄像头防抖系统、方法、电子设备和存储介质 |
| CN110035228A (zh) * | 2019-03-26 | 2019-07-19 | Oppo广东移动通信有限公司 | 摄像头防抖系统、方法、电子设备和计算机可读存储介质 |
| WO2023061326A1 (zh) * | 2021-10-11 | 2023-04-20 | 维沃移动通信有限公司 | 拍摄方法、装置及电子设备 |
| CN116266885A (zh) * | 2021-12-16 | 2023-06-20 | 北京小米移动软件有限公司 | 摄像模组控制方法、装置、电子设备和存储介质 |
| CN116761074A (zh) * | 2022-10-28 | 2023-09-15 | 荣耀终端有限公司 | 光学防抖模组、光学防抖方法及电子设备 |
| CN116170687A (zh) * | 2022-11-30 | 2023-05-26 | 维沃移动通信有限公司 | 镜头组件、防抖拍摄方法和装置、电子设备和存储介质 |
| CN116156290A (zh) * | 2023-02-20 | 2023-05-23 | 维沃移动通信有限公司 | 摄像电路、摄像方法及电子设备 |
| CN118474232A (zh) * | 2024-06-12 | 2024-08-09 | 维沃移动通信有限公司 | 电子设备和防抖方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118474232A (zh) | 2024-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110035228B (zh) | 摄像头防抖系统、方法、电子设备和计算机可读存储介质 | |
| CN103017730B (zh) | 一种单摄像头测距的方法和系统 | |
| CN110784651B (zh) | 一种防抖方法及电子设备 | |
| KR101856947B1 (ko) | 촬영장치, 움직임 추정장치, 영상 보정 방법, 움직임 추정방법 및 컴퓨터 판독가능 기록매체 | |
| US20200404178A1 (en) | Video image anti-shake method and terminal | |
| US11310428B2 (en) | Camera shooting method and mobile terminal | |
| CN113556464B (zh) | 拍摄方法、装置及电子设备 | |
| CN114567727B (zh) | 拍摄控制系统、方法及装置、存储介质和电子设备 | |
| CN106716989A (zh) | 摄像装置、摄像方法及程序 | |
| CN114390213A (zh) | 一种拍摄方法及设备 | |
| WO2025256485A1 (zh) | 电子设备和防抖方法 | |
| CN106375669A (zh) | 一种稳像方法、装置和无人机 | |
| CN114631056B (zh) | 摄像支援装置、摄像支援系统、摄像系统、摄像支援方法及存储介质 | |
| WO2023072088A1 (zh) | 对焦方法及装置 | |
| WO2024017175A1 (zh) | 拍摄预览方法、装置、电子设备及存储介质 | |
| WO2022061541A1 (zh) | 控制方法、手持云台、系统及计算机可读存储介质 | |
| CN116156290B (zh) | 摄像电路、摄像方法及电子设备 | |
| CN116012262B (zh) | 一种图像处理方法、模型训练方法及电子设备 | |
| WO2021238942A1 (zh) | 防抖方法、防抖装置和电子设备 | |
| CN115379118B (zh) | 摄像头切换方法、装置、电子设备和可读存储介质 | |
| CN115379115B (zh) | 视频拍摄的方法、装置及电子设备 | |
| WO2023179440A1 (zh) | 拍摄装置的控制方法、控制装置、拍摄装置和电子设备 | |
| CN113938605B (zh) | 拍照方法、装置、设备及介质 | |
| CN110493503A (zh) | 一种图像采集方法、电子设备和存储介质 | |
| CN116664667A (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: 25821196 Country of ref document: EP Kind code of ref document: A1 |