High dynamic range point spread function generation for image reconstruction

A method includes capturing, by a camera disposed behind a display panel of an electronic device, a plurality of point spread functions (PSFs) through a semi-transparent pixel region of the display panel. Each of the plurality of PSFs is captured at a different exposure time. The method further includes determining, for each of the PSFs, pixel intensity data for each of a plurality of pixel locations of the PSF. The pixel intensity data is associated with the exposure time of the respective PSF. The method further includes calculating, for each pixel location, a weighted average pixel intensity value based on the pixel intensity data and the exposure time for the respective pixel location over the plurality of PSFs, and generating a high dynamic range (HDR) PSF utilizing the weighted average pixel intensity values.

TECHNICAL FIELD

This disclosure relates generally to electronic displays, and, more particularly, to the generation of a high dynamic range (HDR) point spread function (PSF) for reconstruction of images captured by a camera behind the electronic displays.

BACKGROUND

Electronic displays, such as active matrix liquid crystal displays (AMLCDs), active matrix organic light emitting displays (AMOLEDs), and micro-LED displays are typically the types of displays that are deployed for use in personal electronic devices (e.g., mobile phones, tablet computers, smartwatches, and so forth). Such personal electronic devices may generally include a front-facing camera, which may be disposed adjacent to the display, and may be utilized most often by users to capture self-portraits (e.g., “selfies”). However, as front-facing camera systems grow in complexity (e.g., depth cameras), more and more of the area designated for the display of the electronic device may be traded off to expand the area designated for the camera system. This may lead to a reduction in resolution and viewing area of the display. One technique to overcome the reduction in resolution and viewing area of the display may be to dispose the front-facing camera system completely behind or underneath the display panel. However, disposing the front-facing camera system behind the display panel may often degrade images captured by the front-facing camera. It may be thus useful to provide improved techniques to reconstruct images captured by front-facing camera systems disposed behind a display panel.

DESCRIPTION OF EXAMPLE EMBODIMENTS

The present embodiments are directed toward techniques for generating a high dynamic range (HDR) point spread function (PSF) and determining a spatially invariant low-resolution PSF for image reconstruction based thereon. In particular embodiments, an electronic device may capture, by a camera disposed behind a display panel of the electronic device, a number of point spread functions (PSFs) through a semi-transparent pixel region of the display panel. In particular embodiments, each of the number of PSFs may be captured at a different exposure time. For example, in particular embodiments, the camera behind the display panel of the electronic device may capture the number of PSFs by capturing the number of PSFs through one or more magnifying optical elements disposed between the camera lens and an image sensor of the camera. For example, in particular embodiments, the one or more magnifying optical elements may include one or more objective lens and one or more tube lens.

In particular embodiments, the electronic device may then determine, for each of the number of PSFs, pixel intensity data for each of a number of pixel locations of the PSF. In particular embodiments, the pixel intensity data may be associated with the exposure time of the respective PSF. For example, in particular embodiments, the electronic device may determine, for each of the PSFs, the pixel intensity data per unit of time by determining, for each of the PSFs, a ratio value of the pixel intensity data to the exposure time of the respective PSF. In particular embodiments, the electronic device may then calculate, for each pixel location, a weighted average pixel intensity value based on the pixel intensity data and the exposure time for the respective pixel location over the number of PSFs. In particular embodiments, the electronic device may then generate a high dynamic range (HDR) PSF utilizing the weighted average pixel intensity values. For example, in particular embodiments, the electronic device may generate the HDR PSF by generating a respective HDR PSF for each of a first color channel, a second color channel, and a third color channel. In particular embodiments, the electronic device may also generate the HDR PSF for deriving a spatially-invariant and low-resolution HDR PSF from the HDR PSF. For example, in particular embodiments, the spatially-invariant and low-resolution HDR PSF may be derived from the HDR PSF to reconstruct images captured by the camera disposed behind the display panel of the electronic device.

In this way, the present embodiments may increase the viewing area and the resolution of the display of the electronic device by disposing one or more front-facing cameras of the electronic device behind the display. For example, because of the increase in display area (e.g., having eliminated the display area typically designated for the one or more front-facing cameras), the electronic device may further provide for improved graphical user interfaces (GUI) with a full screen view in its entirety, as opposed to limited to only displaying battery status, cellular signal strength data, Wi-Fi status, time info, and so forth, in line with a notch design or hole-punch design. The present techniques may further increase an aesthetic quality of the electronic device, as well as allow a user of the electronic device to display higher resolution images on the display of the electronic device. Still further, because the one or more front-facing cameras may be placed behind the display, the present techniques may allow the one or more front-facing cameras to be placed anywhere (e.g., in a center area of the display), as opposed to in a corner or along an edge of the display of the electronic device. This may provide an improved user experience and/or GUI, such as by directing a user taking a selfie to gaze at the center area of the display and further by giving the impression of eye-to-eye contact with another user when the user is participating in a videoconference, a videotelephonic exchange, or other video-streaming service.

Furthermore, it should be appreciated that while the present embodiments are described primarily with respect to generating high dynamic range PSFs and determining a spatially invariant low-resolution PSF for image reconstruction based thereon utilizing a particular arrangement of cameras, magnifying optical elements, and light sources, the present embodiments further contemplate generating high dynamic range PSFs and determining a spatially invariant low-resolution PSF for image reconstruction based thereon utilizing any suitable arrangements of cameras, magnifying optical elements, light sources, and so forth. As such, the present embodiments as described herein may be used for generating high dynamic range PSFs and determining a spatially invariant low-resolution PSF for image reconstruction based thereon in any system where images captured by the system may be distorted (e.g., blurred) due to, for example, an inability of certain display panels to spread PSF light energy sufficiently, such that the exact spatial features of the PSF may be resolved and captured with a conventional camera sensor. For example, in addition to a camera disposed behind a display panel, the particular embodiments may equally apply to applications in which, for example, an image is captured through micro-perforations utilizing a concealed camera and/or utilizing an inverse filter to generate a higher-quality image than that achievable by less advanced optical devices.

FIG. 1Aillustrates an example diagram100A of an electronic device102. In particular embodiments, the electronic device102may include, for example, any of various personal electronic devices102, such as a mobile phone electronic device, a tablet computer electronic device, a laptop computer electronic device, and so forth. In particular embodiments, as further depicted byFIG. 1, the personal electronic device102may include, among other things, one or more processor(s)104, memory106, sensors108, cameras110, a display panel112, input structures114, network interfaces116, a power source118, and an input/output (I/O) interface120. It should be noted thatFIG. 1is merely one example of a particular implementation and is intended to illustrate the types of components that may be included as part of the electronic device102.

In particular embodiments, the one or more processor(s)104may be operably coupled with the memory106to perform various algorithms for providing interactive music conducting and composing activity through intelligence-based learning progression. Such programs or instructions executed by the processor(s)104may be stored in any suitable article of manufacture that includes one or more tangible, computer-readable media at least collectively storing the instructions or routines, such as the memory106. The memory106may include any suitable articles of manufacture for storing data and executable instructions, such as random-access memory (RAM), read-only memory (ROM), rewritable flash memory, hard drives, and so forth. Also, programs (e.g., an operating system) encoded on such a computer program product may also include instructions that may be executed by the processor(s)104to enable the electronic device102to provide various functionalities.

In particular embodiments, the sensors108may include, for example, one or more cameras (e.g., depth cameras), touch sensors, microphones, motion detection sensors, thermal detection sensors, light detection sensors, time of flight (ToF) sensors, ultrasonic sensors, infrared sensors, or other similar sensors that may be utilized to detect various user inputs (e.g., user voice inputs, user gesture inputs, user touch inputs, user instrument inputs, user motion inputs, and so forth). The cameras110may include any number of cameras (e.g., wide cameras, narrow cameras, telephoto cameras, ultra-wide cameras, depth cameras, and so forth) that may be utilized to capture various 2D and 3D images. The display panel112may include any display architecture (e.g., AMLCD, AMOLED, micro-LED, and so forth), which may provide further means by which users may interact and engage with the electronic device102. In particular embodiments, as further illustrated byFIG. 1, one more of the cameras110may be disposed behind or underneath (e.g., as indicated by the dashed lines of electronic device102) the display panel112(e.g., one or more of the cameras110may be completely concealed by the display panel112), and thus the display panel112may include a transparent pixel region and/or semi-transparent pixel region through which the one or more concealed cameras110may detect light, and, by extension, capture images. It should be appreciated that the one more of the cameras110may be disposed anywhere behind or underneath the display panel112, such as at a center area behind the display panel112, at an upper area behind the display panel112, or at a lower area behind the display panel112.

In particular embodiments, the input structures114may include any physical structures utilized to control one or more global functions of the electronic device102(e.g., pressing a button to power “ON” or power “OFF” the electronic device102). The network interface116may include, for example, any number of network interfaces suitable for allowing the electronic device102to access and receive data over one or more cloud-based networks (e.g., a cloud-based service that may service hundreds or thousands of the electronic device102and the associated users corresponding thereto) and/or distributed networks. The power source118may include any suitable source of power, such as a rechargeable lithium polymer (Li-poly) battery and/or an alternating current (AC) power converter that may be utilized to power and/or charge the electronic device102for operation. Similarly, the I/O interface120may be provided to allow the electronic device102to interface with various other electronic or computing devices, such as one or more auxiliary electronic devices.

FIG. 1Billustrates an example system and workflow diagram100B for reconstructing images captured by a camera disposed behind a display of an electronic device, in accordance with the presently disclosed embodiments. In particular embodiments, the electronic device102may capture, by an image sensor122and camera lens124disposed behind a display panel112of the electronic device102, an image of a real-world scene126. In particular embodiments, the image of the real-world scene126captured by the image sensor122may correspond to an original image128. In particular embodiments, based on the image of the real-world scene126being captured by the image sensor122through the display panel112, the original image128may be degraded (e.g., blurred or distorted). In particular embodiments, after performing (at functional block130) the capturing of the original image128, the electronic device102may retrieve, for one or more pixel regions of the original image128, the PSFs (e.g., a function of 3D diffraction pattern of light emitted from an imperceptibly small point light source and captured by one or more image sensors122) for each of the RGB color components of the original image128. In particular embodiments, that may be stored on the electronic device102. In particular embodiments, the electronic device102may determine the respective PSF for each of the RGB color components by selecting (at functional block132), from the memory106of the electronic device102, the premeasured PSFs for each of the RGB color components. In particular embodiments, the electronic device102may determine multiple PSFs in various pixel regions of the real-world scene126to capture the PSFs' variation with the angle of incidence to the optical axis of the display panel112, for example.

In particular embodiments, electronic device102may then perform (at functional block134), for the number of pixel regions of the original image128, a deconvolution of each of the RGB color components of the original image128based on their respective PSFs. In particular embodiments, the electronic device102may perform the deconvolution of each of the RGB color components by performing a Richardson-Lucy deconvolution of each of the RGB color components or by performing a Tikhonov regularized inverse filter deconvolution of each of the RGB color components. In particular embodiments, other deconvolution techniques may be utilized. In particular embodiments, the electronic device102may then generate (at functional block136) a reconstructed image138corresponding to the original image128based on the deconvolutions of each of the RGB color components. As illustrated by comparison of the original image128to the reconstructed image138, the electronic device102may generally generate the reconstructed image138by removing a blurring effect of the original image128.

FIG. 2illustrates an example system and workflow diagram200for measuring and determining one or more premeasured point spread functions (PSFs) (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) of an electronic device, in accordance with the presently disclosed embodiments. In particular embodiments, to reconstruct a degraded original image, the electronic device102may premeasure (e.g., determine experimentally during a calibration process and/or manufacturing process of the electronic device102) and store the PSFs of the electronic device102. In particular embodiments, as depicted byFIG. 2, point light source202(e.g., a white LED or an array of white LEDs) may emit a light wave into the direction of the electronic device102through, for example, a pinhole or other imperceptibly small aperture. In particular embodiments, the light wave may pass through, for example, the display panel112, the camera lens124, and may be ultimately detected by the image sensor122.

In particular embodiments, the electronic device102may then premeasure the one or more PSFs204for each of the RGB color components and/or one or more particular monochromatic color components based on, for example, a sampling of a transfer function corresponding to an effect of the display panel112in response to the point light source202. For example, in particular embodiments, the one or more PSFs of the electronic device102may represent the intensity response of the point light source202. In particular embodiments, the electronic device102may then store (at database514) the one or more premeasured PSFs204(e.g., for each of the RGB color components and/or one or more particular monochromatic color components) into, for example, the memory106to be later utilized to reconstruct images captured by the camera110disposed behind the display panel112of the electronic device102.

In particular embodiments, multiple PSFs may be premeasured in different regions of the image field to capture the PSFs' variation with the angle of incidence to the optical axis of the display panel112, for example. These multiple PSFs (e.g., for each of the RGB color components and/or one or more particular monochromatic color components) may be stored into, for example, a database206of the memory106to be later utilized to reconstruct pixel regions of images captured by the camera110disposed behind the display panel112of the electronic device102, and those reconstructed pixel regions may be then combined into the full reconstructed image. Indeed, as it may be appreciated, the one or more PSFs may describe the exact relationship between a clear image point prior to passing through the display panel112, and the blurred image point captured by the camera sensor122behind the display panel112. Thus, the one or more PSFs may be primarily determined by the pixel structure of the display panel112. Therefore, to properly reconstruct the blurred image captured by the camera sensor122behind the display panel112, the PSFs may be measured most accurately.

However, in particular embodiments, as will be further appreciated below, depending on the design of the display panel112, the display panel112may not sufficiently disperse the light of the point light source202, such that the one PSF may include closely compacted energy distribution in the central region of the captured image. Indeed, the exact spatial features of the PSF may be difficult to be resolved and captured utilizing only a conventional camera sensor122. Firstly, the intensity dynamic range of spatial features of the PSF may exceed the dynamic range of a conventional camera sensor. Additionally, if the camera sensor122pixel size is too coarse to correctly sample the one or more PSFs, and, by extension, include insufficient resolution to capture the one or more PSFs accurately, the one or more PSFs may be undersampled and only spatially-variant PSFs may be measured and thus lead to a deterioration in image quality of the images reconstructed utilizing these PSFs. For example, should the one or more PSFs be laterally shifted in either direction due to error in the premeasuring process, the one or more PSFs measured in response to the lateral shift measured utilizing only a conventional camera sensor122would result in PSFs markedly different from those one or more PSFs measured prior to the lateral shift. In accordance with the presently disclosed embodiments, it may be thus useful to provide techniques for generating a high dynamic range (HDR) point spread function (PSF) and determining a spatially invariant low-resolution PSF for image reconstruction based thereon.

FIGS. 3A, 3B, and 3Cillustrate experimental examples300A,300B,300C of different PSFs that may be measured. For example, example300A ofFIG. 3Aillustrates a PSF302, in which the PSF302is widely dispersed, as compared to a PSF304, in which the PSF304is closely compacted and the light energy concentrated in the central region. Example300B ofFIG. 3Billustrates an example306of utilizing a high-resolution measurement setting to capture the PSF304and an example308of utilizing a conventional image sensor122to capture the PSF304. While image sensor122is able to capture a widely spread PSF302, it be too coarse to correctly sample the PSFs304, the captured images308may be under-sampled, leading to a loss of information of the PSFs304. Example300C ofFIG. 3Cillustrates an example of spatially variant PSF as a result of capturing PSF304with conventional image sensor. The cross-section structures310and312of PSF304are different if the pinhole is potentially slightly shifted due to measurement inaccuracy.

FIG. 4illustrates a high-level flow diagram of a method400for generating a high dynamic range (HDR) PSF and determining a spatially invariant low-resolution PSF for image reconstruction based thereon. In particular embodiments, the method400may include at block402capturing, by the sensor122disposed behind the display panel112high resolution PSFs. For example, as will be discussed below with respect toFIG. 5, the high resolution PSFs may be captured through one or more magnifying optical elements (e.g., one or more objective lens and one or more tube lens) disposed between the camera lens124and the image sensor122. In particular embodiments, the method400may then include at block404generating a high dynamic range (HDR) PSF. Once the high resolution HDR PSF is generated, in particular embodiments, the method400may then include at block406digitally down-sampling the captured high resolution HDR PSF to match the lower resolution of the image captured by the image sensor122and generate a lower resolution PSF that may be utilized for image reconstruction.

FIG. 5illustrates an example system500for measuring one or more high resolution PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) of an electronic device, in accordance with the presently disclosed embodiments. For example, as discussed above with respect toFIG. 2, in the low resolution PSF measurement systems such as system200, the camera sensor122may be located closer to the camera lens124at the image plane501. In particular embodiments, in contrast to the system200, the high resolution PSF measurement system500may include one or more magnifying optical elements502and504disposed between the camera lens124and the image sensor124, and, more specifically, disposed between the camera lens124and the image plane501. For example, in particular embodiments, the one or more magnifying optical elements502,504may include, for example, one or more tube lens, one or more microscope objective lens, and/or one or more other magnifying lens that may be suitable for measuring a high-resolution PSF. For example, in particular embodiments, the magnifying optical element502may include an objective lens including, for example, a focal length of 18 mm and numerical aperture (NA) of 0.25 that may be spaced from the image plane501by a distance d0. In particular embodiments, the magnifying optical element504may include a tube lens that may be matched to the magnifying optical element502(e.g., objective lens) that may be spaced by a distance diand may include, for example, a focal length of 180 mm. Thus, the magnification achieved by the one or more magnifying optical elements502,504may be, for example, tenfold (e.g., magnification=180 mm/18 mm=10) with respect to the low resolution PSF measurement system200discussed above with respect toFIG. 2. In this way, the high resolution PSF measurement system500may measure one or more high resolution PSFs.

FIG. 6illustrates a flow diagram of a method600for generating high dynamic range (HDR) PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) based on linear response image sensor, in accordance with the presently disclosed embodiments. The method600may be performed utilizing one or more processing devices (e.g., the one or more processors104of the electronic device102) that may include hardware (e.g., a general purpose processor, a graphic processing unit (GPU), an application-specific integrated circuit (ASIC), a system-on-chip (SoC), a microcontroller, a field-programmable gate array (FPGA), a central processing unit (CPU), an application processor (AP), a visual processing unit (VPU), a neural processing unit (NPU), a neural decision processor (NDP), or any other processing device(s) that may be suitable for processing image data), software (e.g., instructions running/executing on one or more processors), firmware (e.g., microcode), or some combination thereof.

The method600may begin at block602with the one or more processing devices (e.g., the one or more processors104of the electronic device102) capturing an N number of PSFs with N number of different exposures, arranging or rearranging the N number of PSFs with N different exposures from lowest exposure time to highest exposure time, and determining 3D intensity datasets (x, y, t), in which (x, y) may represent a pixel spatial location while (t) may represent a respective exposure time that may be associated with a respective pixel spatial location (x, y). For example, in particular embodiments, N number of exposure times may be selected based on the image sensor122bit depth and the dynamic range of the one or more PSFs being captured. The method600may then continue at block604with the one or more processing devices (e.g., the one or more processors104of the electronic device102) subtracting an offset from each of the pixels of the captured images, verifying a response of the image sensor122is linear, and calculating one or more noise statistics) values of bright-field measurements (e.g., bright pixels) in the captured images.

The method600may continue at block606with the one or more processing devices (e.g., the one or more processors104of the electronic device102) generating one or more pixel masks from pre-determined upper and lower thresholds to avoid noise and saturation, generating additional pixel masks from the dark-field measurements (e.g., dark pixels) and highest exposure times to get non-defective pixels, and utilizing the pixel masks to select only pixels of the images that include valid and useful PSF information. Specifically, in particular embodiments, the one or more pixel masks may be generated masks to remove bright pixel artifacts (e.g., hot pixels), saturated pixels, and any other noisy pixels. Indeed, the one or more masks may determine the pixels that include useful PSF information that may be utilized for HDR PSF generation. The method600may continue at block608with the one or more processing devices (e.g., the one or more processors104of the electronic device102) computing, for each pixel spatial location (x, y), a ratio of pixel value over exposure time and utilizing the noise statistics values to calculate a weighted average pixel intensity value (e.g., irradiance value) across the N number exposure times. For example, in particular embodiments, the weighted average pixel intensity value (e.g., irradiance value) may indicate an irradiance value at each pixel location (x, y) due to the one or more captured PSFs. The method600may then conclude at block610with the one or more processing devices (e.g., the one or more processors104of the electronic device102) generating HDR PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) utilizing, example, a linear response image sensor122.

FIG. 7illustrates a flow diagram of a method700for generating low resolution HDR PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) given high resolution HDR PSFs, in accordance with the presently disclosed embodiments. The method700may be performed utilizing one or more processing devices (e.g., the one or more processors104of the electronic device102) that may include hardware (e.g., a general purpose processor, a graphic processing unit (GPU), an application-specific integrated circuit (ASIC), a system-on-chip (SoC), a microcontroller, a field-programmable gate array (FPGA), a central processing unit (CPU), an application processor (AP), a visual processing unit (VPU), a neural processing unit (NPU), a neural decision processor (NDP), or any other processing device(s) that may be suitable for processing image data), software (e.g., instructions running/executing on one or more processors), firmware (e.g., microcode), or some combination thereof. In particular embodiments, the method700may sample a high resolution HDR PSF at sampling spacing dxH, which may be utilized to generate a spatially invariant low resolution PSF to match the sensor pixel size dxL, for image reconstruction, in accordance with the presently disclosed embodiments.

The method700may begin at block702with the one or more processing devices (e.g., the one or more processors104of the electronic device102) sampling a high resolution HDR PSF at sampling spacing dxH. The method700may then continue at block704with the one or more processing devices (e.g., the one or more processors104of the electronic device102) computing an upper integer m of image sensor122pixel size dxL, over 2 times the sampling spacing dxH. The method700may continue at block706with the one or more processing devices (e.g., the one or more processors104of the electronic device102) laterally shifting the one or more high resolution HDR PSFs from −mdxHto mdxHat a step of dxHand averaging the laterally shifted high resolution HDR PSFs to generate an averaged high resolution PSF. The method700may continue at block708with the one or more processing devices (e.g., the one or more processors104of the electronic device102) down-sampling the averaged high resolution HDR PSF. The method700may then conclude at block710with the one or more processing devices (e.g., the one or more processors104of the electronic device102) generate a spatially-invariant low-resolution PSF for image reconstruction based on the down-sampled and averaged high resolution HDR PSF e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components).

FIG. 8andFIG. 9illustrate example experimental data, which shows illustrations of the forgoing techniques discussed above with respect toFIGS. 6 and 7. For example,FIG. 8illustrates a exposure time vs. pixel value plot802, which depicts a linear image sensor122response, in which each grid represents one pixel and includes with exposure time t on the x-axis and pixel value on the y-axis of the pixel intensity vs. pixel value plot802. Similarly, an example image804may depict an example pixel mask that be utilized to filter for valid pixels to be utilized in the HDR PSF calculation. Similarly,FIG. 9illustrates the process for obtaining the high resolution high dynamic range PSF for each of RGB color component, in accordance with the presently disclosed embodiments. The example images902illustrate an N number of PSFs that may be captured at an N number (e.g., 10 milliseconds (ms), 500 ms, 2000 ms, and so forth). The example image904illustrate the high resolution HDR PSF that may be generated utilizing the N number of PSFs that may be captured at the N number (e.g., 10 ms, 500 ms, 2000 ms, and so forth), as generally discussed above with respect to method600ofFIG. 6.

FIGS. 10, 11, and 12A, and 12Billustrate one or more running examples of the presently disclosed techniques for generating a high dynamic range (HDR) point spread function (PSF) and determining a spatially invariant low-resolution PSF for image reconstruction based thereon. For example,FIG. 10illustrates an original image of a high resolution PSF1002and the corresponding cross-sectional output1004(e.g., illustrating the side lobe features that may also be captured and not loss in accordance with the presently disclosed embodiments).FIG. 11illustrates the laterally shifted high resolution HDR PSFs1102and the corresponding cross-sectional outputs1104(e.g., including the side lobe features).FIG. 12Aillustrates the averaged high resolution HDR PSFs1202and the corresponding cross-sectional output1204(e.g., including the side lobe features), and, finally,FIG. 12Billustrates a resampling of the averaged high resolution HDR PSFs1206and the corresponding cross-sectional output1206(e.g., including the side lobe features). As can be seen, the example of the resampling of the averaged high resolution HDR PSFs1206shows a spatially-invariant low resolution PSF that may be utilized for proper image reconstruction.

FIG. 13illustrates a flow diagram of a method1300for generating high dynamic range (HDR) PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) based on a nonlinear response image sensor, in accordance with the presently disclosed embodiments. In particular embodiments, the method1300may be performed alternative to, or in addition to, the method600as discussed above. The method1300may be performed utilizing one or more processing devices (e.g., the one or more processors104of the electronic device102) that may include hardware (e.g., a general purpose processor, a graphic processing unit (GPU), an application-specific integrated circuit (ASIC), a system-on-chip (SoC), a microcontroller, a field-programmable gate array (FPGA), a central processing unit (CPU), an application processor (AP), a visual processing unit (VPU), a neural processing unit (NPU), a neural decision processor (NDP), or any other processing device(s) that may be suitable for processing image data), software (e.g., instructions running/executing on one or more processors), firmware (e.g., microcode), or some combination thereof.

The method1300may begin at block1302with the one or more processing devices (e.g., the one or more processors104of the electronic device102) capturing an N number of PSFs with N number of different exposures, arranging or rearranging the N number of PSFs with N different exposures from lowest exposure time to highest exposure time, and determining 3D intensity datasets (x, y, t), in which (x, y) may represent a pixel spatial location while (t) may represent a respective exposure time that may be associated with a respective pixel spatial location (x, y). For example, in particular embodiments, N number of exposure times may be selected based on the image sensor122bit depth and the dynamic range of the one or more PSFs being captured. The method1300may then continue at block1304with the one or more processing devices (e.g., the one or more processors104of the electronic device102) subtracting any pedestal values added to the image sensor122output and confirming that the image sensor122output is nonlinear. The method1300may continue at block1306with the one or more processing devices (e.g., the one or more processors104of the electronic device102) selecting set of pixel regions with low pixel intensity variations and selecting a subset of pixels for image sensor122response curve calculation.

The method1300may continue at block1308with the one or more processing devices (e.g., the one or more processors104of the electronic device102) calculating the image sensor122response curve by minimizing quadratic objective function derived based on the respective pixel intensity values and respective exposure times and a sum of squares smoothness term. The method1300may continue at block1310with the one or more processing devices (e.g., the one or more processors104of the electronic device102) generating the HDR PSF by utilizing all of the exposure times and a weighting function (e.g., hat-shaped weighting function) to generate a weighted average pixel intensity value (e.g., irradiance value) may indicate an irradiance value at each pixel location (x, y) due to the one or more captured PSFs. The method1300may then conclude at block1312with the one or more processing devices (e.g., the one or more processors104of the electronic device102) generating HDR PSFs (e.g., individually for each of the RGB color components and/or one or more particular monochromatic color components) utilizing, example, a nonlinear response image sensor122.

FIGS. 14-17illustrate one or more running examples of the presently disclosed techniques for generating a high resolution HDR PSF and determining a spatially invariant low-resolution PSF for image reconstruction based thereon, in accordance with the presently disclosed embodiments. For example, the example1400ofFIG. 14display the example PSF captured images1402,1404, and1406depicting, for example, a comparison of an original image PSF capture via computer simulation1402and the resulting image PSF capture1404utilizing, for example, a low resolution PSF measurement system200as compared to a resulting image PSF capture1406utilizing, for example, a high resolution PSF measurement system500, in accordance with the presently disclosed embodiments. Thus,FIG. 14shows that the PSF image1404captured with the low resolution PSF measurement system200may not recover all of the light information in the original image PSF capture1402. However, utilizing the high resolution PSF measurement system500, the captured PSF image1406more closely matches the original image PSF capture1402.

In particular embodiments, the example1500ofFIG. 15example PSF captured images1502,1504, and1506depict the resulting image PSF capture1502(e.g., captured over a short exposure time) and resulting image PSF capture1504(e.g., captured over a long exposure time) prior to applying the present HDR PSF techniques. On the other hand, the resulting image PSF capture1506(e.g., generated based on the PSF captured over multiple exposure times) and applying the present HDR PSF techniques, in accordance with the presently disclosed embodiments. Indeed, the resulting image PSF capture1506illustrates a high resolution HDR PSF, in accordance with the presently disclosed embodiments.FIG. 16andFIG. 17illustrate examples1600and1700of generating the low resolution spatially-invariant PSF for image reconstruction. For example, the example image1602illustrates the high resolution HDR PSF, the example image1604illustrates the laterally shifted and averaged high resolution PSF, and the example image1606illustrates the digitally down-sampled low resolution spatially-invariant PSF to be utilized for image reconstruction. For example, referring toFIG. 17, the example image1702illustrates blurred image, and the example image1704illustrates the digitally down-sampled low resolution spatially-invariant PSF based reconstructed image.

FIG. 18illustrates a flow diagram of a method1800for generating a high dynamic range (HDR) point spread function (PSF) for image reconstruction based thereon, in accordance with the presently disclosed embodiments. The method1800may be performed utilizing one or more processing devices (e.g., the one or more processors104) that may include hardware (e.g., a general purpose processor, a graphic processing unit (GPU), an application-specific integrated circuit (ASIC), a system-on-chip (SoC), a microcontroller, a field-programmable gate array (FPGA), a central processing unit (CPU), an application processor (AP), a visual processing unit (VPU), a neural processing unit (NPU), a neural decision processor (NDP), or any other processing device(s) that may be suitable for processing image data), software (e.g., instructions running/executing on one or more processors), firmware (e.g., microcode), or some combination thereof.

The method1800may begin block1802with the one or more processing devices (e.g., one or more processors104of the electronic device102) capturing, by a camera disposed behind a display panel of the electronic device, a plurality of point spread functions (PSFs) through a semi-transparent pixel region of the display panel, in which each of the plurality of PSFs is captured at a different exposure time. The method1800may then continue at block1804with the one or more processing devices (e.g., one or more processors104of the electronic device102) determining, for each of the plurality of PSFs, pixel intensity data for each of a plurality of pixel locations of the PSF, in which the pixel intensity data is associated with the exposure time of the respective PSF. The method1800may then continue at block1806with the one or more processing devices (e.g., one or more processors104of the electronic device102) calculating, for each pixel location, a weighted average pixel intensity value based on the pixel intensity data and the exposure time for the respective pixel location over the plurality of PSFs. The method1800may then conclude at block1808with the one or more processing devices (e.g., one or more processors104of the electronic device102) generating a high dynamic range (HDR) PSF utilizing the weighted average pixel intensity values.

In this way, the present embodiments may increase the viewing area and the resolution of the display panel112of the electronic device102by disposing one or more front-facing cameras110of the electronic device102behind the display panel112. For example, because of the increase in display area (e.g., having eliminated the display area typically designated for the one or more front-facing cameras110), the electronic device102may further provide for improved (GUIs) with a full screen view in its entirety, as opposed to limited to only displaying battery status, cellular signal strength data, Wi-Fi status, time info, and so forth, in line with a notch design or hole-punch design. The present techniques may further increase an aesthetic quality of the electronic device102, as well as allow a user of the electronic device102to display higher resolution images on the display panel112of the electronic device102. Still further, because the one or more front-facing cameras110may be placed behind the display panel112, the present techniques may allow the one or more front-facing cameras110to be placed anywhere, such as in a center area of the display panel112(e.g., as opposed to in a corner or along an edge of the display panel112) of the electronic device102. This may provide an improved user experience and/or GUI, such as by directing a user taking a selfie to gaze at the center area of the display panel112, and further by giving the impression of eye-to-eye contact with another user when the user is participating in a videoconference, a videotelephonic exchange, or other video-streaming service.

FIG. 19illustrates an example computer system1900that may be utilized for generating a high dynamic range (HDR) point spread function (PSF) and determining a spatially invariant low-resolution PSF for image reconstruction based thereon, in accordance with the presently disclosed embodiments. In particular embodiments, one or more computer systems1900perform one or more steps of one or more methods described or illustrated herein. In particular embodiments, one or more computer systems1900provide functionality described or illustrated herein. In particular embodiments, software running on one or more computer systems1900performs one or more steps of one or more methods described or illustrated herein or provides functionality described or illustrated herein. Particular embodiments include one or more portions of one or more computer systems1900. Herein, reference to a computer system may encompass a computing device, and vice versa, where appropriate. Moreover, reference to a computer system may encompass one or more computer systems, where appropriate.

This disclosure contemplates any suitable number of computer systems1900. This disclosure contemplates computer system1900taking any suitable physical form. As example and not by way of limitation, computer system1900may be an embedded computer system, a system-on-chip (SOC), a single-board computer system (SBC) (e.g., a computer-on-module (COM) or system-on-module (SOM)), a desktop computer system, a laptop or notebook computer system, an interactive kiosk, a mainframe, a mesh of computer systems, a mobile telephone, a personal digital assistant (PDA), a server, a tablet computer system, an augmented/virtual reality device, or a combination of two or more of these. Where appropriate, computer system1900may include one or more computer systems1900; be unitary or distributed; span multiple locations; span multiple machines; span multiple data centers; or reside in a cloud, which may include one or more cloud components in one or more networks.

Where appropriate, one or more computer systems1900may perform without substantial spatial or temporal limitation one or more steps of one or more methods described or illustrated herein. As an example, and not by way of limitation, one or more computer systems1900may perform in real time or in batch mode one or more steps of one or more methods described or illustrated herein. One or more computer systems1900may perform at different times or at different locations one or more steps of one or more methods described or illustrated herein, where appropriate.

In particular embodiments, computer system1900includes a processor1902, memory1904, storage1906, an input/output (I/O) interface1906, a communication interface1910, and a bus1912. Although this disclosure describes and illustrates a particular computer system having a particular number of particular components in a particular arrangement, this disclosure contemplates any suitable computer system having any suitable number of any suitable components in any suitable arrangement.

In particular embodiments, processor1902includes hardware for executing instructions, such as those making up a computer program. As an example, and not by way of limitation, to execute instructions, processor1902may retrieve (or fetch) the instructions from an internal register, an internal cache, memory1904, or storage1906; decode and execute them; and then write one or more results to an internal register, an internal cache, memory1904, or storage1906. In particular embodiments, processor1902may include one or more internal caches for data, instructions, or addresses. This disclosure contemplates processor1902including any suitable number of any suitable internal caches, where appropriate. As an example, and not by way of limitation, processor1902may include one or more instruction caches, one or more data caches, and one or more translation lookaside buffers (TLBs). Instructions in the instruction caches may be copies of instructions in memory1904or storage1906, and the instruction caches may speed up retrieval of those instructions by processor1902.

Data in the data caches may be copies of data in memory1904or storage1906for instructions executing at processor1902to operate on; the results of previous instructions executed at processor1902for access by subsequent instructions executing at processor1902or for writing to memory1904or storage1906; or other suitable data. The data caches may speed up read or write operations by processor1902. The TLBs may speed up virtual-address translation for processor1902. In particular embodiments, processor1902may include one or more internal registers for data, instructions, or addresses. This disclosure contemplates processor1902including any suitable number of any suitable internal registers, where appropriate. Where appropriate, processor1902may include one or more arithmetic logic units (ALUs); be a multi-core processor; or include one or more processors1902. Although this disclosure describes and illustrates a particular processor, this disclosure contemplates any suitable processor.

In particular embodiments, memory1904includes main memory for storing instructions for processor1902to execute or data for processor1902to operate on. As an example, and not by way of limitation, computer system1900may load instructions from storage1906or another source (such as, for example, another computer system1900) to memory1904. Processor1902may then load the instructions from memory1904to an internal register or internal cache. To execute the instructions, processor1902may retrieve the instructions from the internal register or internal cache and decode them. During or after execution of the instructions, processor1902may write one or more results (which may be intermediate or final results) to the internal register or internal cache. Processor1902may then write one or more of those results to memory1904. In particular embodiments, processor1902executes only instructions in one or more internal registers or internal caches or in memory1904(as opposed to storage1906or elsewhere) and operates only on data in one or more internal registers or internal caches or in memory1904(as opposed to storage1906or elsewhere).

One or more memory buses (which may each include an address bus and a data bus) may couple processor1902to memory1904. Bus1912may include one or more memory buses, as described below. In particular embodiments, one or more memory management units (MMUs) reside between processor1902and memory1904and facilitate accesses to memory1904requested by processor1902. In particular embodiments, memory1904includes random access memory (RAM). This RAM may be volatile memory, where appropriate. Where appropriate, this RAM may be dynamic RAM (DRAM) or static RAM (SRAM). Moreover, where appropriate, this RAM may be single-ported or multi-ported RAM. This disclosure contemplates any suitable RAM. Memory1904may include one or more memories1904, where appropriate. Although this disclosure describes and illustrates particular memory, this disclosure contemplates any suitable memory.

In particular embodiments, storage1906includes mass storage for data or instructions. As an example, and not by way of limitation, storage1906may include a hard disk drive (HDD), a floppy disk drive, flash memory, an optical disc, a magneto-optical disc, magnetic tape, or a Universal Serial Bus (USB) drive or a combination of two or more of these. Storage1906may include removable or non-removable (or fixed) media, where appropriate. Storage1906may be internal or external to computer system1900, where appropriate. In particular embodiments, storage1906is non-volatile, solid-state memory. In particular embodiments, storage1906includes read-only memory (ROM). Where appropriate, this ROM may be mask-programmed ROM, programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), electrically alterable ROM (EAROM), or flash memory or a combination of two or more of these. This disclosure contemplates mass storage1906taking any suitable physical form. Storage1906may include one or more storage control units facilitating communication between processor1902and storage1906, where appropriate. Where appropriate, storage1906may include one or more storages1906. Although this disclosure describes and illustrates particular storage, this disclosure contemplates any suitable storage.

In particular embodiments, I/O interface1906includes hardware, software, or both, providing one or more interfaces for communication between computer system1900and one or more I/O devices. Computer system1900may include one or more of these I/O devices, where appropriate. One or more of these I/O devices may enable communication between a person and computer system1900. As an example, and not by way of limitation, an I/O device may include a keyboard, keypad, microphone, monitor, mouse, printer, scanner, speaker, still camera, stylus, tablet, touch screen, trackball, video camera, another suitable I/O device or a combination of two or more of these. An I/O device may include one or more sensors. This disclosure contemplates any suitable I/O devices and any suitable I/O interfaces1906for them. Where appropriate, I/O interface1906may include one or more device or software drivers enabling processor1902to drive one or more of these I/O devices. I/O interface1906may include one or more I/O interfaces1906, where appropriate. Although this disclosure describes and illustrates a particular I/O interface, this disclosure contemplates any suitable I/O interface.

In particular embodiments, communication interface1910includes hardware, software, or both providing one or more interfaces for communication (such as, for example, packet-based communication) between computer system1900and one or more other computer systems1900or one or more networks. As an example, and not by way of limitation, communication interface1910may include a network interface controller (NIC) or network adapter for communicating with an Ethernet or other wire-based network or a wireless NIC (WNIC) or wireless adapter for communicating with a wireless network, such as a WI-FI network. This disclosure contemplates any suitable network and any suitable communication interface1910for it.

As an example, and not by way of limitation, computer system1900may communicate with an ad hoc network, a personal area network (PAN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), or one or more portions of the Internet or a combination of two or more of these. One or more portions of one or more of these networks may be wired or wireless. As an example, computer system1900may communicate with a wireless PAN (WPAN) (such as, for example, a BLUETOOTH WPAN), a WI-FI network, a WI-MAX network, a cellular telephone network (such as, for example, a Global System for Mobile Communications (GSM) network), or other suitable wireless network or a combination of two or more of these. Computer system1900may include any suitable communication interface1910for any of these networks, where appropriate. Communication interface1910may include one or more communication interfaces1910, where appropriate. Although this disclosure describes and illustrates a particular communication interface, this disclosure contemplates any suitable communication interface.

In particular embodiments, bus1912includes hardware, software, or both coupling components of computer system1900to each other. As an example, and not by way of limitation, bus1912may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a front-side bus (FSB), a HYPERTRANSPORT (HT) interconnect, an Industry Standard Architecture (ISA) bus, an INFINIBAND interconnect, a low-pin-count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCIe) bus, a serial advanced technology attachment (SATA) bus, a Video Electronics Standards Association local (VLB) bus, or another suitable bus or a combination of two or more of these. Bus1912may include one or more buses1912, where appropriate. Although this disclosure describes and illustrates a particular bus, this disclosure contemplates any suitable bus or interconnect.

Herein, “automatically” and its derivatives means “without human intervention,” unless expressly indicated otherwise or indicated otherwise by context.