`
`USUUG 223 190131
`
`(12)
`
`United States Patent
`US 6,223,190 B1
`(1(1) Patent 1%.:
`Aihara et al.
`(45) Date of Patent:
`Apr. 24, 2001
`
`(54)
`
`(75)
`
`(73)
`
`METHOD AND SYSTEM FOR PRODUCING
`AN INTERNET PAGE DESCRIPTION FILE
`ON A DIGITAL IMAGING DEVICE
`
`Inventors: Tim 'I'akao Ailltlrtl, Yono (JP); Rodney
`Somerstein. San Jose. CA (US)
`
`5,721,908 "
`2.0.098 Lagarde ct til.
`....................... T0110
`5,898,833 *
`......
`4,1999 Kidder
`'i'U‘Jr'234
`
`{3,035,323 *
`3.120(IIU Narayen ct al.
`..... TUTISL’II X
`
`FOREIGN PA'I'LiN'I" DOCUMENTS
`
`it 65” I25
`W0 98r'l4887
`
`4:1995 (I-LP) .
`owes (W0) .
`
`Assigncc: Flashl’olnt 'I'echnology, Inc., San Jose.
`CA (US)
`
`* cited by examiner
`
`(*l
`
`Notice:
`
`Subject to any disclaimer, the term of this
`patent is cxtcndcd or adjusted under 35
`U.S.C. 154(1)) by 0 days.
`
`Prirrrrrrjv Exmtrr‘rrer—Joscph H . Fcild
`(74) Attorney, Agent, or Firm—Sawyer Law Group LLI:I
`
`(57)
`
`ABSTRACT
`
`(21)
`
`Appl. No.: 09f059,611
`
`(22
`
`Fiicd:
`
`Apr. 13, 1998
`
`(51)
`(52)
`(58)
`
`(56)
`
`Int. Cl.7 ...................................................... GINSI“ 17,.“21
`U.S. Cl.
`........................... 7010513; 3488072 348.3552
`Field of Search ..................................... 707,501, 513,
`70'” 10; 396.297, 300; 348552, 33301—33105,
`207; 3453328; 709218, 219, 231
`
`References Cited
`
`U.S. PA'I‘EN'I' DOCUMENTS
`
`5,335,0'12
`5,633.6?8
`5,640,103 *
`5,649,186 *
`5,650,?29 "
`
`$1994 'l‘anaka el al.
`....................... 3483232
`531907 Parulski el al.
`3483232
`
`(#1997 WcIIncr ......
`348W
`
`‘i‘r‘l99’.’ Ferguson ................................ Wilt“!
`8:199? Nielsen .................................... 7078
`
`A method and system for generating an IITML (hypertext
`markup language) filc including images captured by adigital
`imaging device, the digital imaging device having a display.
`Ascripl and it’s prcdcfincd modc] arc provided to the digital
`camera. The script is comprised of a set of software program
`instructions. The digital camera executes the script to dis
`play interactive instructions on the display that prompt a
`user to perform specific operations. In response to the user
`performing the specific operations, the digital camera auto-
`matically updates the interactive instructions, such that the
`user is guided through a series of related image captures to
`obtain a series of resulting images. The digital camera then
`generates an HTML file including the resulting images,
`wherein the HTML file is formatted in accordance with the
`predefined model.
`
`19 Claims, 11 Drawing Sheets
`
`TDD
`
`Insert Rat-rumble Memory.f
`
`Mount Removable Memory
`
`702
`
`
`
`
`
`User Selects Script Including
`a Directed Image Capture
`Sequence to Run
`
`
`Begin lnlerpreti rlg the Script T10
`
`Fetch Command
`
`User Presses
`Shutter Bunch
`
`Interpret Command
`
`
`
`
`
`Generate Code in
`Accordance with
`
`
`1’19
`the Scripts
`Predefined Model
`
`
`
`
`Control Returns to
`Control Application
`
`
`0001
`
`Apple/Twitter
`Apple/Twitter
`Ex. 1012
`Ex. 1012
`IPR4 of U.S. Pat. No. 7,765,482
`IPR4 of U.S. Pat. No. 7,765,482
`
`
`
`
`
`Search for System Files
`
`Install anyI Scripts Found
`
`0001
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 1 0f 11
`
`US 6,223,190 B1
`
`FIG.1
`
`Computer
`
`.8>
`a)
`
`E
`
`DO
`
`)
`.E
`a)
`cu
`
`112
`
`0002
`
`0002
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 2 0f 11
`
`US 6,223,190 B1
`
`o:
`
`Mia
`
`and
`
`89:qu
`
`DZ
`
`..wtw>:oo
`
`wNN
`
`mo_m:<
`
`3.55
`
`.0389;
`
`v:
`
`$=_n_
`
`HM
`
`$20.2
`
`SN53$250
`
`NE.
`
`0003
`
`N.mv_n_ fl
`
`555ch
`
`0003
`
`
`
`
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 3 0f 11
`
`US 6,223,190 B1
`
`
`
`003.2.9.62.;
`
`m.0_u_
`
`dud
`
`mozozmm
`
`
`
` flolvw_m_owmcousm
`
`8..mega$9800..
`
`Now
`
`wln
`
`m3m>oEmm
`
`boEws.
`
`am
`
`m._=m_o>.:oz
`
`EoEwE
`
`%hwmmcms.
`
`Egon
`
`
`
`0004
`
`004
`
`5:95:00
`
`WEEKS—00
`
`gun
`
`Ems.
`
`mozmzmm
`
`qzxomm
`
`0004
`
`
`
`
`
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 4 0f 11
`
`US 6,223,190 B1
`
`3&6
`
`
`WORKING MEMORY
`
`
`
`
`Ram Disk
`
`System Area
`
`
`
`
`
`FIG. 4
`
`0005
`
`0005
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 5 0f 11
`
`US 6,223,190 B1
`
`411a
`
`410a
`
`411b
`
`412
`
`414
`
`410b
`
`426a
`
`426b
`
`418
`
`0006
`
`0006
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 6 0f 11
`
`US 6,223,190 B1
`
`430
`
`409
`
`@2323
`
`Front View 1 of 5
`
`402
`
`
`
`
`
`432
`
`
`
`Stop Script
`
`
`
`FIG. 6A
`
`Script XYZ
`
`FIG. 6B
`
`0007
`
`0007
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 7 0f 11
`
`US 6,223,190 B1
`
`
`
`Directed Image Capture
`Sequence
`§J§
`
`
`
`DRAM
`
`59.0
`
`Control Application
`
`Image Processors
`
`Camera Control Shell
`
`Startup / Config.
`
`Script Interpreter
`
`Drivers
`
`Kernel
`
`51—6
`
`350 /
`
`FIG. 7
`
`0008
`
`0008
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 8 0f 11
`
`US 6,223,190 B1
`
`Insert Removable Memory
`
`Mount Removable Memory
`
`Search for System Files
`
`700
`
`702
`
`704
`
`Install any Scripts Found
`
`706
`
`User Selects Script Including
`a Directed Image Capture
`Sequence to Run
`
`Begin Interpreting the Script
`
`Fetch Command
`
`708
`
`710
`
`712
`
`
`
`
`
`Command =
`Wait for
`
`Shutter?
`
`User Presses
`Shutter Button
`
`714
`
`Interpret Command
`
`718
`
`
`Generate Code in
`Accordance with
`
`the Script's
`
`Predefined Model
`
`719
`
`
`
`720
`
`End
`Of Script?
`
`Control Returns to
`Control Application
`
`722
`
`FIG. 8
`
`0009
`
`0009
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 9 0f 11
`
`US 6,223,190 B1
`
`Christopher Realty, Inc.
`
`958 Willowleaf Drive
`
`Swimming Pool
`
`Sq. Footage: 3500
`Price: $1000000
`
`Lot Size: 3/4 acre(s)
`Age: 5 year(s)
`
`3 bedroom(s)
`2.5 baths
`
`2 car garage
`
`Agent: 8. Saylor (408) 555-1212
`
`FIG. 9
`
`0010
`
`0010
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 10 0f 11
`
`US 6,223,190 B1
`
`Camera
`
`1m
`
`
`
`PhoneJack
`
`m2
`
`LocaILoop
`
`vvvvvvvvvv
`
`Modem
`Bank
`
`5.0.3
`
`ISP T1
`
`flfl
`
`Internet
`
`|§
`
`FIG. 10
`
`0011
`
`0011
`
`
`
`US. Patent
`
`Apr. 24, 2001
`
`Sheet 11 0f 11
`
`US 6,223,190 B1
`
`30.12
`
`910
`
`Applications
`
`
`
`
`
`Web Sewer
`Operating
`System
` 9M
`
`
` Motion Detection
`
`
`
`Aim Control
`
`Protocol
`
`Stack
`
`9m
`
`
`
`Communications
`Hardware 9g;
`
`Camera
`Hardware 915
`
`HTTP
`Requests
`
`HTML
`Files
`
`FIG. 11
`
`0012
`
`0012
`
`
`
`US 6,223,190 B1
`
`1
`METHOD AND SYSTEM FOR PRODUCING
`AN INTERNET PAGE DESCRIPTION FILE
`ON A DIGITAL IMAGING DEVICE
`
`FIELD OF THE INVENTION
`
`The field of the present invention pertains to digital image
`capture devices. More particularly,
`the present invention
`relates to a method and system for producing HTML using
`the electronic systems within a digital camera.
`BACKGROUND OF THE INVENTION
`
`Most digital cameras today are very similar in size and
`behavior to conventional point-and-shoot cameras. Modern
`digital cameras for taking pictures of scenes and the like
`typically include an imaging device which is controlled by
`a computer running a software program. When an image is
`captured, the imaging device is exposed to light and gener-
`ates raw image data representing the image. The raw image
`data is typically stored in a single image buffer where it is
`then processed and compressed by the processor. Many
`types of compression schemes are used to compress the
`image data, with the joint photographic expert group (JPEG)
`standard being the most popular. After the processor pro-
`cesses and compresses the raw image data into JPEG image
`files,
`the processor stores the JPEG image files into an
`internal memory or on an external memory card.
`Some digital cameras are also equipped with a liquid-
`crystal display (LCD) or other type of display screen on the
`back of the camera. Through the use of the LCD,
`the
`processor can cause the digital camera to operate in one of
`two modes, play and record, although some cameras only
`have a record mode. In play mode, the LCD is used as a
`playback screen for allowing the user to review previously
`captured images either individually or in arrays of four, nine,
`or sixteen images. In record mode, the LCD is used as a
`viewfinder in which the user may view an object or scene
`before taking a picture.
`Besides the LCD, digital camera user interfaces also
`include a number of buttons or switches for setting the
`camera into one of the two modes and for navigating
`between pictures in play mode. For example, most digital
`cameras include two buttons labele “—” and “+” that enable
`
`a user to navigate or scroll through captured pictures. For
`example,
`if the user is reviewing pictures individually,
`meaning that single pictures are displayed full-sized in the
`LCD, pressing one of navigation buttons causes the cur-
`rently displayed picture to be replaced by the next picture.
`The electronic nature of the digital camera’s pictures
`make them particularly well suited for use with other
`electronic applications. The pictures are also particularly
`well suited for use in the creation of complex text and image
`documents. Using document creation software applications,
`the pictures can be incorporated into a document along with
`corresponding text annotations or descriptions. Once
`created,
`the documents can be electronically transmitted
`(e.g., via email) or printed and distributed conventionally.
`The resulting document can be formatted in accordance with
`any of a number of popular page description languages used
`for
`the Internet, such as HTML (hypertext markup
`language), XML (extensible markup language), java script,
`and the like.
`
`For example, once the HTML file, referencing the pictures
`has been created, it can easily be exchanged among any
`number of users via email and subsequently viewed (e. g., as
`a web page) using any of a number of web browsers.
`Alternatively, the HTML file itself can be made available
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`over the Internet using web server software. The HTML file
`essentially becomes a web page which web browser
`equipped users can view or download on demand.
`it
`However, even with these advanced capabilities,
`remains desirable to make the user’s experience with the
`digital camera as intuitive and “hassle-free” as possible. The
`objective is to provide the advanced capabilities afforded by
`a digital camera while retaining the simplicity and straight
`forwardness of conventional point and shoot cameras.
`Consequently, there is a problem in providing sophisti-
`cated capabilities and features to the user while still retain-
`ing a simple straight forward method of operation. For
`example, to create and electronically distribute a document
`and pictures from a digital camera, a user needs to first
`capture the image (e.g., take the picture), and then transfer
`the image to a personal computer. One method involves
`transferring a removable storage element (e.g., a flash disk)
`from the digital camera to a corresponding input peripheral
`device (flash disk attachment) coupled to the personal com-
`puter. Another method involves tethering the camera to the
`computer and transferring the file to the computer using a
`specialized software application. The user can then manipu-
`late the image using a separate image editing software tool,
`or use any image editing features included in the specialized
`software application. The user then imports the image into a
`document editing application. If the resulting document is to
`be in HTML format, an HTML publishing application would
`typically be used. There, the user formats the document by,
`for example, annotating the image with,
`for example,
`descriptive text, and including any other patentee informa-
`tion. The image is placed on the “page” with respect to the
`descriptive text (e.g., title, subheadings, etc.). The resulting
`document is saved in HTML format.
`
`Thus, in order to create an HTML file including images
`taken with the digital camera,
`in addition to taking the
`picture,
`the user is currently required to know how to
`transfer the picture to the PC, import the image into an image
`editing application, import the image into an HTML pub-
`lishing application, and format an HTML file. As the infor-
`mation must be entered while using the HTML publishing
`application, as opposed to when the pictures are taken, the
`user needs to remember the relevant details about each
`
`picture or have previously taken notes regarding the pictures
`elsewhere. In addition to all of the above, the user is also
`required to have the requisite skills in operating the image
`editing application, and operating the HTML publishing
`application.
`Hence, what is needed is an inexpensive method and
`system for capturing images and generating a formatted
`electronic document which references those images. The
`document should be readily interchangeable among users
`using a variety of computer implemented methods, such as,
`for example, email, LANs/WANs (local area networks/wide
`area networks), or the Internet. The process of creating the
`formatted document including the image should be intuitive
`and user friendly. The present invention provides a novel
`solution to the above requirements.
`SUMMARY OF THE INVENTION
`
`The present invention provides an inexpensive method
`and system for capturing images and generating a formatted
`electronic document which includes those images. The
`document is readily interchangeable among users using a
`variety of computer implemented methods, such as, for
`example, email, LAN/WANs, or the Internet. The present
`invention provides a process of creating the formatted
`document including the image which is intuitive and user
`friendly.
`
`0013
`
`0013
`
`
`
`US 6,223,190 B1
`
`3
`In one embodiment, the present invention comprises a
`method and system for generating a page description file,
`such as HTML (hypertext markup language) that references
`images captured by a digital camera. A script, comprised of
`computer readable instructions,
`is provided to the digital
`camera. The script is interpreted by the camera such that the
`camera sequences though a series of actions, such as for
`example, prompting the user to take a picture, prompting the
`user to enter any descriptive information regarding a picture,
`and the like. The script also includes a set of predefined
`instructions and formatting commands which are adapted to
`create a formatted web page (e.g., HTML file) in accordance
`with a certain desired appearance. This set of instructions
`and commands are referred to as a “model”. The creator of
`the script develops the model in accordance with the par-
`ticular requirements to which the script is designed.
`The digital camera executes the script to display interac-
`tive instructions on the camera’s display that prompt a user
`to perform specific operations.
`In response to the user
`performing the specific operations, the digital camera auto-
`matically updates the interactive instructions, such that the
`user is guided through a series of steps, such as, for example,
`taking a series of related image captures and annotating
`them. The digital camera then generates an HTML file
`referencing the resulting images, wherein the HTML file is
`formatted in accordance with the script’s predefined model.
`In so doing, the present invention allows a user having no
`knowledge of HTML to produce HTML and image files
`which describe one or more web pages including the result-
`ing images. The web pages are viewable through the use of
`any of a number of widely used web browsers. In addition,
`the present invention allows the user to annotate and enter
`descriptive information regarding the images at the time
`they are captured, rather than having to first transfer the
`captured images to a PC or enter notes elsewhere.
`The HTML file can then be downloaded from the digital
`camera using, for example, a removable storage device
`(flash disk, PC Card, etc.). Alternatively,
`in another
`embodiment, the HTML file can be made directly available
`over the Internet through the use of a web server hosted by
`the digital camera itself.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The present invention is illustrated by way of example
`and not by way of limitation, in the figures of the accom-
`panying drawings in which like reference numerals refer to
`similar elements and in which:
`
`FIG. 1 shows a block diagram of a digital camera for use
`in accordance with the present invention.
`FIG. 2 shows a block diagram of an imaging device in
`accordance with one preferred embodiment of the present
`invention.
`
`FIG. 3 shows a block diagram of a computer in accor-
`dance with one preferred embodiment of the present inven-
`tion.
`
`FIG. 4 shows a memory map of a DRAM in accordance
`with one embodiment of the present invention.
`FIG. 5A shows a top view diagram depicting the preferred
`hardware components of the camera from FIG. 1.
`FIG. 5B shows a back view diagram depicting the pre-
`ferred hardware components of the camera from FIG. 1.
`FIG. 6A shows a diagram of a first directed image capture
`screen in accordance with one embodiment of the present
`invention.
`
`FIG. 6B shows a diagram of a second directed image
`capture screen in accordance with one embodiment of the
`present invention.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`FIG. 7 shows a block diagram illustrating the contents of
`a ROM and DRAM of a the camera from FIG. 1.
`
`FIG. 8 is a flow chart illustrating an exemplary process of
`installing and running a script
`in accordance with one
`embodiment of the present invention.
`FIG. 9 shows a web page as described by an HTML file
`created by a script in accordance with one embodiment of
`the present invention.
`FIG. 10 shows a diagram of a digital camera of the present
`invention coupled to the Internet via an ISP and a dial-up
`connection.
`
`FIG. 11 shows a diagram of the connectivity and appli-
`cation software of the camera from FIG. 10 is shown.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`In the following detailed description of the present
`invention, numerous specific details are set forth in order to
`enable one of ordinary skill in the art to make and use the
`invention and is provided in the context of a patent appli-
`cation and its requirements. Although the present invention
`will be described in the context of a digital camera, various
`modifications to the preferred embodiment will be readily
`apparent to those skilled in the art and the generic principles
`herein may be applied to other embodiments. That is, any
`image capture device which displays or prints images, icons
`and/or other items, could incorporate the features described
`hereinbelow and that device would be within the spirit and
`scope of the present invention. Thus, the present invention
`is not intended to be limited to the embodiment shown but
`
`is to be accorded the widest scope consistent with the
`principles and features described herein.
`The present invention provides an inexpensive method
`and system for capturing images and generating a formatted
`electronic document which includes or references those
`
`images. The document is readily interchangeable among
`users using a variety of computer implemented methods,
`such as, for example, email, LAN/WAN, or the Internet. The
`present invention also provides a process of creating the
`formatted document including the image which is intuitive
`and user friendly. In addition, the present invention includes
`a method and system for inexpensively making the format-
`ted document available via the Internet to web browser
`
`equipped users. The present invention and its advantages are
`further described below.
`
`Referring now to FIG. 1, a block diagram of a digital
`camera 110 is shown for use in accordance with the present
`invention. Camera 110 preferably comprises an imaging
`device 114, a system bus 116 and a computer 118. Imaging
`device 114 is optically coupled to an object 112 and elec-
`trically coupled via system bus 116 to computer 118. Once
`a photographer has focused imaging device 114 on object
`112 and, using a capture button or some other means,
`instructed camera 110 to capture an image of object 112,
`computer 118 commands imaging device 114 via system bus
`116 to capture raw image data representing object 112. The
`captured raw image data is transferred over system bus 116
`to computer 118 which performs various image processing
`functions on the image data before storing it in its internal
`memory. System bus 116 also passes various status and
`control signals between imaging device 114 and computer
`118.
`
`Referring now to FIG. 2, a block diagram of one preferred
`embodiment of imaging device 114 is shown. Imaging
`device 114 typically comprises a lens 220 having an iris, a
`filter 222, an image sensor 224, a timing generator 226, an
`
`0014
`
`0014
`
`
`
`US 6,223,190 B1
`
`5
`
`analog signal processor (ASP) 228, an analog-to-digital
`(A/D) converter 230, an interface 232, and one or more
`motors 234.
`
`In operation, imaging device 114 captures an image of
`object 112 via reflected light impacting image sensor 224
`along optical path 236. Image sensor 224, which is typically
`a charged coupled device (CCD), responsively generates a
`set of raw image data in CCD format representing the
`captured image 112. The raw image data is then routed
`through ASP 228, A/D converter 230 and interface 232.
`Interface 232 has outputs for controlling ASP 228, motors
`234 and timing generator 226. From interface 232, the raw
`image data passes over system bus 116 to computer 118.
`Referring now to FIG. 3, a block diagram of one preferred
`embodiment for computer 118 is shown. System bus 116
`provides connection paths between imaging device 114, an
`optional power manager 342, central processing unit (CPU)
`344, dynamic random-access memory (DRAM) 346, input/
`output interface (I/O) 348, non-volatile memory 350, and
`buffers/connector 352. Removable memory 354 connects to
`system bus 116 via buffers/connector 352. Alternately, cam-
`era 110 may be implemented without removable memory
`354 or buffers/connector 352.
`
`Power manager 342 communicates via line 366 with
`power supply 356 and coordinates power management
`operations for camera 110. CPU 344 typically includes a
`conventional processor device for controlling the operation
`of camera 110. In the preferred embodiment, CPU 344 is
`capable of concurrently running multiple software routines
`to control the various processes of camera 110 within a
`multithreaded environment. DRAM 346 is a contiguous
`block of dynamic memory which may be selectively allo-
`cated to various storage functions. LCD controller 390
`accesses DRAM 346 and transfers processed image data to
`LCD screen 402 for display.
`I/O 348 is an interface device allowing communications
`to and from computer. For example, I/O 348 permits an
`external host computer (not shown) to connect
`to and
`communicate with computer 118. I/O 348 also interfaces
`with a plurality of buttons and/or dials 404, and an optional
`status LCD 406, which in addition to the LCD screen 402,
`are the hardware elements of the camera’s user interface
`408.
`
`Non-volatile memory 350, which may typically comprise
`a conventional read-only memory or flash memory, stores a
`set of computer-readable program instructions to control the
`operation of camera 110. Removable memory 354 serves as
`an additional image data storage area and is preferably a
`non-volatile device, readily removable and replaceable by a
`camera 110 user via buffers/connector 352. Thus, a user who
`possesses several removable memories 354 may replace a
`full removable memory 354 with an empty removable
`memory 354 to effectively expand the picture-taking capac-
`ity of camera 110. In the preferred embodiment of the
`present
`invention,
`removable memory 354 is typically
`implemented using a flash disk. Power supply 356 supplies
`operating power to the various components of camera 110.
`In the preferred embodiment, power supply 356 provides
`operating power to a main power bus 362 and also to a
`secondary power bus 364. The main power bus 362 provides
`power to imaging device 114, I/O 348, non-volatile memory
`350 and removable memory 354. The secondary power bus
`364 provides power to power manager 342, CPU 344 and
`DRAM 346.
`
`Power supply 356 is connected to main batteries 358 and
`also to backup batteries 360. In the preferred embodiment,
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`a camera 110 user may also connect power supply 356 to an
`external power source. During normal operation of power
`supply 356, the main batteries 358 provide operating power
`to power supply 356 which then provides the operating
`power to camera 110 via both main power bus 362 and
`secondary power bus 364. During a power failure mode in
`which the main batteries 358 have failed (when their output
`voltage has fallen below a minimum operational voltage
`level) the backup batteries 360 provide operating power to
`power supply 356 which then provides the operating power
`only to the secondary power bus 364 of camera 110.
`Referring now to FIG. 4, a memory diagram showing one
`embodiment of dynamic random-access-memory (DRAM)
`346 is shown. In the preferred embodiment, DRAM 346
`includes RAM disk 532, a system area 534, and working
`memory 530.
`RAM disk 532 is a memory area used for storing raw and
`compressed image data and typically is organized in a
`“sectored” format similar to that of conventional hard disk
`
`drives. In the preferred embodiment, RAM disk 532 uses a
`well-known and standardized file system to permit external
`host computer systems, via I/O 348, to readily recognize and
`access the data stored on RAM disk 532. System area 534
`typically stores data regarding system errors (for example,
`why a system shutdown occurred) for use by CPU 344 upon
`a restart of computer 118.
`Working memory 530 includes various stacks, data struc-
`tures and variables used by CPU 344 while executing the
`software routines used within computer 118. Working
`memory 530 also includes several input buffers 538 for
`temporarily storing sets of raw image data received from
`imaging device 114, and a frame buffer 536 for storing data
`for display on the LCD screen 402.
`In a preferred
`embodiment, each input buffer 538 and the frame buffer 536
`are split into two separate buffers (shown by the dashed
`lines) to improve the display speed of the digital camera and
`to prevent the tearing of the image in the display 402.
`FIGS. 5A and 5B are diagrams depicting the preferred
`hardware components of the camera’s 110 user interface
`408. FIG. 5A is back view of the camera 110 showing the
`LCD screen 402, a four-way navigation control button 409,
`an overlay button 412, a menu button 414, and a set of
`programmable soft keys 416. FIG. 5B is a top view of the
`camera 110 showing a shutter button 418, and a mode dial
`420. The camera may optionally include status LCD 406,
`status LCD scroll and select buttons 422 and 424, a sound
`record button 426, and zoom-in, zoom-out buttons 426a and
`426b.
`
`The digital camera of the present invention is controlled
`by graphical-user-interface (GUI) based operating system
`(OS), which is in contrast to conventional digital cameras
`that are controlled by proprietary hardware architectures. In
`the preferred embodiment of the present invention, the OS
`provides the digital camera with several different operating
`modes for supporting various camera functions. Although
`the digital camera may include several different operating
`modes, the modes relevant to this description are capture
`mode, and play mode.
`In capture mode, the camera 110 supports the actions of
`preparing to capture an image, and capturing an image
`through the use of either the LCD screen 402 alone or the
`status LCD 406 with the aid of an optional optical view-
`finder (not shown). In review mode, the camera 110 supports
`the actions of reviewing camera contents, editing and sorting
`images, and printing and transferring images. In play mode,
`the camera 110 allows the user to view screen-sized images
`
`0015
`
`0015
`
`
`
`US 6,223,190 B1
`
`7
`in the LCD screen 402 in the orientation that the image was
`captured. Play mode also allows the user to hear recorded
`sound associated to a displayed image, and to play back
`sequential groupings of images, which may comprise time
`lapse, slide show, and burst image images. The user prefer-
`ably switches between the capture, review, and play modes,
`using the mode dial 420. When the camera is placed into a
`particular mode, that mode’s default screen appears in the
`LCD screen 402 in which a set of mode-specific items, such
`as images, icons, and text, are displayed.
`The present invention provides an inexpensive method
`and system for capturing images and generating a formatted
`electronic document which includes those images. The
`document is readily interchangeable among users using a
`variety of computer implemented methods, such as, for
`example, email, LAN/WAN, or the Internet. The present
`invention provides a process of creating the formatted
`document including the image which is intuitive and user
`friendly. The document can be created in any of a number of
`formats. Such formats include, for example, HTML format,
`Postscript format, Acrobat format, and the like.
`In one embodiment, the present invention comprises a
`method and system wherein camera 110 automatically gen-
`erates a formatted HTML file referencing images captured
`by the user. This is accomplished through the use of a script.
`As used herein, a script is an interpreted program written
`with text-based commands. A script may also be written
`using other interpreted languages, such as BASIC and LISP,
`for example. A script in accordance with the present inven-
`tion also includes a predefined set of commands which
`determine the formatted appearance of a web page. The
`script is interpreted by camera 110, which performs the
`actions, steps, functions, and the like, as dictated by the
`script. The predefined set of commands which determine the
`formatted appearance of a web page are referred to as a
`model. The model is designed (e. g., by the user, a third party
`developer, or the like) to give the resulting web page its
`distinctive appearance.
`For example, in one embodiment, a script can be created
`that sequentially directs the user to select from a set of
`previously captured images stored within camera 110, enter
`annotations regarding each image, and automatically format
`an HTML file in accordance with a predefined model.
`Alternatively, in another embodiment, a script can be created
`that directs the user to take a series of images, enter
`annotations for the images, and automatically format an
`HTML file in accordance with the predefined model. In both
`cases,
`the HTML commands which determine the
`appearance, hereafter referred to as the format, of the
`resulting web page are generated by the script in accordance
`with the predefined model.
`In the embodiment where the script includes a directed
`image capture sequence,
`the directed image capture
`sequence provides a series of instructions which prompts
`and directs the user through a sequence actions, such as, for
`example,
`taking a picture, promoting the user for any
`descriptive information regarding the picture, prompting the
`user for annotations, and the like. Camera 110 executes the
`directed image capture sequence, and typically displays
`interactive instructions on LCD screen 402 that guide the
`user through the scripted sequence. Camera 110 keeps track
`of the user’s progress through the scripted sequence and
`automatically updates the interactive instructions, such that
`the user is guided through a series of related image captures
`to obtain a series of resulting images. The model functions
`as a “blue print” which describes the appearance and logical
`structure of the resulting web page described by the HTML
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`file. As the images are captured and text information entered,
`the images and text are tagged with HTML commands in
`accordance with the model.
`
`in accordance with the present
`In executing a script
`invention, camera 110 generates an HTML file including the
`resulting images, wherein the HTML file is formatted in
`accordance with the script’s predefined model. The model
`defines the formatting and positioning information which
`determine the overall appearance of the web page. For
`example, with a directed image capture script, as the
`directed image capture sequence “steps” the user through a
`series of image captures, the script automatically formats the
`descriptive information or annotations entered by the user in
`accordance with the model so that they appear in a desired
`manner in with respect to the corresponding picture (for
`example, specifying that the title of the image be centered
`above the picture and in a relatively large font, while the
`annotations are justified below the picture in a smaller font).
`Thus, once the user has progressed though and completed a
`given directed image capture sequence, camera 110 has
`generated the corresponding formatted HTML file.
`In the embodiment where the script does not include a
`directed image capture sequence, the script functions in a
`substantially similar manner, except that the user is not
`prompted to take pictures. Rather,
`the user could be
`prompted to select pictures from a set stored in the memory
`of the camera, stored on removable media, or stored else-
`where. As the particular pictures are selected,
`the script
`prompts and directs the user for any descriptive information,
`annotations, and the like