This invention relates generally to digital imaging, and, more particularly, to a system and method for editing digital images.
A portion of the disclosure of this patent document may contain material subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings hereto: Copyright © 1999, Sony Electronics, Inc., All Rights Reserved.
With the increasing popularity of computers and the widespread use of the Internet, and especially of the World Wide Web, in many fields, traditional analog technology is being replaced by digital technology. One example of this transformation is in the field of photography. It is well known in the art that traditional photography involves conventional film and chemical processing, whereas digital photography involves the creation of digital photography files and the manipulation of the digital photographs through digital processing.
Generally, digital photography is advantageous over traditional photography since the repetitive costs of film and chemical processing are eliminated. Furthermore, digital photography files provide a permanent storage format previously unavailable to photographers. At the same time, a series of image editing operations may be performed on digital photographs, including cropping, color enhancement, changes to brightness, color, or luminosity, or image effects.
Although the same image editing operations may be subsequently applied to several digital images, the edited images may have different image characteristics. Therefore, the edited images may not be combined or otherwise used together without some degree of difficulty.
A system for editing digital images forms an image template containing a selected record of one or more image editing operations performed on a first image to obtain a first edited image. The image template also contains the first edited image. The system then applies the image template to one or more second images. In one aspect, the selected record of the one or more image editing operations is stored with the first edited image in an image file. In another aspect, the selected record of image editing operations is stored in a storage file separate from the first edited image.
The present invention is illustrated by way of example and may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like references indicate similar elements and in which:
In the following description, reference is made to the accompanying drawings, in which like references indicate similar elements, and in which are shown, by way of illustration, embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical, electrical, and other changes may be made without departing from the scope of the present invention. The following description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.
Beginning with an overview of the operation of the invention,
In one embodiment, server 101 includes an image editing module 110 and a database module 112, coupled to the image editing module 110. Database module 112 stores images and provides the images to client 103 upon request from users. Server 101 receives a request to display an image, retrieves the image from database module 112, and provides that image to client 103. Server 101 also receives an electronic representation of one or more image editing operations from client 103 and processes this electronic representation using the image editing module 110 to obtain an edited image. In one embodiment, server 101 performs the image editing operations on the retrieved image to obtain the edited image. Alternatively, client 103 may directly perform the image editing operations on the retrieved image.
Server 101 then selectively stores the image editing operations in the database module 112 and provides the edited image to client 103. It should be noted that a wide variety of services other than the services described above may be provided by server 101 to client 103 without loss of generality. In one embodiment, server 101 displays various advertisements when providing a service to one or more clients 103. In this embodiment, server 101 may receive compensation from a source whose advertisements are presented to client(s) 103.
It should be noted that although
In one embodiment of a system for editing digital images, as shown in
One embodiment of a computer system 140 suitable for use as server 101 is illustrated in
The description of
Next, the particular methods of the invention are described in terms of computer software with reference to flow diagrams.
Describing the computerized methods by reference to flow diagrams enables one skilled in the art to develop programs including instructions to carry out the methods on a suitable computer (the processor of the computer executing the instructions from computer-readable media). If written in a programming language conforming to a recognized standard, such instructions can be executed on a variety of hardware platforms and for interface to a variety of operating systems. In addition, the present invention is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the invention as described herein. Furthermore, it is common in the art to speak of software, in one form or another (e.g. program, procedure, process, application, module, logic, etc.), as taking an action or causing a resolve. Such expressions are merely a shorthand way of saying that execution of the software by a computer causes the processor of the computer to perform an action or produce a result.
At processing block 220, one or more image editing operations are received from client 103. In one embodiment, the image editing operations may include cropping of the image, enhancing color characteristics of the image, changing brightness, color, or luminosity characteristics of the image, and applying an image effect, such as a filter, to the image. Alternatively, other image editing operations may be transmitted from client 103 to the server for processing.
At processing block 230, the image editing operations are performed on the retrieved image to obtain an edited image. In one embodiment, the image editing module 110 shown in
At processing block 240, image editing operations are selectively stored in database module 112 and the edited image is sent to client 103. In one embodiment, a selected record of the image editing operations is stored together with the edited image in an image file. Alternatively, the selected record of the image editing operations may be stored in a separate storage file, which resides in a different location than the storage location of the edited image. In one embodiment, all image editing operations performed are stored as part of the record in database module 112. Alternatively, some image editing operations may be discarded before being stored as part of the selected record.
The edited image and the record of editing image operations form an image template. In one embodiment, the image template is applied to a new image to ensure that the same editing image operations are performed on the new image and that the image characteristics of the new edited image are identical to the image characteristics of the edited image.
At processing block 250, a decision is made whether a second new image must be retrieved and edited. In one embodiment, the user decides whether to edit a new image and communicates the decision to client 103, which forwards the decision to server 101.
If a second new image is to be retrieved and edited, at processing block 260, the new image is retrieved from database module 112 and is sent to client 103. Next, at processing block 265, upon receiving of a request to edit the new image, the image editing operations within the stored record are retrieved and processing blocks 230 through 250 are repeated.
Otherwise, at processing block 270, a decision is made whether any stored edited images are to be combined. In one embodiment, the user decides whether to combine two or more of the edited images or portions thereof and communicates the decision to client 103, which forwards it to the server.
If a decision is made to combine the edited images, the edited images are retrieved and combined to obtain an output image, which is then sent to client 103. In one embodiment, the edited images are combined automatically. Alternatively, a series of operations may be performed to combine the entire edited images or portions of the edited images. Otherwise, if edited images need not be combined, the procedure stops at processing block 290.
At processing block 320, the image is received from server 101 and is displayed for the user. Then, at processing block 330, one or more image editing operations are received from the user and are sent to server 101. In one embodiment, the image editing operations may include cropping of the image, enhancing color characteristics of the image, changing brightness, color, or luminosity characteristics of the image, and applying an image effect, such as a filter, to the image. Alternatively, other image editing operations may be transmitted to the server for processing.
At processing block 340, an edited image is received from server 101 and is displayed for the user. At processing block 350, a decision is made whether a second new image must be retrieved and edited. In one embodiment, the user decides whether to edit a new image and communicates the decision to server 101.
If a new image is to be retrieved and edited, at processing block 360, a new image is received from the server and is displayed for the user. Next, at processing block 370, a request to edit the new image is transmitted to the server 101 and processing blocks 340 through 350 are repeated.
Otherwise, at processing block 380, a decision is made whether any stored edited images are to be combined. In one embodiment, the user decides whether to combine two or more of the edited images or portions of the edited images and communicates the decision to server 101.
If edited images are to be combined, then at processing block 390, an output image representing the combination of the edited images is received. Otherwise, the procedure stops at processing block 395.
Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement, which is calculated to achieve the same purpose, may be substituted for the specific embodiments shown. This application is intended to cover any adaptations or variations of the present invention.
The terminology used in this application with respect to network architecture is meant to include all client-server environments. Therefore, it is manifestly intended that this invention be limited only by the following claims and equivalents thereof.
This application claims the benefit of U.S. Provisional Application No. 60/181,844, filed Feb. 11, 2000.
Number | Name | Date | Kind |
---|---|---|---|
3785721 | Harsch | Jan 1974 | A |
4485409 | Schumacher | Nov 1984 | A |
4707742 | Field et al. | Nov 1987 | A |
4902128 | Siebecker et al. | Feb 1990 | A |
4905294 | Sugiura et al. | Feb 1990 | A |
4907086 | Truong | Mar 1990 | A |
4942391 | Kikuta | Jul 1990 | A |
4954970 | Walker et al. | Sep 1990 | A |
5019858 | Suzuki | May 1991 | A |
5720806 | Venable et al. | Oct 1991 | A |
5099331 | Truong | Mar 1992 | A |
5187754 | Currin et al. | Feb 1993 | A |
5193000 | Lipton et al. | Mar 1993 | A |
5270806 | Venable et al. | Dec 1993 | A |
5325449 | Burt et al. | Jun 1994 | A |
5327521 | Savic et al. | Jul 1994 | A |
5465163 | Yoshihara et al. | Nov 1995 | A |
5488674 | Burt et al. | Jan 1996 | A |
5524071 | Yokomizo | Jun 1996 | A |
5561745 | Jackson et al. | Oct 1996 | A |
5606656 | Yamaguchi | Feb 1997 | A |
5611028 | Shibasaki et al. | Mar 1997 | A |
5629988 | Burt et al. | May 1997 | A |
5630037 | Schindler | May 1997 | A |
5649032 | Burt et al. | Jul 1997 | A |
5682326 | Klingler et al. | Oct 1997 | A |
5684942 | Kimura | Nov 1997 | A |
5694331 | Yamamoto et al. | Dec 1997 | A |
5706368 | Mita | Jan 1998 | A |
5727174 | Aparicio, IV et al. | Mar 1998 | A |
5732146 | Yamada et al. | Mar 1998 | A |
5732161 | Kuroda et al. | Mar 1998 | A |
5732216 | Logan et al. | Mar 1998 | A |
5751848 | Farrell | May 1998 | A |
5831590 | Ikedo | Nov 1998 | A |
5831617 | Bhukhanwala | Nov 1998 | A |
5835087 | Herz et al. | Nov 1998 | A |
5838837 | Hirosawa et al. | Nov 1998 | A |
5838839 | Seki et al. | Nov 1998 | A |
5841899 | Ide et al. | Nov 1998 | A |
5848183 | Farrell | Dec 1998 | A |
5850474 | Fan et al. | Dec 1998 | A |
5852683 | Jewel | Dec 1998 | A |
5861871 | Venable | Jan 1999 | A |
5881166 | Farrell | Mar 1999 | A |
5881182 | Fiete et al. | Mar 1999 | A |
5905819 | Daly | May 1999 | A |
5920657 | Bender et al. | Jul 1999 | A |
5933524 | Schuster et al. | Aug 1999 | A |
5937104 | Henderson et al. | Aug 1999 | A |
5970183 | Amemiya et al. | Oct 1999 | A |
5973734 | Anderson | Oct 1999 | A |
5974198 | Hamburg et al. | Oct 1999 | A |
5978519 | Bollman et al. | Nov 1999 | A |
5982931 | Ishimaru | Nov 1999 | A |
5982951 | Katayama et al. | Nov 1999 | A |
5987166 | Hayashi et al. | Nov 1999 | A |
5999662 | Burt et al. | Dec 1999 | A |
6000832 | Franklin et al. | Dec 1999 | A |
6014471 | Barkin et al. | Jan 2000 | A |
6016354 | Lin et al. | Jan 2000 | A |
6016356 | Ito et al. | Jan 2000 | A |
6018600 | Levin et al. | Jan 2000 | A |
6020886 | Jacober et al. | Feb 2000 | A |
6026183 | Talluri et al. | Feb 2000 | A |
6026200 | Okude et al. | Feb 2000 | A |
6028583 | Hamburg | Feb 2000 | A |
6028958 | Kanamori | Feb 2000 | A |
6032156 | Marcus | Feb 2000 | A |
6034759 | Enomoto | Mar 2000 | A |
6052492 | Bruckhaus | Apr 2000 | A |
6061471 | Coleman, Jr. | May 2000 | A |
6067095 | Danieli | May 2000 | A |
6069707 | Pekelman | May 2000 | A |
6083158 | Bearman et al. | Jul 2000 | A |
6097389 | Morris et al. | Aug 2000 | A |
6104441 | Wee et al. | Aug 2000 | A |
6109923 | Rothenberg | Aug 2000 | A |
6112226 | Weaver et al. | Aug 2000 | A |
6123362 | Squilla et al. | Sep 2000 | A |
6125385 | Wies et al. | Sep 2000 | A |
6154755 | Dellert et al. | Nov 2000 | A |
6169854 | Hasegawa et al. | Jan 2001 | B1 |
6192183 | Taniguchi et al. | Feb 2001 | B1 |
6195101 | Ghislain Bossut et al. | Feb 2001 | B1 |
6195458 | Warnick et al. | Feb 2001 | B1 |
6201548 | Cariffe et al. | Mar 2001 | B1 |
6215498 | Filo et al. | Apr 2001 | B1 |
6222947 | Koba | Apr 2001 | B1 |
6256451 | Mitsui | Jul 2001 | B1 |
6301440 | Bolle et al. | Oct 2001 | B1 |
6301555 | Hinderks | Oct 2001 | B1 |
6307979 | Kondo et al. | Oct 2001 | B1 |
6313902 | Enomoto | Nov 2001 | B1 |
6324545 | Morag | Nov 2001 | B1 |
6344903 | Derhak et al. | Feb 2002 | B1 |
6351321 | McIntyre et al. | Feb 2002 | B1 |
6358055 | Rothenberg | Mar 2002 | B1 |
6359270 | Bridson | Mar 2002 | B1 |
6388732 | Williams et al. | May 2002 | B1 |
6396963 | Shaffer et al. | May 2002 | B1 |
6407777 | DeLuca | Jun 2002 | B1 |
6424789 | Abdel-Mottaleb | Jul 2002 | B1 |
6434579 | Shaffer et al. | Aug 2002 | B1 |
6437306 | Melen | Aug 2002 | B1 |
6441854 | Fellegara et al. | Aug 2002 | B1 |
6484189 | Gerlach, Jr. et al. | Nov 2002 | B1 |
6496851 | Morris et al. | Dec 2002 | B1 |
6522351 | Park | Feb 2003 | B1 |
6526215 | Hirai et al. | Feb 2003 | B1 |
6552743 | Rissman | Apr 2003 | B1 |
6567825 | Bogia | May 2003 | B1 |
6567980 | Jain et al. | May 2003 | B1 |
6567983 | Shiimori | May 2003 | B1 |
6577311 | Crosby et al. | Jun 2003 | B1 |
6577760 | Ohta et al. | Jun 2003 | B1 |
6587596 | Haeberli | Jul 2003 | B1 |
6590584 | Yamaura et al. | Jul 2003 | B1 |
6590586 | Swenton-Wall et al. | Jul 2003 | B1 |
6631522 | Erdelyi | Oct 2003 | B1 |
6633689 | Yamamoto | Oct 2003 | B1 |
6647125 | Matsumoto et al. | Nov 2003 | B1 |
6647126 | Wen | Nov 2003 | B1 |
6668134 | Niikawa | Dec 2003 | B1 |
6701011 | Nakajima | Mar 2004 | B1 |
6771801 | Fisher et al. | Aug 2004 | B1 |
6819449 | Haneda et al. | Nov 2004 | B1 |
6912311 | Anderson et al. | Jun 2005 | B1 |
6940526 | Noda et al. | Sep 2005 | B1 |
6954282 | Miyamoto et al. | Oct 2005 | B1 |
20010041022 | Edwards et al. | Nov 2001 | A1 |
20020118182 | Weindorf et al. | Aug 2002 | A1 |
Number | Date | Country |
---|---|---|
2002-521-850 | Dec 2000 | EP |
60-003797 | Feb 1985 | JP |
63-228304 | Sep 1988 | JP |
11-119688 | Apr 1999 | JP |
2001046229 | Jun 2001 | KR |
Number | Date | Country | |
---|---|---|---|
20010041022 A1 | Nov 2001 | US |
Number | Date | Country | |
---|---|---|---|
60181844 | Feb 2000 | US |