A number of different types of imaging software applications are available to visually enhance images and/or decrease the noise level in digital image data. For example, one such software applications is ADOBE PHOTOSHOP which enables a user of the application to combine or stack images to create a target “stacked” image which generally has an improved signal-to-noise ratio. However, utilizing such software applications is generally a time-consuming and manually demanding process requiring that the user train or otherwise become familiar with the software application as well as perform image alignment operations.
In accordance with one embodiment of the present invention, an imaging system comprises an imaging device adapted to capture a plurality of images of an object. The imaging system also comprises a stacking application stored on the imaging device and adapted to generate a stacked image from the plurality of images.
In accordance with another embodiment of the present invention, an imaging method comprises initiating a stacking application stored on an image capturing device and capturing a plurality of images via the image capturing device. The method also comprises generating a stacked image on the image capturing device from the plurality of images via the stacking application.
For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
The preferred embodiments of the present invention and the advantages thereof are best understood by referring to
In the embodiment illustrated in
In the embodiment illustrated in
In the embodiment illustrated in
In operation, image stacking application 42 enables a user to perform an image stacking operation via imaging device 12. For example, in some embodiments of the present invention, user interface 24 is accessed by the user to activate or initiate image stacking application 42. In some embodiments of the present invention, image stacking application 42 is configured to automatically stack two or more images captured using imaging device 12. However, it should be understood that in other embodiments of the present invention, imaging stacking application 42 is configured to enable the user to manually select or otherwise identify particular images captured by imaging device 12 to use during an image stacking operation. Thus, in some embodiments of the present invention, user interface 24 is accessed by a user of imaging device 12 to identify a quantity of images to be captured by imaging device 12 and combined or stacked to create or otherwise generate a stacked image. The quantity of images to capture and/or combine to create or generate a stacked image is stored as stacking quantity 76. Thus, in response to receiving stacking quantity 76, image stacking application interfaces with image capture controller 40 to initiate the capturing of a particular quantity of images designated by stacking quantity 76 and, in turn, image stacking application 42 automatically stacks or otherwise combines the captured images to create or otherwise generate a stacked image, which may be stored as stacked image data 72.
Thus, for a scanner type of imaging device 12, image stacking application 42 interfaces with image capture controller 40 to cause imaging module 22 to perform a quantity of scanning operations to generate or otherwise capture a quantity of images of an object as indicated by stacking quantity 76. It should be understood that for other types of imaging devices 12, imaging module 22 is otherwise controlled to perform an image capture operation based on the type of imaging device 12 (e.g., for a still photography camera, a quantity of shutter releases or exposures as indicated by stacking quantity 76).
In some embodiments of the present invention, image stacking application 42 automatically generates the stacked image after receiving or otherwise acquiring at least two captured images and updates the stacked image as each subsequent captured image is acquired. Thus, in this embodiment of the present invention, it should be appreciated that less memory 30 capacity is used for storing image capture data 70. However, it should be understood that in other embodiments of the present invention, image stacking application 42 is configured to generate the stacked image after acquiring all captured images. Further, in other embodiments of the present invention, image stacking application 42 is configured to enable the user to select or otherwise identify particular captured images to use for the stacking operation. For example, in this embodiment of the present invention, image stacking application 42 is configured to enable a user to view the captured images, such as via user interface 24, to select or otherwise identify the captured images to use during a stacking operation. After selection of particular captured images, image stacking application 42 generates the stacked image using the selected captured images.
At block 108, image stacking application 42 interfaces with image capture controller 40 to initiate an image capture operation, for example, using imaging module 22. At block 110, image stacking application 42 decrements the stacking quantity count after acquisition of an image. At decisional block 112, a determination is made whether the stacking quantity count equals zero, thereby indicating that the image capturing and/or stacking operation is complete. If the image capturing and/or stacking operation is not yet complete, the method proceeds to block 114 where another image capture operation is initiated and/or otherwise performed At block 116, image stacking application 42 accumulates the image captures to create or otherwise generate the stacked image and, at block 117, image stacking application 42 generates the stacked image. The image stacking operation may be performed and/or configured using a variety of different methods. For example, in some embodiments of the present invention, an extended bit-depth array may be used for averaging the results of individual image captures (e.g., each scanned image comprising three bytes per pixel (each byte storing red, blue and green values for a pixel) and the accumulated image comprising six bytes per pixel (two bytes each storing red, blue and green values for a pixel)). However, it should be understood that other imaging methods may also be used to accumulate or otherwise form the stacked image. Additionally, in the embodiment of the present invention illustrated in
If, at decisional block 112, a determination is made that the image capturing and/or stacking operation is complete, the method proceeds to block 118, where image stacking application 42 returns or otherwise provides the user with stacked image data 72 representing the stacked image. For example, the stacked image data 72 may be provided to the user in high-bit-depth form or the pixel values may be rounded to provide lower-bit-depth results. However, it should be understood that other methods may also be used to provide the user with the resulting stacked image.
Thus, embodiments of the present invention enable a user to easily and automatically perform an image stacking operation via an imaging device. For example, in a scanner type of imaging device, the user may place an object against a platen or other surface for scanning and designate a quantity of scans to use for creating a stacked image. Based on the designated quantity, system 12 automatically initiates the designated quantity of scanning operations and automatically generates the stacked image using the acquired scans.
Embodiments of the present invention may be implemented in software and can be adapted to run on different platforms and operating systems. In particular, functions implemented by image stacking application 42 may be provided as an ordered listing of executable instructions that can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device, and execute the instructions. In the context of this document, a “computer-readable medium” can be any means that can contain, store, communicate, propagate or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semi-conductor system, apparatus, device, or propagation medium.
It should also be understood that in other embodiments of the method of the present invention described in
Number | Date | Country | |
---|---|---|---|
60608301 | Sep 2004 | US |