WO2009089525A1 - Pre-image capture color effects - Google Patents

Pre-image capture color effects Download PDF

Info

Publication number
WO2009089525A1
WO2009089525A1 PCT/US2009/030728 US2009030728W WO2009089525A1 WO 2009089525 A1 WO2009089525 A1 WO 2009089525A1 US 2009030728 W US2009030728 W US 2009030728W WO 2009089525 A1 WO2009089525 A1 WO 2009089525A1
Authority
WO
WIPO (PCT)
Prior art keywords
color
color effect
images
image
user
Prior art date
Application number
PCT/US2009/030728
Other languages
French (fr)
Inventor
Vadiraj N. Kaveri
Ajit A. Saunshikar
Original Assignee
Kyocera Wireless Corp.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyocera Wireless Corp. filed Critical Kyocera Wireless Corp.
Publication of WO2009089525A1 publication Critical patent/WO2009089525A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2621Cameras specially adapted for the electronic generation of special effects during image pickup, e.g. digital cameras, camcorders, video cameras having integrated special effects capability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/88Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/74Circuits for processing colour signals for obtaining special effects

Definitions

  • the present invention relates to applying color effects to an image that is processed by a digital camera before the image is captured by the digital camera. More particularly, the invention relates to applying color effects to an image that is processed by a digital camera associated with a wireless communications device before the image is stored in the wireless communication device.
  • Color is all around us and is used to add excitement and emotion to pictures and digital images. Everything from cloths, paintings, and photographed images include a critical color component. Color can also be used to describe emotions such as feeling "blue,” being “red” hot angry, or being “green” with envy. Thus, special color effects are applied to captured camera images to communicate emotion.
  • mobile phones have a digital camera that is capable of taking pictures in the "normal” mode using red, green, and blue (RGB) colors channels. Additionally, these mobile phones provide limited color effects like a monochrome or “mono” color effect, a sepia color effect, and a color invert color effect.
  • the color effect “mono” refers to a monochrome color effect where an image is shown with different shades of a single color.
  • the color effect “sepia” is typically a brown pigment that is applied to an image. There are other sepia pigments such as blue and green.
  • the color invert color effect inverts color in an image giving an image a look similar to a photographic negative.
  • image processing is performed with "captured” or stored images to improve the quality of the image, so limited color effects are applied during post processing of the image. Additionally, the limited quantity of color effects do not support or provision for new color effects.
  • the system comprises a controller communicatively coupled to an image sensor and a preview mode presented on a display.
  • the controller generates and processes a plurality of color images.
  • the controller comprises a camera control unit and a camera processing unit.
  • the camera control unit receives at least one color effect parameter and stores a plurality of RGB values corresponding to the different color effects.
  • the camera processing unit is communicatively coupled to the camera control unit and is configured to receive the color effect parameter and the color image. Additionally, the camera processing unit is configured to, firstly, convert the color images to a plurality of gray scale images, and secondly, apply the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect associated with the with the color effect parameter.
  • the preview mode displays the modified images having the color effect before the modified image is captured in a non-volatile memory.
  • An alternative system comprises a controller and a color effect module.
  • the controller is communicatively coupled to an image sensor that generates a plurality of color images that are processed by the controller.
  • the color effect module further comprises a user interface module and a color effect configuration module.
  • the user interface module receives at least one color effect parameter.
  • the color effect configuration block interfaces with the user interface module and communicates the color effect parameter to the controller.
  • a color correction block is associated with the controller and receives the color effect parameter and the color images.
  • the color correction block performs two operations, namely, converting the color images to a plurality of gray scale images, and applying the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect associated with the color effect parameter.
  • the preview mode presents the modified images having the color effect before the modified image is captured in a non-volatile memory.
  • a method for applying color effects to a wireless communication device having a digital camera comprises generating a plural of plurality of color images with an image sensor that is communicatively coupled to a controller that processes the color images.
  • the method then proceeds to receive least one color effect parameter from a user interface module.
  • the color effect parameter is then communicated to the controller.
  • the method modifies the color images by converting the color images to a plurality of gray scale images, and applying the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter.
  • the modified images having the color effect are presented in a preview mode before the modified image is captured in a non-volatile memory.
  • Figure 1 shows the electrical components associated for an illustrative wireless communication device.
  • Figure 2 shows an illustrative wireless communication device communicating using different communication bands.
  • Figure 3A shows an illustrative system that applies color effects during digital camera processing.
  • Figure 3B shows an alternative system that applies color effects during digital camera processing.
  • Figure 4 shows a detailed view of the components of the color effect control module.
  • FIG. 5 shows a flowchart of the operations that are enabled by the color effect configuration module.
  • Figure 6 shows a block diagram of the color effect module affecting the operations of the color processing module.
  • Figure 7 shows an equation that includes RGB pixels, color transform or correction coefficients, RGB bias parameters, and output RGB pixels.
  • Figure 8 shows a flowchart that is performed by the color correction block that generates an output with a new color cast.
  • Figure 9 shows an illustrative example of the RGB bias being added to each gray scale pixel.
  • Figures 10A through 10C shows an illustrative user interface screenshot where a single slider bar is used to generate a variety of different color casts.
  • Figure 11 A through 11 C shows the use of three slider bars, in which each slider bar corresponds to a particular color channel.
  • Figure 12A through 12D shows an image with a variety of different color casts applied to the same image.
  • Figure 13 shows a flowchart that configures the matrix coefficients and bias parameters described in Figure 7.
  • color cast refers to the process of casting a color on an image, and for purposes of this patent, the terms color effect and color cast are used interchangeably.
  • system and method described herein provides little or no additional CPU cycles than would be required in a typical preview camera mode. Furthermore, the system and method requires minimal additional memory space to perform the image processing before image capture and during image processing. Further still, the system and method permits a user to apply a set of new color effects by controlling the red, green, and blue color channels to generate different color effects, in which these color effects result in different cast effects.
  • a system and method for color processing of a digital camera image is described. More particularly, the application of color effects to preview images and captured images is described.
  • the systems and methods described herein can be applied to any system having the following minimum requirements: a controller that supports a digital camera sensor and has the ability to perform color correction and color conversion.
  • the controller includes a color correction module that receives a color effect parameter that is user generated.
  • the color correction module converts the color images to gray scale images and then applies the color effect parameter to gray scale images to generate modified images having the color effect corresponding to the color effect parameter.
  • the color correction operations are performed in real-time or in pseudo real-time so that the color effect is applied in preview mode before the modified images are captured by a non-volatile memory.
  • the illustrative multimode wireless handset 100 comprises a first antenna element 102 that is operatively coupled to a duplexer 104, which is operatively coupled to a multimode transmitter module 106, and a multimode receiver module 108.
  • An illustrative control module 118 comprises a digital signal processor (DSP) 112, a processor 114, and a CODEC 116 that are communicatively coupled to the transmitter 106 and receiver 108.
  • DSP digital signal processor
  • the transmitter module and receiver module are typically paired and may be embodied as a transceiver.
  • the illustrative transmitter 106, receiver 108, or transceiver is communicatively coupled to antenna element 102.
  • the DSP 112 may be configured to perform a variety of operations such as controlling the antenna 102, the multimode transmitter module 106, the multimode receiver module 108.
  • the processor 114 is operatively coupled to a keypad 120, a memory 122, a display 124, and camera 126. Additionally, the processor 112 is also operatively coupled to the CODEC module 114 that performs the encoding and decoding operations and is communicative coupled to a speaker or ringer 126, and a microphone 128.
  • the CODEC module 114 is also communicatively coupled to the display 124 and provides the encoding and decoding operations for video.
  • the memory 122 includes two different types of memory, namely, volatile memory 123 and non-volatile memory 125.
  • the volatile memory 123 is computer memory that requires power to maintain the stored information such as random access memory (RAM) 216 shown in Figure 3A.
  • RAM random access memory
  • images presented in preview mode would use the storage resources corresponding to the volatile memory 123.
  • the non-volatile memory 125 can retain stored information even when the wireless communication device 100 is not powered up.
  • Some illustrative examples of non-volatile memory 125 include flash memory, ROM memory, and hard drive memory.
  • the captured image is processed using a volatile memory 123 and stored in the non-volatile memory 125.
  • the wireless communication device 100 is a wireless handset that is configured to communicate with one or more base stations 154, 156 and 158 using different communication access technologies (CATs).
  • the illustrative base stations may communicate with the wireless handset using a variety of different communication standards including, but not limited to, various forms of code division multiple access (CDMA), orthogonal frequency division multiple access (OFDMA), and time division multiple access (TDMA) wireless interfaces.
  • CDMA code division multiple access
  • OFDMA orthogonal frequency division multiple access
  • TDMA time division multiple access
  • the wireless handset 100 communicates with base station 154 using a CAT that operates using CDMA technology at 1.9 GHz.
  • the wireless handset 100 is also configured to communicate with base station 156 using a CAT that operates using CDMA at 800 MHz.
  • the illustrative handset 100 is configured to communicate with base station 158 using a CAT that operates using GSM technology at 900MHz.
  • the wireless handset 100 is also configured to monitor signals for a wireless local area network (WLAN) that may include a Wi-Fi access point 60 that is operatively coupled to a modem 162 that provides access to the Internet cloud 164.
  • WLAN wireless local area network
  • the illustrative wireless communication device 100 is also referred to as a wireless handset, a mobile handset, mobile phone, wireless phone, portable cell phone, cellular phone, portable phone, a personal digital assistant (PDA), or any type of mobile terminal which is regularly carried by a user and has all the elements necessary for operation in a wireless communication system.
  • Each CAT receiver module complies with a wireless standard having a receiver requirement.
  • the wireless standard is selected from the group of standards consisting of Code Division Multiple Access (CDMA), Global System for Mobile communications (GSM), Universal Mobile Telecommunications System (UMTS), Universal Mobile Broadband (UMB), wireless local area network (WLAN), wireless personal area network (WPAN), Mobile Broadband Wireless Access (MBWA) and Worldwide Interoperability for Microwave Access (WiMAX) or IEEE802.16.
  • CDMA Code Division Multiple Access
  • GSM Global System for Mobile communications
  • UMTS Universal Mobile Telecommunications System
  • UMB wireless local area network
  • WLAN wireless personal area network
  • MBWA Mobile Broadband Wireless Access
  • WiMAX Worldwide Interoperability for Microwave Access
  • the illustrative system 200 comprises a controller 212 that includes a video front end 210, and a processor such as ARM processor 202 that is embedded in a chipset solution.
  • a processor such as ARM processor 202 that is embedded in a chipset solution.
  • the illustrative controller 212 described herein is embodied in the digital signal processor (DSP) 212.
  • the chipset solution may be a Qualcomm MSM6100 chipset solution or other such chipset solution that includes a processor and a controller that is communicatively coupled to an image sensor that is capable of performing color correction and color conversion operations.
  • the illustrative system 200 regulates and manages the control data and image data across an ARM processor 202, an image sensor 206, a camera interface 208, and a video front end (VFE) 210.
  • the ARM processor 202 includes a color effect module 204.
  • the color effect module 204 is a software block that is programmed to interact with the ARM processor 202 and the video front end 210 residing on controller 212.
  • the color effect module 204 controls the RGB color channels, generates color effect instructions, and communicates color effect parameters.
  • the illustrative image sensor 206 gathers image sensor data in BAYER format and communicates the raw image sensor data to the camera interface 208.
  • the BAYER format refers to a color filter array for arranging RGB color filters on a square grid of photo sensors.
  • the BAYER format refers to a particular arrangement of color filters used in most single-chip digital image sensors that are used in digital cameras, camcorders, and scanners to create a color image.
  • the filter pattern is 50% green, 25% red and 25% blue.
  • BAYER format alternatives to the BAYER format include the CYGM (cyan, yellow, green, magenta) filter, the RGBE (red, green, blue, emerald) filter, the Foveon X3 sensor which vertically layers red, green and blue sensors, using three separate CCDs wherein each CCD is associated with a particular color, or other such image formats.
  • CYGM cyan, yellow, green, magenta
  • RGBE red, green, blue, emerald
  • Foveon X3 sensor which vertically layers red, green and blue sensors, using three separate CCDs wherein each CCD is associated with a particular color, or other such image formats.
  • the camera interface (CAMIF) 208 receives the raw image sensor data and synchronizes the sensor data based on the CAMIF controls. Typically, raw image pixel data gathered by the image sensor 206 is communicated quickly and efficiently to the CAMIF 208. The camera interface 208 then generates an image frame output, according to the CAMIF controls, that is communicated to the video front end 210 residing in DSP 212 as video input data. Recall, the DSP 212 may also be referred to as a controller 212 that is communicatively coupled to an ARM processor 202.
  • the controller 212 comprises the video front end 210 and receives the image frames from the video input data and performs the color processing. More particularly, the illustrative video front end 210 comprises a color correction block that receives converts raw images to gray scale images and then applies the color effect to the gray scale image in real-time as described in further detail below. The video front end 210 receives the color effect parameters from the color effect module 204. Thus, the controller 212 or video front end 210 performs the color processing operations and applies the color effect parameters to raw image data generated by the image sensor 206.
  • the video back end 214 receives the data from the video front end 210 and encodes the image data by compressing and formatting the image data for viewing on the display 124 and for image capture.
  • the image compression and formatting incorporates JPEG for still images and MPEG for video.
  • the compressed and formatted images generated by the video back end 214 are then communicated to volatile memory RAM 216 that provides relatively fast memory storage of the image data.
  • the illustrative RAM 216 is a volatile memory 123 that provides fast memory storage for the image data so that the images stored in the RAM 216 can be viewed in preview mode.
  • the RAM 216 can also be used to view captured images stored in non-volatile memory 125 described in Figure 1.
  • preview mode the presented images are similar to what is seen in the viewfinder and is presented on the display.
  • image capture mode the previewed image is captured and stored in non-volatile memory 125 after the user activates a switch by pushing a button.
  • the captured image is generally stored in a non-volatile memory such as a flash memory card or a hard drive.
  • the illustrative RAM 216 is also communicatively coupled to the ARM 202, and provides the ARM 202 with the formatted and compressed image data.
  • the ARM 202 is configured to support color processing and supports real-time or pseudo real-time image processing of the image data.
  • the illustrative ARM 202 then presents the image data on display 124.
  • the ARM processor 202 also interacts with color effect module 204 that operates as a software module within the processor 202.
  • the color effect module 204 generates the color effect instructions from user instructions that include color effect parameters.
  • the color effect module 204 identifies the color effect parameters and communicates the color effect parameters to the video front end 210 and reconfigures the video front end 210. After the video front end 210 completes its processing, the modified images having the desired color effect are presented on the illustrative LCD display 124 in camera preview mode.
  • the color effect module204 require minimal additional CPU cycles and not significantly more CPU cycles than would be required in a typical preview mode.
  • the color effects are presented in either the preview mode or image capture mode.
  • the preview mode occurs before image capture.
  • the preview mode simulates the process of looking through a viewfinder in a traditional non-digital camera.
  • the images that are presented are similar to what is seen in the viewfinder and that is presented on the display.
  • capture mode the previewed image is "captured" in non-volatile memory after the user activates a switch by pushing a button.
  • FIG. 3B there is shown an alternative system that applies color effects during digital camera processing.
  • a central controller 220 that performs the operations that apply the color effects during digital camera processing.
  • the controller 220 is communicatively coupled to an illustrative camera sensor 222 that generates and processes a plurality of color images.
  • the controller comprises a camera control unit 224 and a camera processing unit 226.
  • the camera control unit 224 receives at least one color effect parameter and stores a plurality of RGB bias values corresponding to the different color effects.
  • the camera control unit 224 also comprises a color effect module 204 as described above in Figure 3A and described in further detail in Figure 4 below. Additionally, a camera configuration module 228 is disposed in the camera control unit 224. The color effect parameters are used to reconfigure the camera configuration module 228.
  • the camera processing unit 226 is communicatively coupled to the camera control unit 224 and is configured to receive the color effect parameter from the camera configuration module 228 and the color image from the camera sensor 222.
  • the camera processing unit 226 comprises a camera interface module 230 that receives the color image data and communicates the color image data to the color processing module 232.
  • the color processing module 232 is reconfigured based on the color effect parameters and converts the color images to a plurality of gray scale images. Subsequently, the color processing module applies the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect associated with the with the color effect parameter.
  • the preview mode displays the modified images having the color effect before the modified image is captured in a non-volatile memory.
  • Figure 3A Two embodiments are presented in Figure 3A and 3B where the figure 3A embodiment is more distributed and the Figure 3B embodiment is more centralized.
  • Figure 3A describes a distributed system that includes a controller 212 and a processor 202.
  • a more centralized system comprising a controller 220 is presented in Figure 3B.
  • the illustrative wireless communication device 100 includes a means for applying a color effect during image processing with a controller that receives the color effect parameter and the color images.
  • the means for applying the color effect converts the color images to a plurality of gray scale images, and applies the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter.
  • the illustrative color effect module204 is a software block that is programmed to interact with the illustrative ARM processor 202 or controller 220, and controls the RGB color channels and processes the color effect parameters.
  • the color effect module204 comprises a user interface block 240, a color effect configuration block 242, and a color effect database block 244.
  • the user interface block 240 provides a user interface that receives at least one color effect parameter.
  • the user input instructions include the color effect parameters that are applied to the preview images and the captured images.
  • the user interface block 240 enables a user to select the desired color effect and apply the desired color effect to images viewed in preview mode or in image capture mode. Illustrative user interface examples are presented in Figures 10, 11 , and 12.
  • the color effect configuration block 242 is configured to interface with the user interface block 240 or module and receives the user input instructions.
  • the color effect configuration block 242 identifies the color effect parameters, and generates control and data flow instructions that are associated with the color effect parameters.
  • the color effect parameters are then communicated to controller embodied in the video front end 210 or to illustrative camera configuration module 228.
  • the color effect database block 244 also communicates with the color effect configuration block 242 and stores the color effect parameter data.
  • the color effect parameters occupy only 3 bytes of memory for each color effect, thereby enabling the usage of minimal memory resources to perform image processing before image capture and during image processing. It shall be appreciated by those of ordinary skill in the art having the benefit of this disclosure that the configuration of the database block 244 shall depend on system design and engineering requirements that are implementation dependent.
  • the color effect configuration block 242 receives user input data from the user interface block 240 and stores the color effect parameters in the color effect database block 244. The color effect configuration block 242 then proceeds to select the appropriate color effect parameters. The color effect parameters are used to reconfigure the video front end 210 or camera configuration module 228 to operate using the received color parameters.
  • FIG. 5 there is shown a flowchart 300 of the operations enabled by the color effect module 204.
  • the operations are initiated at block 302 when camera operations are initiated.
  • the camera operations may be launched by activating the camera 126 in the illustrative wireless communication device 100 shown above.
  • a GUI corresponding to user interface block 240 may then be presented to the user within display 124.
  • the user may interact with the display using "soft keys” such as an illustrative "option” key that enables the user to activate the color effect module 204.
  • the user may then proceed to identify the preferred color effect that is displayed in the camera preview mode.
  • the color effects may be presented with a cursor that moved along a slider bar so the user can select the RGB color channel.
  • the color effect may be presented in real-time while the illustrative wireless communication device 100 is in preview mode.
  • the cursor on each slider bar maps to a corresponding color effect.
  • the color effect parameters are then identified by the color effect module 204.
  • the color effect instructions include color parameters as well as control and data flow instructions that are associated with the color parameters.
  • the color effect parameters are then processed at block 308.
  • the color effect parameters are processed by communicating the color effect parameters from the color effect configuration block 204 to a controller having a video front end 210 or camera configuration module 228 as described above.
  • the color effect parameters reconfigure the video front end 210 or the camera processing unit 226 and the corresponding color processing module 226.
  • the color effect parameters are then applied to the image data and presented in preview mode on the display 124 of the illustrative wireless device 100.
  • the preview mode occurs before the modified image is captured in a non-volatile memory and allows the user to adjust the color effect of the image.
  • the color effect parameters are applied to the captured image.
  • capture mode the previewed image is "captured" in the non-volatile memory such as a flash memory, after the user activates a switch.
  • FIG. 6 there is shown a block diagram of the color effect module affecting the operations of a color processing module.
  • the color effect module 204 communicates the color effect parameter to the color processing module 402 through either ARM processor 202 or camera configuration module 228. Note, the operations performed by color processing module 402 are performed by the first illustrative controller 212 and the second illustrative controller 220 as described above.
  • the color effect parameters are received from the user interface block 240 described in Figure 4.
  • the color effect parameters may include control and data flow instructions that are associated with the color parameters.
  • the color parameters are communicated to the color processing module 402 that is associated within the illustrative video front end 210 or to the camera processing unit 226 as described above.
  • the color processing module 402 also receives frames of image data from that camera as indicated by arrow 404.
  • the color processing module 402 performs the color processing functions.
  • the color processing functions include, but are not limited to, the color correction block 406 and color conversion block 408.
  • the color conversion block 408 is used to convert the RGB to YCbCr and vice versa.
  • YCbCr refers to the family of color spaces used in video and digital photography systems, in which Y is the luma, Cb is the blue component, and Cr is the red chroma component.
  • the color correction block 406 is associated with a controller that includes either the video front end 210 or the camera processing unit 232.
  • the color correction block 406 is configured to convert the color images to a plurality of gray scale images with a RGB to luminance (Y) transformation operation. Subsequently, the color correction block 406 applies the color effect parameter as "bias" parameters to the gray scale images to generate a plurality of modified images having the color effect associated with the color effect parameter.
  • the color correction block 406 performs the color space transformation operations that include correcting for each sensor's spectral sensitivity functions deviating from the desired target color space.
  • the color correction block 406 also interacts with the camera configuration module 228 and applies the color effect parameters in camera preview mode and image capture mode when the color effect is required.
  • the color effect parameters are manipulated by the color correction block 406 with RGB bias parameters as indicated by the equation 410 shown in Figure 7.
  • the equation 410 includes input RGB pixels, color transform or correction coefficients, RGB bias parameters, and output RGB pixels.
  • the input RGB pixels are the RGB pixel values of the received image generated by image sensor 206.
  • the color transform or correction coefficients provide the matrix coefficients used for color correction or convert the RGB image to a gray scale image.
  • the color effect parameters or "RGB bias” parameters provide the color bias for each pixel wherein the color bias increases or decreases the pixel value for each given pixel, resulting in the desired color effect.
  • RGB bias separate bias values are used for each RGB component of a pixel, and the output RGB pixels identify the resultant pixel value after color correction and adding bias.
  • FIG. 8 there is shown a flowchart of processes performed by the color correction block 406 that enables generating an output with a new color effect or color cast.
  • the method 420 is initiated at block 422 where the images are received by the color correction module 406.
  • the method then proceeds to block 424 where the RGB color image is converted to gray scale.
  • the color transform or correction coefficients in the equation 410 are used to transform a color image to a gray scale image. More particularly, the color transform matrix coefficients are used to transform input pixels to gray levels. Colors in an image may be converted to a shade of gray by calculating the effective brightness or luminance of the color. By way of example and not of limitation, the effective luminance of a pixel may be calculated with the following formula:
  • the RGB bias parameters are applied to the gray scale image to obtain a new color effect or color cast.
  • an RGB bias is added to each gray scale pixel resulting in a new color effect or color cast as shown in the illustrative example 440 in Figure 9.
  • the illustrative RGB bias parameters in equation 440 are simply added to the gray scale pixels as shown.
  • the resulting may be a green color effect or green cast effect because the color green is "cast" on the gray scale image to generate the desired color effect.
  • Different color effects may be obtained with different RGB bias values.
  • the camera output is generated with the new color effect and communicated to the illustrative camera control unit 224 for viewing on the display.
  • the new color effect is viewed in preview mode and may then be captured in image capture mode.
  • FIG 10A through 10C there is shown an illustrative user interface screenshot where a single slider bar is used to generate a variety of different color effects.
  • the user interface includes a slider 450, a cursor 452 corresponding to the slider and a displayed image 454 that are shown on illustrative display 124.
  • the cursor 452 is a user controllable cursor that may be controlled by one or more keys disposed on the keypad of the illustrative handset such as a navigation key.
  • the illustrative displayed image 454 is shown in preview mode.
  • the cursor 452 is shown near the center of the slider 450 and may correspond to a default picture mode that is received from the camera without modifying the color image.
  • the cursor 450 along the center line may represent a default picture mode with a modified color image that is presented as a gray scale image.
  • the cursor 452 is on the left side of the slider 450 and results in displayed image 456.
  • the color effect applied to displayed image 456 may result in a magenta-type color cast or color effect.
  • the cursor 452 is moved to the right side of slider 450 and results in displayed image 458 that has a red color cast or color effect.
  • each slider bar corresponds to a particular color channel.
  • the three slider bar combination enables a user to control the red, green, and blue color channels to generate different color effects or color casts.
  • the first slider bar 460 is associated with the red color effect and includes a user controllable cursor 462 that controls the red color effect.
  • a second slider bar 464 also includes a user controllable cursor 466 that provides control of the green color effect.
  • the third slider bar 468 enables a user to control the blue color effect with a user controllable cursor 470.
  • an image 472 is presented to the user that corresponds to the color effect that has been determined by the user.
  • the image 472 may be a default image that may be presented before completing the gray scale transformation or after completing the gray scale transformation, but before applying the color effect.
  • the three slider bars 460, 464 and 468 allow the user to create their own color cast by moving the corresponding cursors 462, 466 and 470, respectively.
  • the cursors and slider bars enable a user to set color effects by moving the bias values for each individual color channel. This multi-slider approach may be presented as a "color equalizer" type of solution.
  • the illustrative yellowish color effect for image 474 is generated by applying a relatively low bias to the red color channel as indicated by cursor 462, a relatively high bias for the green channel as reflected by cursor 466, and by maintaining the same color bias for the blue color channel.
  • the illustrative blue color effect for image 476 is produced by receiving a user input that represents a relatively high red color bias, a relatively low green color bias, and a midpoint blue color bias as represented by cursors 462, 466 and 470, respectively.
  • FIG. 12A through 12D there is shown an image with a variety of different color casts applied to the same image.
  • the color casts are sepia type color effects.
  • sepia refers to a dark brown pigment that is slightly reddish that is used to apply a brown tint to an image.
  • the sepia tone applied to digital photographs appears in shades of brown, as opposed to gray scale.
  • the images in Figure 12A through 12D are presented without a slider bar.
  • the color effects may be selected by the user using a color wheel, color ring, curved slider, touch sensor, push button, "hot” button, scroll button, or other such techniques that enables the user to select a color effect.
  • the color effect corresponding to the image 480 in Figure 12A is a sepia-green color effect.
  • the color effect corresponding to image 482 in Figure 12B is a traditional brown sepia color effect.
  • the illustrative color effect is sepia-red color effect.
  • the color cast for image 486 in Figure 12D is a sepia-blue color effect.
  • Each of these color effects are user selectable.
  • the sepia like color casts presented in Figures 12A through 12D are presented in preview mode and may be captured in image capture mode.
  • FIG. 13 there is shown a flowchart that configures the matrix coefficients and bias parameters described in Figure 7.
  • the method is initiated at decision diamond 492, where a decision is made to either enable or disable the color effect feature described above.
  • the decision 492 activates a particular mode associated with the color correction block 406 shown in Figure 6, namely, the color effect mode 494 or the color correction mode 496.
  • the color correction block 406 applies the user selected color effect to image preview mode and image capture mode as described above.
  • the color effect mode 494 configures the matrix coefficients and bias parameters of Figure 7 to perform color effect operations that transform the color RGB image to a gray scale image and apply the RGB bias to obtain the desired color effect.
  • the applied color effect is then used to configure the preview mode and the image capture mode for the camera at block 498.
  • the color effect feature may be disabled at decision diamond 492, so the method proceeds to the color correction mode 496.
  • the color correction block 406 performs a color correction operation that configures the matrix coefficients and bias parameters of Figure 7 without the color effect. More particularly, the correction mode 496 enables the color correction block 406 to correct the image sensor spectral sensitivity function that deviates from the desired target color space to enhance the image.
  • the color effect parameters are not applied to preview mode and image capture mode.
  • system and method use minimal processing and memory resources. Furthermore, system and method permits the same color effect that is applied in preview mode to be applied to the captured image. Further still, the system and method permits a user to apply a set of new color effects by controlling the red, green, and blue color channels, thereby generating different color effects.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Color Television Image Signal Generators (AREA)
  • Image Processing (AREA)

Abstract

A system and method for apply color effects to a digital camera is described. The system comprises a controller 220 communicatively coupled to an image sensor 222. The controller 220 generates and processes a plurality of color images. The controller comprises a camera control unit 224 that receives at least one color effect parameter and stores a plurality of RGB bias values corresponding to the different color effects. A camera processing unit 226 is communicatively coupled to the camera control unit 224 and receives 422 the color effect parameter and the color image. The camera processing unit is configured to convert 424 the color images to a plurality of gray scale images, and apply 426 the RGB bias values to the gray scale images to generate modified images having the color effect associated with the color effect parameter. A preview mode displays 428 the modified images before the modified image is captured in a non-volatile memory.

Description

PRE-IMAGE CAPTURE COLOR EFFECTS
FIELD OF THE INVENTION
The present invention relates to applying color effects to an image that is processed by a digital camera before the image is captured by the digital camera. More particularly, the invention relates to applying color effects to an image that is processed by a digital camera associated with a wireless communications device before the image is stored in the wireless communication device.
BACKGROUND
Color is all around us and is used to add excitement and emotion to pictures and digital images. Everything from cloths, paintings, and photographed images include a critical color component. Color can also be used to describe emotions such as feeling "blue," being "red" hot angry, or being "green" with envy. Thus, special color effects are applied to captured camera images to communicate emotion.
Typically, mobile phones have a digital camera that is capable of taking pictures in the "normal" mode using red, green, and blue (RGB) colors channels. Additionally, these mobile phones provide limited color effects like a monochrome or "mono" color effect, a sepia color effect, and a color invert color effect. The color effect "mono" refers to a monochrome color effect where an image is shown with different shades of a single color. The color effect "sepia" is typically a brown pigment that is applied to an image. There are other sepia pigments such as blue and green. The color invert color effect inverts color in an image giving an image a look similar to a photographic negative.
Generally, image processing is performed with "captured" or stored images to improve the quality of the image, so limited color effects are applied during post processing of the image. Additionally, the limited quantity of color effects do not support or provision for new color effects.
Although it would be beneficial to provide a mobile phone with a variety of color effects, the existing systems and methods for applying color effects are cumbersome and time consuming in light of the relatively small keypad and tiny display associated with existing mobile phones. Currently, the typical implementation that provides a variety of color effects are performed with captured images where the captured image is manipulated exclusively after image capture. This approach is burdensome to implement because it requires manipulating a captured image with a small keypad, and applying the color effect to that single captured image. The addition of a color effect then has to be repeated for each subsequent captured image.
Therefore, it would be beneficial to provide a solution that enables a user to apply a variety of color effects to the captured images in a less cumbersome and time consuming manner. Additionally, because of the limited resources available on a mobile phone, it would be beneficial to provide a solution that uses minimal processing and memory resources. Furthermore, it would be beneficial to provide a system and method that permits a user to apply a set of new color effects by controlling the different color channels to generate different color effects.
SUMIVIARY
A system and method for apply color effects to a digital camera is described. The system comprises a controller communicatively coupled to an image sensor and a preview mode presented on a display. The controller generates and processes a plurality of color images. The controller comprises a camera control unit and a camera processing unit. The camera control unit receives at least one color effect parameter and stores a plurality of RGB values corresponding to the different color effects. The camera processing unit is communicatively coupled to the camera control unit and is configured to receive the color effect parameter and the color image. Additionally, the camera processing unit is configured to, firstly, convert the color images to a plurality of gray scale images, and secondly, apply the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect associated with the with the color effect parameter. The preview mode displays the modified images having the color effect before the modified image is captured in a non-volatile memory.
An alternative system comprises a controller and a color effect module. The controller is communicatively coupled to an image sensor that generates a plurality of color images that are processed by the controller. The color effect module further comprises a user interface module and a color effect configuration module. The user interface module receives at least one color effect parameter. The color effect configuration block interfaces with the user interface module and communicates the color effect parameter to the controller. A color correction block is associated with the controller and receives the color effect parameter and the color images. The color correction block performs two operations, namely, converting the color images to a plurality of gray scale images, and applying the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect associated with the color effect parameter. The preview mode presents the modified images having the color effect before the modified image is captured in a non-volatile memory.
A method for applying color effects to a wireless communication device having a digital camera is also described. The method comprises generating a plural of plurality of color images with an image sensor that is communicatively coupled to a controller that processes the color images. The method then proceeds to receive least one color effect parameter from a user interface module. The color effect parameter is then communicated to the controller. The method then modifies the color images by converting the color images to a plurality of gray scale images, and applying the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter. The modified images having the color effect are presented in a preview mode before the modified image is captured in a non-volatile memory.
DRAWINGS
The present invention will be more fully understood by reference to the following drawings which are for illustrative, not limiting, purposes.
Figure 1 shows the electrical components associated for an illustrative wireless communication device.
Figure 2 shows an illustrative wireless communication device communicating using different communication bands.
Figure 3A shows an illustrative system that applies color effects during digital camera processing.
Figure 3B shows an alternative system that applies color effects during digital camera processing.
Figure 4 shows a detailed view of the components of the color effect control module.
Figure 5 shows a flowchart of the operations that are enabled by the color effect configuration module.
Figure 6 shows a block diagram of the color effect module affecting the operations of the color processing module.
Figure 7 shows an equation that includes RGB pixels, color transform or correction coefficients, RGB bias parameters, and output RGB pixels.
Figure 8 shows a flowchart that is performed by the color correction block that generates an output with a new color cast. Figure 9 shows an illustrative example of the RGB bias being added to each gray scale pixel.
Figures 10A through 10C shows an illustrative user interface screenshot where a single slider bar is used to generate a variety of different color casts.
Figure 11 A through 11 C shows the use of three slider bars, in which each slider bar corresponds to a particular color channel.
Figure 12A through 12D shows an image with a variety of different color casts applied to the same image.
Figure 13 shows a flowchart that configures the matrix coefficients and bias parameters described in Figure 7.
DETAILED DESCRIPTION
Persons of ordinary skill in the art will realize that the following description is illustrative and not in any way limiting. Other embodiments of the claimed subject matter will readily suggest themselves to such skilled persons having the benefit of this disclosure. It shall be appreciated by those of ordinary skill in the art that the devices, systems, and methods described hereinafter may vary as to configuration and as to details.
The system and method described herein enables color effects or a color cast to be applied during preview mode, and permits the same color effect or color cast that is applied in preview mode to be applied to the captured image. Note, the term "color cast" refers to the process of casting a color on an image, and for purposes of this patent, the terms color effect and color cast are used interchangeably.
Additionally, the system and method described herein provides little or no additional CPU cycles than would be required in a typical preview camera mode. Furthermore, the system and method requires minimal additional memory space to perform the image processing before image capture and during image processing. Further still, the system and method permits a user to apply a set of new color effects by controlling the red, green, and blue color channels to generate different color effects, in which these color effects result in different cast effects.
Generally, a system and method for color processing of a digital camera image is described. More particularly, the application of color effects to preview images and captured images is described. The systems and methods described herein can be applied to any system having the following minimum requirements: a controller that supports a digital camera sensor and has the ability to perform color correction and color conversion. As described in further detail below, the controller includes a color correction module that receives a color effect parameter that is user generated. The color correction module converts the color images to gray scale images and then applies the color effect parameter to gray scale images to generate modified images having the color effect corresponding to the color effect parameter. The color correction operations are performed in real-time or in pseudo real-time so that the color effect is applied in preview mode before the modified images are captured by a non-volatile memory.
Referring to Figure 1 there is shown the electrical components for an illustrative wireless communication device 100. The illustrative multimode wireless handset 100 comprises a first antenna element 102 that is operatively coupled to a duplexer 104, which is operatively coupled to a multimode transmitter module 106, and a multimode receiver module 108.
An illustrative control module 118 comprises a digital signal processor (DSP) 112, a processor 114, and a CODEC 116 that are communicatively coupled to the transmitter 106 and receiver 108. It shall be appreciated by those of ordinary skill in the art that the transmitter module and receiver module are typically paired and may be embodied as a transceiver. The illustrative transmitter 106, receiver 108, or transceiver is communicatively coupled to antenna element 102.
The DSP 112 may be configured to perform a variety of operations such as controlling the antenna 102, the multimode transmitter module 106, the multimode receiver module 108. The processor 114 is operatively coupled to a keypad 120, a memory 122, a display 124, and camera 126. Additionally, the processor 112 is also operatively coupled to the CODEC module 114 that performs the encoding and decoding operations and is communicative coupled to a speaker or ringer 126, and a microphone 128. The CODEC module 114 is also communicatively coupled to the display 124 and provides the encoding and decoding operations for video.
The memory 122 includes two different types of memory, namely, volatile memory 123 and non-volatile memory 125. The volatile memory 123 is computer memory that requires power to maintain the stored information such as random access memory (RAM) 216 shown in Figure 3A. By way of example and not of limitation, images presented in preview mode would use the storage resources corresponding to the volatile memory 123. The non-volatile memory 125 can retain stored information even when the wireless communication device 100 is not powered up. Some illustrative examples of non-volatile memory 125 include flash memory, ROM memory, and hard drive memory. In the illustrative embodiment, the captured image is processed using a volatile memory 123 and stored in the non-volatile memory 125. Referring now to Figure 2 there is shown the illustrative wireless communication device 100 communicating using different communication bands. In the illustrative system 150, the wireless communication device 100 is a wireless handset that is configured to communicate with one or more base stations 154, 156 and 158 using different communication access technologies (CATs). The illustrative base stations may communicate with the wireless handset using a variety of different communication standards including, but not limited to, various forms of code division multiple access (CDMA), orthogonal frequency division multiple access (OFDMA), and time division multiple access (TDMA) wireless interfaces.
By way of example and not of limitation, the wireless handset 100 communicates with base station 154 using a CAT that operates using CDMA technology at 1.9 GHz. The wireless handset 100 is also configured to communicate with base station 156 using a CAT that operates using CDMA at 800 MHz. Additionally, the illustrative handset 100 is configured to communicate with base station 158 using a CAT that operates using GSM technology at 900MHz. The wireless handset 100 is also configured to monitor signals for a wireless local area network (WLAN) that may include a Wi-Fi access point 60 that is operatively coupled to a modem 162 that provides access to the Internet cloud 164.
The illustrative wireless communication device 100 is also referred to as a wireless handset, a mobile handset, mobile phone, wireless phone, portable cell phone, cellular phone, portable phone, a personal digital assistant (PDA), or any type of mobile terminal which is regularly carried by a user and has all the elements necessary for operation in a wireless communication system. Each CAT receiver module complies with a wireless standard having a receiver requirement. By way of example and not of limitation, the wireless standard is selected from the group of standards consisting of Code Division Multiple Access (CDMA), Global System for Mobile communications (GSM), Universal Mobile Telecommunications System (UMTS), Universal Mobile Broadband (UMB), wireless local area network (WLAN), wireless personal area network (WPAN), Mobile Broadband Wireless Access (MBWA) and Worldwide Interoperability for Microwave Access (WiMAX) or IEEE802.16. It shall be appreciated by those of ordinary skill in the art that the term wireless communication device, wireless handset, mobile handset, wireless phone, and mobile phone are interchangeable.
Referring to Figure 3A there is shown an illustrative system 200 that applies color effects during digital camera processing. The illustrative system 200 comprises a controller 212 that includes a video front end 210, and a processor such as ARM processor 202 that is embedded in a chipset solution. Note, for purposes of this embodiment the illustrative controller 212 described herein is embodied in the digital signal processor (DSP) 212. By way of example and not of limitation, the chipset solution may be a Qualcomm MSM6100 chipset solution or other such chipset solution that includes a processor and a controller that is communicatively coupled to an image sensor that is capable of performing color correction and color conversion operations.
In the illustrative embodiment shown in Figure 3A, the illustrative system 200 regulates and manages the control data and image data across an ARM processor 202, an image sensor 206, a camera interface 208, and a video front end (VFE) 210. The ARM processor 202 includes a color effect module 204. Typically, the color effect module 204 is a software block that is programmed to interact with the ARM processor 202 and the video front end 210 residing on controller 212. In the illustrative embodiment, the color effect module 204 controls the RGB color channels, generates color effect instructions, and communicates color effect parameters.
In operation, the illustrative image sensor 206 gathers image sensor data in BAYER format and communicates the raw image sensor data to the camera interface 208. The BAYER format refers to a color filter array for arranging RGB color filters on a square grid of photo sensors. The BAYER format refers to a particular arrangement of color filters used in most single-chip digital image sensors that are used in digital cameras, camcorders, and scanners to create a color image. Typically, the filter pattern is 50% green, 25% red and 25% blue. Alternatives to the BAYER format include the CYGM (cyan, yellow, green, magenta) filter, the RGBE (red, green, blue, emerald) filter, the Foveon X3 sensor which vertically layers red, green and blue sensors, using three separate CCDs wherein each CCD is associated with a particular color, or other such image formats.
The camera interface (CAMIF) 208 receives the raw image sensor data and synchronizes the sensor data based on the CAMIF controls. Typically, raw image pixel data gathered by the image sensor 206 is communicated quickly and efficiently to the CAMIF 208. The camera interface 208 then generates an image frame output, according to the CAMIF controls, that is communicated to the video front end 210 residing in DSP 212 as video input data. Recall, the DSP 212 may also be referred to as a controller 212 that is communicatively coupled to an ARM processor 202.
The controller 212 comprises the video front end 210 and receives the image frames from the video input data and performs the color processing. More particularly, the illustrative video front end 210 comprises a color correction block that receives converts raw images to gray scale images and then applies the color effect to the gray scale image in real-time as described in further detail below. The video front end 210 receives the color effect parameters from the color effect module 204. Thus, the controller 212 or video front end 210 performs the color processing operations and applies the color effect parameters to raw image data generated by the image sensor 206.
The video back end 214 receives the data from the video front end 210 and encodes the image data by compressing and formatting the image data for viewing on the display 124 and for image capture. By way of example and not of limitation, the image compression and formatting incorporates JPEG for still images and MPEG for video. The compressed and formatted images generated by the video back end 214 are then communicated to volatile memory RAM 216 that provides relatively fast memory storage of the image data.
The illustrative RAM 216 is a volatile memory 123 that provides fast memory storage for the image data so that the images stored in the RAM 216 can be viewed in preview mode. Of course, the RAM 216 can also be used to view captured images stored in non-volatile memory 125 described in Figure 1. In preview mode, the presented images are similar to what is seen in the viewfinder and is presented on the display. In image capture mode, the previewed image is captured and stored in non-volatile memory 125 after the user activates a switch by pushing a button. The captured image is generally stored in a non-volatile memory such as a flash memory card or a hard drive.
The illustrative RAM 216 is also communicatively coupled to the ARM 202, and provides the ARM 202 with the formatted and compressed image data. The ARM 202 is configured to support color processing and supports real-time or pseudo real-time image processing of the image data. The illustrative ARM 202 then presents the image data on display 124.
The ARM processor 202 also interacts with color effect module 204 that operates as a software module within the processor 202. The color effect module 204 generates the color effect instructions from user instructions that include color effect parameters. The color effect module 204 identifies the color effect parameters and communicates the color effect parameters to the video front end 210 and reconfigures the video front end 210. After the video front end 210 completes its processing, the modified images having the desired color effect are presented on the illustrative LCD display 124 in camera preview mode. The color effect module204 require minimal additional CPU cycles and not significantly more CPU cycles than would be required in a typical preview mode.
The color effects are presented in either the preview mode or image capture mode. The preview mode occurs before image capture. In operation, the preview mode simulates the process of looking through a viewfinder in a traditional non-digital camera. In preview mode, the images that are presented are similar to what is seen in the viewfinder and that is presented on the display. In capture mode, the previewed image is "captured" in non-volatile memory after the user activates a switch by pushing a button.
Referring to Figure 3B there is shown an alternative system that applies color effects during digital camera processing. In this illustrative embodiment there is a central controller 220 that performs the operations that apply the color effects during digital camera processing. The controller 220 is communicatively coupled to an illustrative camera sensor 222 that generates and processes a plurality of color images.
The controller comprises a camera control unit 224 and a camera processing unit 226. The camera control unit 224 receives at least one color effect parameter and stores a plurality of RGB bias values corresponding to the different color effects. The camera control unit 224 also comprises a color effect module 204 as described above in Figure 3A and described in further detail in Figure 4 below. Additionally, a camera configuration module 228 is disposed in the camera control unit 224. The color effect parameters are used to reconfigure the camera configuration module 228.
The camera processing unit 226 is communicatively coupled to the camera control unit 224 and is configured to receive the color effect parameter from the camera configuration module 228 and the color image from the camera sensor 222. The camera processing unit 226 comprises a camera interface module 230 that receives the color image data and communicates the color image data to the color processing module 232. The color processing module 232 is reconfigured based on the color effect parameters and converts the color images to a plurality of gray scale images. Subsequently, the color processing module applies the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect associated with the with the color effect parameter. The preview mode displays the modified images having the color effect before the modified image is captured in a non-volatile memory.
Two embodiments are presented in Figure 3A and 3B where the figure 3A embodiment is more distributed and the Figure 3B embodiment is more centralized. Figure 3A describes a distributed system that includes a controller 212 and a processor 202. A more centralized system comprising a controller 220 is presented in Figure 3B.
The systems described above may be applied to a wireless communication device 100 having a digital camera 126 and the color effect is applied to the image data. Thus, the illustrative wireless communication device 100 includes a means for applying a color effect during image processing with a controller that receives the color effect parameter and the color images. The means for applying the color effect converts the color images to a plurality of gray scale images, and applies the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter.
Referring to Figure 4 there is shown a detailed view of the components of an illustrative color effect control module 204. The illustrative color effect module204 is a software block that is programmed to interact with the illustrative ARM processor 202 or controller 220, and controls the RGB color channels and processes the color effect parameters. The color effect module204 comprises a user interface block 240, a color effect configuration block 242, and a color effect database block 244.
The user interface block 240 provides a user interface that receives at least one color effect parameter. The user input instructions include the color effect parameters that are applied to the preview images and the captured images. The user interface block 240 enables a user to select the desired color effect and apply the desired color effect to images viewed in preview mode or in image capture mode. Illustrative user interface examples are presented in Figures 10, 11 , and 12.
The color effect configuration block 242 is configured to interface with the user interface block 240 or module and receives the user input instructions. The color effect configuration block 242 identifies the color effect parameters, and generates control and data flow instructions that are associated with the color effect parameters. The color effect parameters are then communicated to controller embodied in the video front end 210 or to illustrative camera configuration module 228.
The color effect database block 244 also communicates with the color effect configuration block 242 and stores the color effect parameter data. In the illustrative embodiment, the color effect parameters occupy only 3 bytes of memory for each color effect, thereby enabling the usage of minimal memory resources to perform image processing before image capture and during image processing. It shall be appreciated by those of ordinary skill in the art having the benefit of this disclosure that the configuration of the database block 244 shall depend on system design and engineering requirements that are implementation dependent.
In operation, the color effect configuration block 242 receives user input data from the user interface block 240 and stores the color effect parameters in the color effect database block 244. The color effect configuration block 242 then proceeds to select the appropriate color effect parameters. The color effect parameters are used to reconfigure the video front end 210 or camera configuration module 228 to operate using the received color parameters.
Referring to Figure 5 there is shown a flowchart 300 of the operations enabled by the color effect module 204. The operations are initiated at block 302 when camera operations are initiated. The camera operations may be launched by activating the camera 126 in the illustrative wireless communication device 100 shown above.
At block 304, a GUI corresponding to user interface block 240 may then be presented to the user within display 124. The user may interact with the display using "soft keys" such as an illustrative "option" key that enables the user to activate the color effect module 204. The user may then proceed to identify the preferred color effect that is displayed in the camera preview mode.
By way of example and not of limitation, the color effects may be presented with a cursor that moved along a slider bar so the user can select the RGB color channel. The color effect may be presented in real-time while the illustrative wireless communication device 100 is in preview mode. In the illustrative embodiment, the cursor on each slider bar maps to a corresponding color effect.
At block 306, the color effect parameters are then identified by the color effect module 204. The color effect instructions include color parameters as well as control and data flow instructions that are associated with the color parameters.
The color effect parameters are then processed at block 308. The color effect parameters are processed by communicating the color effect parameters from the color effect configuration block 204 to a controller having a video front end 210 or camera configuration module 228 as described above. The color effect parameters reconfigure the video front end 210 or the camera processing unit 226 and the corresponding color processing module 226.
At block 310, the color effect parameters are then applied to the image data and presented in preview mode on the display 124 of the illustrative wireless device 100. The preview mode occurs before the modified image is captured in a non-volatile memory and allows the user to adjust the color effect of the image. At block 312, the color effect parameters are applied to the captured image. In capture mode, the previewed image is "captured" in the non-volatile memory such as a flash memory, after the user activates a switch.
Referring to Figure 6 there is shown a block diagram of the color effect module affecting the operations of a color processing module. The color effect module 204 communicates the color effect parameter to the color processing module 402 through either ARM processor 202 or camera configuration module 228. Note, the operations performed by color processing module 402 are performed by the first illustrative controller 212 and the second illustrative controller 220 as described above.
The color effect parameters are received from the user interface block 240 described in Figure 4. The color effect parameters may include control and data flow instructions that are associated with the color parameters. The color parameters are communicated to the color processing module 402 that is associated within the illustrative video front end 210 or to the camera processing unit 226 as described above. The color processing module 402 also receives frames of image data from that camera as indicated by arrow 404.
The color processing module 402 performs the color processing functions. The color processing functions include, but are not limited to, the color correction block 406 and color conversion block 408. The color conversion block 408 is used to convert the RGB to YCbCr and vice versa. YCbCr refers to the family of color spaces used in video and digital photography systems, in which Y is the luma, Cb is the blue component, and Cr is the red chroma component.
The color correction block 406 is associated with a controller that includes either the video front end 210 or the camera processing unit 232. In operation, the color correction block 406 is configured to convert the color images to a plurality of gray scale images with a RGB to luminance (Y) transformation operation. Subsequently, the color correction block 406 applies the color effect parameter as "bias" parameters to the gray scale images to generate a plurality of modified images having the color effect associated with the color effect parameter.
The color correction block 406 performs the color space transformation operations that include correcting for each sensor's spectral sensitivity functions deviating from the desired target color space. In one embodiment, the color correction block 406 also interacts with the camera configuration module 228 and applies the color effect parameters in camera preview mode and image capture mode when the color effect is required. The color effect parameters are manipulated by the color correction block 406 with RGB bias parameters as indicated by the equation 410 shown in Figure 7.
In Figure 7, the equation 410 includes input RGB pixels, color transform or correction coefficients, RGB bias parameters, and output RGB pixels. The input RGB pixels are the RGB pixel values of the received image generated by image sensor 206. The color transform or correction coefficients provide the matrix coefficients used for color correction or convert the RGB image to a gray scale image.
The color effect parameters or "RGB bias" parameters provide the color bias for each pixel wherein the color bias increases or decreases the pixel value for each given pixel, resulting in the desired color effect. In the illustrative embodiment, separate bias values are used for each RGB component of a pixel, and the output RGB pixels identify the resultant pixel value after color correction and adding bias.
Referring to Figure 8, there is shown a flowchart of processes performed by the color correction block 406 that enables generating an output with a new color effect or color cast. The method 420 is initiated at block 422 where the images are received by the color correction module 406.
The method then proceeds to block 424 where the RGB color image is converted to gray scale. The color transform or correction coefficients in the equation 410 are used to transform a color image to a gray scale image. More particularly, the color transform matrix coefficients are used to transform input pixels to gray levels. Colors in an image may be converted to a shade of gray by calculating the effective brightness or luminance of the color. By way of example and not of limitation, the effective luminance of a pixel may be calculated with the following formula:
Y = 0.3*R + 0.59*G + 0.11*B
The corresponding values for the illustrative color transform or correction coefficients are:
Figure imgf000015_0001
Applying color transform or correction coefficients to equation 410 in Figure 7 results in the input RGB pixel values having gray scale pixel values.
At block 426, the RGB bias parameters are applied to the gray scale image to obtain a new color effect or color cast. After having converted the RGB image data to gray scale image data, an RGB bias is added to each gray scale pixel resulting in a new color effect or color cast as shown in the illustrative example 440 in Figure 9. The illustrative RGB bias parameters in equation 440 are simply added to the gray scale pixels as shown. By way of example and not of limitation, the resultant pixel output values may be calculated as indicated below: R = -40 + 50 = 10
G = 72 + 50 = 122
B = -8 + 50 = 42
In the illustrative example provided in Figure 9, the resulting may be a green color effect or green cast effect because the color green is "cast" on the gray scale image to generate the desired color effect. Different color effects may be obtained with different RGB bias values.
At block 428, the camera output is generated with the new color effect and communicated to the illustrative camera control unit 224 for viewing on the display. The new color effect is viewed in preview mode and may then be captured in image capture mode. Referring to Figure 10A through 10C there is shown an illustrative user interface screenshot where a single slider bar is used to generate a variety of different color effects. In Figure 10A, the user interface includes a slider 450, a cursor 452 corresponding to the slider and a displayed image 454 that are shown on illustrative display 124. The cursor 452 is a user controllable cursor that may be controlled by one or more keys disposed on the keypad of the illustrative handset such as a navigation key. The illustrative displayed image 454 is shown in preview mode. The cursor 452 is shown near the center of the slider 450 and may correspond to a default picture mode that is received from the camera without modifying the color image. Alternatively, the cursor 450 along the center line may represent a default picture mode with a modified color image that is presented as a gray scale image.
The slider 450 provides a single user interface control that enables the user to control the color effect that is applied to the previewed image on a real-time or pseudo real-time basis. The color effects along slider 450 are preprogrammed, so that the color effects available along the slider 450 are predefined and present a "color tuner" effect. A simplified manner for presenting the color effect is provided with the single slider 450; however, the single slider 450 may also limit the variety of color casts.
By way of example and not of limitation, in Figure 10B the cursor 452 is on the left side of the slider 450 and results in displayed image 456. The color effect applied to displayed image 456 may result in a magenta-type color cast or color effect. In Figure 10C, the cursor 452 is moved to the right side of slider 450 and results in displayed image 458 that has a red color cast or color effect.
Referring to Figure 11A through 11C there is shown the use of three slider bars, in which each slider bar corresponds to a particular color channel. The three slider bar combination enables a user to control the red, green, and blue color channels to generate different color effects or color casts. The first slider bar 460 is associated with the red color effect and includes a user controllable cursor 462 that controls the red color effect. A second slider bar 464 also includes a user controllable cursor 466 that provides control of the green color effect. The third slider bar 468 enables a user to control the blue color effect with a user controllable cursor 470.
In Figure 11A an image 472 is presented to the user that corresponds to the color effect that has been determined by the user. For example, the image 472 may be a default image that may be presented before completing the gray scale transformation or after completing the gray scale transformation, but before applying the color effect.
The three slider bars 460, 464 and 468 allow the user to create their own color cast by moving the corresponding cursors 462, 466 and 470, respectively. The cursors and slider bars enable a user to set color effects by moving the bias values for each individual color channel. This multi-slider approach may be presented as a "color equalizer" type of solution.
In Figure 11 B, the illustrative yellowish color effect for image 474 is generated by applying a relatively low bias to the red color channel as indicated by cursor 462, a relatively high bias for the green channel as reflected by cursor 466, and by maintaining the same color bias for the blue color channel. In Figure 11C, the illustrative blue color effect for image 476 is produced by receiving a user input that represents a relatively high red color bias, a relatively low green color bias, and a midpoint blue color bias as represented by cursors 462, 466 and 470, respectively.
Referring to Figures 12A through 12D there is shown an image with a variety of different color casts applied to the same image. The color casts are sepia type color effects. Generally, "sepia" refers to a dark brown pigment that is slightly reddish that is used to apply a brown tint to an image. The sepia tone applied to digital photographs appears in shades of brown, as opposed to gray scale. The images in Figure 12A through 12D are presented without a slider bar. The color effects may be selected by the user using a color wheel, color ring, curved slider, touch sensor, push button, "hot" button, scroll button, or other such techniques that enables the user to select a color effect.
By way of example and not of limitation, the color effect corresponding to the image 480 in Figure 12A is a sepia-green color effect. The color effect corresponding to image 482 in Figure 12B is a traditional brown sepia color effect. With respect to image 484 in Figure 12C, the illustrative color effect is sepia-red color effect. And the color cast for image 486 in Figure 12D is a sepia-blue color effect. Each of these color effects are user selectable. The sepia like color casts presented in Figures 12A through 12D are presented in preview mode and may be captured in image capture mode.
Referring to Figure 13 there is shown a flowchart that configures the matrix coefficients and bias parameters described in Figure 7. The method is initiated at decision diamond 492, where a decision is made to either enable or disable the color effect feature described above. In the illustrative embodiment, the decision 492 activates a particular mode associated with the color correction block 406 shown in Figure 6, namely, the color effect mode 494 or the color correction mode 496.
When the color effect mode 494 is enabled, the color correction block 406 applies the user selected color effect to image preview mode and image capture mode as described above. The color effect mode 494 configures the matrix coefficients and bias parameters of Figure 7 to perform color effect operations that transform the color RGB image to a gray scale image and apply the RGB bias to obtain the desired color effect. The applied color effect is then used to configure the preview mode and the image capture mode for the camera at block 498.
Alternatively, the color effect feature may be disabled at decision diamond 492, so the method proceeds to the color correction mode 496. In color correction mode 496, the color correction block 406 performs a color correction operation that configures the matrix coefficients and bias parameters of Figure 7 without the color effect. More particularly, the correction mode 496 enables the color correction block 406 to correct the image sensor spectral sensitivity function that deviates from the desired target color space to enhance the image. However, the color effect parameters are not applied to preview mode and image capture mode.
The description provided above enables a user to apply a variety of color effects to the previewed images and captured images in an efficient and timely manner. Additionally, the system and method use minimal processing and memory resources. Furthermore, system and method permits the same color effect that is applied in preview mode to be applied to the captured image. Further still, the system and method permits a user to apply a set of new color effects by controlling the red, green, and blue color channels, thereby generating different color effects.
It is to be understood that the detailed description of illustrative embodiments are provided for illustrative purposes. The scope of the claims is not limited to these specific embodiments or examples. For example, the system and method for applying color effects during image processing is described in the context of a wireless communication device, however, this solution may be extended to any device having an image sensor, a controller, and a processor such as a digital camera. Therefore, various structural limitations, elements, details, and uses can differ from those just described, or be expanded on or implemented using technologies not yet commercially viable, and yet still be within the inventive concepts of the present disclosure. The scope of the invention is determined by the following claims and their legal equivalents.
What is claimed is:

Claims

CLAiMS
1. A system for applying color effects to a digital camera, the system comprising: a controller communicatively coupled to an image sensor that generates and processes a plurality of color images, the controller comprising, a camera control unit that receives at least one color effect parameter and stores a plurality of RGB bias values corresponding to different color effects, a camera processing unit communicatively coupled to the camera control unit, the camera processing unit configured to receive the color effect parameter and the color images, the camera processing unit configured to, firstly, convert the color images to a plurality of gray scale images, and secondly, apply the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect associated with the with the color effect parameter; and a preview mode presented on a display that displays the modified images having the color effect before the modified image is captured in a non-volatile memory.
2. The system of claim 1 wherein the camera control unit further comprises a color effect module that includes, a user interface block that receives at least one color parameter, a color effect database block that stores the different RGB bias values that correspond to different color effects, and a color effect configuration block configured to interface with the user interface module and communicate the color effect parameter to the camera processing unit.
3. The system of claim 2 wherein the user interface module provides a plurality of user selectable color effect parameters that may be activated by the user after presenting the modified image having the color effect in the preview mode on the display.
4. The system of claim 3 further comprising an image capture mode, in which the modified image having the color effect is captured in the non-volatile memory after receiving a user instruction to capture the modified image having the color effect.
5. The system of claim 4 wherein the display presents the modified image having the color effect in the preview mode and the image capture mode.
6. The system of claim 4 wherein the user interface module further comprises at least one user controllable cursor that corresponds to a range of color effects.
7. The system of claim 4 wherein the user interface module further comprises a first user controllable cursor that corresponds to a red color channel, a second user controllable cursor that corresponds to a green color channel, and a third user controllable cursor that corresponds to a blue color channel.
8. A wireless communication device having a digital camera that applies a color effect to raw image data, the wireless communication device comprising: a controller communicatively coupled to an image sensor that generates a plurality of color images that are processed by the controller; a color effect module corresponding to the wireless communication device, the color effect module communicatively coupled to the controller, the color effect module further comprising, a user interface block that receives at least one color effect parameter, a color effect database block that stores different RGB bias values for a different color effect, and a color effect configuration block configured to interface with the user interface module and communicate the color effect parameter to a camera processing unit; a color correction block associated with the camera processing unit that receives the color effect parameter and the color images, the color correction block configured to convert the color images to a plurality of gray scale images, and applies the color effect parameter to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter; and a preview mode that presents the modified images having the color effect before the modified image is captured in a non-volatile memory.
9. The wireless communication device of claim 8 further comprising a display that presents the modified image having the color effect in the preview mode.
10. The wireless communication device of claim 9 wherein the user interface block provides a plurality of user selectable color effect parameters that may be activated by the user after presenting the modified image having the color effect in the preview mode on the display.
11. The wireless communication device of claim 10 further comprising an image capture mode, in which the modified image having the color effect is captured in the non-volatile memory after receiving a user instruction to capture the modified image having the color effect.
12. The wireless communication device of claim 11 wherein the display presents the modified image having the color effect in the preview mode and the image capture mode.
13. The wireless communication device of claim 11 wherein the user interface module further comprises at least one user controllable cursor that corresponds to a range of color effects.
14. The wireless communication device of claim 11 wherein the user interface module further comprises a first user controllable cursor that corresponds to a red color channel, a second user controllable cursor that corresponds to a green color channel, and a third user controllable cursor that corresponds to a blue color channel.
15. A method for applying color effects to a wireless communication device having a digital camera, the method comprising: generating a plural of plurality of color images with an image sensor that is communicatively coupled to a controller that processes the color images; receiving at least one color effect parameter from a user interface module that corresponds to a plurality of RGB bias values; communicating the color effect parameter to a camera processing unit corresponding to the controller; modifying the color images by, firstly, converting the color images to a plurality of gray scale images, and secondly, applying the RGB bias values to the gray scale images to generate a plurality of modified images having the color effect corresponding to the color effect parameter; and presenting the modified images having the color effect before the modified image is captured in a non-volatile memory in a preview mode.
16. The method of claim 15 further comprising presenting the modified image having the color effect in a preview mode on a display disposed on the wireless communication device.
17. The method of claim 16 further comprising presenting a plurality of user selectable color effect parameters that may be activated by the user after presenting the modified image having the color effect in the preview mode on the display.
18. The method of claim 17 further comprising receiving a user instruction to capture the modified image having the color effect in an image capture mode, in which the modified image having the color effect is captured in the non-volatile memory after.
19. The method of claim 18 further comprising presenting the modified image having the color effect in the preview mode and the image capture mode on the display.
20. The method of claim 18 further comprising storing the color effect parameters in a color effect database block that is communicatively coupled to the color effect configuration block.
21. The method of claim 18 further comprising presenting at least one user controllable cursor that corresponds to a range of color effects on the user interface module.
22. The method of claim 18 further comprising presenting a first user controllable cursor that corresponds to a red color channel, a second user controllable cursor that corresponds to a green color channel, and a third user controllable cursor that corresponds to a blue color channel on the user interface module.
PCT/US2009/030728 2008-01-11 2009-01-12 Pre-image capture color effects WO2009089525A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US1332208A 2008-01-11 2008-01-11
US12/013,322 2008-01-11

Publications (1)

Publication Number Publication Date
WO2009089525A1 true WO2009089525A1 (en) 2009-07-16

Family

ID=40456742

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2009/030728 WO2009089525A1 (en) 2008-01-11 2009-01-12 Pre-image capture color effects

Country Status (1)

Country Link
WO (1) WO2009089525A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8643760B2 (en) 2010-09-02 2014-02-04 Htc Corporation Image processing methods and systems for handheld devices
EP2693737A3 (en) * 2012-08-03 2014-04-09 Samsung Electronics Co., Ltd Image processing method and apparatus
CN114630045A (en) * 2022-02-11 2022-06-14 珠海格力电器股份有限公司 Photographing method and device, readable storage medium and electronic equipment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438363A (en) * 1993-06-04 1995-08-01 Nikon Corporation Camera capable of adjusting white balance during underwater photography
EP1389003A2 (en) * 2002-08-08 2004-02-11 Canon Kabushiki Kaisha Color conversion table generation method and apparatus
EP1569450A1 (en) * 2003-03-07 2005-08-31 Sharp Kabushiki Kaisha Multifunctional mobile electronic device
US20050243347A1 (en) * 2004-03-08 2005-11-03 Ikuo Hayaishi Conversion of color image to monochrome image
US20060163450A1 (en) * 2005-01-26 2006-07-27 Canon Kabushiki Kaisha Image sensing apparatus and control method thereof
EP1686787A1 (en) * 2005-01-31 2006-08-02 Canon Kabushiki Kaisha Image pickup apparatus with special effect mode and method thereof
US20070195181A1 (en) * 2006-02-22 2007-08-23 Kenichi Onomura Electronic image pickup apparatus and electronic image pickup method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438363A (en) * 1993-06-04 1995-08-01 Nikon Corporation Camera capable of adjusting white balance during underwater photography
EP1389003A2 (en) * 2002-08-08 2004-02-11 Canon Kabushiki Kaisha Color conversion table generation method and apparatus
EP1569450A1 (en) * 2003-03-07 2005-08-31 Sharp Kabushiki Kaisha Multifunctional mobile electronic device
US20050243347A1 (en) * 2004-03-08 2005-11-03 Ikuo Hayaishi Conversion of color image to monochrome image
US20060163450A1 (en) * 2005-01-26 2006-07-27 Canon Kabushiki Kaisha Image sensing apparatus and control method thereof
EP1686787A1 (en) * 2005-01-31 2006-08-02 Canon Kabushiki Kaisha Image pickup apparatus with special effect mode and method thereof
US20070195181A1 (en) * 2006-02-22 2007-08-23 Kenichi Onomura Electronic image pickup apparatus and electronic image pickup method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8643760B2 (en) 2010-09-02 2014-02-04 Htc Corporation Image processing methods and systems for handheld devices
US9030577B2 (en) 2010-09-02 2015-05-12 Htc Corporation Image processing methods and systems for handheld devices
EP2693737A3 (en) * 2012-08-03 2014-04-09 Samsung Electronics Co., Ltd Image processing method and apparatus
US9225905B2 (en) 2012-08-03 2015-12-29 Samsung Electronics Co., Ltd. Image processing method and apparatus
AU2013297221B2 (en) * 2012-08-03 2016-11-24 Samsung Electronics Co., Ltd. Image processing method and apparatus
CN114630045A (en) * 2022-02-11 2022-06-14 珠海格力电器股份有限公司 Photographing method and device, readable storage medium and electronic equipment

Similar Documents

Publication Publication Date Title
CN108605097B (en) Optical imaging method and device
US10827140B2 (en) Photographing method for terminal and terminal
KR101953614B1 (en) Apparatus and method for processing a image of camera device and terminal equipment having a camera
US9351002B2 (en) Image processing apparatus, image pickup apparatus, computer, image processing method and computer readable non-transitory medium
US20100053212A1 (en) Portable device having image overlay function and method of overlaying image in portable device
CN107846554B (en) Image processing method, terminal and computer readable storage medium
CN105409211A (en) Automatic white balancing with skin tone correction for image processing
KR102158844B1 (en) Apparatus and method for processing image, and computer-readable recording medium
CN113810598A (en) Photographing method and device
CN113810642B (en) Video processing method and device, electronic equipment and storage medium
EP4175275A1 (en) White balance processing method and electronic device
US10674163B2 (en) Color space compression
WO2018075133A1 (en) Mesh-based auto white balancing
US9654756B1 (en) Method and apparatus for interpolating pixel colors from color and panchromatic channels to color channels
WO2009089525A1 (en) Pre-image capture color effects
US8687091B2 (en) Image capturing systems and methods utilizing customizable look management
US11501412B2 (en) Image processing apparatus, imaging apparatus, image processing method, and image processing program
KR20140106221A (en) Photographing method and apparatus using multiple image sensors
WO2021179142A1 (en) Image processing method and related apparatus
CN109005339B (en) Image acquisition method, terminal and storage medium
CN115442536B (en) Method and device for determining exposure parameters, image system and electronic equipment
JP2007081549A (en) Imaging system
EP1679908A1 (en) Electronic apparatus equipped with photographing function having chromaticness correcting function, and method for correcting cheomaticness of image data
JP2004221731A (en) Image transmission apparatus and digital camera
CN117528265A (en) Video shooting method and electronic equipment

Legal Events

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

Ref document number: 09700531

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09700531

Country of ref document: EP

Kind code of ref document: A1