US7230628B1 - Previewing a framed image print - Google Patents

Previewing a framed image print Download PDF

Info

Publication number
US7230628B1
US7230628B1 US09/684,595 US68459500A US7230628B1 US 7230628 B1 US7230628 B1 US 7230628B1 US 68459500 A US68459500 A US 68459500A US 7230628 B1 US7230628 B1 US 7230628B1
Authority
US
United States
Prior art keywords
image
frame
picture
picture portion
perspective
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
US09/684,595
Inventor
Paul Haeberli
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shutterfly LLC
Original Assignee
Shutterfly LLC
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 Shutterfly LLC filed Critical Shutterfly LLC
Priority to US09/684,595 priority Critical patent/US7230628B1/en
Priority to US09/721,437 priority patent/US7190370B1/en
Application granted granted Critical
Publication of US7230628B1 publication Critical patent/US7230628B1/en
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT reassignment JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT SECURITY AGREEMENT Assignors: SHUTTERFLY, INC.
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT reassignment JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT SECURITY AGREEMENT Assignors: SHUTTERFLY, INC.
Assigned to SHUTTERFLY, INC reassignment SHUTTERFLY, INC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HAEBERLI, PAUL
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT reassignment JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT SECURITY AGREEMENT Assignors: SHUTTERFLY, INC.
Assigned to SHUTTERFLY, INC. reassignment SHUTTERFLY, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Assigned to MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT reassignment MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SHUTTERFLY, INC.
Assigned to MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT reassignment MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LIFETOUCH INC., LIFETOUCH NATIONAL SCHOOL STUDIOS INC., SHUTTERFLY, INC.
Assigned to SHUTTERFLY, INC., LIFETOUCH NATIONAL SCHOOL STUDIOS INC., LIFETOUCH INC. reassignment SHUTTERFLY, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: MORGAN STANLEY SENIOR FUNDING, INC.
Assigned to SHUTTERFLY INC. reassignment SHUTTERFLY INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: MORGAN STANLEY SENIOR FUNDING, INC.
Assigned to SHUTTERFLY, LLC reassignment SHUTTERFLY, LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SHUTTERFLY, INC.
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Definitions

  • This application relates to a method and system of previewing a framed image print, for example, by displaying a perspective frame preview image on a global computer network.
  • One conventional way to display image prints is to mount the image print in a frame.
  • a wide variety of frames are available, differing, for example, in size, style, construction material, and shape.
  • a customer will select a particular frame in which to mount an image print based, at least in part, on how the image print would look mounted in the selected frame.
  • a customer can take a picture using a conventional film-based camera and then bring the exposed film to a photo finishing laboratory to have the laboratory develop the exposed film and generate an image print (which is typically referred to as a “photograph” in the film-based photography context).
  • the photograph is then returned to the customer, who can then physically take the photograph to a frame shop (that is, to a “brick-and-mortar” frame shop) in order to select a frame in which to mount the photograph.
  • a frame shop that is, to a “brick-and-mortar” frame shop
  • the customer can physically place the photograph in or near a given frame in order to get an idea of how the photograph would look mounted in that particular frame. In this way, the customer can relatively quickly determine how the photograph would look mounted in various frames.
  • a customer When a customer wishes to have a high-quality image print generated from a digital image file (for example, one captured using a digital camera), the customer need not physically take the digital image file to a photo-finishing laboratory and instead can electronically transmit the digital image file to an “online” photo-finishing laboratory using a computer network such as the Internet.
  • the customer can execute an Internet browser program (referred to here as a “browser”) such as NETSCAPE NAVIGATOR(R) (which is commercially available from Netscape Communications Corporation of Mountain View, Calif., USA), direct the browser to a web site associated with the online photo-finishing laboratory, and upload the digital image file to the server hosting the web site.
  • NETSCAPE NAVIGATOR(R) which is commercially available from Netscape Communications Corporation of Mountain View, Calif., USA
  • the online photo-finishing laboratory can then take the digital image file from the web server and produce a high-quality image print from the digital image file in a conventional manner.
  • the online photo-finishing laboratory then typically sends the high-quality image print to the customer (or another person designated by the customer such as a relative or friend) using a delivery service such as the UNITED STATES POSTAL SERVICE or FEDERAL EXPRESS(R).
  • Some online print laboratories also allow a customer or select and purchase frames via their web sites.
  • the customer typically cannot physically place an image print in or near various frames in order to visualize how an image print will look in various frames, as can be done in a traditional brick-and-mortar frame shop.
  • One conventional approach to helping the customer visualize how an image print will look in a given frame is to create, and display for the customer, a frame preview image in which an electronic copy of the customer's image (referred to here as a “picture image”) is pasted into a two-dimensional picture of a given frame (referred to here as a “frame image”).
  • FIG. 1 illustrates one example of such a conventional frame preview image 100 .
  • the customer's image 102 is pasted into the portion 104 of the frame image 106 corresponding to the part of the frame where an image print would be mounted (referred to here as the “picture area”).
  • a conventional approach is implemented by EFRAMES.COM(TM), an online print laboratory and frame retailer located on the Internet at www.eframes.com.
  • a frame preview image generated according to such a conventional approach typically only shows a head-on (that is, non-perspective) view of the framed image print itself.
  • Implementations may include various combinations of the following features.
  • the invention provides a method of generating a frame prototype image showing a picture image framed within a frame.
  • the method includes providing a frame image showing the frame in a perspective view.
  • the frame image has a picture portion corresponding to the portion of the frame used to view a picture mounted in the frame.
  • the method includes mapping the picture image to the picture portion of the frame image in order to generate the frame prototype image.
  • the method can include identifying a picture portion of the frame image. Identifying the picture portion of the frame image can include providing a mat identifying the picture portion of the frame image.
  • the mat can include a plurality of pixels, each pixel having a pixel value. Identifying the picture portion of the frame image can include setting each pixel in the mat the corresponds to the picture portion of the frame image to a first pixel value. Identifying the picture portion of the frame image can include identifying the outer perimeter of the picture portion of the frame image.
  • the picture portion of the frame image can have a quadrilateral shape and identifying the picture portion of the frame image can include identifying the four corners of the picture portion.
  • the method can include displaying the frame prototype image.
  • Mapping the picture image to the picture portion of the frame image can include texture mapping the picture image to the picture portion of the frame image. Mapping the picture image to the picture portion of the frame image can include mapping the picture image to the picture portion of the frame image using the illumination of the picture portion of the frame image.
  • the frame image can be captured using a digital camera.
  • the invention provides a computer program product tangibly embodied in a computer-readable medium, for generating a frame prototype image showing a picture image framed within a frame.
  • the computer program includes instructions operable to cause a computer to receive the picture image, store a frame image showing a frame in a perspective view and a mat identifying the picture portion of the frame image and map the picture image to the picture portion of the frame image in order to generate the frame prototype image.
  • the computer program can further include instruction operable to cause the computer to generate the map by identifying the picture portion of the frame image and to identify the picture portion of the frame image by identifying the outer perimeter of the picture portion of the frame image.
  • the invention provides a system for generating a frame prototype image showing a picture image framed within a frame.
  • the system includes a client computer in communication with a computer network, and a server, in communication with a computer network, having server software embodied in a computer-readable medium.
  • the server software includes instructions operable to cause the server to receive the picture image from the client computer, store a frame image showing the frame in a perspective view and a mat identifying the picture portion of the frame image and map the picture image to the picture portion of the frame image in order to generate the frame prototype image
  • the client computer includes client software embodied in a computer-readable medium.
  • the client software includes instructions operable to cause the client computer to upload the picture image to the server.
  • the invention provides a method of generating a visual representation of an image based product.
  • the method includes providing an image to be included in the image based product and providing a perspective image showing the image based product in a perspective view.
  • the perspective image has a picture portion corresponding to the portion of the image based product used to view a picture mounted on the image based product.
  • the method includes mapping the image to the picture portion of the perspective image in order to generate the perspective prototype image.
  • the image based product can be a framed picture, a photocard or photo greeting card.
  • the method can include displaying the perspective image in an environment that provides a context for viewing the image based product.
  • the systems and methods described herein provide a more realistic presentation of an image based product.
  • the image based product can be an image in a frame.
  • Other image based products such as photocards, greeting cards, t-shirts, mugs, and other novelty items can also be displayed using a perspective view that enhances the appeal of the product.
  • the user's view can be enhanced by lighting and other effects and displayed in an environment to help simulate the appearance of the image based product in various settings.
  • FIG. 1 is an example of a non-perspective frame preview image.
  • FIG. 2 is a flow diagram of a process of generating a perspective frame preview image showing what a selected picture image would look like mounted in a selected frame.
  • FIGS. 3A-3D show examples of a perspective frame image, mat, print image, and perspective frame preview image, respectively.
  • FIG. 4 is a flow diagram of a process of texture mapping a print image onto the picture area of a perspective frame image.
  • FIG. 5 is a block diagram of system that can be used to generate perspective frame preview images.
  • FIG. 6 is flow diagram of a process of providing a perspective frame preview image over a computer network such as the Internet.
  • FIGS. 7A-7C are example screens displayed during the process shown in FIG. 6 .
  • FIG. 8 is a block diagram of a computer system.
  • FIG. 2 is a flow diagram of a process 200 of generating a perspective frame preview image showing what a selected picture image would look like mounted in a selected frame.
  • the process 200 includes providing a perspective frame image showing the frame in a perspective view (block 202 ).
  • a “perspective frame image” is an image that shows an in-perspective view of a frame. In other words, the frame in such a perspective frame image is not shown in a head-on view.
  • a frame can be arranged in a typical scene in which the frame might be displayed (e.g., on a table) and then a digital camera can be used to capture a perspective image of the frame as it appears in the scene.
  • a white piece of paper (or other suitable material) can be mounted in the frame where an image print would be displayed.
  • the perspective frame image will include a white region located where an image print would be visible in the frame (also referred to here as the “picture area”).
  • An example of such a perspective frame image 300 having a picture area 302 is shown in FIG. 3A .
  • the process 200 also includes generating a mat from the perspective frame image (block 204 ).
  • the mat is an image that has a corresponding pixel for each pixel in the perspective frame image.
  • each pixel in the mat has one of two values—one value (e.g., a value representing the color white) indicates that the corresponding pixel in the perspective frame image is included in the picture area and the other value (e.g., a value representing the color black) indicates that the corresponding pixel in the perspective frame image is outside of the picture area.
  • the mat can be generated manually using image-processing software such as ADOBE PHOTOSHOP(R) or the GNU IMAGE MANIPULATION PROGRAM (“the GIMP”).
  • a user can identify the outer boundary of the picture area by inspecting the perspective frame image in order to locate the outer boundary of the white region. For example, if the picture area is a quadrilateral, a user can locate the four corners of the white region, which can be used by the image-processing software to define the picture area. Then, the user can cause the image-processing software to assign the value associated with the color white to those pixels in the mat that corresponds to pixels in the picture area. Also, the user can cause the image-processing software to assign the value associated with the color black to those pixels in the mat that correspond to pixels outside of the picture area. An example of such a mat 302 is shown in FIG. 3B .
  • a picture image is texture mapped onto the picture area of the perspective frame image (block 206 ).
  • texture mapping lays an image (the “texture”) onto an object in a scene.
  • the picture image is the “texture” and the picture area is the “object” onto which the texture is mapped.
  • An example of a print image 306 is shown in FIG. 3C
  • an example of a perspective frame preview image 308 showing how the print image 306 will look mounted in the frame shown in the perspective frame image 300 is shown in FIG. 3D .
  • FIG. 4 is a flow diagram of a process 400 of texture mapping a picture image onto the picture area of a perspective frame image.
  • picture image coordinates are assigned to each of the vertices of the picture area (block 402 ).
  • the vertices of the picture area can be identified using the mat. For example, coordinates associated with each of the four corners of the picture image can be assigned to respective corners of the picture area. These coordinates index the picture image.
  • the coordinates are interpolated across the polygon to determine, at each of the picture area's pixels, a texture value (block 404 ). This texture value is then multiplied by the original value of that pixel (block 406 ).
  • the illumination of the white piece of paper used in the perspective frame image is used to illuminate the texture-mapped picture image in the final frame preview image.
  • This tends to cause the resulting frame preview image to look more realistic.
  • reflections caused by glass that typically covers a framed image print tend to reduce the contrast of the image print when viewed through the glass.
  • Multiplying the texture value by the original value of the pixel reduces the contrast of the texture-mapped picture image in a manner that reproduces this effect.
  • System 500 includes a server 502 that is connected to one or more client computers 504 by a network 506 such as the Internet.
  • the client computers 504 can be connected to a digital camera 508 so that a user can upload captured digital images from the digital camera 508 to the client computer 504 .
  • the client computer 504 can execute image processing software such as ADOBE PHOTOSHOP® or the GNU IMAGE MANIPULATION PROGRAM (the “GIMP”) in order to create and/or edit digital images.
  • the client computer 504 includes a storage medium 510 such as a hard disk for storing the digital images.
  • the client computer 504 can be implemented using a variety of hardware and software.
  • the client computer 504 can be a general-purpose device such as a personal computer, portable computer, or portable digital assistant (“PDA”) or as a special-purpose device such as point-of-sale kiosk having an embedded computer.
  • PDA portable digital assistant
  • the client computer 504 is connected to the network 506 , for example, using a modem or network interface card.
  • the system 500 can be implemented as a browser-based system in accordance with the standard protocols for communicating over the Word Wide Web.
  • a user of the client computer 504 can execute a browser to connect to and interact with the server 502 .
  • the server 502 includes a web front end 512 that manages the communications with the client computer 504 .
  • the user of the client computer 504 can upload digital images (that is, print images) to the server 502 .
  • the web front end 512 receives the uploaded digital images and stores them in a print image database 514 .
  • the server 502 also includes a perspective frame image database 516 and a mat database 518 for storing, respectively, perspective frame images and associated mats.
  • a perspective frame image database 516 and a mat database 518 for storing, respectively, perspective frame images and associated mats.
  • Several different perspective frame images and associated mats can be prepared and stored in the perspective frame image database 516 and the mat database 518 so that a user of the client computer can generate one or more perspective frame preview images with one or more selected print images.
  • the server 502 includes, or is connected to, a print lab 520 .
  • the print lab 520 receives the user's selection of a print image and generates an image print from the selected print image.
  • the print lab 520 can include appropriate facilities for mounting the image print in the selected frame.
  • the print lab 520 can generate other image-based products.
  • the print lab 516 can print or otherwise embody the selected images in other items such as clothing, buttons, mugs, cards, invitations, and calendars.
  • the items generated by the print lab 520 can be shipped to the user using a conventional shipping service such as the UNITED STATES POSTAL SERVICE or FEDERAL EXPRESS®.
  • a conventional shipping service such as the UNITED STATES POSTAL SERVICE or FEDERAL EXPRESS®.
  • 09/428,871 (entitled “MULTI-TIERED IMAGE DATABASE” and filed Oct. 27, 1999)
  • 09/436,704 entitled “DISTRIBUTING IMAGES TO MULTIPLE RECIPIENTS” and filed Nov. 9, 1999
  • 09/450,075 entitled “PRINTING IMAGES IN AN OPTIMIZED MANNER” and filed Nov. 29, 1999
  • FIG. 6 is flow diagram of a process 600 of providing a perspective frame preview image over a computer network such as the Internet.
  • the process 600 includes receiving a print image selection (block 602 ).
  • the print image selection can be received, for example, over the Internet.
  • the user can upload one or more print images to the server 502 (where they are stored in the print image database 514 ) and select a print image from those print images stored in the print image database 514 .
  • web front end 512 can generate and transmit to the browser a web page 700 (shown in FIG. 7A ) that includes thumbnail images 702 of one or more print images stored in the print image database 514 (e.g., print images the user has previously uploaded to the server 502 ).
  • the user can select one of the print images by clicking on the thumbnail image 702 associated with the selected print image.
  • the process 600 also includes receiving a frame selection (block 604 ).
  • the web front end 512 can supply to the browser a web page 704 (shown in FIG. 7B ) including thumbnail images 706 of one or more frames from which the user can chose.
  • the user selects a frame by clicking on the thumbnail image 706 associated with the selected frame.
  • Process 600 also includes generating a perspective frame preview image in which the selected print image is shown mounted in the selected frame (block 606 shown in FIG. 6 ).
  • the print image can be retrieved from the print image database 514
  • the perspective frame image for the selected frame can be retrieved from the perspective frame image database 516
  • the mat associated with the selected frame can be retrieved from the mat database 518 .
  • the perspective frame preview image can be generated, for example, in accordance with the process 200 shown in FIG. 2 .
  • Process 600 also includes displaying the perspective frame preview image (block 608 shown in FIG. 6 ).
  • the web front end 512 can generate a web page including the perspective frame preview image and transmit it to the browser executing on the client computer 504 .
  • the browser then displays the perspective frame preview image for the user.
  • An example of a web page 708 including a perspective frame preview image 710 is shown in FIG. 7C .
  • an order for a framed image print can be received (block 610 ).
  • the framed image print can be produced by the print lab 520 .
  • the print lab 520 can receive the user's selection of an print image and frame, generate an image print from the selected print image, and mount the print image in the selected frame. Then the frame image print can be shipped to the user (block 612 ).
  • the invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them.
  • Apparatus of the invention can be implemented in a computer program product tangiblyl embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the invention can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output.
  • the invention can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device.
  • Each computer program can be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language.
  • Suitable processors include, by way of example, both general and special purpose microprocessors.
  • a processor will receive instructions and data from a read-only memory and/or a random access memory.
  • a computer will include one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks.
  • Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits).
  • semiconductor memory devices such as EPROM, EEPROM, and flash memory devices
  • magnetic disks such as internal hard disks and removable disks
  • magneto-optical disks magneto-optical disks
  • CD-ROM disks CD-ROM disks
  • the invention can be implemented on a computer system having a display device such as a monitor or LCD screen for displaying information to the user and a keyboard and a pointing device such as a mouse or a trackball by which the user can provide input to the computer system.
  • the computer system can be programmed to provide a graphical user interface through which computer program interact with users.
  • FIG. 8 shows a block diagram of a computer system 800 suitable for implementing or performing the apparatus or methods of the invention.
  • the computer system 800 illustrated in FIG. 8 represents a typical hardware setup for executing software that allows a user to perform tasks such as communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content—that is, any combination of text, images, movies, music or other sounds, animations, 3D virtual worlds, and links to other objects.
  • the system includes various input/output (I/O) devices (mouse 803 , keyboard 805 , and display 807 ) and a general purpose computer 802 having a central processor unit (CPU) 821 , an I/O unit 817 and a memory 809 that stores data and various programs such as an operating system 811 , and one or more application programs 813 .
  • the computer system 800 also typically includes some sort of communications card or device 823 (e.g., a modem or network adapter) for exchanging data with a network 827 via a communications link 825 (e.g., a telephone line).
  • a communications card or device 823 e.g., a modem or network adapter
  • a photocard is another example of an image based product that can be presented in accordance with the teachings above. Rather than a non-perspective view of the front of the photocard, a perspective view that shows the photocard in a particular environment can be presented. In addition, the photocard can be illuminated using a natural lighting effect to provide a realistic presentation for the viewer.
  • Other image based products can be presented in similar ways including image based greeting cards, mugs, shirts (t-shirts, golf shirts and the like) and other novelty items.
  • Image based greeting cards can be shown in a perspective view that allows the user to read both the message on the card as well as view the front image. Alternatively, only a portion of the internal greeting may be visible.
  • a shirt can be placed on a mannequin to simulate appearance of the product on a person.

Abstract

An apparatus and method of generating a visual representation of an image based product. Where the image based product is a picture image, the method produces a framed prototype image showing the picture image framed within a frame. The method includes providing a frame image showing the frame in a perspective view. The frame image has a picture portion corresponding to the portion of the frame used to view a picture mounted in the frame. The method includes mapping the picture image to the picture portion of the frame image in order to generate the frame prototype image.

Description

TECHNICAL FIELD
This application relates to a method and system of previewing a framed image print, for example, by displaying a perspective frame preview image on a global computer network.
BACKGROUND
One conventional way to display image prints (e.g., photographs) is to mount the image print in a frame. A wide variety of frames are available, differing, for example, in size, style, construction material, and shape. Typically, a customer will select a particular frame in which to mount an image print based, at least in part, on how the image print would look mounted in the selected frame.
For example, a customer can take a picture using a conventional film-based camera and then bring the exposed film to a photo finishing laboratory to have the laboratory develop the exposed film and generate an image print (which is typically referred to as a “photograph” in the film-based photography context). The photograph is then returned to the customer, who can then physically take the photograph to a frame shop (that is, to a “brick-and-mortar” frame shop) in order to select a frame in which to mount the photograph. I selecting the frame, the customer can physically place the photograph in or near a given frame in order to get an idea of how the photograph would look mounted in that particular frame. In this way, the customer can relatively quickly determine how the photograph would look mounted in various frames.
When a customer wishes to have a high-quality image print generated from a digital image file (for example, one captured using a digital camera), the customer need not physically take the digital image file to a photo-finishing laboratory and instead can electronically transmit the digital image file to an “online” photo-finishing laboratory using a computer network such as the Internet. For example, the customer can execute an Internet browser program (referred to here as a “browser”) such as NETSCAPE NAVIGATOR(R) (which is commercially available from Netscape Communications Corporation of Mountain View, Calif., USA), direct the browser to a web site associated with the online photo-finishing laboratory, and upload the digital image file to the server hosting the web site. The online photo-finishing laboratory can then take the digital image file from the web server and produce a high-quality image print from the digital image file in a conventional manner. The online photo-finishing laboratory then typically sends the high-quality image print to the customer (or another person designated by the customer such as a relative or friend) using a delivery service such as the UNITED STATES POSTAL SERVICE or FEDERAL EXPRESS(R).
Some online print laboratories also allow a customer or select and purchase frames via their web sites. However, the customer typically cannot physically place an image print in or near various frames in order to visualize how an image print will look in various frames, as can be done in a traditional brick-and-mortar frame shop. One conventional approach to helping the customer visualize how an image print will look in a given frame is to create, and display for the customer, a frame preview image in which an electronic copy of the customer's image (referred to here as a “picture image”) is pasted into a two-dimensional picture of a given frame (referred to here as a “frame image”). FIG. 1 illustrates one example of such a conventional frame preview image 100. The customer's image 102 is pasted into the portion 104 of the frame image 106 corresponding to the part of the frame where an image print would be mounted (referred to here as the “picture area”). Such a conventional approach is implemented by EFRAMES.COM(TM), an online print laboratory and frame retailer located on the Internet at www.eframes.com. As shown in FIG. 1, a frame preview image generated according to such a conventional approach typically only shows a head-on (that is, non-perspective) view of the framed image print itself.
SUMMARY
Implementations may include various combinations of the following features.
In one aspect, the invention provides a method of generating a frame prototype image showing a picture image framed within a frame. The method includes providing a frame image showing the frame in a perspective view. The frame image has a picture portion corresponding to the portion of the frame used to view a picture mounted in the frame. The method includes mapping the picture image to the picture portion of the frame image in order to generate the frame prototype image.
Aspects of the invention can include one or more of the following features. The method can include identifying a picture portion of the frame image. Identifying the picture portion of the frame image can include providing a mat identifying the picture portion of the frame image. The mat can include a plurality of pixels, each pixel having a pixel value. Identifying the picture portion of the frame image can include setting each pixel in the mat the corresponds to the picture portion of the frame image to a first pixel value. Identifying the picture portion of the frame image can include identifying the outer perimeter of the picture portion of the frame image. The picture portion of the frame image can have a quadrilateral shape and identifying the picture portion of the frame image can include identifying the four corners of the picture portion. The method can include displaying the frame prototype image.
Mapping the picture image to the picture portion of the frame image can include texture mapping the picture image to the picture portion of the frame image. Mapping the picture image to the picture portion of the frame image can include mapping the picture image to the picture portion of the frame image using the illumination of the picture portion of the frame image. The frame image can be captured using a digital camera.
In another aspect, the invention provides a computer program product tangibly embodied in a computer-readable medium, for generating a frame prototype image showing a picture image framed within a frame. The computer program includes instructions operable to cause a computer to receive the picture image, store a frame image showing a frame in a perspective view and a mat identifying the picture portion of the frame image and map the picture image to the picture portion of the frame image in order to generate the frame prototype image.
The computer program can further include instruction operable to cause the computer to generate the map by identifying the picture portion of the frame image and to identify the picture portion of the frame image by identifying the outer perimeter of the picture portion of the frame image.
In another aspect, the invention provides a system for generating a frame prototype image showing a picture image framed within a frame. The system includes a client computer in communication with a computer network, and a server, in communication with a computer network, having server software embodied in a computer-readable medium. The server software includes instructions operable to cause the server to receive the picture image from the client computer, store a frame image showing the frame in a perspective view and a mat identifying the picture portion of the frame image and map the picture image to the picture portion of the frame image in order to generate the frame prototype image wherein the client computer includes client software embodied in a computer-readable medium. The client software includes instructions operable to cause the client computer to upload the picture image to the server.
In another aspect, the invention provides a method of generating a visual representation of an image based product. The method includes providing an image to be included in the image based product and providing a perspective image showing the image based product in a perspective view. The perspective image has a picture portion corresponding to the portion of the image based product used to view a picture mounted on the image based product. The method includes mapping the image to the picture portion of the perspective image in order to generate the perspective prototype image.
Aspects of the invention can include one or more of the following features. The image based product can be a framed picture, a photocard or photo greeting card. The method can include displaying the perspective image in an environment that provides a context for viewing the image based product.
One or more of the following advantages may be provided. The systems and methods described herein provide a more realistic presentation of an image based product. The image based product can be an image in a frame. Other image based products such as photocards, greeting cards, t-shirts, mugs, and other novelty items can also be displayed using a perspective view that enhances the appeal of the product. The user's view can be enhanced by lighting and other effects and displayed in an environment to help simulate the appearance of the image based product in various settings.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.
DESCRIPTION OF DRAWINGS
FIG. 1 is an example of a non-perspective frame preview image.
FIG. 2 is a flow diagram of a process of generating a perspective frame preview image showing what a selected picture image would look like mounted in a selected frame.
FIGS. 3A-3D show examples of a perspective frame image, mat, print image, and perspective frame preview image, respectively.
FIG. 4 is a flow diagram of a process of texture mapping a print image onto the picture area of a perspective frame image.
FIG. 5 is a block diagram of system that can be used to generate perspective frame preview images.
FIG. 6 is flow diagram of a process of providing a perspective frame preview image over a computer network such as the Internet.
FIGS. 7A-7C are example screens displayed during the process shown in FIG. 6.
FIG. 8 is a block diagram of a computer system.
Like reference symbols in the various drawings indicate like elements.
DETAILED DESCRIPTION
FIG. 2 is a flow diagram of a process 200 of generating a perspective frame preview image showing what a selected picture image would look like mounted in a selected frame. The process 200 includes providing a perspective frame image showing the frame in a perspective view (block 202). A “perspective frame image” is an image that shows an in-perspective view of a frame. In other words, the frame in such a perspective frame image is not shown in a head-on view. For example, a frame can be arranged in a typical scene in which the frame might be displayed (e.g., on a table) and then a digital camera can be used to capture a perspective image of the frame as it appears in the scene. Also, a white piece of paper (or other suitable material) can be mounted in the frame where an image print would be displayed. As a result, the perspective frame image will include a white region located where an image print would be visible in the frame (also referred to here as the “picture area”). An example of such a perspective frame image 300 having a picture area 302 is shown in FIG. 3A.
The process 200 also includes generating a mat from the perspective frame image (block 204). The mat is an image that has a corresponding pixel for each pixel in the perspective frame image. In one implementation, each pixel in the mat has one of two values—one value (e.g., a value representing the color white) indicates that the corresponding pixel in the perspective frame image is included in the picture area and the other value (e.g., a value representing the color black) indicates that the corresponding pixel in the perspective frame image is outside of the picture area. For example, the mat can be generated manually using image-processing software such as ADOBE PHOTOSHOP(R) or the GNU IMAGE MANIPULATION PROGRAM (“the GIMP”). A user can identify the outer boundary of the picture area by inspecting the perspective frame image in order to locate the outer boundary of the white region. For example, if the picture area is a quadrilateral, a user can locate the four corners of the white region, which can be used by the image-processing software to define the picture area. Then, the user can cause the image-processing software to assign the value associated with the color white to those pixels in the mat that corresponds to pixels in the picture area. Also, the user can cause the image-processing software to assign the value associated with the color black to those pixels in the mat that correspond to pixels outside of the picture area. An example of such a mat 302 is shown in FIG. 3B.
Then, a picture image is texture mapped onto the picture area of the perspective frame image (block 206). This creates a perspective frame preview image that shows how the print image will look mounted in the selected frame. In general, texture mapping lays an image (the “texture”) onto an object in a scene. When mapping the image onto the object, the color of the object at each pixel is modified by a corresponding color from the image. In this case, the picture image is the “texture” and the picture area is the “object” onto which the texture is mapped. An example of a print image 306 is shown in FIG. 3C, and an example of a perspective frame preview image 308 showing how the print image 306 will look mounted in the frame shown in the perspective frame image 300 is shown in FIG. 3D.
FIG. 4 is a flow diagram of a process 400 of texture mapping a picture image onto the picture area of a perspective frame image. First, picture image coordinates are assigned to each of the vertices of the picture area (block 402). The vertices of the picture area can be identified using the mat. For example, coordinates associated with each of the four corners of the picture image can be assigned to respective corners of the picture area. These coordinates index the picture image. Next, the coordinates are interpolated across the polygon to determine, at each of the picture area's pixels, a texture value (block 404). This texture value is then multiplied by the original value of that pixel (block 406). In this way, the illumination of the white piece of paper used in the perspective frame image is used to illuminate the texture-mapped picture image in the final frame preview image. This tends to cause the resulting frame preview image to look more realistic. For example, reflections caused by glass that typically covers a framed image print tend to reduce the contrast of the image print when viewed through the glass. Multiplying the texture value by the original value of the pixel reduces the contrast of the texture-mapped picture image in a manner that reproduces this effect.
One implementation of a system 500 for generating perspective frame preview images is shown in FIG. 5. System 500 includes a server 502 that is connected to one or more client computers 504 by a network 506 such as the Internet. The client computers 504 can be connected to a digital camera 508 so that a user can upload captured digital images from the digital camera 508 to the client computer 504. Alternatively, or in addition, the client computer 504 can execute image processing software such as ADOBE PHOTOSHOP® or the GNU IMAGE MANIPULATION PROGRAM (the “GIMP”) in order to create and/or edit digital images. The client computer 504 includes a storage medium 510 such as a hard disk for storing the digital images. The client computer 504 can be implemented using a variety of hardware and software. For example, the client computer 504 can be a general-purpose device such as a personal computer, portable computer, or portable digital assistant (“PDA”) or as a special-purpose device such as point-of-sale kiosk having an embedded computer.
The client computer 504 is connected to the network 506, for example, using a modem or network interface card. The system 500 can be implemented as a browser-based system in accordance with the standard protocols for communicating over the Word Wide Web. In such an implementation, a user of the client computer 504 can execute a browser to connect to and interact with the server 502. The server 502 includes a web front end 512 that manages the communications with the client computer 504. The user of the client computer 504 can upload digital images (that is, print images) to the server 502. The web front end 512 receives the uploaded digital images and stores them in a print image database 514.
The server 502 also includes a perspective frame image database 516 and a mat database 518 for storing, respectively, perspective frame images and associated mats. Several different perspective frame images and associated mats can be prepared and stored in the perspective frame image database 516 and the mat database 518 so that a user of the client computer can generate one or more perspective frame preview images with one or more selected print images.
After viewing one or more perspective frame preview images, the user of the client computer 504 can order a selected image print mounted in a selected frame. The server 502 includes, or is connected to, a print lab 520. The print lab 520 receives the user's selection of a print image and generates an image print from the selected print image. The print lab 520 can include appropriate facilities for mounting the image print in the selected frame. In addition, the print lab 520 can generate other image-based products. For example, the print lab 516 can print or otherwise embody the selected images in other items such as clothing, buttons, mugs, cards, invitations, and calendars. The items generated by the print lab 520 can be shipped to the user using a conventional shipping service such as the UNITED STATES POSTAL SERVICE or FEDERAL EXPRESS®. Commonly assigned co-pending U.S. patent application Nos. 09/428,871 (entitled “MULTI-TIERED IMAGE DATABASE” and filed Oct. 27, 1999), 09/436,704 (entitled “DISTRIBUTING IMAGES TO MULTIPLE RECIPIENTS” and filed Nov. 9, 1999), and 09/450,075 (entitled “PRINTING IMAGES IN AN OPTIMIZED MANNER” and filed Nov. 29, 1999), all of which are incorporated herein by reference, disclose various approaches to implementing a system 500 for generating image-based products from digital images.
FIG. 6 is flow diagram of a process 600 of providing a perspective frame preview image over a computer network such as the Internet. The process 600 includes receiving a print image selection (block 602). The print image selection can be received, for example, over the Internet. The user can upload one or more print images to the server 502 (where they are stored in the print image database 514) and select a print image from those print images stored in the print image database 514. For example, web front end 512 can generate and transmit to the browser a web page 700 (shown in FIG. 7A) that includes thumbnail images 702 of one or more print images stored in the print image database 514 (e.g., print images the user has previously uploaded to the server 502). In one embodiment, the user can select one of the print images by clicking on the thumbnail image 702 associated with the selected print image.
The process 600 also includes receiving a frame selection (block 604). For example, the web front end 512 can supply to the browser a web page 704 (shown in FIG. 7B) including thumbnail images 706 of one or more frames from which the user can chose. In one embodiment, the user selects a frame by clicking on the thumbnail image 706 associated with the selected frame.
Process 600 also includes generating a perspective frame preview image in which the selected print image is shown mounted in the selected frame (block 606 shown in FIG. 6). The print image can be retrieved from the print image database 514, the perspective frame image for the selected frame can be retrieved from the perspective frame image database 516, and the mat associated with the selected frame can be retrieved from the mat database 518. Then, the perspective frame preview image can be generated, for example, in accordance with the process 200 shown in FIG. 2.
Process 600 also includes displaying the perspective frame preview image (block 608 shown in FIG. 6). For example, the web front end 512 can generate a web page including the perspective frame preview image and transmit it to the browser executing on the client computer 504. The browser then displays the perspective frame preview image for the user. An example of a web page 708 including a perspective frame preview image 710 is shown in FIG. 7C.
Then, an order for a framed image print can be received (block 610). For example, the framed image print can be produced by the print lab 520. The print lab 520 can receive the user's selection of an print image and frame, generate an image print from the selected print image, and mount the print image in the selected frame. Then the frame image print can be shipped to the user (block 612).
The invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Apparatus of the invention can be implemented in a computer program product tangiblyl embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the invention can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output. The invention can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program can be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Generally, a computer will include one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits).
To provide for interaction with a user, the invention can be implemented on a computer system having a display device such as a monitor or LCD screen for displaying information to the user and a keyboard and a pointing device such as a mouse or a trackball by which the user can provide input to the computer system. The computer system can be programmed to provide a graphical user interface through which computer program interact with users.
An example of one such type of computer is shown in FIG. 8, which shows a block diagram of a computer system 800 suitable for implementing or performing the apparatus or methods of the invention. The computer system 800 illustrated in FIG. 8 represents a typical hardware setup for executing software that allows a user to perform tasks such as communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content—that is, any combination of text, images, movies, music or other sounds, animations, 3D virtual worlds, and links to other objects. The system includes various input/output (I/O) devices (mouse 803, keyboard 805, and display 807) and a general purpose computer 802 having a central processor unit (CPU) 821, an I/O unit 817 and a memory 809 that stores data and various programs such as an operating system 811, and one or more application programs 813. The computer system 800 also typically includes some sort of communications card or device 823 (e.g., a modem or network adapter) for exchanging data with a network 827 via a communications link 825 (e.g., a telephone line).
A number of implementations of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention.
While the discussion above has focused on the presentation of images in frames, the techniques disclosed are equally well suited for other image based products. For example, a photocard is another example of an image based product that can be presented in accordance with the teachings above. Rather than a non-perspective view of the front of the photocard, a perspective view that shows the photocard in a particular environment can be presented. In addition, the photocard can be illuminated using a natural lighting effect to provide a realistic presentation for the viewer. Other image based products can be presented in similar ways including image based greeting cards, mugs, shirts (t-shirts, golf shirts and the like) and other novelty items. Image based greeting cards can be shown in a perspective view that allows the user to read both the message on the card as well as view the front image. Alternatively, only a portion of the internal greeting may be visible. A shirt can be placed on a mannequin to simulate appearance of the product on a person.
The operations of the processes and methods described here can be performed in a different order and still achieve desirable results. Also, the processes, methods, and systems described here can be used to change a variety of product attributes. Accordingly, other implementations are within the scope of the following claims.

Claims (20)

1. A method of generating a frame prototype image showing a picture image framed within a frame, the method comprising:
providing a frame image showing the frame in a perspective view, the frame image having a picture portion corresponding to the portion of the frame used to view a picture mounted in the frame;
texture mapping the picture image to the picture portion of the frame image using the illumination of the picture portion of the frame image in order to generate the frame prototype image; and
multiplying a texture value at a pixel by the original pixel value of the picture image to generate the frame prototype image.
2. The method of claim 1, further comprising identifying a picture portion of the frame image.
3. The method of claim 2, wherein identifying the picture portion of the frame image includes providing a mat identifying the picture portion of the frame image.
4. The method of claim 3, wherein the mat includes a plurality of pixels, each pixel having a pixel value.
5. The method of claim 4, wherein identifying the picture portion of the frame image includes setting each pixel in the mat that corresponds to the picture portion of the frame image to a first pixel value.
6. The method of claim 2, wherein identifying the picture portion of the frame image include identifying the outer perimeter of the picture portion of the frame image.
7. The method of claim 1, wherein the picture portion of the frame image has a quadrilateral shape and the method further includes identifying the picture portion of the frame image including identifying the four corners of the picture portion.
8. The method of claim 1, further comprising displaying the frame prototype image.
9. The method of claim 1, mapping the picture image to the picture portion of the frame image includes texture mapping the picture image to the picture portion of the frame image.
10. The method of claim 1, wherein the frame image is captured using a digital camera.
11. A computer program product tangibly embodied in a computer-readable medium, for generating a frame prototype image showing a picture image framed within a frame, comprising instructions operable to cause a computer to:
receive the picture image;
store a frame image showing the frame in a perspective view and a mat identifying the picture portion of the frame image;
texture map the picture image to the picture portion of the frame image using the illumination of the picture portion of the frame image in order to generate the frame prototype image; and
multiply a texture value at a pixel by the original pixel value of the picture image to generate the frame prototype image.
12. The computer program product of claim 11 further comprising instructions operable to cause the computer to generate the map.
13. The computer program product of claim 12 further comprising instructions operable to cause the computer to generate the map by identifying the picture portion of the frame image.
14. The computer program product of claim 11 further comprising instructions operable to cause the computer to identify the picture portion of the frame image by identifying the outer perimeter of the picture portion of the frame image.
15. A system for generating a frame prototype image showing a picture image framed within a frame, the system comprising:
a client computer in communication with a computer network;
a server, in communication with a computer network, having server software embodied in a computer-readable medium, the server software comprising instructions operable to cause the server to:
receive the picture image from the client computer;
store a frame image showing the frame in a perspective view and a mat identifying the picture portion of the frame image;
texture map the picture image to the picture portion of the frame image using the illumination of the picture portion of the frame image in order to generate the frame prototype image,
wherein the client computer includes client software embodied in a computer-readable medium, the client software comprising instructions operable to cause the client computer to upload the picture image to the server.
16. A method of generating a visual representation of an image based product, the method comprising:
providing an image to be included in the image based product;
providing a perspective image showing the image based product in a perspective view, the perspective image having a picture portion corresponding to the portion of the image based product used to view a picture mounted on the image based product; and
texture mapping the image to the picture portion of the perspective image using the illumination of the picture portion of the frame image in order to generate the perspective prototype image; and
multiplying a texture value at a pixel by the original pixel value of the picture image to generate the frame prototype image.
17. The method of claim 16 wherein the image based product is a framed picture.
18. The method of claim 16 wherein the image based product is a photocard.
19. The method of claim 16 wherein the image based product is a photo greeting card.
20. The method of claim 19 wherein the method includes displaying the perspective image in an environment that provides a context for viewing the image based product.
US09/684,595 2000-10-05 2000-10-05 Previewing a framed image print Expired - Fee Related US7230628B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US09/684,595 US7230628B1 (en) 2000-10-05 2000-10-05 Previewing a framed image print
US09/721,437 US7190370B1 (en) 2000-10-05 2000-11-22 Previewing and manipulating a framed image print

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/684,595 US7230628B1 (en) 2000-10-05 2000-10-05 Previewing a framed image print

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/721,437 Continuation-In-Part US7190370B1 (en) 2000-10-05 2000-11-22 Previewing and manipulating a framed image print

Publications (1)

Publication Number Publication Date
US7230628B1 true US7230628B1 (en) 2007-06-12

Family

ID=37833415

Family Applications (2)

Application Number Title Priority Date Filing Date
US09/684,595 Expired - Fee Related US7230628B1 (en) 2000-10-05 2000-10-05 Previewing a framed image print
US09/721,437 Expired - Lifetime US7190370B1 (en) 2000-10-05 2000-11-22 Previewing and manipulating a framed image print

Family Applications After (1)

Application Number Title Priority Date Filing Date
US09/721,437 Expired - Lifetime US7190370B1 (en) 2000-10-05 2000-11-22 Previewing and manipulating a framed image print

Country Status (1)

Country Link
US (2) US7230628B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070050718A1 (en) * 2005-05-19 2007-03-01 Moore Michael R Systems and methods for web server based media production
US20070226653A1 (en) * 2006-02-24 2007-09-27 Moore Michael R Systems and methods for dynamically designing a product with digital content
US20080301546A1 (en) * 2007-05-31 2008-12-04 Moore Michael R Systems and methods for rendering media
US20090046106A1 (en) * 2007-08-14 2009-02-19 Samsung Techwin Co., Ltd. Method of displaying images and display apparatus applying the same
US7827498B2 (en) 2004-08-03 2010-11-02 Visan Industries Method and system for dynamic interactive display of digital images
US20110072376A1 (en) * 2009-09-23 2011-03-24 Visan Industries Method and system for dynamically placing graphic elements into layouts
US20110283223A1 (en) * 2010-05-16 2011-11-17 Nokia Corporation Method and apparatus for rendering user interface for location-based service having main view portion and preview portion
US10366090B2 (en) * 2016-03-30 2019-07-30 Facebook, Inc. Displaying temporary profile content items on communication networks
US10600139B2 (en) 2011-04-29 2020-03-24 American Greetings Corporation Systems, methods and apparatus for creating, editing, distributing and viewing electronic greeting cards

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050289216A1 (en) * 2002-03-28 2005-12-29 Andreas Myka Providing personalized services for mobile users
DE102007014590A1 (en) * 2006-04-11 2007-11-15 Mediatek Inc. Method and system for image overlay processing
US7936484B2 (en) 2006-06-14 2011-05-03 Ronald Gabriel Roncal Internet-based synchronized imaging
US20100153232A1 (en) * 2008-07-14 2010-06-17 Carl Ettlinger Electronic Kiosks for Ordering Custom Photographic Frames
US8035656B2 (en) * 2008-11-17 2011-10-11 Sony Corporation TV screen text capture
WO2012057768A1 (en) * 2010-10-28 2012-05-03 Hewlett-Packard Development Company, L.P. Previewing a sign in an online store-front ordering process

Citations (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4920337A (en) * 1983-10-17 1990-04-24 Canon Kabushiki Kaisha Display apparatus
US5179637A (en) 1991-12-02 1993-01-12 Eastman Kodak Company Method and apparatus for distributing print jobs among a network of image processors and print engines
US5179638A (en) * 1990-04-26 1993-01-12 Honeywell Inc. Method and apparatus for generating a texture mapped perspective view
US5282262A (en) * 1992-04-09 1994-01-25 Sony Corporation Method and apparatus for transforming a two-dimensional video signal onto a three-dimensional surface
US5343386A (en) * 1989-08-21 1994-08-30 Imageware Software, Inc. Apparatus for making electronically-produced postcards and method of operating same
US5369736A (en) * 1989-07-12 1994-11-29 Hitachi, Ltd. Texture mapping method
US5473737A (en) * 1993-10-12 1995-12-05 International Business Machines Corporation Method and apparatus for displaying a composite image made up of a foreground image and a background image
US5550960A (en) * 1993-08-02 1996-08-27 Sun Microsystems, Inc. Method and apparatus for performing dynamic texture mapping for complex surfaces
US5561746A (en) * 1992-08-26 1996-10-01 Namco Ltd. Image synthesizing system with surface data perspective transformation
US5606365A (en) 1995-03-28 1997-02-25 Eastman Kodak Company Interactive camera for network processing of captured images
US5687306A (en) * 1992-02-25 1997-11-11 Image Ware Software, Inc. Image editing system including sizing function
US5748194A (en) * 1996-05-08 1998-05-05 Live Picture, Inc. Rendering perspective views of a scene using a scanline-coherent look-up table
US5751950A (en) 1996-04-16 1998-05-12 Compaq Computer Corporation Secure power supply for protecting the shutdown of a computer system
US5760917A (en) 1996-09-16 1998-06-02 Eastman Kodak Company Image distribution method and system
US5760916A (en) 1996-09-16 1998-06-02 Eastman Kodak Company Image handling system and method
US5778430A (en) 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
US5781174A (en) * 1992-07-14 1998-07-14 Matsushita Electric Industrial Co., Ltd. Image synthesizer and image pointing system
US5787466A (en) 1996-05-01 1998-07-28 Sun Microsystems, Inc. Multi-tier cache and method for implementing such a system
WO1998036556A1 (en) 1997-02-13 1998-08-20 Fotowire Development S.A. Method for processing images and device for implementing same
US5809280A (en) 1995-10-13 1998-09-15 Compaq Computer Corporation Adaptive ahead FIFO with LRU replacement
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
US5848201A (en) * 1993-06-30 1998-12-08 Sega Enterprises Image processing system and its method and electronic system having an image processing system
US5870771A (en) * 1996-11-15 1999-02-09 Oberg; Larry B. Computerized system for selecting, adjusting, and previewing framing product combinations for artwork and other items to be framed
US5890213A (en) 1997-05-28 1999-03-30 Western Digital Corporation Disk drive with cache having adaptively aged segments
US6014137A (en) * 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US6047130A (en) * 1995-04-24 2000-04-04 Environmental Protection Systems, Inc. Apparatus and method for portrait photography
US6064399A (en) * 1998-04-03 2000-05-16 Mgi Software Corporation Method and system for panel alignment in panoramas
US6065969A (en) * 1998-08-10 2000-05-23 Mattel, Inc. Computer game for designing and printing nail coverings
US6104438A (en) * 1996-12-26 2000-08-15 Sony Corporation Image synthesizer and image synthesizing method for synthesizing according to movement
US6124859A (en) * 1996-07-31 2000-09-26 Hitachi, Ltd. Picture conversion method and medium used therefor
US6167382A (en) * 1998-06-01 2000-12-26 F.A.C. Services Group, L.P. Design and production of print advertising and commercial display materials over the Internet
US6202073B1 (en) * 1996-06-04 2001-03-13 Canon Kabushiki Kaisha Document editing system and method
US20010010772A1 (en) * 2000-01-28 2001-08-02 Kazuki Nakajima Calendar producing system, producing method, selling system and selling method
US20020030638A1 (en) * 2000-05-19 2002-03-14 Michael Weiner Apparatus for the display of embedded information
US20020070982A1 (en) * 2000-08-04 2002-06-13 Qbeo Inc. Method and system for presenting digital media
US6751339B1 (en) * 1998-11-30 2004-06-15 Canon Kabushiki Kaisha Texture advisor
US6831661B1 (en) * 1998-02-03 2004-12-14 Seiko Epson Corporation Projection display apparatus, display method for same and image display apparatus

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5577179A (en) * 1992-02-25 1996-11-19 Imageware Software, Inc. Image editing system
US5909220A (en) * 1993-05-10 1999-06-01 Sandow; Robin Interactive computerized image coloring systems and methods for processing combinations of color with automated subroutines and color standardization for diverse color systems
US5621868A (en) * 1994-04-15 1997-04-15 Sony Corporation Generating imitation custom artwork by simulating brush strokes and enhancing edges
US6169815B1 (en) * 1995-11-27 2001-01-02 Akira Aoki Method for retouching photograph and material used for the same
DE19606357A1 (en) * 1996-02-12 1997-08-14 Gmd Gmbh Image processing method for the representation of reflecting objects and associated device
US6154601A (en) * 1996-04-12 2000-11-28 Hitachi Denshi Kabushiki Kaisha Method for editing image information with aid of computer and editing system
US5986670A (en) * 1996-09-13 1999-11-16 Dries; Roberta L. Method and apparatus for producing a computer generated display that permits visualization of changes to the interior or exterior of a building structure shown in its actual environment
US5898438A (en) * 1996-11-12 1999-04-27 Ford Global Technologies, Inc. Texture mapping of photographic images to CAD surfaces
US5990901A (en) * 1997-06-27 1999-11-23 Microsoft Corporation Model based image editing and correction
US6356288B1 (en) * 1997-12-22 2002-03-12 U.S. Philips Corporation Diversion agent uses cinematographic techniques to mask latency
US6424351B1 (en) * 1999-04-21 2002-07-23 The University Of North Carolina At Chapel Hill Methods and systems for producing three-dimensional images using relief textures
US20020118209A1 (en) * 1999-09-21 2002-08-29 Hylen Steve H.L. Computer program product for introducing painting effects into a digitized photographic image
JP3619093B2 (en) * 1999-12-09 2005-02-09 セントラル硝子株式会社 Glass antenna for vehicles
US7523411B2 (en) * 2000-08-22 2009-04-21 Bruce Carlin Network-linked interactive three-dimensional composition and display of saleable objects in situ in viewer-selected scenes for purposes of object promotion and procurement, and generation of object advertisements
US6453361B1 (en) * 2000-10-27 2002-09-17 Ipac Acquisition Subsidiary I, Llc Meta-application architecture for integrating photo-service websites

Patent Citations (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4920337A (en) * 1983-10-17 1990-04-24 Canon Kabushiki Kaisha Display apparatus
US5369736A (en) * 1989-07-12 1994-11-29 Hitachi, Ltd. Texture mapping method
US5343386A (en) * 1989-08-21 1994-08-30 Imageware Software, Inc. Apparatus for making electronically-produced postcards and method of operating same
US5179638A (en) * 1990-04-26 1993-01-12 Honeywell Inc. Method and apparatus for generating a texture mapped perspective view
US5179637A (en) 1991-12-02 1993-01-12 Eastman Kodak Company Method and apparatus for distributing print jobs among a network of image processors and print engines
US5687306A (en) * 1992-02-25 1997-11-11 Image Ware Software, Inc. Image editing system including sizing function
US5282262A (en) * 1992-04-09 1994-01-25 Sony Corporation Method and apparatus for transforming a two-dimensional video signal onto a three-dimensional surface
US5781174A (en) * 1992-07-14 1998-07-14 Matsushita Electric Industrial Co., Ltd. Image synthesizer and image pointing system
US5561746A (en) * 1992-08-26 1996-10-01 Namco Ltd. Image synthesizing system with surface data perspective transformation
US5848201A (en) * 1993-06-30 1998-12-08 Sega Enterprises Image processing system and its method and electronic system having an image processing system
US5550960A (en) * 1993-08-02 1996-08-27 Sun Microsystems, Inc. Method and apparatus for performing dynamic texture mapping for complex surfaces
US5473737A (en) * 1993-10-12 1995-12-05 International Business Machines Corporation Method and apparatus for displaying a composite image made up of a foreground image and a background image
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
US5606365A (en) 1995-03-28 1997-02-25 Eastman Kodak Company Interactive camera for network processing of captured images
US6047130A (en) * 1995-04-24 2000-04-04 Environmental Protection Systems, Inc. Apparatus and method for portrait photography
US5809280A (en) 1995-10-13 1998-09-15 Compaq Computer Corporation Adaptive ahead FIFO with LRU replacement
US6014137A (en) * 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US5751950A (en) 1996-04-16 1998-05-12 Compaq Computer Corporation Secure power supply for protecting the shutdown of a computer system
US5778430A (en) 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
US5787466A (en) 1996-05-01 1998-07-28 Sun Microsystems, Inc. Multi-tier cache and method for implementing such a system
US5748194A (en) * 1996-05-08 1998-05-05 Live Picture, Inc. Rendering perspective views of a scene using a scanline-coherent look-up table
US6202073B1 (en) * 1996-06-04 2001-03-13 Canon Kabushiki Kaisha Document editing system and method
US6124859A (en) * 1996-07-31 2000-09-26 Hitachi, Ltd. Picture conversion method and medium used therefor
US5760916A (en) 1996-09-16 1998-06-02 Eastman Kodak Company Image handling system and method
US5760917A (en) 1996-09-16 1998-06-02 Eastman Kodak Company Image distribution method and system
US5870771A (en) * 1996-11-15 1999-02-09 Oberg; Larry B. Computerized system for selecting, adjusting, and previewing framing product combinations for artwork and other items to be framed
US6104438A (en) * 1996-12-26 2000-08-15 Sony Corporation Image synthesizer and image synthesizing method for synthesizing according to movement
WO1998036556A1 (en) 1997-02-13 1998-08-20 Fotowire Development S.A. Method for processing images and device for implementing same
US5890213A (en) 1997-05-28 1999-03-30 Western Digital Corporation Disk drive with cache having adaptively aged segments
US6831661B1 (en) * 1998-02-03 2004-12-14 Seiko Epson Corporation Projection display apparatus, display method for same and image display apparatus
US6064399A (en) * 1998-04-03 2000-05-16 Mgi Software Corporation Method and system for panel alignment in panoramas
US6167382A (en) * 1998-06-01 2000-12-26 F.A.C. Services Group, L.P. Design and production of print advertising and commercial display materials over the Internet
US6065969A (en) * 1998-08-10 2000-05-23 Mattel, Inc. Computer game for designing and printing nail coverings
US6751339B1 (en) * 1998-11-30 2004-06-15 Canon Kabushiki Kaisha Texture advisor
US20010010772A1 (en) * 2000-01-28 2001-08-02 Kazuki Nakajima Calendar producing system, producing method, selling system and selling method
US20020030638A1 (en) * 2000-05-19 2002-03-14 Michael Weiner Apparatus for the display of embedded information
US20020070982A1 (en) * 2000-08-04 2002-06-13 Qbeo Inc. Method and system for presenting digital media

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827498B2 (en) 2004-08-03 2010-11-02 Visan Industries Method and system for dynamic interactive display of digital images
US20070050718A1 (en) * 2005-05-19 2007-03-01 Moore Michael R Systems and methods for web server based media production
US20070226653A1 (en) * 2006-02-24 2007-09-27 Moore Michael R Systems and methods for dynamically designing a product with digital content
US20080301546A1 (en) * 2007-05-31 2008-12-04 Moore Michael R Systems and methods for rendering media
US8707173B2 (en) 2007-05-31 2014-04-22 Visan Industries Systems and methods for rendering media
US20090046106A1 (en) * 2007-08-14 2009-02-19 Samsung Techwin Co., Ltd. Method of displaying images and display apparatus applying the same
US20110072376A1 (en) * 2009-09-23 2011-03-24 Visan Industries Method and system for dynamically placing graphic elements into layouts
US8762889B2 (en) 2009-09-23 2014-06-24 Vidan Industries Method and system for dynamically placing graphic elements into layouts
US20110283223A1 (en) * 2010-05-16 2011-11-17 Nokia Corporation Method and apparatus for rendering user interface for location-based service having main view portion and preview portion
US9582166B2 (en) * 2010-05-16 2017-02-28 Nokia Technologies Oy Method and apparatus for rendering user interface for location-based service having main view portion and preview portion
US10600139B2 (en) 2011-04-29 2020-03-24 American Greetings Corporation Systems, methods and apparatus for creating, editing, distributing and viewing electronic greeting cards
US10366090B2 (en) * 2016-03-30 2019-07-30 Facebook, Inc. Displaying temporary profile content items on communication networks

Also Published As

Publication number Publication date
US7190370B1 (en) 2007-03-13

Similar Documents

Publication Publication Date Title
US7016869B1 (en) System and method of changing attributes of an image-based product
US6587596B1 (en) System and method of cropping an image
US10375255B2 (en) Method and system for on-line video and image editing
US7230628B1 (en) Previewing a framed image print
US10210659B2 (en) Augmented reality system, method, and apparatus for displaying an item image in a contextual environment
US7082227B1 (en) Producing printed images having personalized features
US7830399B2 (en) System and method for manipulating digital images
US8504932B2 (en) Image collage builder
US7302115B2 (en) Method for using customer images in a promotional product
US7523411B2 (en) Network-linked interactive three-dimensional composition and display of saleable objects in situ in viewer-selected scenes for purposes of object promotion and procurement, and generation of object advertisements
US20090167870A1 (en) Method for Creating Custom Digital Images Utilizing Background Replacement Technology Over a Network
US20060181736A1 (en) Image collage builder
JP2007535733A (en) System that enables image distribution and interactive operation
US20130335437A1 (en) Methods and systems for simulating areas of texture of physical product on electronic display
US20090015869A1 (en) Image collage builder
US7973796B1 (en) Natural framing system
US20160343064A1 (en) Online merchandizing systems and methods that use 360 product view photography with user-initiated product feature movement
US20230421706A1 (en) System and method for ordering a print product including a digital image utilizing augmented reality
KR102107315B1 (en) Art work management system and art work management method using the system
Blumberg et al. Visual realism and interactivity for the Internet
Jackson Quantum Mechanical Neural Networks: An Isoperimetric Extremization
WO2006060846A1 (en) Method and system for producing a moving picture which pans across an article

Legal Events

Date Code Title Description
STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT

Free format text: SECURITY AGREEMENT;ASSIGNOR:SHUTTERFLY, INC.;REEL/FRAME:020866/0406

Effective date: 20080428

FEPP Fee payment procedure

Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT

Free format text: SECURITY AGREEMENT;ASSIGNOR:SHUTTERFLY, INC.;REEL/FRAME:027333/0161

Effective date: 20111122

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: SHUTTERFLY, INC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HAEBERLI, PAUL;REEL/FRAME:033724/0703

Effective date: 20010213

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT

Free format text: SECURITY AGREEMENT;ASSIGNOR:SHUTTERFLY, INC.;REEL/FRAME:039024/0761

Effective date: 20160610

AS Assignment

Owner name: SHUTTERFLY, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:043542/0693

Effective date: 20170817

AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL

Free format text: SECURITY INTEREST;ASSIGNOR:SHUTTERFLY, INC.;REEL/FRAME:043601/0955

Effective date: 20170817

AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT, MARYLAND

Free format text: SECURITY INTEREST;ASSIGNORS:SHUTTERFLY, INC.;LIFETOUCH INC.;LIFETOUCH NATIONAL SCHOOL STUDIOS INC.;REEL/FRAME:046216/0396

Effective date: 20180402

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL

Free format text: SECURITY INTEREST;ASSIGNORS:SHUTTERFLY, INC.;LIFETOUCH INC.;LIFETOUCH NATIONAL SCHOOL STUDIOS INC.;REEL/FRAME:046216/0396

Effective date: 20180402

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20190612

AS Assignment

Owner name: LIFETOUCH NATIONAL SCHOOL STUDIOS INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050527/0868

Effective date: 20190925

Owner name: SHUTTERFLY, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050527/0868

Effective date: 20190925

Owner name: LIFETOUCH INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050527/0868

Effective date: 20190925

AS Assignment

Owner name: SHUTTERFLY INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC.;REEL/FRAME:050572/0508

Effective date: 20190925

AS Assignment

Owner name: SHUTTERFLY, LLC, CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:SHUTTERFLY, INC.;REEL/FRAME:051095/0172

Effective date: 20191031