A foldable electronic device for multi-view image capture
By determining depth and adjusting angles between housing portions based on image data, the device enhances multi-view image capture quality in foldable devices, addressing the challenge of angle adjustment in existing foldable image capture devices.
Patent Information
- Application Number
- JP2023530268
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-11-25
- Publication Date
- 2025-01-23
- Estimated Expiration
- 2040-11-25
AI Technical Summary
Existing foldable image capture devices face challenges in capturing high-quality multi-view images due to the adjustment of angles between housing portions, which affects depth perception and image rendering.
The device determines depth based on image data from sensors on different housing portions and adjusts the angle between these portions to optimize image capture, using intrinsic and extrinsic parameters, and generates multi-view images with enhanced depth perception.
This approach enables high-quality multi-view image capture with improved depth perception and dynamic adjustment of angles for better image rendering, including 3D and high dynamic range images.
Smart Images

Figure 0007620704000001 
Figure 0007620704000002 
Figure 0007620704000003
Abstract
Description
[Technical field]
[0001] FIELD OF THE DISCLOSURE
[0001] This disclosure relates generally to imaging devices, and more specifically to foldable display devices having image capturing capability. [Background technology]
[0002]
[0002] Image capture devices, such as phones, tablets, and smart devices, may include an outwardly facing camera for capturing images. For example, the camera may be located on an outwardly facing surface opposite an inwardly facing surface, the inwardly facing surface including a display. Images captured from the camera on the outwardly facing surface are provided on the display. Image capture devices may also include a camera on the inwardly facing surface, such as to facilitate capturing a "selfie." Some of these image capture devices include a foldable display. Each side of a foldable display includes an outwardly facing surface and an inwardly facing surface. Image capture devices with foldable displays may include one or more cameras on each of the outwardly facing surfaces.
[0003]
[0003] Additionally, image capture devices use various signal processing techniques in an attempt to render high quality images. For example, an image capture device may automatically focus its lens for image sharpness, automatically set an exposure time based on light levels, and automatically adjust white balance to correspond to the color temperature of the light source. In some examples, an image capture device may generate a multi-view image based on images captured from multiple cameras. In some examples, an image capture device includes face detection technology. The face detection technology enables the image capture device to identify a face in the field of view of the camera lens. The image capture device may then apply various signal processing techniques based on the identified face. Summary of the Invention
[0004] According to one aspect, a method of operating an image capture device includes obtaining first image data from a first sensor coupled to a first portion of a housing of the image capture device. The method also includes obtaining second image data from a second sensor coupled to a second portion of the housing. The method further includes determining a depth of an object based on the first image data and the second image data. The method also includes outputting an adjusted angle between the first housing portion and the second housing portion based on the determined depth. Furthermore, the method includes performing an image capture operation in response to the adjustment.
[0005] According to another aspect, an image capture device comprises a housing comprising a first housing portion and a second housing portion. The image capture device also comprises a non-transitory, machine-readable storage medium having instructions stored thereon, and at least one processor coupled to the non-transitory, machine-readable storage medium. The at least one processor is configured to execute the instructions to acquire first image data from a first sensor coupled to the first housing portion of the housing. The processor is also configured to execute the instructions to acquire second image data from a second sensor coupled to the second housing portion of the housing. Furthermore, the processor is configured to execute the instructions to determine a depth of the object based on the first image data and the second image data. The processor is also configured to execute the instructions to output an adjusted angle between the first housing portion and the second housing portion based on the depth. The processor is further configured to execute the instructions to perform an image capture operation based on the adjusted angle.
[0006]
[0006] According to another aspect, a non-transitory machine-readable storage medium stores instructions that, when executed by at least one processor, cause the at least one processor to perform operations including acquiring first image data from a first sensor coupled to a first housing portion of a housing of the image capture device, acquiring second image data from a second sensor coupled to a second housing portion of the housing, determining a depth of the object based on the first image data and the second image data, outputting an adjusted angle between the first portion and the second portion based on the depth, and performing an image capture operation based on the adjusted angle.
[0007]
[0007] According to another aspect, an image capture device comprises means for acquiring first image data from a first sensor coupled to a first housing portion of a housing of the image capture device, means for acquiring second image data from a second sensor coupled to a second housing portion of the housing, means for determining a depth of the object based on the first image data and the second image data, means for outputting an adjusted angle between the first and second portions based on the depth, and means for performing an image capture operation based on the adjusted angle. [Brief description of the drawings]
[0008] [Figure 1]
[0008] FIG. 1 is a block diagram of an exemplary image capture device, according to some implementations. [Diagram 2]
[0009] 2 is a block diagram illustrating example components of the image capture device of FIG. 1 in accordance with some implementations. [Figure 3A]
[0010] FIG. 2 illustrates components of an exemplary image capture device, according to some implementations. [Figure 3B] FIG. 2 illustrates components of an exemplary image capture device, according to some implementations. [Figure 3C] FIG. 2 illustrates components of an exemplary image capture device, according to some implementations. [Figure 3D] FIG. 2 illustrates components of an exemplary image capture device, according to some implementations. [Figure 4A]
[0011] FIG. 1 illustrates an exemplary image capture device having a foldable display, according to some implementations. [Figure 4B] FIG. 1 illustrates an exemplary image capture device having a foldable display, according to some implementations. [Figure 4C] FIG. 1 illustrates an exemplary image capture device having a foldable display, according to some implementations. [Figure 4D]FIG. 1 illustrates an exemplary image capture device having a foldable display, according to some implementations. [Diagram 5]
[0012] 4 is a flowchart of an exemplary process for performing an image capture operation in an image capture device, according to some implementations. [Figure 6] 4 is a flowchart of an exemplary process for performing an image capture operation in an image capture device, according to some implementations. [Figure 7]
[0013] 4 is a flowchart of an example process for generating a user-composed image in an image capture device, according to some implementations. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009]
[0014] While the features, methods, devices, and systems described herein may be embodied in a variety of forms, some illustrative, non-limiting embodiments are shown in the drawings and described below. Some of the components described in this disclosure are optional, and some implementations may include additional, different, or fewer components than those explicitly described in this disclosure.
[0010]
[0015] In some implementations, the image capture device may be foldable and may include a foldable display along an inner surface. For example, the image capture device may be foldable along a central portion that includes one or more coupling devices (e.g., hinges), which may separate a first portion (e.g., a left side) of the image capture device from a second portion (e.g., a right side) of the image capture device. Each of the first and second portions may include an inner surface and an outer surface (e.g., a first inner surface and a second inner surface). For example, when the image capture device is closed (e.g., closed), each of the inner surfaces may face each other as the first and second portions of the image capture device are brought closer to each other. When closed, the outer surfaces of the first and second portions face outward, and the inner surfaces of the first and second portions may establish or bound a cavity or void space (e.g., the inner surfaces may form a cavity). The foldable display may also include corresponding portions along each inner surface of the first and second portions of the image capture device. The inner surfaces (and the foldable display) may be presented on a "user-facing" side of the image capture device.
[0011]
[0016] The image capture device may include one or more cameras on an inner surface of the first portion and one or more cameras on an inner surface of the second portion. In some examples, the image capture device may include one or more cameras on an outer surface of the first portion. In some examples, the image capture device may include one or more cameras on an outer surface of the second portion.
[0012]
[0017] The image capture device may capture image data from each of the cameras. For example, the image capture device may capture first image data from a first camera positioned on an inner surface of the first portion (i.e., the first inner surface) and may capture second image data from a second camera positioned on an inner surface of the second portion (i.e., the second inner surface). The first camera and the second camera may collectively establish a stereo camera (e.g., left and right cameras).
[0013]
[0018] The image capture device may determine a depth of the object based on the first image data and the second image data. For example, the image capture device may identify the object in each field of view (FOV) of the first and second cameras and select a lens position that provides a focus value for a region of interest (ROI) that includes the object. Based on the determined depth, the image capture device may automatically adjust the one or more coupling devices to change the angle separating the first and second portions (i.e., the angle of the one or more coupling devices). In response to the adjustment, the angle may increase (e.g., when opening the image capture device) or the angle may decrease (e.g., when closing the image capture device).
[0014]
[0019] In some examples, the image capture device provides a visual or audible indication to a user of the image capture device to adjust the angle (e.g., by closing the image capture device further or opening it further).
[0015]
[0020] In some examples, the image capture device determines a current angle and adjusts the angle based on a depth value and the current angle.
[0016]
[0021] In some examples, the image capture device determines the depth of the object based on camera parameters, which may include intrinsic and extrinsic parameters for each camera. The intrinsic and extrinsic parameters may be determined in advance and stored in a data repository (e.g., in a tangible, non-transitory memory) maintained by the image capture device.
[0017]
[0022] The intrinsic parameters may characterize a transformation from image plane coordinates to pixel coordinates for each of the first and second cameras. For example, the intrinsic parameters may include a focal length, an image sensor format, and a principal point for each of the first and second cameras. The extrinsic parameters characterize a relative position and orientation of each of the first or second cameras. For example, the extrinsic parameters may include a rotation matrix and a translation matrix that characterize a relative position and orientation of one or more of the first and second cameras, respectively. For example, the translation matrix may identify a translation from a frame of reference of one camera to a frame of reference of another camera. For example, the first translation matrix may identify a translation of the frame of reference from the first camera to the second camera, and the second translation matrix may identify a translation of the frame of reference from the second camera to the first camera. The rotation matrix may identify a rotation from the frame of reference of one camera to the frame of reference of another camera. For example, a first rotation matrix may identify a rotation of the frame of reference from the first camera to the second camera, and a second rotation matrix may identify a rotation of the frame of reference from the second camera to the first camera.
[0018]
[0023] Further, the extrinsic parameters may include a baseline length for the first and second cameras. The baseline length may define the distance between the optical centers of the first and second cameras. In some examples, the larger the angle between the first and second inner surfaces, the larger the baseline length between the first and second cameras. As an example, a first angle between the first and second inner surfaces of the image capture device may establish a first baseline length between the first and second cameras, and a second angle between the first and second inner surfaces of the image capture device may establish a second baseline length between the first and second cameras. For example, if the first angle is to exceed the second angle, the first baseline length established may also exceed and be greater than the corresponding second baseline length.
[0019]
[0024] The image capture device may align the first image data from the first camera with the second image data from the second camera based on the rotation matrix, the translation matrix, and additionally or alternatively, the baseline length. For example, for a given angle between the first inner surface and the second inner surface, the extrinsic parameters may specify a rotation matrix and a translation matrix for each of the first and second cameras, and a corresponding baseline length. The image capture device may determine a current angle, and may align the first image data from the first camera with the second image data from the second camera based on the rotation matrix, the translation matrix, and additionally or alternatively, the baseline length corresponding to the current angle. In some examples, the image capture device may determine the extrinsic parameters during calibration of each of the first and second cameras prior to use.
[0020]
[0025] The image capture device may also identify features (e.g., objects) in each of the first image data and the second image data. According to some examples, pixels in the first image data having features (e.g., edges, brightness, color) are matched with pixels in the second image data having corresponding features. Based on the matched pixels in the first and second image data, the image capture device may generate a disparity map (e.g., a stereoscopic depth map) using any technique known in the art. The disparity map may, for example, encode the difference in horizontal coordinates of corresponding features and may include disparity values, where each disparity value is inversely proportional to the scene depth at the corresponding pixel location.
[0021]
[0026] The image capture device may calculate the depth value based on intrinsic parameters of each of the first and second cameras. For example, the image capture device may determine the depth value based on the focal length, image sensor format, and principal point of each of the first and second cameras. In some examples, the image capture device may calculate the depth value based on a rotation matrix for the first and second cameras. In some examples, the image capture device calculates the depth value based on features classified in the first image data acquired from the first camera and in the second image data acquired from the second camera, and based in part on the disparity map. The image capture device may also calculate the depth value based, among other things, on the focal length of the first camera, the focal length of the second camera, a combination of the focal lengths of the first and second cameras, the corresponding baseline lengths, and a portion of the disparity map.
[0022]
[0027] In some examples, the computing device includes a housing having a first portion and a second portion, the first portion forming an angle relative to the second portion. Further, the first portion of the housing may include a first sensor, and the second portion of the housing may include a second sensor. The computing device may determine a first angle between the first portion and the second portion of the housing, and may further determine a baseline length between the first sensor and the second sensor based on the first angle. Further, the computing device may determine a focal length of at least one of the first sensor and the second sensor. The computing device may generate a depth value based on the baseline length, the focal length, and a portion of the disparity map.
[0023]
[0028] Further, the image capture device may adjust the angle between the first inner surface and the second inner surface based on the calculated depth value. For example, the image capture device may identify an object based on the classified features and calculate a depth value for the object as described above. The image capture device may calculate an object depth for the object based on the depth value. Further, the image capture device may determine a desired baseline length between the first camera and the second camera for capturing an image of the identified object based on the object depth. For example, the image capture device may calculate a larger baseline length for objects with a larger object depth and a smaller baseline length for objects with a smaller object depth. In some examples, the image capture device maintains in the memory device one or more tables that identify matching of desired baseline lengths to object depths for particular objects. For example, the first table may identify a desired baseline length for each of a plurality of object depths for objects classified as "faces" and the second table may identify a desired baseline length for each of a plurality of object depths for objects classified as "trees".
[0024]
[0029] Based on the desired baseline length, the image capture device may determine an adjustment to the angle between the first inner surface and the second inner surface. For example, the image capture device may determine a current baseline length between the first camera and the second camera and compare the current baseline length to the desired baseline length to determine an angle adjustment amount. The image capture device may adjust the angle based on the determined angle adjustment amount.
[0025]
[0030] In some examples, after the angle is adjusted, the image capture device captures a third image data from the first camera and a fourth image data from the second camera, and generates a multi-view image based on the third image data and the fourth image data. For example, the image capture device may identify features in the third image data and the fourth image data, and generate a second disparity map based on the identified features. The image capture device may generate a multi-view image based on the third image data, the fourth image data, and a portion of the second disparity map using any known technique. The multi-view image may include, for example, a three-dimensional (3D) image. In additional examples, the multi-view image may include a "high dynamic range" image or a "non-high dynamic range" image.
[0026]
[0031] In some examples, the image capture device may periodically determine whether the angle should be adjusted while the user is capturing an image of the scene. For example, the image capture device may periodically obtain image data from each of the first and second cameras and adjust the angle as described herein until a given amount of time before the image data is captured to generate a multi-perspective image.
[0027]
[0032] In some implementations, the image capture device may determine the ROI after adjusting the angle for improved autofocus (AF), autoexposure (AE), automatic gain (AG), or autowhite balance (AWB) control. For example, the image capture device may adjust the angle as described herein, identify a feature that is a subject (e.g., in the image data of FIG. 3 and the fourth image data), and determine an ROI that includes the face of the subject. The image capture device may then determine (e.g., adjust, apply) one or more of the AF, AE, AG, or AWB controls based on the image data in the ROI.
[0028]
[0033] In some examples, the image capture device may provide automated image capture enhancements (e.g., 3D image enhancements) to the multi-view image generated in response to the angle adjustment. For example, the image capture device may apply a photoeffect to the multi-view image to generate a user-created image. A user may, for example, select a photoeffect for image capture. Examples of photoeffects include color shifting, segmentation effects (e.g., depth of field effect, Bokeh effect, blue screening, object filters such as face filters, augmented reality (AR), virtual reality (VR), and averaging effects. The averaging effect may, for example, average color channel values of all or a selected group of pixels in the two different images. The depth of field effect (e.g., Bokeh effect) may rely on color channel values of pixels in the third image data and pixels in the fourth image data.
[0029]
[0034] 1 is a block diagram of an exemplary image capture device 100. The functionality of image capture device 100 may be implemented in one or more processors, one or more field programmable gate arrays (FPGAs), one or more application specific integrated circuits (ASICs), one or more state machines, digital circuitry, any other suitable circuitry, or any suitable hardware.
[0030]
[0035] In this example, image capture device 100 includes at least one processor 160 that is operatively coupled to (e.g., in communication with) camera optics and sensor 115A and camera optics and sensor 115B to capture corresponding images. Camera optics and sensor 115A and 115B may each include one or more image sensors and one or more lenses to capture images. Camera optics and sensor 115A may be disposed within a first portion 117A of image capture device 100, and camera optics and sensor 115B may be disposed within a second portion 117B of image capture device 100. Each of camera optics and sensor 115A and 115B may be based on, for example, a time-of-flight (TOF) or structured light (e.g., infrared, random dot projection) image capture system. The processor 160 may also be operably coupled to the hinge control 119, which may enable control (e.g., mechanical adjustment) of a hinge angle of a hinge coupling the first portion 117A to the second portion 117B. For example, the processor 160 may control the hinge control 119 to adjust the hinge angle between (inclusive of) 0 degrees and 180 degrees.
[0031]
[0036] The processor 160 may also be operatively coupled to an instruction memory 130, a working memory 105, an input device 170, a transceiver 111, the foldable display 125, and the storage medium 110. The input device 170 may be, for example, a keyboard, a touchpad, a stylus, a touch screen, or any other suitable input device.
[0032]
[0037] Image capture device 100 may be implemented in a computer with image capture capabilities, a dedicated camera, a general-purpose device capable of performing imaging and non-imaging applications, or any other suitable device. For example, image capture device 100 may include a portable personal computing device, such as a mobile phone (e.g., a smartphone), a tablet, a personal digital assistant, or any other suitable device.
[0033]
[0038] The processor 160 may also include one or more processors. For example, the processor 160 may include one or more of one or more central processing units (CPUs), one or more graphics processing units (GPUs), one or more digital signal processors (DSPs), one or more image signal processors (ISPs), one or more device processors, and / or any other suitable processors. The processor 160 may also perform various image capture operations on the received image data to perform AF, AG, AE, and / or AWB. In addition, the processor 160 may perform various management tasks, such as controlling the foldable display 125 to display captured images, or writing or reading data from the working memory 105 or the storage medium 110. For example, the processor 160 may obtain intrinsic parameters 167 and extrinsic parameters 169 for each camera from the storage medium 110. The storage medium 110 may also store image capture parameters for an image capture operation, such as AF, AE, and / or AWB parameters. The processor 160 may apply the AF, AE, and / or AWB based on the image capture parameters.
[0034]
[0039] The processor 160 may store the captured images in the storage medium 110. For example, the processor 160 may acquire image sensor data 165 from the camera optics and sensors 115A, 115B and store the acquired image sensor data 165 in the storage medium 110.
[0035]
[0040] In some examples, the processor 160 may apply photo effects to the captured image. For example, the processor 160 may apply color shifting, depth of field (e.g., bokeh effects), augmented reality (AR), virtual reality (VR), and averaging effects to the captured image.
[0036]
[0041] In some instances, the transceiver 111 may facilitate communications between the image capture device 100 and one or more network-attached computing systems or devices over a communications network using any suitable communications protocol. Examples of these communications protocols include, but are not limited to, cellular communications protocols such as Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), or Wideband Code Division Multiple Access (WCDMA), and / or wireless local area network protocols such as IEEE 802.11 (WiFi) or Worldwide Interoperability for Microwave Access (WiMAX).
[0037]
[0042] Processor 160 may control each of camera optics and sensors 115A, 115B to capture images. For example, processor 160 may instruct camera optics and sensor 115A to initiate capture of an image to capture corresponding image data (e.g., take a picture), and processor 160 may receive the captured image data from camera optics and sensor 115A. Similarly, processor 160 may instruct camera optics and sensor 115B to initiate capture of an additional image to capture corresponding image data, and processor 160 may receive the captured image data from camera optics and sensor 115B.
[0038]
[0043] In some examples, the camera optics and sensor 115A, storage medium 110, and processor 160 provide a means for capturing first image data from a first front-facing camera disposed within a first interior portion (e.g., first portion 117A) of the foldable display (e.g., foldable display 125). In some examples, the camera optics and sensor 115B, storage medium 110, and processor 160 provide a means for capturing second image data from a second front-facing camera disposed within a second interior portion (e.g., second portion 117B) of the foldable display (e.g., foldable display 125).
[0039]
[0044] Instruction memory 130 may store instructions that can be accessed (e.g., read) and executed by processor 160. For example, instruction memory 130 may include a read-only memory (ROM), such as an Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory, a removable disk, a CD-ROM, any non-volatile memory, or any other suitable memory.
[0040]
[0045] The processor 160 may store data in or read data from the working memory 105. For example, the processor 160 may store a working set of instructions in the working memory 105, such as instructions loaded from the instruction memory 130. The processor 160 may also use the working memory 105 to store dynamic data generated during operation of the image capture device 100. The working memory 105 may be a random access memory (RAM), such as a static random access memory (SRAM) or a dynamic random access memory (DRAM), or any other suitable memory.
[0041]
[0046] In this example, instruction memory 130 stores capture control instructions 135, auto focus (AF) instructions 140, auto white balance (AWB) instructions 141, auto exposure (AE) instructions 142, automatic gain (AG) instructions 148, image processing instructions 143, a face detection engine 144, a depth determination engine 146, a hinge angle control engine 147, a luma detection engine 149, a luma-based dynamic range detection engine 151, a photo effects engine 153, and operating system instructions 145. Instruction memory 130 may also include additional instructions that configure processor 160 to perform various image processing and device management tasks.
[0042]
[0047] The AF instructions 140 may include instructions that, when executed by the processor 160, cause the camera optics and the lens of the sensor 115A or 115B to adjust the position of the corresponding lens. For example, the processor 160 may cause the camera optics and the lens of the sensor 115A to adjust so that light from a ROI within the FOV of the imaging sensor is focused at the plane of the sensor. The selected ROI may correspond to one or more focal points of the AF system. The AF instructions 140, when executed by the processor 160, may include instructions that cause the processor 160 to perform an autofocus operation, such as finding an optimal lens position to focus light from the ROI at the plane of the sensor. The autofocus may include, for example, phase detection autofocus (PDAF), contrast autofocus, or laser autofocus.
[0043]
[0048] The AWB instructions 141 may include instructions that, when executed by the processor 160, cause the processor 160 to determine a color correction to be applied to the image. For example, the executed AWB instructions 141 may cause the processor 160 to determine an average color temperature of the illumination source when the camera optics and sensor 115A or the camera optics and sensor 115B captured the image, and scale the color components (e.g., R, G, and B) of the captured image to match the light in which the image will be displayed or printed. Additionally, in some examples, the executed AWB instructions 141 may cause the processor 160 to determine an illumination source in the ROI of the image. The processor 160 may then apply a color correction to the image based on the determined color temperature of the illumination source in the ROI of the image.
[0044]
[0049] The AG instructions 148 may include instructions that, when executed by the processor 160, cause the processor 160 to determine a gain correction to be applied to an image. For example, the executed AG instructions 148 may cause the processor 160 to amplify a signal received from a lens of the camera optics and sensor 115A or the camera optics and sensor 115B. The executed AG instructions 148 may also cause the processor 160 to adjust pixel values (e.g., digital gain).
[0045]
[0050] The AE instructions 142 may include instructions that, when executed by the processor 160, cause the processor 160 to determine a length of time that one or more sensing elements, such as an imaging sensor of the camera optics and sensor 115A or the camera optics and sensor 115B, integrate light before capturing an image. For example, the executed AE instructions 142 may cause the processor 160 to meter ambient light and select an exposure time for the lens based on the metering of the ambient light. The higher the ambient light level, the shorter the exposure time selected, and the lower the ambient light level, the longer the exposure time selected. In the case of a digital single-lens reflex (DSLR) camera, for example, the executed AE instructions 142 may cause the processor 160 to determine an exposure speed. In a further example, the executed AE instructions 142 may cause the processor 160 to meter ambient light in an ROI of the field of view of the sensor of the camera optics and sensor 115A or the camera optics and sensor 115B.
[0046]
[0051] The capture control instructions 135 may include instructions that, when executed by the processor 160, cause the processor 160 to adjust a lens position, set an exposure time, set a sensor gain, and / or configure a white balance filter of the image capture device 100. The capture control instructions 135 may further include instructions that, when executed by the processor 160, control the overall image capture functions of the image capture device 100. For example, the executed capture control instructions 135 may cause the processor 160 to execute AF instructions 140 that cause the processor 160 to calculate a lens or sensor movement to achieve a desired autofocus position and output lens control signals to control the lens of the camera optics and sensor 115A or the camera optics and sensor 115B.
[0047]
[0052] The operating system instructions 145 may include instructions that, when executed by the processor 160, cause the processor 160 to implement an operating system. The operating system may act as an intermediary between programs, such as user applications, and the processor 160. The operating system instructions 145 may include device drivers for managing hardware resources, such as the camera optics and sensors 115A or 115B, the foldable display 125, or the transceiver 111. Additionally, one or more of the executed image processing instructions 143 as discussed herein may interact with hardware resources indirectly through standard subroutines or application programming interfaces (APIs) that may be included in the operating system instructions 145. The executed instructions of the operating system instructions 145 may then interact directly with these hardware components.
[0048]
[0053] The face detection engine 144 may include instructions that, when executed by the processor 160, cause the processor 160 to initiate face detection on image data representing one or more objects in a field of view of the image capture device 100. For example, the processor 160 may execute the face detection engine 144 to determine an ROI in a field of view of the lens of the camera optics and sensor 115 that includes one or more faces of a corresponding object. In some cases, the face detection engine 144, when executed by the processor 160, may obtain raw image sensor data of an image in a field of view of the lens of the camera optics and sensor 115A or the camera optics and sensor 115B. The executed face detection engine 144 may also initiate face detection, for example, by performing a face detection operation locally within the processor 160 to determine whether one or more faces of the object are in the field of view. The face detection operations may include, but are not limited to, performing calculations to determine whether the field of view of the image capture device 100 includes one or more faces, and if so, to determine (e.g., and identify) a region (e.g., ROI) in the FOV that includes the one or more faces.
[0049]
[0054] The depth determination engine 146 may include instructions that, when executed by the processor 160, cause the processor 160 to determine depth based on image data captured using the camera optics and sensor 115A or the camera optics and sensor 115B. For example, the processor 160 may execute the depth determination engine 146 to identify features in first image data captured using the camera optics and sensor 115A and second image data captured using the camera optics and sensor 115B. Additionally, and based on the execution of the depth determination engine 146, the processor 160 generates a disparity map using any technique known in the art. The disparity map may include depth values that identify the scene depth at each corresponding pixel location, such as the pixel location corresponding to each identified feature.
[0050]
[0055] The image processing instructions 143 may include instructions that, when executed, cause the processor 160 to perform one or more image processing operations related to the captured image data, such as, but not limited to, demosaicing, noise reduction, crosstalk reduction, color processing, gamma adjustment, image filtering (e.g., spatial image filtering), lens artifact or defect correction, image sharpening, or other image processing functions. Additionally, the executed image processing instructions 143 may generate a multi-perspective image, such as a 3D image, based on a first image captured with the camera optics and sensor 115A, a second image captured with the camera optics and sensor 115B, and the generated depth values.
[0051]
[0056] The hinge angle control engine 147 may include instructions that, when executed by the processor 160, cause the processor 160 to adjust a hinge angle, such as the hinge angle of a hinge assembly connecting a first portion 117A of the image capture device 100 to a second portion 117B of the image capture device 100. For example, the processor 160 may execute the hinge angle control engine 147 to control the hinge control 119, which may include a hinge assembly operably coupled to the first portion 117A and the second portion 117B. The processor 160 may issue commands to the hinge control 119, for example, to open or close the hinge assembly, thereby increasing or decreasing the hinge angle, respectively.
[0052]
[0057] The luma detection engine 149 may include instructions that, when executed by the processor 160, cause the processor 160 to determine a value, such as a luminance value, based on pixel values of pixels of the captured image data and pixel values of pixels within a detected ROI (e.g., a ROI detected by the processor 160 executing the face detection engine 144). For example, the luma detection engine 149, when executed by the processor 160, may determine a first value based on luminance pixel values of all pixels of a captured image, such as image data within a field of view of a lens of the camera optics and sensor 115A or the camera optics and sensor 115B. The executed luma detection engine 149 may also cause the processor 160 to determine a second value based on luminance pixel values of all pixels within the detected ROI that includes the subject's face. In some examples, one or more of the first value and the second value include an average luminance pixel value of the corresponding pixel values. In other examples, one or more of the first value and the second value include a median luminance pixel value of the corresponding pixel values. In other examples, the first value and the second value may be determined based on any suitable mathematical or statistical process or technique, such as, but not limited to, determining a total sum of squares.
[0053]
[0058] The luma-based dynamic range detection engine 151 may include instructions that, when executed by the processor 160, cause the processor 160 to determine whether the captured image data (e.g., image sensor data) identifies a “high dynamic range” scene or a “non-high dynamic range” scene based on values (e.g., a first value and a second value) determined by the executed luma detection engine 149. For example, also when executed by the processor 160, the executed luma-based dynamic range detection engine 151 may compare the first value to the second value and determine whether the captured image data identifies a “high dynamic range” scene or a “non-high dynamic range” scene based on the comparison. In some instances, the executed luma-based dynamic range detection engine 151 may determine a difference between the first value and the second value, and if the difference is greater than a threshold amount (e.g., a predetermined threshold amount), the executed luma-based dynamic range detection engine 151 may determine that the captured image data identifies a “high dynamic range” scene. Alternatively, if the difference is equal to or less than the threshold amount, the implemented luma-based dynamic range detection engine 151 may determine that the captured image data identifies a "non-high dynamic range" scene. In other cases, the implemented luma-based dynamic range detection engine 151 may determine whether the captured image data identifies a "high dynamic range" scene or a "non-high dynamic range" scene based on applying any suitable mathematical or statistical process or technique to the first value and the second value.
[0054]
[0059] Photo effects engine 153 may include instructions that, when executed by processor 160, cause processor 160 to apply one or more photo effects to image data captured by camera optics and sensor 115A or camera optics and sensor 115B. Examples of photo effects include color shifting, depth of field (e.g., bokeh effects), AR, VR, and averaging effects. In some examples, executed photo effects engine 153 applies one or more photo effects to the multi-perspective image generated by executed image processing instructions 143.
[0055]
[0060] 1, the processor 160 is located within the image capture device 100, in some examples, the processor 160 may include one or more cloud distributed processors. For example, one or more of the functions described herein with respect to the processor 160 may be performed (e.g., implemented) by one or more remote processors, such as one or more cloud processors in a corresponding cloud-based server. The cloud processors may communicate with the processor 160 over a network, and the processor 160 connects to the network via the transceiver 111. Each of the cloud processors may be coupled to a non-transitory cloud storage media, which may be co-located with the corresponding cloud processor or may be remote from the corresponding cloud processor. The network may be any personal area network (PAN), local area network (LAN), wide area network (WAN), or the Internet.
[0056]
[0061] 2 is a diagram illustrating exemplary components of the image capture device 100 of FIG. 1. As shown, the processor 160 is communicatively coupled to each of the camera optics and sensor 115A and the camera optics and sensor 115B. For example, the processor 160 may provide an image capture command 201A to cause the camera optics and sensor 115A to capture first image data 203A. Similarly, the processor 160 may provide an image capture command 201B to cause the camera optics and sensor 115B to capture second image data 203B. The camera optics and sensor 115A may be disposed within (e.g., positioned on) the first portion 117A of the image capture device 100, and the camera optics and sensor 115B may be disposed within the second portion 117B of the image capture device 100. The first portion 117A may include a first inner surface (e.g., a surface facing a user) of a foldable display (e.g., foldable display 125) and the second portion 117B may include a second inner surface of the foldable display. Image capture device 100 may be foldable along a central portion that separates the first portion 117A from the second portion 117B of the image capture device.
[0057]
[0062] In some examples, the image capture device 100 may include a timer 212. The timer 212 may be an executable timer in some examples. The processor 160 may receive timestamp data 213 from the timer 212. The processor 160 may associate a timestamp with image data captured from either the camera optics and sensor 115A or the camera optics and sensor 115B. For example, upon receiving the first image data 203A from the camera optics and sensor 115A, the processor 160 may request (e.g., read from) the timer 212 for a timestamp. The processor 160 may obtain the timestamp data 213 identifying the timestamp and may associate the timestamp with the first image data 203A. For example, the processor 160 may include the timestamp as metadata associated with the first image data 203A. Similarly, upon receiving second image data 203B from the camera optics and sensor 115B, the processor 160 may request and obtain timestamp data 213 from the timer 212 and may associate the obtained timestamp with the second image data 203B.
[0058]
[0063] Further, the processor 160 is operably coupled to the hinge control 119. In this example, the hinge control 119 includes a motor 208, a position sensor 210, and a hinge assembly 206. The hinge assembly 206 may include one or more hinges connecting the first portion 117A of the image capture device 100 to the second portion 117B of the image capture device 100. The motor 208 is operably coupled to the hinge assembly 206 and is operable to adjust (e.g., open or close) the one or more hinges. For example, the processor 160 may provide a motor command 225 to the motor 208. In response, the motor 208 may cause the hinge assembly 206 to adjust the one or more hinges to thereby increase or decrease the hinge angle between the first portion 117A and the second portion 117B. For example, the motor 208 may rotate in one direction (e.g., clockwise) to open one or more hinges and may rotate in another direction (e.g., counterclockwise) to close one or more hinges.
[0059]
[0064] In addition, the processor 160 may receive position data 227 from the position sensor 210, where the position data 227 identifies a hinge angle of one or more hinges of the hinge assembly 206. In some examples, to adjust the hinge angle, the processor 160 may obtain the position data 227 to determine a first hinge angle. To adjust the hinge angle to a second hinge angle, the processor 160 may compare the second hinge angle to the first hinge angle. Based on the comparison, the processor 160 may generate and provide motor commands 225 to adjust the hinge angle. For example, the processor 160 may determine a difference between the second hinge angle and the first hinge angle. The processor 160 may then generate motor commands 225 that identify the determined difference and provide the motor commands 225 to the motors 208.
[0060]
[0065] In some examples, the image capture device 100 may adjust the hinge angle based on receiving a user input, such as a user input received via the input device 170. For example, the image capture device 100 may display (e.g., via the foldable display 125) a graphical user interface (GUI) that enables a user to provide user input. Based on the user input, the processor 160 generates and provides motor commands 225 to the motors 208 to adjust the hinge angle. In some examples, the GUI informs the user as to whether to adjust (e.g., open or close) the hinge angle to optimize image effects (e.g., scene maximization, various functions for multi-view synthesis, bokeh, etc.). For example, the image capture device 100 may determine an object depth for an object in the captured image data, as described herein. Based on the determined object depth, image capture device 100 may notify the user via one or more GUI elements to provide input to adjust the hinge angle (e.g., open or close) to optimize the image effect. In some examples, image capture device 100 outputs a GUI element on a display, such as foldable display 125, based on the adjusted angle.
[0061]
[0066] 3A, 3B, 3C, and 3D show example camera configurations for camera optics and sensor 115A and camera optics and sensor 115B, respectively. For example, FIG. 3A shows a single camera 302 for camera optics and sensor 115A and a single camera 304 for camera optics and sensor 115B. FIG. 3B shows camera optics and sensor 115A with a first camera 302A and a second camera 302B, and camera optics and sensor 115B with a first camera 304A and a second camera 304B. Although cameras 302A and 302B and cameras 304A and 304B are shown horizontally, they can be positioned vertically or in any suitable configuration.
[0062]
[0067] Further, FIG. 3C shows the camera optics and sensor 115A having a first camera 302A, a second camera 302B, and a third camera 302C. The camera optics and sensor 115B includes a first camera 304A, a second camera 304B, and a third camera 304C. Although the cameras 302A, 302B, 302C and the cameras 304A, 304B, 304C are shown vertically, they can be positioned horizontally or in any suitable configuration. For example, FIG. 3D shows the cameras 302A, 302B, 302C of the camera optics and sensor 115A in a "Y" formation (e.g., an inverted triangle formation). FIG. 3D also shows the cameras 304A, 304B, 304C of the camera optics and sensor 115B in a similar "Y" formation.
[0063]
[0068] 4A, 4B, and 4C show a foldable device 400 including an image capture device 100 and a foldable display 125. The foldable device 400 may be, for example, a foldable smartphone or tablet. The foldable device 400 may include a housing having a first portion 401 and a second portion 403. The first portion 401 may be folded relative to the second portion 403. Each of the first portion 401 and the second portion 403 may include one or more displays. For example, as shown, the foldable display 125 includes a first display portion 125A that may be disposed within the first portion 401 and a second display portion 125B that may be disposed within the second portion 403. The first display portion 125A and the second display portion 125B may be communicatively coupled to the processor 160 (not shown in FIGS. 4A, 4B, and 4C). Each of the first and second housing portions 401, 403 may also include one or more camera optics and sensors, such as camera optics and sensors 115A, 115B. Each of the camera optics and sensors 115A and 115B may include any number of cameras arranged or positioned in any suitable configuration, such as the configurations shown with respect to Figures 3A, 3B, 3C, and 3D.
[0064]
[0069] Further, as shown in FIG. 4A, the camera optics and sensor 115A may be positioned along a first surface 402 of a first portion 401 of the housing of the foldable device 400, and the camera optics and sensor 115B may be positioned along a second surface 404 of a second device portion 403 of the housing of the foldable device 400. Further, and by way of example, the camera optics and sensor 115A may be positioned above the first display portion 125A along a corresponding vertical axis (e.g., the "Y" axis in FIG. 4A), and the camera optics and sensor 115B may be positioned above the second display portion 125B along a corresponding vertical axis. In a further example shown in FIG. 4B, the camera optics and sensor 115A may be positioned below the first display portion 125A along a corresponding vertical axis, and the camera optics and sensor 115B may be positioned below the second display portion 125B along a corresponding vertical axis.
[0065]
[0070] 4C, camera optics and sensor 115A may be positioned below the surface of first display portion 125A, and camera optics and sensor 115B may be positioned below the surface of second display portion 125B. Because camera optics and sensor 115A and camera optics and sensor 115B are each positioned below the respective surfaces of first display portion 125A and second display portion 125B, light may strike the corresponding sensor after passing through first display portion 125A and second display portion 125B, respectively. Additionally, although camera optics and sensor 115A and camera optics and sensor 115B are shown near the top of first display portion 125A and second display portion 125B, respectively, in some examples camera optics and sensor 115A and camera optics and sensor 115B may be located, completely or partially, under any additional or alternative portions of first display portion 125A and second display portion 125B, respectively.
[0066]
[0071] The central portion 453 of the foldable device 400 may include one or more hinges, such as 450A, 450B, 450C, coupling the first portion 401 to the second portion 403. The hinges 450A, 450B, 450C allow the first portion 401 to fold relative to the second portion 403, such as to allow opening and closing of the foldable device 400. As an example, the processor 160 may execute the hinge angle control engine 147 to adjust the hinge angle 406 formed between the first inner surface 402 of the first portion 401 and the second inner surface 404 of the second portion 403 based on commands generated and provided to corresponding motors (e.g., motors 208) coupled to one or more of the hinges 450A, 450B, or 450C. Additionally, in some examples, an operator or user of the foldable device 400 may manually adjust the hinge angle 406 based on a graphical user interface presented on a portion of the display 125.
[0067]
[0072] 4D illustrates the foldable device 400 capturing an image of a scene 475. The scene 475 includes, for example, a number of trees 476 and a balloon 477. In this example, a camera of the camera optics and sensor 115A, such as the camera 302, has a focal length 477A relative to the balloon 477 in the scene 475. Similarly, a camera of the camera optics and sensor 115B has a focal length 477B relative to the balloon 477 in the scene 475. Furthermore, at the current hinge angle 406, the camera of the camera optics and sensor 115A is at a distance of a baseline length 451 from the camera of the camera optics and sensor 115B. The baseline length 451 for each of a number of ranges of the hinge angle 406 may be determined during calibration of the image capture device 100 and may be stored in a non-volatile memory, such as the storage medium 110. For example, the image capture device 100 may determine a current hinge angle 406 as described herein, and may determine a corresponding baseline length 451 (e.g., from the camera of camera optics and sensor 115A to the camera of camera optics and sensor 115B) based on a table stored in the storage medium 110 that maps the hinge angle 406 to baseline length 451.
[0068]
[0073] The processor 160 may execute the capture control instructions 135 to capture first image data of the scene 475 from the camera optics and sensor 115A and second image data of the scene 475 from the camera optics and sensor 115B. Additionally, the processor 160 may execute the depth determination engine 146 as described herein to identify features of the scene 475, such as the balloon 477, and determine a disparity map based on the first image data and the second image data. The disparity may identify depth values associated with corresponding pixels of the first image data and the second image data. For example, the disparity map may include a depth value corresponding to a depth 452 from the baseline length 451 to the balloon 477.
[0069]
[0074] The processor 160 may then adjust the hinge angle 406 based on the extrinsic and intrinsic parameters corresponding to each of the cameras and the disparity map. The processor 160 may adjust the hinge angle 406 to align the image data captured using the camera optics and sensor 115A with the image data captured using the camera optics and sensor 115B. For example, after adjusting the hinge angle 406, the processor 160 may execute the capture control instructions 135 to capture a third image data of the scene 475 from the camera optics and sensor 115A and capture a fourth image data of the scene 475 from the camera optics and sensor 115B. The third image data may be more aligned with the fourth image data, for example, than the first image data is aligned with the second image data. The processor 160 may execute the depth determination engine 146 to generate a second disparity map based on the third image data and the fourth image data.
[0070]
[0075] The processor 160 may execute the image processing instructions 143 to generate a multi-perspective image, such as a 3D image, based on the third image data, the fourth image data, and the second disparity map. In some examples, the processor 160 may execute the face detection engine 144 to identify a subject's face in the generated multi-perspective image.
[0071]
[0076] In some examples, the processor 160 may execute the photo effects engine 153 to apply one or more photo effects to the generated multi-view image. For example, the executed photo effects engine 153 may apply a color shift, depth of field (e.g., a bokeh effect), AR, VR, averaging effect, or any other image capture enhancement to the multi-view image.
[0072]
[0077] 5 is a flowchart of an example process 500 for capturing an image based on an adjusted hinge angle, according to one implementation. Process 500 may be performed by one or more processors executing instructions locally at an image capture device, such as processor 160 of image capture device 100 of FIG. 1. Thus, various operations of process 500 may be represented by executable instructions carried on a storage medium of one or more computing platforms, such as storage medium 110 of image capture device 100.
[0073]
[0078] Referring to block 502, the image capture device 100 may acquire first image data from a first sensor, such as image data from the camera optics and sensor 115A. The first sensor may be positioned on a first inner surface of the foldable display. For example, the camera optics and sensor 115A may be positioned on a surface of the first display portion 125A of the foldable display 125. At block 504, the image capture device 100 may acquire second image data from a second image sensor, such as image data from the camera optics and sensor 115B. The second sensor is positioned on a second inner surface of the foldable display. For example, the camera optics and sensor 115B may be positioned on a surface of the second display portion 125B of the foldable display 125.
[0074]
[0079] At block 506, the image capture device 100 may determine a depth of the object based on the first image data and the second image data. For example, and as described herein, the image capture device 100 may identify a feature (e.g., balloon 477) in each of the first image data and the second image data. According to some examples, the image capture device 100 matches pixels having an item of interest in the first image data with pixels having a corresponding item of interest in the second image data. The image capture device 100 then generates a disparity map using any technique known in the art. The disparity map may indicate the scene depth at each corresponding pixel location. The image capture device 100 may calculate a depth value based on the focal length (e.g., 477A) of each camera, the baseline length (e.g., baseline length 451), and the disparity map.
[0075]
[0080] Proceeding to block 508, the image capture device 100 adjusts a hinge angle of a hinge coupling the first inner surface to the second inner surface based on the determined depth. For example, the image capture device 100 may increase or decrease a hinge angle, such as the hinge angle 406 of FIG. 4A, based on the determined depth. At block 510, the image capture device 100 performs an image capture operation in response to the adjustment. For example, the image capture device 100 may obtain third image data from the first sensor and fourth image data from the second sensor. The image capture device 100 may identify corresponding features in the third image data and the fourth image data and generate a second disparity map based on the identified features. The image capture device 100 may then generate a multi-view image based on the third image data, the fourth image data, and the second disparity map.
[0076]
[0081] 6 is a flowchart of an exemplary process 600 for performing an image capture operation, according to one implementation. Process 600 may be performed by one or more processors executing instructions locally at an image capture device, such as processor 160 of image capture device 100 of FIG. 1. Thus, various operations of process 600 may be represented by executable instructions carried on a storage medium of one or more computing platforms, such as storage medium 110 of image capture device 100.
[0077]
[0082] Referring to block 602, the image capture device 100 may determine a hinge angle, such as hinge angle 406, of a hinge, such as hinge 450A. The hinge couples a first inner surface (e.g., first inner surface 402) of a foldable device (e.g., foldable device 400) having a first sensor (e.g., camera optics and sensor 115A) to a second inner surface (e.g., second inner surface 404) of the foldable device having a second sensor (e.g., camera optics and sensor 115B). For example, the image capture device 100 may obtain position data 227 from the position sensor 210, for example, to determine the hinge angle.
[0078]
[0083] At block 604, the image capture device 100 may determine values of parameters corresponding to each of the first and second sensors based on the hinge angle. For example, the storage medium 110 may store the intrinsic parameters 167 and the extrinsic parameters 169 for each of the sensors. Furthermore, the intrinsic parameters 167 and the extrinsic parameters 169 may include parameters for multiple hinge range angles. For example, a first set of the intrinsic parameters 167 and the extrinsic parameters 169 may correspond to a first range of hinge angles (e.g., from 0 degrees to 5 degrees), a second set of the intrinsic parameters 167 and the extrinsic parameters 169 may correspond to a second range of hinge angles (e.g., from 5 degrees to 10 degrees), and so on. In some examples, each hinge angle has corresponding intrinsic and extrinsic parameters. The image capture device 100 may obtain, for each of the first and second sensors, an intrinsic parameter 167 and an extrinsic parameter 169 that correspond to the determined hinge angle.
[0079]
[0084] Proceeding to block 606, the image capture device 100 may obtain first image data from the first sensor and second image data from the second sensor. For example, the image capture device 100 may obtain image data 203A from the camera optics and sensor 115A and image data 203B from the camera optics and sensor 115B. At block 608, the image capture device 100 may determine a disparity of the object based on the first image data, the second image data, and the parameters. For example, the image capture device 100 may identify an object in the first image data and the second image data as described herein, and may generate a disparity map including disparity values for the object based on the extrinsic and intrinsic parameters corresponding to each camera. The image capture device 100 may apply any known technique to the disparity values to determine the disparity of the object. For example, the image capture device 100 may determine an average of the disparity values to determine the disparity for an object.
[0080]
[0085] At block 610, the image capture device 100 may determine whether the determined disparity is less than a threshold. For example, the threshold disparity may include a pre-defined threshold, and the image capture device 100 may maintain the pre-defined threshold in the storage medium 110. If the disparity is not less than the threshold, the method proceeds to block 612, where the image capture device 100 may adjust the hinge angle. For example, the image capture device 100 may provide a motor command 225 to the motor 208 to adjust the hinge angle (e.g., hinge angle 406) of the hinge (e.g., 450A) of the hinge assembly 206. The method 600 then returns to block 602.
[0081]
[0086] Referring again to block 610, if the determined disparity is less than the threshold disparity, the method proceeds to block 614, where image capture device 100 performs an image capture operation using the first image sensor and the second image sensor. For example, image capture device 100 may obtain third image data from the first sensor and fourth image data from the second sensor. Image capture device 100 may determine a disparity map based on the third image data and the fourth image data (and, in some examples, corresponding camera parameters) using any process described herein, and may generate a multi-view image based on the third image data, the fourth image data, and the disparity map.
[0082]
[0087] 7 is a flowchart of an exemplary process 700 for generating a user-created image, according to one implementation. Process 700 may be performed by one or more processors executing instructions locally at an image capture device, such as processor 160 of image capture device 100 of FIG. 1. Thus, various operations of process 700 may be represented by executable instructions carried on a storage medium of one or more computing platforms, such as storage medium 110 of image capture device 100.
[0083]
[0088] At block 702, image capture device 100 may receive an input to capture an image of a scene. For example, a user may provide an input (e.g., via I / O 170) to capture an image (e.g., take a picture) of a scene (e.g., scene 475). At block 704, in response to the input, image capture device 100 acquires first image data from a first sensor positioned within a first inner surface of the foldable display. The image capture device also acquires second image data from a second sensor positioned within a second inner surface of the foldable display. For example, camera optics and sensor 115A may be positioned within a first display portion 125A of display 125, and camera optics and sensor 115B may be positioned within a second display portion 125B of display 125.
[0084]
[0089] Proceeding to block 706, the image capture device 100 may detect the subject's face based on the first image data and the second image data. For example, the image capture device 100 may detect the subject's face within the ROI of the first image data and the second image data. Further, at block 708, the image capture device 100 may adjust a hinge angle based on the detected face. The hinge angle (e.g., hinge angle 406) couples the first inner surface of the foldable display to the second inner surface of the foldable display. For example, the image capture device 100 may determine a parallax value for the face and may calculate a depth value for the face based on the focal length of the first sensor, the baseline length between the first sensor and the second sensor, and the parallax value. The image capture device may then adjust the hinge angle based on the depth value.
[0085]
[0090] At block 710, image capture device 100 may capture images using the first sensor and the second sensor in response to the hinge angle adjustment. For example, image capture device 100 may obtain third image data from the first sensor and fourth image data from the fourth sensor. Image capture device 100 may determine a disparity map based on the third image data and the fourth image data, as described herein, and may generate a multi-view image based on the disparity map, the third image data, and the fourth image data.
[0086]
[0091] Proceeding to block 712, image capture device 100 may apply photo effects to the captured image to generate a user-created image. For example, image capture device 100 may apply any photo effects selected by the user, such as a bokeh effect, to the multi-perspective image to generate the user-created image. At block 714, image capture device 100 may store the user-created image in a corresponding tangible, non-transitory memory, such as storage medium 110.
[0087]
[0092] The following numbered clauses further describe implementation examples.
[0088] 1. A housing having a first housing portion and a second housing portion; a non-transitory machine-readable storage medium having instructions stored thereon; at least one processor coupled to the non-transitory machine-readable storage medium; 11. An image capture device comprising: acquiring first image data from a first sensor coupled to the first housing portion of the housing; acquiring second image data from a second sensor coupled to the second housing portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the depth; and performing an image capture operation based on the adjusted angle; and an image capture device configured to execute the instructions to:
[0089] 2. The at least one processor: obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third sensor data and the fourth sensor data; 13. The image capture device of claim 1, further configured to execute the instructions to:
[0090] 3. The at least one processor: generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in said non-transitory machine-readable storage medium; 3. The image capture device of clause 2, further configured to execute the instructions to:
[0091] 4. The at least one processor: Segmenting the multi-view image; applying the photo effect based on the segmented multi-view image; and 4. The image capture device of clause 3, further configured to execute the instructions to:
[0092] 5. The image capturing device of clause 4, wherein the photo effect comprises a bokeh effect.
[0093] 6. The object comprises a face; 6. The image capture device of any of clauses 1-5, wherein the at least one processor is further configured to execute the instructions to detect the face.
[0094] 7. The at least one processor: determining an angle between the first housing portion and the second housing portion; determining the depth of the object based on the angle; and 7. The image capture device of any of clauses 1 to 6, further configured to execute the instructions to:
[0095] 8. The image capture device of any of clauses 1-7, wherein the at least one processor is further configured to execute the instructions to generate disparity data based on the first image data and the second image data.
[0096] 9. The at least one processor: determining an angle between the first portion and the second portion of the housing; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; generating a depth value based on the parallax data, the baseline length, and the focal length; 9. The image capture device of clause 8, further configured to execute the instructions to:
[0097] 10. The at least one processor: determining a parallax of the object based on the parallax data; and outputting the adjusted angle based on the disparity and a disparity threshold; 10. The image capture device of any of clauses 8-9, further configured to execute the instructions to:
[0098] 11. The at least one processor: acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion based on the position data; determining the adjusted angle based on the determined angle; and 11. The image capture device of any of clauses 1 to 10, further configured to execute the instructions to:
[0099] 12. The at least one processor: determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters; 12. The image capture device of any of clauses 1 to 11, further configured to execute the instructions to:
[0100] 13. The one or more camera parameters comprise a translation matrix; 13. The image capture device of clause 12, wherein the at least one processor is further configured to execute the instructions to translate a reference of the first sensor to a corresponding reference of the second sensor based on the translation matrix.
[0101] 14. The first housing portion comprises a first portion of a display; the second housing portion comprises a second portion of the display; the first sensor is disposed beneath the first portion of the display and the second sensor is disposed beneath the second portion of the display; An image capture device as described in any of clauses 1 to 13.
[0102] 15. The image capture device of any one of clauses 1 to 14, further comprising a motor.
[0103] 16. The image capture device of clause 15, wherein the motor is configured to adjust an angle between the first housing portion and the second housing portion based on the adjusted angle.
[0104] 17. The image capture device of any of clauses 1-16, wherein the processor is further configured to execute the instructions to output a GUI element on a display based on the adjusted angle.
[0105] 18. A method for operating an image capture device, comprising: acquiring first image data from a first sensor coupled to a first portion of a housing of the image capture device; acquiring second image data from a second sensor coupled to a second portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the determined depth; and performing an image capture operation based on the adjusted angle; and A method for providing the above.
[0106] 19. Performing the image capture operation includes: obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third sensor data and the fourth sensor data; The method of clause 18.
[0107] 20. Generating a user-created image based on applying a photo effect to the multi-view image; storing said user-created image in a memory device; The method of clause 19 further comprises:
[0108] 21. Segmenting the multi-view image; applying the photo effect based on the segmented multi-view image; and 20. The method of claim 20, further comprising:
[0109] 22. The method of clause 21, wherein the photo effect comprises a bokeh effect.
[0110] 23. The method of any of clauses 18-22, wherein the object comprises a face, and the method further comprises detecting the face.
[0111] 24. Determining an angle between the first housing portion and the second housing portion of the housing; determining the depth of the object based on the angle; and Any of the methods of clauses 18 to 23, further comprising:
[0112] 25. The method of any of clauses 18-22, wherein determining the depth of the object comprises generating disparity data based on the first image data and the second image data.
[0113] 26. Determining the depth of the object comprises: determining an angle between the first housing portion and the second housing portion; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; generating a depth value based on the parallax data, the baseline length, and the focal length; The method of clause 25.
[0114] 27. Determining a disparity of the object based on the disparity data; and outputting the adjusted angle based on the disparity and a disparity threshold; Any of the methods of clauses 25 to 26, further comprising:
[0115] 28. Acquiring location data from a location sensor; determining an angle between the first housing portion and the second housing portion; determining the adjusted angle based on the determined angle; and Any of the methods of clauses 18 to 27, further comprising:
[0116] 29. Determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters; The method of any one of clauses 18 to 28, further comprising:
[0117] 30. The one or more camera parameters comprise a translation matrix; 30. The method of clause 29, the method further comprising translating fiducials of the first sensor to corresponding fiducials of the second sensor based on the translation matrix.
[0118] 31. The method of any of clauses 18-30, further comprising outputting a GUI element on a display based on the adjusted angle.
[0119] 32. A non-transitory machine-readable storage medium having instructions stored thereon, the instructions, when executed by at least one processor, acquiring first image data from a first sensor coupled to a first housing portion of a housing of the image capture device; acquiring second image data from a second sensor coupled to a second housing portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first portion and the second portion based on the depth; and performing an image capture operation based on the adjusted angle; and 23. A non-transitory machine-readable storage medium that causes the at least one processor to perform operations comprising:
[0120] 33. Performing the at least one image capture operation comprises: obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third sensor data and the fourth sensor data; 32. A non-transitory machine-readable storage medium comprising:
[0121] 34. The instructions, when executed by the at least one processor, generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in a memory device; 34. The non-transitory machine-readable storage medium of clause 33, causing the at least one processor to perform a further operation comprising:
[0122] 35. The instructions, when executed by the at least one processor, Segmenting the multi-view image; applying the photo effect based on the segmented multi-view image; and 35. The non-transitory machine-readable storage medium of clause 34, causing the at least one processor to perform a further operation comprising:
[0123] 36. The non-transitory machine-readable storage medium of clause 35, wherein the photo effect comprises a bokeh effect.
[0124] 37. The non-transitory machine-readable storage medium of any of clauses 32 to 36, wherein the instructions, when executed by the at least one processor, cause the at least one processor to perform a further operation comprising detecting a face, and the object comprises the detected face.
[0125] 38. The instructions, when executed by the at least one processor, determining an angle between the first housing portion and the second housing portion of the housing; determining the depth of the object based on the angle; and 38. The non-transitory machine-readable storage medium of any of clauses 32 to 37, further comprising causing the at least one processor to perform a further operation comprising:
[0126] 39. The non-transitory machine-readable storage medium of any of clauses 32 to 38, wherein determining the depth of the object comprises generating disparity data based on the first image data and the second image data.
[0127] 40. Determining the depth of the object comprises: determining an angle between the first housing portion and the second housing portion; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; generating a depth value based on the parallax data, the baseline length, and the focal length; 39. A non-transitory machine-readable storage medium comprising:
[0128] 41. The instructions, when executed by the at least one processor, determining a parallax of the object based on the parallax data; and outputting the adjusted angle between the first portion and the second portion based on the disparity and a disparity threshold; 41. The non-transitory machine-readable storage medium of any of clauses 39 and 40, causing the at least one processor to perform a further operation comprising:
[0129] 42. The instructions, when executed by the at least one processor, acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion; determining the adjusted angle based on the determined angle; and 42. The non-transitory machine-readable storage medium of any of clauses 32 to 41, further comprising causing the at least one processor to perform a further operation comprising:
[0130] 43. Determining the depth of the object comprises: determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle, and wherein outputting the adjusted angle is based on the one or more camera parameters. outputting the adjusted angle based on the one or more camera parameters; The non-transitory machine-readable storage medium of any one of clauses 32 to 42, further comprising:
[0131] 44. The non-transitory machine-readable storage medium of clause 43, wherein the one or more camera parameters comprise a translation matrix, and the instructions, when executed by the at least one processor, cause the at least one processor to perform a further operation comprising translating a fiducial of the first sensor to a corresponding fiducial of the second sensor based on the translation matrix.
[0132] 45. The non-transitory machine-readable storage medium of any of clauses 32 to 44, wherein the instructions, when executed by the at least one processor, cause the at least one processor to perform a further operation comprising outputting a GUI element on a display based on the adjusted angle.
[0133] 46. Means for acquiring first image data from a first sensor coupled to a first housing portion of a housing of the image capture device; means for acquiring second image data from a second sensor coupled to a second housing portion of the housing; means for determining a depth of an object based on the first image data and the second image data; means for outputting an adjusted angle between the first portion and the second portion based on the depth; means for performing an image capture operation based on the adjusted angle; A system comprising:
[0134] 47. The means for performing at least one image capture operation comprises: means for obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; means for generating a multi-view image based on the third sensor data and the fourth sensor data; The system of clause 46 comprises:
[0135] 48. Means for generating a user-created image based on applying a photo effect to the multi-view image; means for storing said user-created image in a memory device; The system of clause 47 further comprises:
[0136] 49. Means for segmenting the multi-view image; means for applying the photo effect based on the segmented multi-view image; The system of clause 48 further comprises:
[0137] 50. The system of clause 49, wherein the photo effect comprises a bokeh effect.
[0138] 51. The system of any of clauses 46 to 50, further comprising means for detecting a face, the object comprising the face.
[0139] 52. Means for determining an angle between the first housing portion and the second housing portion of the housing; means for determining the depth of the object based on the angle; The system of any of clauses 46 to 51, further comprising:
[0140] 53. The system of any of clauses 46-52, wherein the means for determining the depth of the object comprises means for generating disparity data based on the first image data and the second image data.
[0141] 54. The means for determining the depth of the object further comprises: means for determining an angle between the first housing portion and the second housing portion; means for determining a baseline length between the first sensor and the second sensor based on the determined angle; means for determining a focal length of at least one of the first sensor and the second sensor; means for generating a depth value based on the parallax data, the baseline length, and the focal length; The system of clause 53, comprising:
[0142] 55. Means for determining the disparity of the object based on the disparity data; means for outputting the adjusted angle based on the disparity and a disparity threshold; 55. The system of any of clauses 53 and 54, further comprising:
[0143] 56. Means for acquiring position data from a position sensor; means for determining an angle between the first housing portion and the second housing portion; means for determining the adjusted angle based on the determined angle; The system of any of clauses 46 to 55, further comprising:
[0144] 57. Means for determining the angle between the first housing portion and the second housing portion; means for determining one or more camera parameters based on the determined angle; means for outputting the adjusted angle based on the one or more camera parameters; The system of any of clauses 46 to 55, further comprising:
[0145] 58. The one or more camera parameters comprise a translation matrix; 58. The system of clause 57, wherein the system further comprises means for translating fiducials of the first sensor to corresponding fiducials of the second sensor based on the translation matrix.
[0146] 59. The first housing part comprises a first portion of a display; the second housing portion comprises a second portion of the display; the first sensor is disposed beneath the first portion of the display and the second sensor is disposed beneath the second portion of the display; Any system referred to in Articles 46 to 58.
[0147] 60. The system of any of clauses 46-59, further comprising means for adjusting the angle between the first housing portion and the second housing portion based on the adjusted angle.
[0148] 61. The system of any of clauses 46 to 60, further comprising means for outputting a GUI element on a display based on the adjusted angle.
[0149]
[0093] Although the methods described above refer to illustrated flow charts, many other ways of performing the acts associated with these methods may be used. For example, the order of some operations may be changed, and some embodiments may omit one or more of the described operations and / or include additional operations.
[0150]
[0094] In addition, the methods and systems described herein may be embodied, at least in part, in the form of computer-implemented processes and apparatuses for practicing these processes. The disclosed methods may also be embodied, at least in part, in the form of a tangible, non-transitory machine-readable storage medium encoded with computer program code. For example, the methods may be embodied in hardware, in executable instructions (e.g., software) executed by a processor, or in a combination of the two. The medium may include, for example, a RAM, a ROM, a CD-ROM, a DVD-ROM, a BD-ROM, a hard disk drive, a flash memory, or any other non-transitory machine-readable storage medium. When the computer program code is loaded into a computer and executed by the computer, the computer becomes an apparatus for practicing the method. The methods may also be embodied, at least in part, in a computer into which the computer program code is loaded or executed, thereby making the computer a dedicated computer for practicing the method. When the computer program code segments are implemented on a general-purpose processor, the computer program code segments configure the processor to create specific logic circuits. The methods may alternatively be embodied at least in part in an application specific integrated circuit for performing the methods. The invention as described in the claims of the original application is set forth below. [C1] a housing having a first housing portion and a second housing portion; a non-transitory machine-readable storage medium having instructions stored thereon; at least one processor coupled to the non-transitory machine-readable storage medium; 11. An image capture device comprising: acquiring first image data from a first sensor coupled to the first housing portion of the housing; acquiring second image data from a second sensor coupled to the second housing portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the depth; and performing an image capture operation based on the adjusted angle; and an image capture device configured to execute the instructions to: [C2] the at least one processor: obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third sensor data and the fourth sensor data; 5. The image capture device of claim 1, further configured to execute the instructions to: [C3] the at least one processor: generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in said non-transitory machine-readable storage medium; 3. The image capture device of claim 2, further configured to execute the instructions to: [C4] the at least one processor: Segmenting the multi-view image; applying the photo effect based on the segmented multi-view image; and 5. The image capture device of claim 3, further configured to execute the instructions to: [C5] The image capture device of C4, wherein the photo effect comprises a bokeh effect. [C6] the object comprises a face; 2. The image capture device of claim 1, wherein the at least one processor is further configured to execute the instructions to detect the face. [C7] the at least one processor: determining an angle between the first housing portion and the second housing portion; determining the depth of the object based on the angle; and 5. The image capture device of claim 1, further configured to execute the instructions to: [C8] The image capture device of C1, wherein the at least one processor is further configured to execute the instructions to generate disparity data based on the first image data and the second image data. [C9] the at least one processor: determining an angle between the first portion and the second portion of the housing; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; 9. The image capture device of claim 8, further configured to execute the instructions to: generate a depth value based on the disparity data, the baseline length, and the focal length. [C10] the at least one processor: determining a parallax of the object based on the parallax data; and outputting the adjusted angle based on the disparity and a disparity threshold; 9. The image capture device of claim 8, further configured to execute the instructions to: [C11] the at least one processor: acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion based on the position data; determining the adjusted angle based on the determined angle; and 5. The image capture device of claim 1, further configured to execute the instructions to: [C12] the at least one processor: determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters. 5. The image capture device of claim 1, further configured to execute the instructions to: [C13] the one or more camera parameters comprise a translation matrix; 13. The image capture device of claim 12, wherein the at least one processor is further configured to execute the instructions to translate a fiducial of the first sensor to a corresponding fiducial of the second sensor based on the translation matrix. [C14] the first housing portion includes a first portion of a display; the second housing portion comprises a second portion of the display; the first sensor is disposed beneath the first portion of the display and the second sensor is disposed beneath the second portion of the display; An image capture device as described in C1. [C15] The image capture device of C1, further comprising a motor. [C16] The image capture device of C15, wherein the motor is configured to adjust an angle between the first housing portion and the second housing portion based on the adjusted angle. [C17] The image capture device of C1, wherein the processor is further configured to execute the instructions to output a GUI element on a display based on the adjusted angle. [C18] 1. A method for operating an image capture device, comprising: acquiring first image data from a first sensor coupled to a first portion of a housing of the image capture device; acquiring second image data from a second sensor coupled to a second portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the determined depth; and performing an image capture operation based on the adjusted angle; and A method for providing the above. [C19] performing the image capture operation; obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third sensor data and the fourth sensor data; The method of claim 18, comprising: [C20] generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in a memory device; The method of C19, further comprising: [C21] generating the user generated image, Segmenting the multi-view image; applying the photo effect based on the segmentation; and The method of claim C20, comprising: [C22] The method of C21, wherein the photo effect comprises a bokeh effect. [C23] The method of C18, wherein the object comprises a face, the method further comprising detecting the face. [C24] determining an angle between the first housing portion and the second housing portion of the housing; and determining the depth of the object based on the angle. The method of C18, further comprising: [C25] The method of C18, wherein determining the depth of the object comprises generating disparity data based on the first image data and the second image data. [C26] Determining the depth of the object determining an angle between the first housing portion and the second housing portion; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; and generating a depth value based on the disparity data, the baseline length, and the focal length. [C27] determining a parallax of the object based on the parallax data; and outputting the adjusted angle based on the disparity and a disparity threshold; The method of C25, further comprising: [C28] acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion; determining the adjusted angle based on the determined angle; and The method of C18, further comprising: [C29] determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters. The method of C18, further comprising: [C30] the one or more camera parameters comprise a translation matrix; The method of C26, the method further comprising translating fiducials of the first sensor to corresponding fiducials of the second sensor based on the translation matrix.
Claims
1. a housing having a first housing portion and a second housing portion; a non-transitory machine-readable storage medium having instructions stored thereon; at least one processor coupled to the non-transitory machine-readable storage medium; 11. An image capture device comprising: acquiring first image data from a first sensor coupled to the first housing portion of the housing; acquiring second image data from a second sensor coupled to the second housing portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the depth; performing an image capture operation based on the adjusted angle; and an image capture device configured to execute the instructions to:
2. The at least one processor: obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third image data and the fourth image data; The image capture device of claim 1 , further configured to execute the instructions to:
3. The at least one processor: generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in said non-transitory machine-readable storage medium; The image capture device of claim 2 , further configured to execute the instructions to:
4. The at least one processor: Segmenting the multi-view image; applying the photo effect based on the segmented multi-view image; and The image capture device of claim 3 , further configured to execute the instructions to:
5. The image capture device of claim 4 , wherein the photo effect comprises a bokeh effect.
6. the object comprises a face; The image capture device of claim 1 , wherein the at least one processor is further configured to execute the instructions to detect the face.
7. The at least one processor: determining an angle between the first housing portion and the second housing portion; determining the depth of the object based on the angle; and The image capture device of claim 1 , further configured to execute the instructions to:
8. The image capture device of claim 1 , wherein the at least one processor is further configured to execute the instructions to generate disparity data based on the first image data and the second image data.
9. The at least one processor: determining an angle between the first housing portion and the second housing portion of the housing; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; generating a depth value based on the parallax data, the baseline length, and the focal length; The image capture device of claim 8 , further configured to execute the instructions to:
10. The at least one processor: determining a parallax of the object based on the parallax data; and outputting the adjusted angle based on the disparity and a disparity threshold; The image capture device of claim 8 , further configured to execute the instructions to:
11. The at least one processor: acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion based on the position data; determining the adjusted angle based on the determined angle; and The image capture device of claim 1 , further configured to execute the instructions to:
12. The at least one processor: determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters; The image capture device of claim 1 , further configured to execute the instructions to:
13. the one or more camera parameters comprise a translation matrix; 13. The image capture device of claim 12, wherein the at least one processor is further configured to execute the instructions to translate fiducials of the first sensor to corresponding fiducials of the second sensor based on the translation matrix.
14. the first housing portion includes a first portion of a display; the second housing portion comprises a second portion of the display; the first sensor is disposed beneath the first portion of the display and the second sensor is disposed beneath the second portion of the display; The image capture device of claim 1 .
15. The image capture device of claim 1 , further comprising a motor.
16. The image capture device of claim 15 , wherein the motor is configured to adjust an angle between the first housing portion and the second housing portion based on the adjusted angle.
17. The image capture device of claim 1 , wherein the processor is further configured to execute the instructions to output a GUI element on a display based on the adjusted angle.
18. 1. A method for operating an image capture device, comprising: acquiring first image data from a first sensor coupled to a first housing portion of a housing of the image capture device; acquiring second image data from a second sensor coupled to a second housing portion of the housing; determining a depth of an object based on the first image data and the second image data; outputting an adjusted angle between the first housing portion and the second housing portion based on the determined depth; and performing an image capture operation based on the adjusted angle; and A method for providing the above.
19. performing the image capture operation; obtaining third image data from the first sensor and fourth image data from the second sensor based on the output of the adjusted angle; generating a multi-view image based on the third image data and the fourth image data; 20. The method of claim 18 comprising:
20. generating a user generated image based on applying a photo effect to the multi-view image; storing said user-created image in a memory device; 20. The method of claim 19 further comprising:
21. generating the user generated image, Segmenting the multi-view image; applying the photo effect based on the segmentation; and 21. The method of claim 20 comprising:
22. The method of claim 21 , wherein the photo effect comprises a bokeh effect.
23. The method of claim 18 , wherein the object comprises a face, the method further comprising detecting the face.
24. determining an angle between the first housing portion and the second housing portion of the housing; determining the depth of the object based on the angle; and 20. The method of claim 18, further comprising:
25. The method of claim 18 , wherein determining the depth of the object comprises generating disparity data based on the first image data and the second image data.
26. Determining the depth of the object determining an angle between the first housing portion and the second housing portion; determining a baseline length between the first sensor and the second sensor based on the determined angle; and determining a focal length of at least one of the first sensor and the second sensor; generating a depth value based on the parallax data, the baseline length, and the focal length; 26. The method of claim 25 comprising:
27. determining a parallax of the object based on the parallax data; and outputting the adjusted angle based on the disparity and a disparity threshold; 26. The method of claim 25, further comprising:
28. acquiring position data from a position sensor; determining an angle between the first housing portion and the second housing portion; determining the adjusted angle based on the determined angle; and 20. The method of claim 18, further comprising:
29. determining an angle between the first housing portion and the second housing portion; determining one or more camera parameters based on the determined angle; and outputting the adjusted angle based on the one or more camera parameters; 20. The method of claim 18, further comprising:
30. the one or more camera parameters comprise a translation matrix; 30. The method of claim 29, the method further comprising translating fiducials of the first sensor to corresponding fiducials of the second sensor based on the translation matrix.
Citation Information
Patent Citations
Terminal, shooting method and storage medium
CN111355878A
Image capture device and image capture system
WO2017086027A1