Monochrome guided Bayer demosaiced image processing

By using monochrome images as a guiding filter, the de-mosaic process of color images is improved, solving the problems of artifacts and resolution reduction in the combination of Bayer and monochrome sensors, and achieving higher quality image capture.

CN121794718APending Publication Date: 2026-04-03QUALCOMM INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-04
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Demosaicing of color images can introduce artifacts and reduced resolution, especially when using a combination of Bayer and monochrome sensors.

Method used

Image registration and scaling are performed by using monochrome images as guide filters, and hybrid image frames are determined based on the combination of color and monochrome image frames with hybrid weights to improve the demosaicing process.

Benefits of technology

It improves image quality, reduces artifacts, increases brightness and resolution, enhances image clarity, and captures images with higher detail.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121794718A_ABST
    Figure CN121794718A_ABST
Patent Text Reader

Abstract

This disclosure provides systems, methods, and devices for image signal processing that support improved demosaicing of color image signals. In a first aspect, an image processing method includes receiving a first image frame and a second image frame. The method may also include determining a first demosaiced image frame by applying a first demosaicking process to the first image frame, and determining a second demosaiced image frame by applying a second demosaicking process to the first image frame based on the second image frame. A blending weight may be determined based on the first image frame and the second image frame, and a blended image frame may be determined by combining pixel values from corresponding portions of the first demosaiced image frame and the second demosaiced image frame according to the blending weight. Other aspects and features are also claimed and described.
Need to check novelty before this filing date? Find Prior Art

Description

Cross-references to related applications

[0001] This application claims the benefit of U.S. Patent Application No. 18 / 466,433, filed September 13, 2023, entitled “MONO GUIDED BAYER DEMOSAICIMAGE PROCESSING,” which is expressly incorporated herein by reference in its entirety. Technical Field

[0002] This disclosure relates generally to image processing, and more specifically to image processing of color image signals. Several features can be implemented and provide improved image processing, including improved demosaicing of color image signals. Background Technology

[0003] An image capture device is a device capable of capturing one or more digital images (whether still images for photographs or sequences of images for video). Capture devices can be integrated into a variety of devices. For example, an image capture device may include a standalone digital camera or digital video camera, a wireless communication device with a camera (such as a mobile phone, cellular, or satellite radio phone), a personal digital assistant (PDA), a panel or tablet device, a gaming device, a computing device (such as a webcam, video surveillance camera), or other devices with digital imaging or video capabilities.

[0004] Color images can be captured as color image signals by discrete sensor elements within an image sensor. For many types of color image sensors, these color image signals may require further processing due to the sensor's architecture and methodology. Specifically, a single sensor element may only be able to capture one color (red, green, or blue) at a given pixel location. Incomplete color information at each sensor element location results in color mosaic. To obtain a full-color image across all pixels, spatial interpolation processing called demosaicing may be applied to the image signal. Demosaicing estimates the missing color information at each pixel and creates a coherent, full-color image. Summary of the Invention

[0005] The following summary outlines some aspects of this disclosure to provide a basic understanding of the techniques discussed. This summary is not an exhaustive overview of all the intended features of this disclosure, nor is it intended to identify key or essential elements of all aspects of this disclosure, nor to define the scope of any or all aspects of this disclosure. The sole purpose of this summary is to present, in a general form, some concepts of one or more aspects of this disclosure as a prelude to the more detailed description given later.

[0006] In multi-camera configurations, both color and monochrome sensors can be used together to enhance light sensitivity in color imaging. Typically, each image stream undergoes separate demosaic and ISP processes before being merged during output conversion. However, demosaicing of color images can introduce artifacts, including color aliasing or false colors, and reduce resolution compared to the corresponding image (such as a monochrome image).

[0007] In various respects, the proposed technique improves upon this by guiding the demosaic process using filters derived from another image, such as a monochrome image. Specifically, two images can be registered and scaled, and features from one image (such as a monochrome image) can be used to guide the extraction of RGB values ​​from the other image (such as a color image). Blending weights are determined by comparing the values ​​of the images. For example, when the monochrome image is flat and the RGB image exhibits texture or edges, the weights may be biased towards the RGB image.

[0008] In some implementations, the blending weights can be determined based on comparing corresponding positions in the first and second image frames. In such cases, the weights may be increased for positions where pixel values ​​are within each other's thresholds. This implementation improves the determination of the blending weights, thereby ensuring that details from the best demosaiced image are extracted at each location within the image, thus improving image quality. The blending weights can be determined on a pixel-by-pixel basis, ensuring that precise selection between demosaiced images at higher levels of detail is possible, further enhancing image quality. Monochrome image frames can be used as guiding filters in the demosaicing process to enhance the sharpness of the resulting image by reducing color aliasing and increasing brightness.

[0009] In one aspect, a method is provided, the method comprising: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0010] In another aspect, an apparatus is provided, comprising a memory storing processor-readable code and at least one processor coupled to the memory. The at least one processor may be configured to execute the processor-readable code to cause the at least one processor to perform operations including: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0011] In another aspect, a non-transitory computer-readable medium is provided that stores instructions, when executed by a processor, causing the processor to perform operations including: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0012] In another aspect, an image capture device is provided, comprising a first image sensor, a second image sensor, a memory storing processor-readable code, and at least one processor coupled to the memory, the first image sensor, and the second image sensor. The at least one processor may be configured to execute the processor-readable code to cause the at least one processor to perform operations including: receiving a first image frame from the first image sensor and receiving a second image frame from the second image sensor; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0013] The image processing methods described herein can be performed by an image capture device and / or on image data captured by one or more image capture devices. An image capture device (a device capable of capturing one or more digital images, whether still photographs or video sequences) can be incorporated into a variety of devices. By way of example, an image capture device may include a standalone digital camera or digital video camera, a wireless communication device equipped with a camera (such as a mobile phone, cellular, or satellite radio phone), a personal digital assistant (PDA), a panel or tablet device, a gaming device, a computing device (such as a webcam, video surveillance camera), or other devices with digital imaging or video capabilities.

[0014] The image processing techniques described herein may relate to a digital camera having an image sensor and processing circuitry (e.g., an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a graphics processing unit (GPU), or a central processing unit (CPU)). An image signal processor (ISP) may include one or more of these processing circuits and is configured to perform operations to acquire image data for processing according to the image processing techniques described herein and / or those involved in the image processing techniques described herein. An ISP may be configured to control the capture of image frames from one or more image sensors and to determine one or more image frames from said one or more image sensors to generate a view of a scene in an output image frame. The output image frame may be part of a sequence of image frames forming a video sequence. The video sequence may include additional image frames received from the image sensor or other image sensors.

[0015] In an example application, an image signal processor (ISP) may receive instructions for capturing a sequence of image frames in response to the loading of software, such as a camera application, to generate a preview display from an image capture device. The ISP may be configured to generate a single output image frame stream based on image frames received from one or more image sensors. The single output image frame stream may include raw image data from the image sensors, merged image data from the image sensors, or corrected image data processed by one or more algorithms within the ISP. For example, image frames may be processed by an image post-processing engine (IPE) and / or other image processing circuitry to process the image frames obtained from the image sensors (which may have undergone some processing before being output to the ISP), thereby performing one or more of tone mapping, portrait lighting, contrast enhancement, gamma correction, etc. The output image frames from the ISP may be stored in memory and retrieved by an application processor executing the camera application, which may perform further processing on the output image frames to adjust their appearance and reproduce them on a display for user viewing.

[0016] After an image signal processor and / or application processor (such as the image processing techniques described in the various embodiments herein) determines an output image frame representing a scene, the output image frame may be displayed on a device display as a single still image and / or as part of a video sequence, saved to a storage device as a picture or video sequence, transmitted over a network, and / or printed to an output medium. For example, an image signal processor (ISP) may be configured to acquire input frames of image data (e.g., pixel values) from one or more image sensors and subsequently generate corresponding output image frames (e.g., preview display frames, still image captures, frames for video, frames for object tracking, etc.). In other examples, the image signal processor may output image frames to various output devices and / or camera modules for further processing, such as for 3A parameter synchronization (e.g., autofocus (AF), auto white balance (AWB), and auto exposure control (AEC)), to generate video files via the output frames, to configure frames for display, to configure frames for storage, to transmit frames via a network connection, etc. Generally, an image signal processor (ISP) can obtain incoming frames from one or more image sensors, generate an output frame stream, and output the output frame stream to various output destinations.

[0017] In some aspects, output image frames can be generated by combining various aspects of the image correction disclosed herein with other computational photographic techniques such as high dynamic range (HDR) photography or multi-frame noise reduction (MFNR). In the case of HDR photography, the first and second image frames are captured using different exposure times, different apertures, different lenses, and / or other characteristics that can result in improved dynamic range of the fused image when combining the two image frames. In some aspects, the method can be performed for MFNR photography, wherein the first and second image frames are captured using the same or different exposure times, and the first and second image frames are fused to generate a corrected first image frame that has reduced noise compared to the captured first image frame.

[0018] In some aspects, the device may include an image signal processor or processor (e.g., an application processor) that includes specific functionalities for camera control and / or processing, such as enabling or disabling the merging module or otherwise controlling aspects of image correction. The methods and techniques described herein may be performed entirely by the image signal processor or processor, or the various operations may be separated between the image signal processor and the processor, and in some aspects across additional processors.

[0019] The device may include one, two, or more image sensors, such as a first image sensor. When multiple image sensors are present, their configurations may differ. For example, the first image sensor may have a larger field of view (FOV) than the second image sensor, or the first image sensor may have a different sensitivity or a different dynamic range than the second image sensor. In one example, the first image sensor may be a wide-angle image sensor, and the second image sensor may be a long-range image sensor. In another example, the first sensor is configured to acquire an image through a first lens having a first optical axis, and the second sensor is configured to acquire an image through a second lens having a second optical axis different from the first optical axis. Additionally or alternatively, the first lens may have a first magnification, and the second lens may have a second magnification different from the first magnification. Any of these or other configurations may be part of a lens cluster on a mobile device, such as where multiple image sensors and associated lenses are located at offset positions on the front or rear of the mobile device. Additional image sensors with larger, smaller, or the same field of view may be included. The image processing techniques described herein can be applied to image frames captured from any of the image sensors in a multi-sensor device.

[0020] In an additional aspect of this disclosure, an apparatus configured for image processing and / or image capture is disclosed. The apparatus includes components for capturing image frames. The apparatus also includes one or more components for capturing data representing a scene, such as image sensors (including charge-coupled device (CCD), Bayer filter sensors, infrared (IR) detectors, ultraviolet (UV) detectors, complementary metal-oxide-semiconductor (CMOS) sensors) and time-of-flight detectors. The apparatus may further include components for focusing and / or directing light onto one or more image sensors (including simple lenses, compound lenses, spherical lenses, and aspherical lenses). These components can be controlled to capture a first image frame and / or a second image frame input to the image processing techniques described herein.

[0021] Other aspects, features, and specific embodiments will become apparent to those skilled in the art when they review the following description of particular exemplary aspects in conjunction with the accompanying drawings. Although features may be discussed hereinafter with reference to certain aspects and drawings, various aspects may include one or more of the advantageous features discussed herein. In other words, while one or more aspects may be discussed having certain advantageous features, one or more such features may also be used depending on the various aspects. Similarly, although exemplary aspects may be discussed hereinafter as aspects of an apparatus, system, or method, exemplary aspects can be implemented in various apparatuses, systems, and methods.

[0022] This method can be embedded as computer program code in a computer-readable medium, the computer program code including instructions that cause a processor to perform the steps of the method. In some embodiments, the processor may be part of a mobile device including: a first network adapter configured to transmit data, such as recorded images or videos or streaming data, via a first network connection among a plurality of network connections; and a processor coupled to the first network adapter and memory. The processor enables the output image frames described herein to be transmitted via a wireless communication network, such as a 5G NR communication network.

[0023] The features and technical advantages of the examples according to this disclosure have been summarized rather extensively above in order to better understand the detailed description below. Additional features and advantages will be described below. The disclosed concepts and specific examples can be readily utilized as the basis for modifying or designing other structures for achieving the same purpose of this disclosure. Such equivalent constructions do not depart from the scope of the appended claims. The characteristics of the concepts disclosed herein (both their organization and manner of operation) and their associated advantages will be better understood in conjunction with the accompanying drawings, based on the following description. Each figure in the accompanying drawings is provided for illustrative and descriptive purposes and not as a limitation of the definitions in the claims.

[0024] While aspects and implementations are described herein by way of example, those skilled in the art will understand that additional implementations and use cases may arise in many different arrangements and scenarios. The innovations described herein can be implemented across many different platform types, devices, systems, shapes, sizes, and package arrangements. For example, aspects and / or devices may be implemented via integrated chip implementations and other devices based on non-modular components (e.g., end-user devices, vehicles, communication devices, computing devices, industrial equipment, retail / purchasing devices, medical devices, AI-enabled devices, etc.). While some examples may or may not specifically point to a use case or application, the applicability of various types of the described innovations is evident. The scope of implementations ranges from chip-level or modular components to non-modular, non-chip-level implementations, and further to aggregated, distributed, or original equipment manufacturer (OEM) devices or systems incorporating one or more aspects of the described innovations. In some practical settings, devices incorporating the described aspects and features may also necessarily include additional components and features for implementing and practicing the claimed and described aspects. For example, the transmission and reception of wireless signals necessarily involve multiple components (e.g., hardware components, including antennas, radio frequency (RF) chains, power amplifiers, modulators, buffers, processors, interleavers, adders / summers, etc.) for analog and digital purposes. The innovations described herein are intended to be implemented in a variety of devices, chip-level components, systems, distributed arrangements, end-user equipment, etc., with different sizes, shapes, and constructions. Attached Figure Description

[0025] A further understanding of the nature and advantages of this disclosure can be achieved by referring to the following figures. In the figures, similar components or features may have the same reference numerals. Furthermore, various components of the same type can be distinguished by adding a dash after the reference numerals and a second reference numeral for differentiation between similar components. If only the first reference numeral is used in the specification, the description applies to any one of the similar components having the same first reference numeral, regardless of the second reference numerals.

[0026] Figure 1 A block diagram of an example device for performing image capture from one or more image sensors is shown.

[0027] Figure 2 This is a block diagram illustrating an example data flow path for image data processing in an image capture device according to one or more embodiments of the present disclosure.

[0028] Figure 3 This is a block diagram of a system for determining the output image frame of a combined image sensor application, according to one aspect of this disclosure.

[0029] Figure 4This is a flowchart of a demosaic process guided by one aspect of this disclosure.

[0030] Figure 5 A flowchart is shown of an example method for processing image data to perform demosaic according to some embodiments of the present disclosure.

[0031] Figure 6 This is a block diagram illustrating an example processor configuration for image data processing in an image capture device according to one or more embodiments of the present disclosure.

[0032] The same reference numerals and names in the various figures indicate the same elements. Detailed Implementation

[0033] The detailed description set forth below in conjunction with the accompanying drawings is intended as a description of various configurations and is not intended to limit the scope of this disclosure. Rather, the detailed description includes specific details for providing a thorough understanding of the subject matter of the invention. It will be apparent to those skilled in the art that these specific details are not necessary in every situation, and in some cases, well-known structures and components are shown in block diagram form for clarity of presentation.

[0034] This disclosure provides systems, apparatus, methods, and computer-readable media that support image processing, including demosaic techniques for color image signals.

[0035] Specifically, combined image sensor applications can use two or more image sensors of different types to capture images. For example, a Bayer and monochrome combined system may include a Bayer image sensor and a monochrome image sensor. The Bayer sensor can use a color filter array to capture color information, while the monochrome sensor can capture only brightness information. This combination allows for the capture of full-color images and higher-sensitivity black-and-white images.

[0036] In such a combined system, color and monochrome images can be processed using separate pipelines, which may include demosaicing, color correction, gamma correction, and output conversion (such as conversion to YUV signals). Demosaicing can be particularly challenging due to the sampling nature of Bayer images. This process involves reconstructing a full-color image from incomplete color information captured by a Bayer sensor. However, demosaicing can introduce limitations and challenges such as false colors or aliasing, and reduced resolution compared to a full-resolution monochrome image. On the other hand, monochrome images can skip the mosaic process and can undergo only gamma correction, as they directly capture grayscale information. Once both the Bayer and monochrome images have been processed separately, image fusion can be performed. However, given the drawbacks of the demosaicing process, fusion may incorporate problems from the color image, such as false colors, aliasing, and reduced resolution.

[0037] One solution to this problem is to determine multiple demosaic images for a received color image and blend these images based on corresponding images (such as individual monochrome images). In one example, the computing device receives a first image frame and a second image frame. In some implementations, the first image frame may be a color image frame, and the second image frame may be a monochrome image frame. In some implementations, the computing device may perform registration and scaling of the first and second image frames. The computing device may determine a first demosaic image frame by applying a first demosaic process to the first image frame, and may determine a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame. For example, a monochrome image frame may be applied as a guide filter for the second demosaic process. The computing device may determine blending weights based on the first and second image frames, and may also determine a blended image frame by combining pixel values ​​from corresponding portions of the first and second demosaic image frames according to the blending weights. The blending weights can be determined based on a location within the second demosaic image frame, using a comparison of corresponding locations in the first and second image frames. For example, the weight assigned to the second demosaic image frame can be increased for corresponding locations in the first and second image frames where pixel values ​​are within a threshold. The blending weights can also be determined based on: a variance measurement between the first and second image frames, a texture comparison between the first and second image frames, edges detected within the first and second image frames, or a combination thereof. Furthermore, the blending weights can be determined for each pixel within the second demosaic image frame, and the blended image frame can be determined as a pixel-wise combination of the first and second demosaic image frames.

[0038] Specific embodiments of the subject matter described in this disclosure can be implemented to achieve one or more of the following potential advantages or benefits. In some aspects, this disclosure provides techniques for fusion that combine the advantages of two types of images to enhance overall image quality and provide a more comprehensive presentation of the scene. Specifically, the proposed techniques improve fusion techniques for combining image sensor applications, thereby allowing for better capture of monochrome images with higher sensitivity and resolution, while also incorporating improved color information from color sensors. Furthermore, the proposed techniques reduce negative visual artifacts from the demosaicing process, thereby enabling the incorporation of improved shading information without sacrificing other aspects of the image. Thus, the proposed techniques improve the image quality of the captured image.

[0039] A major benefit of improved image quality is that it allows for better and more accurate / attractive capture of the subject. With increased image quality, cameras and smartphones can capture more detail, color, and sharpness in photos and videos. For example, by reducing artifacts and other errors, improved image quality better reflects the subject of an image. Similarly, improved resolution preserves more detail in the captured subject. Overall, better image quality enhances the visual experience for consumers and end-users, making captured images more pleasing and immersive.

[0040] The disadvantages mentioned herein are merely representative and are included to emphasize the problems the inventors have identified in existing devices and sought to improve upon. The aspects of the device described below address some or all of these disadvantages, as well as other disadvantages known in the art. The improved aspects of the device described herein may offer additional benefits beyond those described above and may be used in applications other than those described above.

[0041] In the description of the embodiments herein, numerous specific details (such as examples of specific components, circuits, and processes) are set forth to provide a thorough understanding of this disclosure. As used herein, the term "coupled" means a direct connection or a connection via one or more intermediate components or circuits. Furthermore, specific terminology is set forth in the following description and for purposes of explanation in order to provide a thorough understanding of this disclosure. However, it will be apparent to those skilled in the art that practicing the teachings disclosed herein may not require these specific details. In other instances, known circuits and devices are illustrated in block diagram form to avoid obscuring the teachings of this disclosure.

[0042] Certain portions of the following detailed description are presented using other symbolic representations of programs, logic blocks, processes, and data bit operations within computer memory. In this disclosure, programs, logic blocks, processes, etc., are conceived as a self-consistent sequence of steps or instructions that produce a desired result. These steps are those that require physical manipulation of physical quantities. Although not strictly necessary, these physical quantities typically take the form of electrical or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated within a computer system.

[0043] Example devices (such as smartphones) for capturing image frames using one or more image sensors may include a configuration of one, two, three, four, or more camera modules on the rear side (e.g., the side opposite the main user display) and / or the front side (e.g., the same side as the main user display). These devices may include one or more image signal processors (ISPs), computer vision processors (CVPs) (e.g., AI engines), or other suitable circuitry for processing the images captured by the image sensors. The one or more image signal processors (ISPs) may store the output image frames in memory (e.g., via a bus) and / or provide the output image frames to processing circuitry (e.g., an application processor). The processing circuitry may perform further processing, such as encoding, storing, transmitting, or other manipulations of the output image frames.

[0044] As used herein, a camera module may include an image sensor and certain other components coupled to the image sensor for acquiring a representation of a scene in image data comprising image frames. For example, a camera module may include other components of the camera, including a shutter, buffer, or additional readout circuitry for accessing individual pixels of the image sensor. In some embodiments, a camera module may include one or more components including an image sensor housed in a single package having an interface configured to couple the camera module to an image signal processor or other processor via a bus.

[0045] Figure 1 A block diagram of a device 100 for performing image capture from one or more image sensors is shown. Device 100 may include or be otherwise coupled to an image signal processor (e.g., ISP 112) for processing image frames from one or more image sensors, such as a first image sensor 101, a second image sensor 102, and a depth sensor 140. In some specific embodiments, device 100 may also include or be coupled to a processor 104 and a memory 106 storing instructions 108 (e.g., memory storing processor-readable code or a non-transitory computer-readable medium storing instructions). Device 100 may also include or be coupled to a display 114 and component 116. Component 116 may be used for user interaction, such as a touchscreen interface and / or physical buttons.

[0046] Component 116 may also include network interfaces for communicating with other devices, including a wide area network (WAN) adapter (e.g., WAN adapter 152), a local area network (LAN) adapter (e.g., LAN adapter 153), and / or a personal area network (PAN) adapter (e.g., PAN adapter 154). WAN adapter 152 may be a 4G LTE or 5G NR wireless network adapter. LAN adapter 153 may be an IEEE 802.11 WiFi wireless network adapter. PAN adapter 154 may be a Bluetooth wireless network adapter. Each of WAN adapter 152, LAN adapter 153, and / or PAN adapter 154 may be coupled to an antenna comprising multiple antennas configured for main and diversity reception and / or configured to receive a specific frequency band. In some embodiments, the antennas may be shared by WAN adapter 152, LAN adapter 153, and / or PAN adapter 154 for communication on different networks. In some implementations, WAN adapter 152, LAN adapter 153 and / or PAN adapter 154 may share circuitry and / or be packaged together, such as when LAN adapter 153 and PAN adapter 154 are packaged as a single integrated circuit (IC).

[0047] Device 100 may also include or be coupled to a power source 118 for use with device 100, such as a battery or an adapter for coupling device 100 to an energy source. Device 100 may also include or be coupled to... Figure 1 Additional features or components not shown. In one example, a wireless interface that may include multiple transceivers and a baseband processor in a radio frequency front-end (RFFE) may be coupled to or included in the WAN adapter 152 for use in a wireless communication device. In another example, an analog front-end (AFE) for converting analog image data to digital image data may be coupled between the first image sensor 101 or the second image sensor 102 and the processing circuitry in the device 100. In some embodiments, the AFE may be embedded in the ISP 112.

[0048] The device may include or be coupled to a sensor hub 150, which interfaces with sensors to receive data about the movement of device 100, data about the environment surrounding device 100, and / or other non-camera sensor data. One example non-camera sensor is a gyroscope, a device configured to measure rotation, orientation, and / or angular velocity to generate motion data. Another example non-camera sensor is an accelerometer, a device configured to measure acceleration, which can also be used to determine the speed and distance of travel by appropriately integrating the measured acceleration. In some aspects, a gyroscope in an electronic image stabilization system (EIS) may be coupled to the sensor hub. In another example, the non-camera sensor may be a Global Positioning System (GPS) receiver, a device used to process satellite signals, such as through triangulation and other techniques, to determine the position of device 100. Position can be tracked over time to determine additional motion information, such as velocity and acceleration. Data from one or more sensors may be accumulated by the sensor hub 150 into motion data. One or more of acceleration, velocity, and / or distance may be included in the motion data provided by sensor hub 150 to other components of device 100, including ISP 112 and / or processor 104.

[0049] The ISP 112 can receive captured image data. In one embodiment, a local bus connection couples the ISP 112 to the first image sensor 101 and the second image sensor 102 of the first camera 103 and the second camera 105, respectively. In another embodiment, a wired interface couples the ISP 112 to an external image sensor. In yet another embodiment, a wireless interface couples the ISP 112 to either the first image sensor 101 or the second image sensor 102.

[0050] First image sensor 101 and second image sensor 102 are configured to capture image data representing scenes within the fields of view of first camera 103 and second camera 105, respectively. In some embodiments, first camera 103 and / or second camera 105 output analog data converted by an analog front-end (AFE) and / or analog-to-digital converter (ADC) in device 100 or embedded in ISP 112. In some embodiments, first camera 103 and / or second camera 105 output digital data. The digital image data may be formatted into one or more image frames, whether received from first camera 103 and / or second camera 105 or converted from analog data received from first camera 103 and / or second camera 105.

[0051] The first camera 103 may include a first image sensor 101 and a first lens 131. The second camera may include a second image sensor 102 and a second lens 132. Each of the first lens 131 and the second lens 132 may be controlled by an associated autofocus (AF) algorithm (e.g., AF 133) executed in the ISP 112, which adjusts the first lens 131 and the second lens 132 to focus on a specific focal plane located at a specific scene depth. AF 133 may be assisted by depth data received from the depth sensor 140. The first lens 131 and the second lens 132 focus light at the first image sensor 101 and the second image sensor 102 respectively through one or more apertures for receiving light, one or more shutters for blocking light when outside the exposure window, and / or one or more color filter arrays (CFAs) for filtering light outside a specific frequency range. The first lens 131 and the second lens 132 may have different fields of view to capture different representations of the scene. For example, the first lens 131 may be an ultra-wide (UW) lens, and the second lens 132 may be a wide (W) lens. Multiple image sensors may include a combination of ultra-wide (high field of view (FOV)) sensors, wide sensors, long-range sensors, and ultra-long-range (low FOV) sensors.

[0052] Each of the first camera 103 and the second camera 105 can be configured through hardware configuration and / or software settings to obtain different but overlapping fields of view. In some configurations, the cameras are configured with different lenses with different magnifications, resulting in different fields of view for capturing different representations of the scene. The cameras can be configured such that the UW camera has a larger FOV than the W camera, the W camera has a larger FOV than the T camera, and the T camera has a larger FOV than the UT camera. For example, a camera configured for a wide FOV can capture a field of view in the range of 64 to 84 degrees, a camera configured for an ultra-side FOV can capture a field of view in the range of 100 to 140 degrees, a camera configured for a long-range FOV can capture a field of view in the range of 10 to 30 degrees, and a camera configured for an ultra-long-range FOV can capture a field of view in the range of 1 to 8 degrees.

[0053] In some implementations, one or more of the first camera 103 and / or the second camera 105 may be a variable aperture (VA) camera, wherein the aperture can be adjusted to set a specific aperture size. Example aperture sizes include f / 2.0, f / 2.8, f / 3.2, f / 8.0, etc. Larger aperture values ​​correspond to smaller aperture sizes, and smaller aperture values ​​correspond to larger aperture sizes. The variable aperture (VA) camera may have different characteristics that produce different representations of the scene based on the current aperture size. For example, the VA camera may capture image data with a depth of focus (DOF) corresponding to the current aperture size set for the VA camera.

[0054] The ISP 112 processes image frames captured by the first camera 103 and the second camera 105. Although Figure 1 Device 100 is illustrated as including a first camera 103 and a second camera 105, but any number of cameras (e.g., one, two, three, four, five, six, etc.) may be coupled to ISP 112. In some aspects, depth sensors (such as depth sensor 140) may be coupled to ISP 112. The output from depth sensor 140 may be processed in a manner similar to that of the first camera 103 and the second camera 105. Examples of depth sensors 140 include active sensors, including one or more of indirect time-of-flight (iToF), direct time-of-flight (dToF), light detection and ranging (LiDAR), mmWave, radio detection and ranging (radar), and / or hybrid depth sensors (such as structured light sensors). In embodiments without depth sensor 140, similar information about the depth or depth map of an object may be determined based on the parallax between the first camera 103 and the second camera 105, such as by using parallax depth measurement algorithms, stereo depth measurement algorithms, phase detection autofocus (PDAF) sensors, etc. In addition, any number of additional image sensors or image signal processors may be present in device 100.

[0055] In some embodiments, ISP 112 may execute instructions from memory, such as instructions 108 from memory 106, instructions stored in a separate memory coupled to or included in ISP 112, or instructions provided by processor 104. Additionally or alternatively, ISP 112 may include specific hardware (such as one or more integrated circuits (ICs)) configured to perform one or more operations described in this disclosure. For example, ISP 112 may include an image front-end (e.g., IFE 135), an image post-processing engine (e.g., IPE 136), an automatic exposure compensation (AEC) engine (e.g., AEC 134), and / or one or more engines for video analysis (e.g., EVA 137). The image pipeline may be formed by a sequence of one or more of IFE 135, IPE 136, and / or EVA 137. In some embodiments, the image pipeline in ISP 112 may be reconfigured by changing the connections between IFE 135, IPE 136, and / or EVA 137. AF 133, AEC 134, IFE 135, IPE 136 and EVA137 may each include dedicated circuitry and may be embodied as software or firmware executed by ISP 112 and / or a combination of hardware and software or firmware executed on ISP 112.

[0056] Memory 106 may include a non-transient or non-transitory computer-readable medium storing computer-executable instructions (as instructions 108) for performing all or part of one or more of the operations described in this disclosure. Instructions 108 may include a camera application (or other suitable application, such as a messaging application) to be executed by device 100 for taking pictures or videos. Instructions 108 may also include other applications or programs executed by device 100, such as an operating system and applications other than those for image or video generation. Executing a camera application, such as by processor 104, may enable device 100 to record images using the first camera 103 and / or the second camera 105 and the ISP 112.

[0057] In addition to instruction 108, memory 106 may also store image frames. The image frames may be output image frames stored by ISP 112. The output image frames may be accessed by processor 104 for further operation. In some embodiments, device 100 does not include memory 106. For example, device 100 may be circuitry including ISP 112, and the memory may be external to device 100. Device 100 may be coupled to external memory and configured to access that memory to write output image frames for display or long-term storage. In some embodiments, device 100 is a system-on-a-chip (SoC) that integrates ISP 112, processor 104, sensor hub 150, memory 106, and / or component 116 into a single package.

[0058] In some embodiments, at least one of the ISP 112 or processor 104 executes instructions to perform various operations described herein, including demosaicing of the color image signal. For example, the execution of instructions may instruct the ISP 112 to begin or end capturing image frames or sequences of image frames, wherein the capture includes corrections as described in the embodiments herein. In some embodiments, processor 104 may include one or more general-purpose processor cores 104A-N capable of executing instructions to control the operation of the ISP 112. For example, cores 104A-N may execute a camera application (or other suitable application for generating images or videos) stored in memory 106 that activates or deactivates the ISP 112 to capture image frames and / or controls the ISP 112 to demosaic the color image signal of the image frames. The operation of cores 104A-N and ISP 112 may be based on user input. For example, a camera application executing on processor 104 may receive a user command to start a video preview display. Upon receiving the user command, video, including a sequence of image frames, is captured and processed via ISP 112 from first camera 103 and / or second camera 105 for display and / or storage. Image processing, such as that described herein, for determining “output” or “corrected” image frames, may be applied to one or more image frames in the sequence.

[0059] In some implementations, processor 104 may include an IC or other hardware (e.g., an artificial intelligence (AI) engine (such as AI engine 124) or other coprocessor) to offload certain tasks from cores 104A-N. AI engine 124 may be used to offload tasks related to face detection and / or object recognition, performed, for example, using machine learning (ML) or artificial intelligence (AI). AI engine 124 may be referred to as an artificial intelligence processing unit (AI PU). AI engine 124 may include hardware configured to perform and accelerate convolutional operations involved in performing machine learning algorithms, such as by executing predictive models such as artificial neural networks (ANNs) (including multilayer feedforward neural networks (MLFFNNs), recurrent neural networks (RNNs), and / or radial basis functions (RBFs)). The ANN executed by AI engine 124 has access to predefined training weights for performing operations on user data. The ANN may optionally be trained during operation of image capture device 100, such as through reinforcement training, supervised training, and / or unsupervised training. In some other implementations, device 100 does not include processor 104, such as when all the described functionality is configured in ISP 112.

[0060] In some embodiments, display 114 may include one or more suitable displays or screens that allow the user to interact and / or present a preview of an item (such as the output of the first camera 103 and / or the second camera 105) to the user. In some embodiments, display 114 is a touch-sensitive display. Input / output (I / O) components (such as component 116) may be or include any suitable mechanism, interface, or device to receive input (such as commands) from the user and provide output to the user via display 114. For example, component 116 may include (but is not limited to) a graphical user interface (GUI), keyboard, mouse, microphone, speaker, squeezable bezel, one or more buttons (such as a power button), slider, toggle key, switch, etc.

[0061] Although shown as coupled to each other via processor 104, components (such as processor 104, memory 106, ISP 112, display 114, and component 116) may be coupled to each other in various other arrangements, such as via one or more local buses, which are not shown for simplicity. An example of a bus used to interconnect components is a Peripheral Component Interface (PCI) Fast (PCIe) bus.

[0062] Although ISP 112 is illustrated as separate from processor 104, ISP 112 may be the core of processor 104, which is an application processor unit (APU) included in a system-on-a-chip (SoC), or otherwise included in processor 104. While device 100 is referenced in the examples herein to perform aspects of this disclosure, some device components may not be included. Figure 1 The details are shown to prevent obscuring aspects of this disclosure. Additionally, other components, the number of components, or combinations of components may be included in suitable equipment for performing aspects of this disclosure. Therefore, this disclosure is not limited to the configuration of a particular device or component, including device 100.

[0063] Figure 1 An exemplary image capture device can be operated to obtain an improved image using improved demosaicing of the color image signal for a color image. Figure 2 An example method of operating one or more cameras (such as a first camera 103 and / or a second camera 105) is shown and described below.

[0064] Figure 2This is a block diagram illustrating an example data flow path for image data processing in an image capture device according to one or more embodiments of the present disclosure. The processor 104 of system 200 communicates with ISP 112 via a bidirectional bus and / or separate control and data lines. The processor 104 can control a first camera 103 via camera control 210. Camera control 210 may be a camera driver executed by processor 104 for configuring the first camera 103 (such as activating or deactivating image capture, configuring exposure settings, and / or configuring aperture size). Camera control 210 may be managed by a camera application 204 executing on processor 104. Camera application 204 provides user-accessible settings, allowing a user to specify individual camera settings or select a profile with corresponding camera settings. Camera control 210 communicates with the first camera 103 to configure the first camera 103 according to commands received from camera application 204. Camera application 204 may be, for example, a photography application, a document scanning application, a messaging application, or other applications that process image data acquired from the first camera 103.

[0065] Camera configuration may include parameters specifying, such as frame rate, image resolution, readout duration, exposure level, aspect ratio, aperture size, etc. The first camera 103 may apply the camera configuration and use it to acquire image data representing the scene. In some embodiments, the camera configuration may be adjusted to obtain different representations of the scene. For example, processor 104 may execute camera application 204 to instruct the first camera 103 via camera control 210 to set a first camera configuration for the first camera 103, acquire first image data from the first camera 103 operating with the first camera configuration, instruct the first camera 103 to set a second camera configuration for the first camera 103, and acquire second image data from the first camera 103 operating with the second camera configuration.

[0066] In some embodiments where the first camera 103 is a variable aperture (VA) camera system, the processor 104 can execute camera application 204 to instruct the first camera 103 to be configured to a first aperture size, acquire first image data from the first camera 103, instruct the first camera 103 to be configured to a second aperture size, and acquire second image data from the first camera 103. The aperture reconfiguration and the acquisition of the first and second image data can occur with little or no change in the scene captured at the first aperture size and the second aperture size. Example aperture sizes are f / 2.0, f / 2.8, f / 3.2, f / 8.0, etc. Larger aperture values ​​correspond to smaller aperture sizes, and smaller aperture values ​​correspond to larger aperture sizes. That is, f / 2.0 corresponds to an aperture size larger than f / 8.0.

[0067] Image data received from the first camera 103 can be processed in one or more blocks of the ISP 112 to determine an output image frame 230 that can be stored in memory 106 and / or otherwise provided to the processor 104. The processor 104 can further process the image data to apply effects to the output image frame 230. Effects may include background blur, lighting, color cast, and / or high dynamic range (HDR) blending. In some embodiments, effects can be applied in the ISP 112.

[0068] Image frames 230 output by ISP 112 may include a scene representation improved by various aspects of this disclosure, resulting in better color image generation through improved demosaicing (such as reducing visual artifacts). Processor 104 may display these output image frames 230 to a user, and the improvements provided by the described processing implemented in ISP 112 and / or processor 104 improve image quality and user experience by reducing the appearance of bright and dark areas in the photograph. For example, the demosaicing process 212 in ISP 112 may correct image data received from first camera 103 when determining output image frames 230.

[0069] Figure 3 A system 300 for determining an output image frame for a combined image sensor application is depicted according to one aspect of this disclosure. System 300 includes a first image sensor 304, a second image sensor 306, and a computing device 302. The computing device 302 may be an exemplary embodiment of device 100, system 200, or a combination thereof. For example, in some embodiments, operations described herein as being performed by computing device 302 may be performed by device 100 or system 200 (such as by processor 104).

[0070] The first image sensor 304 includes a first image frame 308. The second image sensor 306 includes a second image frame 310. The computing device 302 includes a first demosaic process 312, a second demosaic process 314, a blending weight 322, and a blended image frame 320. The first demosaic process 312 includes a first demosaic image frame 316, and the second demosaic process 314 includes a second demosaic image frame 318.

[0071] Computing device 302 may be configured to receive a first image frame 308 and a second image frame 310. In some embodiments, the first image frame 308 may be a color image frame, and the second image frame 310 may be a monochrome image frame. In some embodiments, the first image frame 308 may be determined based on different types of color pixel arrangements, such as based on the capabilities of the first image sensor 304. For example, the first image frame 308 may be stored in red, green, and blue (RGB) format, luminance, blue projection, and red projection (YUV) format, cyan, magenta, yellow, and black (CMYK) format, etc. The second image frame 310 may be specified in one or more monochrome image formats (such as grayscale format). In some embodiments, the first image frame 308 may be captured by the first image sensor 304, and the second image frame 310 may be captured by the second image sensor 306. In some embodiments, the first image sensor 304 may be a color image sensor, such as a Bayer image sensor. In some embodiments, the second image sensor 306 may be a monochrome image sensor. In additional or alternative embodiments, the second image sensor 306 may be a color sensor, and the second image frame 310 may be converted to a monochrome image (e.g., by isolating individual color channels from the second image sensor 306). In some embodiments, the first image sensor 304 and the second image sensor 306 may have the same resolution. In additional or alternative embodiments, the first image sensor 304 and the second image sensor 306 may have different resolutions. In various alternative embodiments, the first image sensor 304 may be implemented using various types of color image sensors, such as Bayer sensors, color filter array (CFA) sensors, QCFA sensors, etc.

[0072] In some embodiments, computing device 302 may be configured to register and scale a first image frame 308 and a second image frame 310. In some embodiments, registration and scaling may be used to align the first image frame 308 with the second image frame 310 (e.g., aligning features and portions such that they appear in the same portions of the first image frame 308 and the second image frame 310). In embodiments where the resolution of the color image sensor is the same as or an integer multiple of the resolution of the monochrome image sensor (e.g., 1 / 4 resolution), corresponding pixels may be aligned to scale the images. In other cases, interpolation may be performed to scale the image frames. Registration may be used to identify corresponding portions of the image frames that are later used during interpolation. Various types of registration operations may be performed, including feature-based registration, intensity-based registration, phase correlation, etc. Feature-based registration may include identifying key features in two images and matching them to find a transform that aligns the images. Intensity-based registration may determine a transform that maximizes the similarity of intensity values ​​based on the similarity of intensity values ​​in corresponding pixels of two images. Phase correlation can be used to calculate the phase difference between two images using Fourier transform, and the images can be adjusted based on the phase shift between corresponding frequencies of the images.

[0073] The computing device 302 can be configured to determine a first demosaic image frame 316 by applying a first demosaic process 312 to a first image frame 308. In some specific embodiments, the demosaic process can be used to reconstruct a full-color image from the original color image signal, such as the first image frame 308. Specifically, the demosaic process can be configured to reconstruct a full-color image from an image signal containing only one color channel information per pixel. For example, in a Bayer image, green pixels are twice the number of red or blue pixels, and interpolation can be performed on each pixel value to generate missing color information. The demosaic process can use various techniques, such as bilinear demosaic, nearest-neighbor demosaic, adaptive uniformity-guided demosaic (AHD), etc. Bilinear demosaic filtering can use an interpolation method based on the average value of surrounding pixels to estimate the missing color. Nearest-neighbor demosaic filtering can copy the value of the nearest available pixel for each color channel. AHD filtering can use statistical analysis to determine the optimal color value for each pixel. In some specific embodiments, the first demosaic process 312 may not receive a second image frame 310. Specifically, in some implementations, the first demosaic process 312 may be performed solely based on the first image frame 308 (such as image signal data corresponding to the first image frame 308).

[0074] The computing device 302 can be configured to determine a second demosaic image frame 318 by applying a second demosaic process 314 to a first image frame 308. The second demosaic process 314 can be applied based on the second image frame 310. Similar to the first demosaic process 312, the second demosaic process 314 can include one or more of the demosaic processes identified above. In some specific implementations, the second image frame 310 can be applied as a guiding filter for the second demosaic process 314. For example, Figure 4 A guided demosaic process 400 according to one aspect of this disclosure is depicted. In the guided demosaic process 400, the pixel values ​​of a second image frame 310 are subtracted from the corresponding pixel values ​​of a first image frame 308. The guided demosaic process 402 then receives the resulting image frame, also receiving the second image frame 310. The guided demosaic process 402 may then perform demosaicing on the resulting image frame, using the second image frame 310 as a guided filter. As those skilled in the art will understand, the guided filter may be determined based on structural and edge features within the second image frame 310, and may guide interpolation performed during the demosaic process to preserve similar structural and edge features within the second demosaic image frame 318. The output from the guided demosaic process 402 is then added to the pixel values ​​of the image frame 310 to produce the second demosaic image frame 318. In some specific embodiments, the guided demosaic process 402 may apply the second image frame 310 as a guided filter on a pixel-by-pixel basis. In additional or alternative embodiments, the guided demosaic process 402 may apply image frame 310 as a guided filter on a kernel-based basis (such as for a set of multiple corresponding pixels). As those skilled in the art will understand based on the content of this disclosure, other forms of guided demosaic processes may be used based on the second image frame 310. All such embodiments are considered to be within the scope of this disclosure.

[0075] The computing device 302 may be configured to determine a blending weight 322 based on a first image frame 308 and a second image frame 310. In some embodiments, the weights may be determined to identify the relative amounts of the first and second demosaiced image frames 316, 318 used for blending. In some embodiments, the blending weight 322 is determined based on the similarity between the first image frame 308 and the second image frame 310. In some embodiments, a higher weight may be assigned to the second demosaiced image frame 318 at locations where the first image frame 308 and the second image frame 310 are more similar. Specifically, a lower similarity between the first image frame 308 and the second image frame 310 at a particular location in the image may indicate that features at that location require color to distinguish (e.g., when the first image frame 308 is a color image frame and the second image frame 310 is a monochrome image frame). Therefore, it may be advantageous to preferentially weight the first demosaiced image frame 316, which is not guided by the second image frame 310. For example, a high similarity between the first image frame 308 and the second image frame 310 at a specific location may indicate that the features at that location are color-independent. Therefore, it may be advantageous to preferentially weight the second demosaic image frame 318, which is guided by the second image frame 310 and may have higher sensitivity.

[0076] In some implementations, the blending weights are determined based on a comparison of corresponding positions within the first and second image frames, targeting locations within the second demosaic image frame. For example, the weights assigned to the second demosaic image frame may be increased for corresponding positions in the first and second image frames where pixel values ​​fall within a threshold (such as a 5%, 10%, or 15% deviation threshold). Pixel values ​​may be compared based on, for example, (i) a variance measurement between the first image frame 308 and the second image frame 310, (ii) a texture comparison between the first image frame 308 and the second image frame 310, (iii) edges detected within the first image frame 308 and the second image frame 310, or (iv) a combination thereof. In some implementations, pixel values ​​may be compared on a pixel-by-pixel basis (e.g., for each individual corresponding pixel within image frames 308, 310). In additional or alternative implementations, pixel values ​​may be compared on a kernel-based basis (e.g., for corresponding regions or sets of pixels within image frames 308, 310). Those skilled in the art will understand, based on this disclosure, that in addition to the forms discussed above, other forms of comparison between the first image frame 308 and the second image frame 310 may be used additionally or alternatively. All such embodiments are considered to be within the scope of this disclosure.

[0077] The computing device 302 may be configured to determine a blended image frame 320 by combining pixel values ​​from corresponding portions of the first demosaic image frame 316 and the second demosaic image frame 318 according to a blending weight 322. The blended image frame 320 may be determined as a weighted combination of pixel values ​​from the first demosaic image frame 316 and the second demosaic image frame 318 (e.g., for corresponding pixels within the first and second demosaic image frames 316, 318). In some embodiments, the blended image frame 320 may be determined as a pixel-wise combination of the first demosaic image frame 316 and the second demosaic image frame 318. In some embodiments, the blended image frame 320 may be used as an output image frame 230. In additional or alternative embodiments, the blended image frame 320 may be subsequently processed to determine an output image frame. For example, the blended image frame 320 may be used as an RGB signal for subsequent fusion operations (such as a fusion operation between features within the second image frame 310 and the blended image frame 320). The fusion process may then produce the output image frame 230.

[0078] Figure 3 The processing in this process yields an improved digital representation of the scene, resulting in photos or videos with higher image quality (IQ). (Reference) Figure 3 Each operation described can be performed by one or a combination of processor 104 (including cores 104A-N or AI engine 124) and / or ISP 112. For example, the processing performed by computing device 302 combines the advantages of two types of images to enhance overall image quality and provide a more comprehensive presentation of the scene. Specifically, the proposed technique improves the fusion technique used for combining image sensor applications, thereby allowing for better capture of higher sensitivity and resolution of monochrome images while also incorporating improved color information from color sensors. Furthermore, the proposed technique reduces negative visual artifacts from the demosaicing process, thus enabling the incorporation of improved shading information without sacrificing other aspects of the image. Therefore, the proposed technique improves the image quality of the captured image.

[0079] Figure 5 A flowchart of an example method 500 for processing image data to perform demosaicing according to some embodiments of the present disclosure is shown. Systems 200 and 300 can be configured to perform reference... Figure 5 The described operation determines the output image frame 230 (such as the mixed image frame 320).

[0080] Method 500 includes receiving a first image frame and a second image frame (block 502). For example, computing device 302 may receive a first image frame 308 and a second image frame 310. In some embodiments, the first image frame 308 may be a color image frame, and the second image frame 310 may be a monochrome image frame. In some embodiments, the first image frame 308 may be captured by a first image sensor 304, and the second image frame 310 may be captured by a second image sensor 306. In some embodiments, computing device 302 may register and scale the first image frame 308 and the second image frame 310, such as before proceeding to block 504.

[0081] Method 500 includes determining a first demosaic image frame by applying a first demosaic process to a first image frame (block 504). For example, computing device 302 may determine a first demosaic image frame 316 by applying a first demosaic process 312 to a first image frame 308. In some specific implementations, the first demosaic process 312 may be performed solely based on the first image frame 308 (such as image signal data corresponding to the first image frame 308).

[0082] Method 500 includes determining a second demosaic image frame by applying a second demosaic process to a first image frame (box 506). For example, computing device 302 may determine a second demosaic image frame 318 by applying a second demosaic process 314 to a first image frame 308. The second demosaic process 314 may be applied based on a second image frame 310. For example, the second image frame 310 may be applied as a guide filter for the second demosaic process 314.

[0083] Method 500 includes determining blending weights based on a first image frame and a second image frame (box 508). For example, computing device 302 may determine blending weights 322 based on a first image frame 308 and a second image frame 310. In some embodiments, blending weights 322 are determined based on a comparison between the first image frame 308 and the second image frame 310. In some embodiments, for corresponding positions in the first and second image frames where pixel values ​​are within a threshold, the weight assigned to the second demosaic image frame is increased. In some embodiments, blending weights 322 are determined based on (i) a variance measurement between the first image frame 308 and the second image frame 310, (ii) a texture comparison between the first image frame 308 and the second image frame 310, (iii) edges detected within the first image frame 308 and the second image frame 310, or (iv) a combination thereof.

[0084] Method 500 includes determining a blended image frame (box 510) by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weights. For example, computing device 302 can determine a blended image frame 320 by combining pixel values ​​from corresponding portions of the first demosaic image frame 316 and the second demosaic image frame 318 according to blending weights 322. In some embodiments, the blended image frame 320 may be used as an output image frame. In additional or alternative embodiments, the blended image frame 320 may be subsequently processed to determine an output image frame. For example, the blended image frame 320 may be used as an RGB signal for subsequent fusion operations, such as a fusion operation between features within the second image frame 310 and the blended image frame 320. The fusion process can then produce an output image frame.

[0085] Figure 6 This is a block diagram illustrating an example processor configuration for image data processing in an image capture device according to one or more embodiments of the present disclosure. Processor 104 or other processing circuitry may be configured to operate on the image data to perform... Figure 3 One or more operations of the method. Image data can be processed to determine one or more output image frames 610.

[0086] Processor 104 receives first image data 602A and second image data 602B, such as a first image frame and a second image frame. In some embodiments, the first image data and / or the second image data may be received directly from an image sensor or a memory coupled to the image sensor. In some embodiments, the first image data 602A and / or the second image data 602B may be retrieved from a long-term storage device (such as a flash memory device or a network location) storing previously captured or generated images. In some specific embodiments, the first image data 602A may be a color image frame, and the second image data 602B may be a monochrome image frame. Processor 104 includes a first demosaic process 604A, a second demosaic process 604B, and a blending process 404C. (Reference) Figure 6 A sample operation is described.

[0087] The first demosaic process 604A can be configured to determine the first demosaic image frame based on the first image data 602A. For example, the first demosaic process 604A can be performed based solely on the first image data 602A. In some specific implementations, the first demosaic process 604A can be an exemplary implementation of the first demosaic process 312.

[0088] The second demosaic process 604B can be configured to determine a second demosaic image frame based on the first image data 602A. For example, the second demosaic process 604B can be applied based on the second image data 602B. As a specific example, the second image data 602B can be applied as a guide filter for the second demosaic process 604B. In some implementations, the second demosaic process 604B can be an exemplary implementation of the second demosaic process 314.

[0089] The blending process 604C can be configured to determine blending weights based on first image data 602A and second image data 602B. In some embodiments, blending weights 322 are determined based on a comparison between the first image data 602A and the second image data 602B. In some embodiments, blending weights 322 are determined based on: (i) a variance measurement between the first image frame 308 and the second image frame 310, (ii) a texture comparison between the first image frame 308 and the second image frame 310, (iii) edges detected within the first image frame 308 and the second image frame 310, or (iv) a combination thereof.

[0090] The blending process 404C can also be configured to determine a blended image frame by combining pixel values ​​from corresponding portions of the first and second demosaiced image frames according to blending weights. In some embodiments, the blended image frame can be used as the output image frame 410. In additional or alternative embodiments, the blended image frame can be subsequently processed to determine the output image frame. For example, the blended image frame can be used as the RGB signal for subsequent fusion operations, such as fusion operations between features within the second image data 602B and the blended image frame 320. The fusion process can then produce the output image frame.

[0091] In one or more aspects, the techniques used to support image processing may include additional aspects, such as any single aspect or any combination of aspects described below or in conjunction with one or more other processes or devices described elsewhere herein.

[0092] A first aspect includes a method comprising: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0093] In a second aspect, in conjunction with the second aspect, the mixing weights are determined for positions within the second demosaiced image frame based on a comparison of corresponding positions in the first and second image frames.

[0094] In a third aspect, in conjunction with the second aspect, the weight assigned to the second demosaiced image frame is increased for the corresponding positions of the pixel values ​​in the first image frame and the second image frame that are within a threshold.

[0095] In the fourth aspect, in combination with one or more of the second to third aspects, the mixed weight is determined based on: (i) the variance measurement between the first image frame and the second image frame, (ii) the texture comparison between the first image frame and the second image frame, (iii) the edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

[0096] In the fifth aspect, in conjunction with one or more of the second to fourth aspects, the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

[0097] In the sixth aspect, in conjunction with one or more of the first to fifth aspects, the second image frame is applied as a guide filter for the second demosaic process.

[0098] In a seventh aspect, in conjunction with one or more of the first to sixth aspects, the method further includes: registering and scaling the first image frame and the second image frame before determining the second demosaiced image frame.

[0099] In the eighth aspect, in conjunction with one or more of the first to seventh aspects, the first image frame is a color image frame, and the second image frame is a monochrome image frame.

[0100] In a ninth aspect, an apparatus is provided, comprising a memory storing processor-readable code and at least one processor coupled to the memory. The at least one processor is configured to execute the processor-readable code to cause the at least one processor to perform operations including: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0101] Additionally, the apparatus may perform or operate according to one or more aspects described below. In some embodiments, the apparatus includes a wireless device, such as a UE. In some embodiments, the apparatus includes a remote server (such as a cloud-based computing solution) that receives image data, processes it, and determines output image frames. In some embodiments, the apparatus may include at least one processor and memory coupled to the processor. The processor may be configured to perform the operations described herein with respect to the apparatus. In some other embodiments, the apparatus may include a non-transitory computer-readable medium having program code recorded thereon, and the program code may be executable by a computer to cause the computer to perform the operations described herein with reference to the apparatus. In some embodiments, the apparatus may include one or more components configured to perform the operations described herein. In some embodiments, a method of wireless communication may include one or more operations described herein with reference to the apparatus.

[0102] In the tenth aspect, in conjunction with the ninth aspect, the mixing weights are determined based on a comparison of the corresponding positions of the first image frame and the second image frame, with respect to the position within the second demosaic image frame.

[0103] In the eleventh aspect, in conjunction with the tenth aspect, the weight assigned to the second demosaiced image frame is increased for the corresponding positions of the pixel values ​​in the first image frame and the second image frame that are within a threshold.

[0104] In the twelfth aspect, in combination with one or more of the tenth to eleventh aspects, the mixed weight is determined based on: (i) the variance measurement between the first image frame and the second image frame, (ii) the texture comparison between the first image frame and the second image frame, (iii) the edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

[0105] In the thirteenth aspect, in conjunction with one or more of the tenth to twelfth aspects, the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

[0106] In the fourteenth aspect, in conjunction with one or more of the ninth to thirteenth aspects, the second image frame is applied as a guide filter for the second demosaic process.

[0107] In the fifteenth aspect, in combination with one or more of the ninth to fourteenth aspects, the operation further includes: registering and scaling the first image frame and the second image frame before determining the second demosaiced image frame.

[0108] In the sixteenth aspect, in conjunction with one or more of the ninth to fifteenth aspects, the first image frame is a color image frame, and the second image frame is a monochrome image frame.

[0109] The seventeenth aspect includes a non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to perform operations including: receiving a first image frame and a second image frame; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0110] In the eighteenth aspect, in conjunction with the seventeenth aspect, the mixing weights are determined based on a comparison of the corresponding positions of the first image frame and the second image frame, with respect to the position within the second demosaic image frame.

[0111] In the nineteenth aspect, in conjunction with the eighteenth aspect, the weight assigned to the second demosaiced image frame is increased for the corresponding positions of the pixel values ​​in the first image frame and the second image frame that are within a threshold.

[0112] In the twentieth aspect, in combination with one or more of the eighteenth to nineteenth aspects, the mixed weight is determined based on: (i) the variance measurement between the first image frame and the second image frame, (ii) the texture comparison between the first image frame and the second image frame, (iii) the edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

[0113] In the twenty-first aspect, in conjunction with one or more of aspects eighteen to twentieth, the blending weight is determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

[0114] In the twenty-second aspect, in conjunction with one or more of aspects seventeen to twenty-one, the second image frame is applied as a guide filter for the second demosaic process.

[0115] In the twentieth aspect, in combination with one or more of aspects seventeen to twenty-two, the operation further includes: registering and scaling the first image frame and the second image frame before determining the second demosaiced image frame.

[0116] In the twenty-fourth aspect, in conjunction with one or more of aspects seventeen to twenty-three, the first image frame is a color image frame, and the second image frame is a monochrome image frame.

[0117] A twenty-fifth aspect includes an image capture device comprising a first image sensor, a second image sensor, a memory storing processor-readable code, and at least one processor coupled to the memory, the first image sensor, and the second image sensor. The at least one processor may be configured to execute the processor-readable code to cause the at least one processor to perform operations including: receiving a first image frame from the first image sensor and receiving a second image frame from the second image sensor; determining a first demosaic image frame by applying a first demosaic process to the first image frame; determining a second demosaic image frame by applying a second demosaic process to the first image frame based on the second image frame; determining a blending weight based on the first image frame and the second image frame; and determining a blended image frame by combining pixel values ​​from corresponding portions of the first demosaic image frame and the second demosaic image frame according to the blending weight.

[0118] In the twentieth aspect, in conjunction with the twentieth aspect, the mixing weights are determined based on a comparison of the corresponding positions of the first image frame and the second image frame, with respect to the position within the second demosaic image frame.

[0119] In the twentieth aspect, in conjunction with the twentieth aspect, the weight assigned to the second demosaic image frame is increased for the corresponding positions of the pixel values ​​in the first image frame and the second image frame that are within a threshold.

[0120] In the twenty-eighth aspect, in combination with one or more of the twenty-sixth to twenty-seventh aspects, the mixed weight is determined based on: (i) the variance measurement between the first image frame and the second image frame, (ii) the texture comparison between the first image frame and the second image frame, (iii) the edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

[0121] In the twenty-ninth aspect, in conjunction with one or more of the twenty-sixth to twenty-eighth aspects, the blending weight is determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-by-pixel combination of the first demosaic image frame and the second demosaic image frame.

[0122] In the thirtieth aspect, in conjunction with one or more of the twenty-fifth to twenty-ninth aspects, the second image frame is applied as a guide filter for the second demosaic process.

[0123] In the accompanying drawings, a single block can be described as performing one or more functions. The one or more functions performed by this block may be performed in a single component or across multiple components, and / or may be performed using hardware, software, or a combination of hardware and software. To clearly illustrate this interchangeability between hardware and software, various exemplary components, blocks, modules, circuits, and steps are described below in general terms of their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the system as a whole. Those skilled in the art can implement the described functionality in different ways for each specific application, but such specific implementation decisions should not be construed as departing from the scope of this disclosure. Additionally, the example device may include components other than those shown, including well-known components such as processors, memory, etc.

[0124] The aspects of this disclosure are applicable to any electronic device that includes, is coupled to, or otherwise processes data from one, two, or more image sensors capable of capturing image frames (or “frames”). The terms “output image frame,” “modified image frame,” and “corrected image frame” can refer to an image frame that has been processed by any of the techniques disclosed to adjust the raw image data received from the image sensor. Furthermore, aspects of the disclosed techniques can be implemented for processing image data received from image sensors having the same or different capabilities and characteristics, such as resolution, shutter speed, or sensor type. Additionally, aspects of the disclosed techniques can be implemented in devices for processing image data, whether or not the device includes or is coupled to an image sensor. For example, the disclosed techniques may include operations performed by a processing device in a cloud computing system that retrieves image data previously recorded by a separate device having an image sensor for processing.

[0125] Unless explicitly stated otherwise in the following discussion, it should be understood that throughout this application, the use of terms such as “access,” “receive,” “transmit,” “use,” “select,” “determine,” “normalize,” “multiply,” “average,” “monitor,” “compare,” “apply,” “update,” “measure,” “derive,” “set,” “generate,” etc., refers to the actions and processes of a computer system or similar electronic computing device that manipulate data represented as physical (electronic) quantities in the registers and memories of the computer system and transform them into other data similarly represented as physical quantities in the registers, memories, or other such information storage, transmission, or display devices of the computer system. The use of different terms to refer to actions or processes of a computer system does not necessarily indicate different operations. For example, “determining” data can refer to “generating” data. Similarly, “determining” data can refer to “retrieving” data.

[0126] The terms "device" and "apparatus" are not limited to one or a specific number of physical objects (such as a smartphone, a camera controller, a processing system, etc.). As used herein, a device can be any electronic device having one or more components that can implement at least some parts of this disclosure. Although the description and examples herein use the term "device" to describe various aspects of this disclosure, the term "device" is not limited to a particular configuration, type, or number of objects. As used herein, an apparatus can include a device or part of a device for performing the described operations.

[0127] Certain components in a device or apparatus described as “parts for access,” “parts for receiving,” “parts for transmitting,” “parts for using,” “parts for selecting,” “parts for determining,” “parts for normalizing,” “parts for multiplying,” or other similarly named terms referring to one or more operations on data (such as image data) may refer to processing circuitry (e.g., application-specific integrated circuit (ASIC), digital signal processor (DSP), graphics processing unit (GPU), central processing unit (CPU), computer vision processor (CVP), or neural signal processor (NSP)) configured to perform the described functions by means of hardware, software, or a combination of hardware configured by software.

[0128] Those skilled in the art will understand that information and signals can be represented using any of a variety of different techniques and skills. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be mentioned throughout the above description can be represented by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, light fields or optical particles, or any combination thereof.

[0129] The components, functional blocks, and modules described herein with respect to the accompanying figures cited above include processors, electronic devices, hardware devices, electronic components, logic circuits, memory, software code, firmware code, and so on, or any combination thereof. Software should be interpreted broadly as instructions, instruction sets, code, code segments, program code, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, procedures, and / or functions, whether referred to as software, firmware, middleware, microcode, hardware description languages, or other terms. Furthermore, the features discussed herein may be implemented via dedicated processor circuitry, via executable instructions, or a combination thereof.

[0130] Those skilled in the art should understand that: reference Figure 5 and Figure 6 One or more boxes (or operations) described can be combined with one or more boxes (or operations) described in another figure in the reference diagram. For example, Figure 5One or more boxes (or operations) can be connected with Figures 1 to 3 A combination of one or more boxes (or operations). For example, with... Figure 6 One or more associated boxes can be connected with and Figures 1 to 3 A combination of one or more associated boxes (or operations).

[0131] Those skilled in the art will also recognize that the various exemplary logic blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein can be implemented as electronic hardware, computer software, or a combination of both. To clearly illustrate this interchangeability between hardware and software, various exemplary components, blocks, modules, circuits, and steps have been described above in general terms of their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the overall system. Those skilled in the art may implement the described functionality in different ways for each specific application, but such specific implementation decisions should not be construed as departing from the scope of this disclosure. Those skilled in the art will also readily recognize that the order or combination of components, methods, or interactions described herein are merely examples, and that components, methods, or interactions of various aspects of this disclosure can be combined or performed in ways other than those illustrated and described herein.

[0132] The various exemplary logics, logic blocks, modules, circuits, and algorithmic processes described in conjunction with the specific implementations disclosed herein can be implemented as electronic hardware, computer software, or a combination of both. The interchangeability of hardware and software has been generally described in terms of functionality and illustrated in the various exemplary components, blocks, modules, circuits, and processes described above. Whether such functionality is implemented in hardware or software depends on the specific application and the design constraints imposed on the overall system.

[0133] Hardware and data processing means for implementing the various exemplary logic units, logic blocks, modules, and circuits described herein can be implemented or executed using general-purpose single-chip or multi-chip processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic units, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor can be a microprocessor, or any conventional processor, controller, microcontroller, or state machine. In some embodiments, the processor may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors combined with a DSP core, or any other such configuration. In some embodiments, specific processes and methods may be performed by circuitry specific to a given function.

[0134] In one or more aspects, the described functionality may be implemented in hardware, digital electronic circuits, computer software, firmware, including the structures disclosed in this specification and their structural equivalents or any combination thereof. Specific implementations of the subject matter described in this specification may also be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a computer storage medium for execution by a data processing apparatus or for controlling the operation of a data processing apparatus.

[0135] If implemented in software, the functionality can be stored as one or more instructions or code on or transmitted through a computer-readable medium. The processes of the methods or algorithms disclosed herein can be implemented in a processor-executable software module that can reside on a computer-readable medium. Computer-readable media include both computer storage media and communication media, including any medium that can be implemented to transfer a computer program from one location to another. Storage media can be any available medium accessible to a computer. By way of example and not limitation, such computer-readable media may include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, or any other medium capable of storing desired program code in the form of instructions or data structures and accessible to a computer. Additionally, any connection may be appropriately referred to as a computer-readable medium. As used herein, disks and optical discs include compact optical discs (CDs), laser discs, optical discs, digital versatile optical discs (DVDs), floppy disks, and Blu-ray discs, wherein disks typically magnetically reproduce data, while optical discs optically reproduce data using lasers. Combinations of the above should also be included within the scope of computer-readable media. In addition, the operation of a method or algorithm may reside as a set of code and instructions or any combination of code and instructions on a machine-readable medium and a computer-readable medium that may be incorporated into a computer program product.

[0136] Various modifications to the specific embodiments described in this disclosure will be apparent to those skilled in the art, and the general principles defined herein may be applied to some other specific embodiments without departing from the spirit or scope of this disclosure. Therefore, the claims are not intended to be limited to the specific embodiments shown herein, but are to be granted the broadest scope consistent with this disclosure, the principles disclosed herein, and the novel features.

[0137] Additionally, those skilled in the art will readily recognize that, for the convenience of describing the accompanying drawings, contrasting terms such as “upper” and “lower” or “front” and “back” or “top” and “bottom” or “forward” and “backward” are sometimes used, indicating relative positions on a correctly oriented page corresponding to the orientation of the drawings, and may not reflect the correct orientation of any device as implemented.

[0138] Certain features described in this specification in the context of a single embodiment may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments. Furthermore, although features may be described above as operating in certain combinations and even originally claimed in this way, one or more features from the claimed combination may be removed from that combination in some cases, and the claimed combination may be for sub-combinations or variations thereof.

[0139] Similarly, although operations are depicted in a specific order in the figures, this should not be construed as requiring such operations to be performed in the indicated specific order or sequential order, or to perform all illustrated operations to achieve the desired result. Furthermore, the figures may schematically depict one or more example processes in the form of flowcharts. However, other operations not depicted may be combined with the schematically illustrated example processes. For example, one or more additional operations may be performed before, after, simultaneously with, or between any illustrated operation. In some contexts, multitasking and parallel processing are advantageous. Moreover, the separation of the various system components in the embodiments described above should not be construed as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products. Additionally, some other embodiments also fall within the scope of the appended claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve the desired result.

[0140] As used herein (including the claims), the term "or" in a list of two or more items means that any one of the listed items may be used alone, or any combination of two or more listed items may be used. For example, if a composition is described as containing component A, B, or C, the composition may contain A alone; B alone; C alone; a combination of A and B; a combination of A and C; a combination of B and C; or a combination of A, B, and C. Additionally, as used herein (including the claims), "or" in a list of items beginning with "at least one of" indicates a separate list, such that a list such as "at least one of A, B, or C" refers to A or B or C or AB or AC or BC or ABC (i.e., A and B and C) or any combination of any of these items.

[0141] The term “substantially” is defined as being largely but not necessarily entirely what is specified (and includes what is specified; for example, substantially 90 degrees includes 90 degrees and substantially parallel includes parallel), as understood by one of ordinary skill in the art. In any specific implementation of the disclosure, the term “substantially” may be used in place of the “[percentage]” of the specified content, where the percentage includes 0.1%, 1%, 5%, or 10%.

[0142] The prior description of this disclosure is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to this disclosure will be apparent to those skilled in the art, and the general principles defined herein may be applied to other variations without departing from the spirit or scope of this disclosure. Therefore, this disclosure is not intended to be limited to the examples and designs described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A method, the method comprising: Receive the first image frame and the second image frame; The first demosaic image frame is determined by applying a first demosaic process to the first image frame; The second demosaic image frame is determined by applying the second demosaic process to the first image frame based on the second image frame; The mixing weights are determined based on the first image frame and the second image frame; as well as The blended image frame is determined by combining the pixel values ​​of corresponding portions of the first and second demosaic image frames according to the blending weights.

2. The method of claim 1, wherein the mixing weights are determined based on a comparison of corresponding positions of the first image frame and the second image frame for positions within the second demosaiced image frame.

3. The method according to claim 2, wherein, For the corresponding positions of pixel values ​​within the threshold in the first and second image frames, the weight assigned to the second demosaic image frame is increased.

4. The method of claim 2, wherein the mixing weights are determined based on: (i) a variance measurement between the first image frame and the second image frame, (ii) a texture comparison between the first image frame and the second image frame, (iii) edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

5. The method of claim 2, wherein the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

6. The method of claim 1, wherein the second image frame is applied as a guide filter for the second demosaic process.

7. The method according to claim 1, further comprising: Before determining the second demosaic image frame, the first image frame and the second image frame are registered and scaled.

8. The method according to claim 1, wherein the first image frame is a color image frame and the second image frame is a monochrome image frame.

9. An apparatus comprising: Memory, the memory storing processor-readable code; and At least one processor coupled to the memory, the at least one processor being configured to execute processor-readable code to cause the at least one processor to perform operations including: Receive the first image frame and the second image frame; The first demosaic image frame is determined by applying a first demosaic process to the first image frame; The second demosaic image frame is determined by applying the second demosaic process to the first image frame based on the second image frame; The mixing weights are determined based on the first image frame and the second image frame; as well as The blended image frame is determined by combining the pixel values ​​of corresponding portions of the first and second demosaic image frames according to the blending weights.

10. The apparatus of claim 9, wherein the mixing weights are determined based on a comparison of corresponding positions of the first image frame and the second image frame for positions within the second demosaiced image frame.

11. The apparatus according to claim 10, wherein, For the corresponding positions of pixel values ​​within the threshold in the first and second image frames, the weight assigned to the second demosaic image frame is increased.

12. The apparatus of claim 10, wherein the mixing weights are determined based on: (i) a variance measurement between the first image frame and the second image frame, (ii) a texture comparison between the first image frame and the second image frame, (iii) edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

13. The apparatus of claim 10, wherein the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

14. The apparatus of claim 9, wherein the second image frame is applied as a guide filter for the second demosaic process.

15. The apparatus of claim 9, further comprising: Before determining the second demosaic image frame, the first image frame and the second image frame are registered and scaled.

16. The apparatus of claim 9, wherein the first image frame is a color image frame and the second image frame is a monochrome image frame.

17. A non-transitory computer-readable medium storing instructions, which, when executed by a processor, cause the processor to perform operations including: Receive the first image frame and the second image frame; The first demosaic image frame is determined by applying a first demosaic process to the first image frame; The second demosaic image frame is determined by applying the second demosaic process to the first image frame based on the second image frame; The mixing weights are determined based on the first image frame and the second image frame; as well as The blended image frame is determined by combining the pixel values ​​of corresponding portions of the first and second demosaic image frames according to the blending weights.

18. The non-transitory computer-readable medium of claim 17, wherein the mixing weights are determined based on a comparison of corresponding positions of the first image frame and the second image frame for positions within the second demosaic image frame.

19. The non-transitory computer-readable medium according to claim 18, wherein, For the corresponding positions of pixel values ​​within the threshold in the first and second image frames, the weight assigned to the second demosaic image frame is increased.

20. The non-transitory computer-readable medium of claim 18, wherein the mixing weights are determined based on: (i) a variance measurement between the first image frame and the second image frame, (ii) a texture comparison between the first image frame and the second image frame, (iii) edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

21. The non-transitory computer-readable medium of claim 18, wherein the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-wise combination of the first demosaic image frame and the second demosaic image frame.

22. The non-transitory computer-readable medium of claim 17, wherein the second image frame is applied as a guide filter for the second demosaic process.

23. The non-transitory computer-readable medium according to claim 17, further comprising: Before determining the second demosaic image frame, the first image frame and the second image frame are registered and scaled.

24. The non-transitory computer-readable medium of claim 17, wherein the first image frame is a color image frame and the second image frame is a monochrome image frame.

25. An image capturing device, the image capturing device comprising: First image sensor; Second image sensor; Memory, the memory storing processor-readable code; and At least one processor, coupled to the memory, the first image sensor, and the second image sensor, is configured to execute processor-readable code to cause the at least one processor to perform operations including: Receive a first image frame from the first image sensor and a second image frame from the second image sensor; The first demosaic image frame is determined by applying a first demosaic process to the first image frame; The second demosaic image frame is determined by applying the second demosaic process to the first image frame based on the second image frame; The mixing weights are determined based on the first image frame and the second image frame; as well as The blended image frame is determined by combining the pixel values ​​of corresponding portions of the first and second demosaic image frames according to the blending weights.

26. The image capture apparatus of claim 25, wherein the mixing weight is determined based on comparing the corresponding positions of the first image frame and the second image frame for a position within the second demosaiced image frame.

27. The image capture device according to claim 26, wherein, For the corresponding positions of pixel values ​​within the threshold in the first and second image frames, the weight assigned to the second demosaic image frame is increased.

28. The image capture device of claim 26, wherein the mixing weights are determined based on: (i) a variance measurement between the first image frame and the second image frame, (ii) a texture comparison between the first image frame and the second image frame, (iii) edges detected within the first image frame and the second image frame, or (iv) a combination thereof.

29. The image capture apparatus of claim 26, wherein the blending weights are determined for each pixel within the second demosaic image frame, and the blended image frame is determined as a pixel-by-pixel combination of the first demosaic image frame and the second demosaic image frame.

30. The image capture device of claim 25, wherein the second image frame is applied as a guide filter for the second demosaic process.