Patent Harbor, LLC v. Apple, Inc.

Filing 1

COMPLAINT against Apple, Inc. ( Filing fee $ 400 receipt number 0540-4598128.), filed by Patent Harbor, LLC. (Attachments: # 1 Exhibit A - '514 Patent, # 2 Exhibit B - Claim Construction Order, # 3 Civil Cover Sheet, # 4 Summons(es) Summons to Apple, Inc.)(Cooke, Michael)

Download PDF
EXHIBIT “A” U.S. Patent Nov. 4, 1997 sheet 1 of s 5,684,514 111 ’ï 1011") v|DEo MONITOR m M 1c m A m D 1 rH._-|_/4l _11411K_1Á|H4I1 _ _ _ _ _ _ A D» O __ à œ Rr1 wm w œ r IlIl_l .IIL | :Gb m < _ _ \ \C \l\ d¿mmmmme \ _\ 11mmm w01œ„.0n wmm œ O CAMERA POSITION CONTROL lr.-___.__________._-________ FIG. l U.S. Patent Nov. 4, 1997 sheet 2 of s CONTENT MONITOR 5,684,514 m 200 Ã_____ ,I ñ I' +--- f =\ ' A l =I '| I ' f I@ f I 207 / :Il L_______1 \ f 206 cuRsoR CNTL r 201 INPUT DEVlCE Y COMPUTER \ ' 202 vIDED DISK # 1 vIDEo DISK :I 2 f 203 /\ 204 SWITCH I vIDED MONITOR I_EFT SIDE f 205 / î FRONT SIDE BOTTOM SIDE FIG. 2 U.S. Patent Nov. 4, 1997 5,684,514 sheet 3 of s ß soo GENERATE CONTENT IMAGE BASED ON DESIRED VIDEO FRAMES ASSIGN KEYS TO POSITIONS IN CURRENT IMAGE CONTROL CAMERA POSITION IN RESPONSE TO KEYS AND GENERATE VIDEO FRAMES STORE KEYS WITH GENERATED VIDEO FRAMES COMPILE VIDEO FRAMES FOR ACCESSING IN RESPONSE TO KEYS PROVIDE USER INPUT DEVICE FOR SELECTING VIDEO FRAME IN RESPONSE TO POSITION ON CONTENT IMAGE FIG. 3 U.S. Patent Nov. 4, 1997 sheet 4 of s 5,684,514 ß 40o sToRlNG vlDEo FRAMES ß 401 AsslGN KEY To EACH VIDEO FRAME GENERATE CONTENT lMAGE p 402 BASED oN KEYS coMPlLE vlDEo FRAMES FOR ADDREsslNG |N RESPONSE /\ 403 To KEYS n 404 PROVIDE USER INPUT DEVICE FOR SELECTING VIDEO FRAME IN RESPONSE TO POSITION ON CONTENT IMAGE FIG. 4 U.S. Patent Nov. 4, 1997 sheet s of s 5,684,514 SCRIPT Transitions Transitions C 501-1 / \(` 501-2 Exryessions Events 500-1 Y 501 -3 Expressions Events Events 500-2 Events 500-3 500-4 /Expressions Events Events L 500-5 50G-6 FIG. 5 Cement Image VWth Graphic Space Are we really happy with this lonely FIG. 6 game weplay ?. .. 5,684,514 1 2 APPARATUS AND METHOD FOR ASSElWBLING CONTENT ADDRFSSABLE VIDEO by the associated frame. A processing unit, assembles a content video image in response to the tags, including positions in the content image for corresponding frames of CROSS REFERENCE TO RELATED APPLICATIONS provided for associating the positions in the content video image with addresses of storage locations storing the cor responding frames of video data. A user input device is provided by which the user selects a particular frame of video data by selecting a position in the content video image, video data. Finally, a means, such as a look-up table, is This application is a continuation of application Ser. No. 08/l46,400, filed Nov. l, 1993, now abandoned, which is a continuation-in-part of application Ser. No. (J8/000.927, tiled Jan. 6, 1993, now abandoned, which was a continuation 10 of application Ser. No. 07/460,849, filed Dec. 8, 1989, now abandoned. The present application is related to U.S. Pat. No. 4,857, 902, entitled POSII‘ION-DEPENDENT INI‘ERACI‘IVII'Y SYS'I'EM FOR IMAGE DISPLAY, invented by Naimark, et stood by considering the following example. If a plurality of frames of video data comprise iilrn of a geographic area, each frame can be tagged with a position stamp, indicating the position of the camera when it was taken, and the focal point of the camera. This position stamp can then be translated automatically to a virtual position on a map. The al., issued Aug. 15, 1989; and to U.S. patent application Ser. No. 07l356.543, entitled CONTENT ADDRESSABLE VIDEO SYSTEM FOR IMAGE DISPLAY. filed May 5, 1989. 20 25 of video data so that it may be accessed in response te the content of the respective frames. BACKGROUND OF THE INVENTION 30 Interactive video systems, such as described in the above cross referenced U.S. Pat. No. 4,857,902, in which a ûrst monitor displays a virtual space which indicates the content of a library of video frames, and a second monitor displays video frames, in response to the position of a cursor on the 35 frames based on the content of the video frames. The content is indicated by the virtual space. To access video based on content, a user moves a cursor to a position on the virtual space. In response to the position of the cursor on the virtual space, a video frame is accessed which has a content from the content video image. A processing unit then asso ciates each frame of video data generated by the controllable camera, with positions in the content video image. The generation of content addressable video according to this aspect of the invention can be understood by consider ing the following example. Assume that one wanted to generate a content addressable video library of an object, such as the transmission of an automobile. A content video indicated by the position of the cursor. A problem has arisen in compiling video frames for the systems. In particular, the video frames are generated in such systems based on a plan organized by a human producer. The cursor is then translated into the position stamp of the frame of video data, and from the position stamp, into an address for the frame. According to another' aspect, the present invention com prises an apparatus or method for generating content addres sable video, which is the converse of assembling the content addressable video. In particular, according to this aspea, the content video image is ñrst generated. Positions in the content video image are then translated by a control circuit into camera positioning signals. A controllable camera, such as a robot mounted camera, then generates the frames of video in response to the position control signals derived virtual space, provide a powerful system for accessing video purposes of addressing them by content for use in such map superimposed with the virtual positions of all the video frames in the plurality then constitutes the content video image. This content video image can be displayed using a bit map graphic system, in which a cursor can be positioned on any position in the content video image. The position of the FIELD OF THE INVENTION The present invention relates to systems for generating and storing video frames of information, such as produced using video/film cameras. In particular, the present invention provides a method and an apparatus for assembling frames such as by positioning a cursor on the selected position. ’I‘he assembly of the content video image can be undm' 45 ñlm is then shot, such as by iiying a helicopter on a image would then be graphically created in which an icon representing the transmission is placed in a virtual graphic space. A grid, three dimensional, or two dimensional, is then drafted using computer software graphics packages, to cre ate a grid indicating the pa'spective ofthe transmission to be filmed. Thus, each position in the grid would correspond to correlation of the virtual space to the video frames is done a frame of video data depicting a diferent perspective of the transmission. A cursor is then scanned along the grid, either manually or using automatic computer programs, and cursor position is then translated into a camera control signal. The camera, mounted on a robot, then traverses real space corresponding to the virtual space of the content video image in response to the control signals, while filming the transmission. A processing unit then associates a position tag with each frame of video, and ca'relates the position tag with a manually in a time-consuming, tedious process. position in the content video image. geographic grid while filming a center point of reference. For instance, in the one system, a helicopter flew over the Golden Gate Bridge in San Francisco, while focusing the 50 camera on the center of the bridge. Once the ñlm has been generated, it must be manually compiled into sequences of video frames which correspond to the grid ilown over the city. The grid is then drawn in a bit map graphic form for display as the virtual space. Al It is desirable to provide a method for compiling or According to the invention, a user input device is provided, by which a user selects a particular frame of video by positioning a cursor on the content video image. This generating content addressable video automatically. SUMMARY OF THE INVENTION The present invention provides an apparatus and method for assembling content addressable video which is based on storing a plurality of frames of video data at addressable storage locations. Each frame of video data is stored with a tag which indicates the contents of the video image deiìued allows for highly interactive video systems in which frames of Video data are addressed by content in an easily under standable and fun to use manner. 65 Other aspects and advantages of the invention can be seen upon review of the drawings, the detailed description, and the claims which follow. 5,684,514 4 3 Thus, the system of FIG. 1 can be generalized by pro BRIEF DESCRIPTION 0F THE DRAwiNGs FIG. 1 is a schematic diagram of a system for generating, or assembling content addressable video according to the viding cameras attached to control arms that can move within a confined space. A virtual map or content image of frame content is mapped in a graphic image displayed on a content monitor. Control of the cameras, and their move ments and point of view, are functions of positioning of present invention. FIG. 2 is a schematic diagram of a system for interactively displaying content addressable video according to the present invention. FIG. 3 is a flow chart illustrating steps in a method for generating content addressable video according to the present invention. FIG. 4 is a llow chart illustrating the steps in a method for assembling content addressable video according to the present invention. camm‘a icons or cursors in the graphic content image. FIG. 2 illustrates the preferred system for displaying the content addressable video according to the present inven tion. In this system, a content monitor 200 is provided which is connected to the computer 201. 'Iwo video disk players 202‘ and 203 store a plurality of video frames. A video switcher 204 which is controlled by computer 201 selects output video from the video disks in the players 202 and 203. FIG. Sis a diagram of the assembly algorithm module for The output video supplied to video monitor 205. A cursor an uncontrolled camera environment. control input device 206, like a mouse or track ball in the FIG. 6 is a diagram illustrating the development of the database for writing the script of a song. DETAILED DESCRIPTION A detailed description of preferred embodiments of the present invention is described with reference to the figures. In FIG. 1, a system for assembling or generating content preferred system, is coupled to the computer 201. A user interactively positions the cursor 207 within the content video image 208 on the content monitor 200. A perspective of the object is displayed on the video monitor 205 which is indicated by the position of the cursor 207 in the content image 208. Thus, for the virtual space content image 208 illustrated in FIG. 2. a frame corresponding to the position of cursor 207, will provide a view of the object illustrated in the content image 208, which shows the bottom side, left side, and front side, as schematically illustrated in PIG. 2. Background conca'ning how to implement these intœac addressable video is illustrated. The system includes a computer 100 which provides processing capability used in assembling or generating the video. A computer is coupled to a camera position control robot 101 or other mechanism for controlling the position of a camera. The camera position is controlled to generate a plurality of frames of video information of an object 102 in a space. Video frames are then stored in video storage 103. A video monitor 104 is tive display systems can be found in the above cross 30 provided for displaying the video frames as they are being filmed, or for accessing the video storage 103 to review the addressable video. According to this method, a user uses a computer software graphics package or other tools to gen tilm. A content monitor 105 is provided which includes a graphic iilm content image 106. The iìhn content image includes a depiction 107 of the object to be filmed, and a grid 108 having a plurality of positions. Positions on the grid 108 indicate the content of corresponding video frames in the referenced U.S. Pat. No. 4,857,902. FIG. 3 illustrates the ilow chart for the method using the apparatus of FIG. l, or similar apparatus, to generate content 35 erate a content image based on desired video frames to be generated (block 300). Next, the computer 100 is used to assign keys to positions in the content image. For the content image illustrated in FIG. 1, these keys would correspond to the X, Y, and Z video storage. Thus, as the camera position control robot 101 positions on the grid 108 (block 301). Next, the keys are used by the computer 100 to generate moves the camera 109 along a plurality of camera positions indicated by the grid 110, the computer assigns a key to each frame of video. This key is correlated with a position in the camera position control signals which control the robot to graphic film content image 10S along the grid 108. film the object in response to the keys (block 302). Next, the keys are stored with or otherwise associated with each A user input device 111, such as a mouse or track ball in the preferred system, can be used to position a cursor icon 45 generated video image (block 303). The video frames are then compiled in a format which facilitates accessing in 112 along the grid 108 in the graphic iilm content image 106. Thus, the position of the cursor icon 112 indicates the content of a frame of video being displayed on the video monitor 104. Therefore, for the object 102 being lilmed from carriera position as indicated at 109, and as represented by the cursor icon 112 on the content image 106, an image would be displayed in the video monitor 104, which shows the bottom, left side, and front of the object 102, as Sche matically illustrated in FIG. 1. 'I‘he system can be expanded to include a plurality of response to the keys (block 304). The step of compiling involves assigning the video frames to addresses in the Video storage, and providing a means for translating the keys to the 50 55 address of the corresponding video frame. These are stan dard computer techniques which can be based on look up tables and the like. Also, this compiling step involves identifying the frames of video on intersecting segments of the grid 108 and storing them on video disks, er other storage means, in storage positions which are accessible cameras for filming a specific object, such as an automobile within a seek time at least as fast as the update rate of the transmission. Also. the object 102 can be moved instead of the camera to generate the frames of video. The content image 106 can be generated before filming the object 102, and thereby used to generate camera position control signals to control the generation of video. Similarly, the film can be shot ñrst, and keys associated with each frame of video. The keys can then be analyzed by the computer 100 in order to gena-ate a content image 106. This video monitor. In the preferred system, this is at least 15 times per second. Finally, a user input device is provided for selecting a video frame in response to a position on the content image (block 305). Again, this is provided by positioning a cursor on the content image using an input device. The position of the cursor then identities a key which can be translated to an address of the corresponding video frame. Using the content image 106 can be generated at the same time that the 65 address, the video frame is accessed and displayed. Therefore, the content of the video frames is used to camera is being used to lilm the object, or it can be generated access them in a straightforward, highly interactive manner. on an as needed basis from a huge library of video frames. 5,684,514 5 6 Furthermore, this content image is used to automatically A joystick controls the direction of the camera (cursor or camera icon) while the cursor traverses the content image in preview mode. This provides for accurate pan, tilt keys as well as accurate position data. Once the operator decides this content image and camera point of view are correct, he implements an “animate" command and each frame is control the generation of the video frames to be accessed in this content addressable video scheme. FIG. 4 is a ñow chart illustrating the steps used for assembling content addressable video from a large library of video frames. This method involves first storing a library of video frames (block 400). Such video frames may, for instance, correspond to film of a highway system. Next, a key is assigned to video frames or segments of frames that are stored. These keys may correspond to geographic position stamps of the location filmed in the corresponding video frames (block 401). These keys can be calculated using interpolation techniques in which a sequence of video along a given highway. having a known start point and stop point can be assigned keys based on the estimated position of each frame. The next step involves generating a content image based on the assigned keys (block 402). According to this method, the assigned keys are used to compile a map using bit map graphics or the like, in which each key has a corresponding position on the map. This content image can be generated for a subset of the entire library video frames. which consists of a few video frames or of the entire library. rendered, stored and finally compiled for interactive control. Hence. a system as described in FIG. 2 with the CAD and animation tools with the content addressable image software 10 technology. The key stamps consist of position, pan, and tilt with their respective video frame derived directly from their location in the graphic virtual space. This module provides segments or geometric shapes to be recognized by the camera paths. These shapes may be drawn with the normal draw routines. The program will ask for the frame density along the paths and the camm’a POV. The line segments will parse frame locations along the line segments and send keys out to a frame database and then calculate the frame by frame animation. The frames are stored to optical discs or other memory, such as large 3-D arrays of DRAMs or VRAMs, accessed in a massively parallel means, and the content image is assembled. The matrix arrangements are 25 The next step involves compiling the video frames for addressing in response to the assigned key (block 403). The generated content image is used to compile the video frames compiled and a cursor appears on the content image in the gr'aphic space once the compilation and assembly is com plete providing control to the user. B. Controlled Camera Environment by identifying positions on the content image of adjacent keys, and storing the video frames at addresses indicated by In this method of data acquisition, the visual data is acquired in controlled ñlming environments; specifically the keys. For a large library of frames, a subset of the library which corresponds to at least a section of the content image is moved into a storage buffer that has reasonable access those where cameras are controlled in stationary or motion controlled environments.` The assembly of these content addressable video systems will require predefined matrices times, such as a writable optical disc or array of RAM. 35 of film maps generated on a graphic computer platform Finally, a user input device is provided for selecting a which translates actual commands to a camera motion video frame in response to a position on the content image control platform for videomap production and automated (block 404). Having assembled a subset of the video frames assembly. In this environment, the space which the cameras by generating a content image representative of the content can cover are scaled to the virtual graphic space such that an of the subset, a user can use a highly powerful interactive incremental movement of a ctn-sor on a content image scheme for positioning a cursor on the content image to 40 solicits a relative movement of the camera (or video once select the particular video frame having the desired content 'I'he basic tools and methodology for the assembly of shot and compiled) in its respective space. content addressable video systems are very similar for the various data acquisition methods. 'I‘he process involves the marriage between a graphic space, acquired visual data and 45 l. Scale Camera Locations in real space to camera loca tions in the graphic content image space. Also zero out camera pan, tilt and direction POV. Position subject in the relational content image of this visual data in the graphic space. In the system there exist at least an element of organization, i.e., a physical location of visual data and its content image space. respective position in a graphic space (content image). This organization is critical to the representation of information 2. Locate graphic model center at x, y, z in graphic virtual space on motion platform. and serves as the base methodology for a visual language. Content Addressable Video systems may be built from closed systems, controlled camera environments, and uncontrolled or free camera environments. They may be built from a combination of all three. 3. Build the content image in the graphic space using the graphic software tool commands. Or build sequence in real 55 A. Closed System Environment from a cursor which represents the focal plane of the camera. space using actual cameras. The actual camera moves are recorded, stamped, and converted to the graphic space. 4. Stamp keys on frames (or other recording methods discussed below) by recording camera position, POV, Pan, and Tilt in real time while recording frames. 5. Record filmed frames to optical disc player or to other A closed system implies a graphic or artificial environ ment. An example of such a system is a CAD workstation which has tools for designing objects as well as for the three dimensional animation of these objects frame by frame into a movie. Software provides the producer the capability to build the content image into the graphic space. The tools for drawing a content image already exist in CAD systems. Once the content image is constructed, a light is projected In our system, we will place the subject, say an automo bile transmission, on the platform. "I‘he algorithm works as follows: archive technology. 6. Convert camera position stamp locations to content 65 image scale and location. Store key data locations of camera in the content image space frame by frame. Location data consist of x, y, z location, Pan, Tilt, and focal plane. 7. Store locations of frames in content image space (x, y, z) relationship of each frame to its corresponding content 5,684,514 7 8 image in a graphic space using keys and the system’s Design of an Aerial Videomap The design requires a nmp system which contains actual spatial elements of the arca which is to be mapped. Since the current iilming system is by helicopter and much of the data processing unit. ` 8. Sort and determine the visual matrix as well as rela tionship of each frame to its corresponding content image in acquisition is implemented by sight flying with some GPS a graphic space using keys and the systern’s processing unit. navigation aid. A remote powered vehicle drone is utilized for “close-in” mapping. Position Stamping 9. Compile database in its matrix structure. 10. Generate content image space in virtual space. 11. Choose starting point in matrix. 12. Compile and organize frame data and reference con tent image space relative to virtual space. The current method of frame location in video is a standard called SEMPI’E Time Code. Its structure is as follows: Hour, Minutes, Seconds, Frames In the preferred embodiment, this code is expanded into the following structure: Hour, Minutes, Seconds, Frames, Earth Reference Fixed GPS Receive Position, x, y, z, posi tion GPS (Time T), Camn'a Receiver Position x, y, z GPS, Camera System 'I‘he way it works is as follows: Cameras are attached on control arms and can move anywhere in one virtual space. A content image is drawn in response to the camera movement or by hand in the graphic virtual space (computer screen) such that an incremental Velocity (Time T), Acceleration Time (T), Corrected Com pass Camm'a Mount Facing (Time T), Pan degree (Time T), move or matrix location in the camera space is equal to the Tilt (Time T), Rotation (Time T), Frame Number and the content image scale to the graphic space (map). incremental vector in the graphic space. In other Words, from picture to picture the video matrix corresponds to its content image in its graphic space. The sample rate of the data will be controlled by the camera frarne rate or speeds which determine frame accurate stamping. As frames are shot, they will be written to the C. Uncontrolled (Free) Camera Environment The third data acquisition environment deals with data acquired in uncontrolled filming environments. This acqui sition requires accurate position infomation and Pan (P), nearest sample. Current GPS data is available on one second intervals but may change given satellite positioning and reception quality. Post processing is currently necessary to average distance between GPS position samples, distance Tilt (T) as frame stamping as keys for content image assembly. These video matrices are assembled into accurate survey mapping systems as well as other GIS systems for display and overlay capability. covered and number of frames per second. Thus, location stamping requires post processing in this situation. The satellite locations are scrambled and also have to be post 30 processed. FIG. 5 is a diagram as to the modules of the code in the The on-board filming system is designed to send data to assembly algorithm. This system integrates an uncontrolled platform (free) or other film systems for videomap produc a counter and then to the data accumulator per frame of tion. There is no limit placed upon the size of matrices. 'I'his position database. 'I'he position stamps are included with may require multiple stores of optical discs. In this case, the video or film. If film is used, each reel will have its own 35 each individual frame. Currently, production technology database structure requires an additional data location provides a standard way of adding SEMP'I'E time code to stamps for archive purposes. video. Position stamping according to the present invention Aerial or Free Cama'a Systems In the case of free iilming camera systems, (i.e., cameras in helicopters, balloons, Remote Piloted Vehicles, etc.) a Methods of Storing Stamps and Prescribed Data Keys Are: l. Actual time stamping and a comparison algorithm of linal post processing step must be implemented to compile accurate relationships between the content image space and camera location at time (T) and frame exposure time (T). 2. Writing actual time and position data on sound track of video. its relative virtual space. The method of scripting of content addressable video systems provide for a combination of free-fam data acquisition and tight grid or matrix data acquisition. may follow the same standard methodology. 3. Use of computer memory for storing frame exposure time and position simultaneously. Trimble Navigation provides the Trimble Advanced Navi important for tlying or developing videomaps for uncon gation Sensor System for GPS. Our system will use this technology or some other GPS system which is designed to trolled spaces. triangulate satellite signals for position. A second ground The following additional aspects to this workstation are l. Camera speed should be directly controlled to provide an accurate matrix when using a ù‘ee virtual iilming system such as a helicopter, balloon, ground gyrostabilized camera mount such as a steadycam etc. This provides compensation for environmental effects of wind and other factors which alfect camera position. station receiver will also be used to improve accuracy and the data collected and merged with the data received (sample rate) in the aircraft and processed to refine error rates and improve position accuracy to an area of S meters cube or better. Another system is currently being designed which utilizes 2. Actual location of the camera is determined by updates of camera location, pan, tilt axis on a frame by frame basis. a mirror system on a drone PRV and a laser. The laser is This information is processed back to the navigational controls of the camera platform (including helicopter) in order to provide corrections and adjustments in direction rately surveyed, processes the laser band rellection and samples actual RPV location for real time positioning. This system and position stamp per frame will be similar, however, it will provide very accurate positioning. location and POV. 3. The system is designed with a predetermined content image structure prior to recording video or iilm. This content image structtn'e produces a navigational data set for the camera. This navigational information incorporates support ing flying surfaces such as those used to guide the iiying machine. directed at the PRV and a receiver whose position is accu A software routine will build a system of frame location in the three dimensional virtual space based upon the following organization. Content Addressable Video Assembly The following treatment of the sottware tools which may be used to develop a prescribed sequence of routes and 5,684,514 10 camera position which when implemented will provide an An interactive movie must contain events. These events autopilot control. camera position (pan and tilt) and frame must be expressed. The interactive dimension is established through creative transitional elements as illustrated in FIG. 5. Let’s design an interactive piano and then assemble a song using this method. controlled for the data acquisition hence the tools for an assembly language. The elements of this system are: l. Accurate maps of prescribed videomap area. The U.S. Geological Survey (USGS) has accurate map I. Develop the database for the Script A. Define the number of events 500-1 through 500-6. These events are all chords in the music spectrum. B. Create the music for each event and store the sound ping maps in vector form of many areas which have been processed by satellite. The design of a videomap begins with this information in a workstation. It is not essential to have this information for the design because the data acquisition date. However, all productions begin with a script or plan data chord (Ff-time). C. Develop transitions between Events. Film expressions (e.g.. 501-1 through 501-3) of all combinations of two events. That is, all of the independent physical hand move based upon a desired application and the sequences of visual material which best lit the application. Obviously, there are 1I. Write the script position stamping will provide the information necessary to merge this infomation into these imap databases at a later ments from chord event to chord event. many accurate methods of obtaining pictures of the ground; they include SPOT Satellite, Space Shuttle picture systems A. ‘This Masquerade" c1973 Teddy Jack and high reconnaissance aircraft. A Moviemap or Videomap of these pictures and their translation into continuous imag Cm m’y via a continuum of connected images in 25 FPS or 30 Cm7 F9 Cm “E we really happy withG7 Cm game we play? Ab? this lgely Cm#’7 FPS or some visual translation from frame to frame in a raster frame merger is another option and used in a closed system. Vìdeomap Production Cm#'7 l'àkingforwordsgsaßggmhingbutnotñndipg 25 Cm7 F9 As mentioned above, the beginning design requires some element of production scripting and design. The GPS system undeüding anywgy! will also be designed as a pilot aid for navigation. The ’I'herem lleventsploposedinthissongïheym: B. List Events - (Underlincs indicate location of events.) Cm designer begins by using the Content Addressable Video workstation to design his production, that is, the content image to scale in the prescribed graphic space. A location cursor in the aircraft in conjunction with the GPS hardware 30 and a two dimensional map with the actual routes to scale will provide the pilot an on-board navigation system. This is integrated with the autopilot. Though a good quality struc ture improves the overhead processing requirements and delta graphic overlay displays it is not essential to get it exact. However, it is important to know precisely the posi 35 tion of what was recorded. Pilots are very capable of ilying III. Now implement the automated assembly function. VFR and instruments accurately with navigational assis End result for preview is illustrated in FIG. 6. First frame of hands in the Cm playing position El. tance. System prepared to cue ?rst Expression El-EZ (Cm-Cmit'ï) D. Data Acquisition and Assembly of a Content transition is the hand movement from Cm to Cm#'7. Inter active control with cursor (***). The assembly techniques can be used in a variety of 45 Sound Data and Relational Data Location contexts. For example, an automatic assembly routine can be Sound of Cm chord based upon movement of location used for teaching music. In the music example: One might cursor (***). íilm someone playing a song on a piano (hands only). The Content Addressable Video System Process (Automated script of the song may be broken down to sound and visual Procedure) Step 1 entities of frames of each depression of the keys. Each chord The first step involves storing video frames as in block and the associated frames would be an event. The assembly 400 of FIG. 4. The store of video frames will be stored in a of two chords together would be an expression of events, the database as set out in Table L entitled Database Frame Addressable Video System multiple expression of events would result in the script So the fundamental logic or algorithms behind the Con tent Addresssable Video System are driven and organized in this example by this fundamental structure. Location below. As can be seen in the Table I, trames are 55 This example assumes a database of extensive events and a logical form of transition. It is essential to include a distinction between the actual tools of organization and assembly of data and the creative elements which provide a transition continuity to the data. A database must have a multiplicity of creative transi tional elements. Current post production equipment has so 60 stored in sequences which consist of an expression which proceeds from note Cm to note Cm#7, corresponding to a transition from event E1 to event E2. This consists of frames 1-420. Each of the l0 expressions in the database are stored. In the next step, a key is assigned to each video frame corresponding to block 401 of FIG. 4. This is done by searching the database frame location database for the events El through E11. According to this step, a table such as Table III, entitled Record Database, set out below is tion etîects” as transitional elements. Hitchcock was a computed. Thus, the iìrst entry in the Table I corresponds to the first entry in Table Ill. The iirst event El is in original frames 0-60. The transition from El to E2 is in original frames 60-360, and the second event stored in frames master of the study of transitional elements. 360420. This sequence is divided so that new frame many “hacks” to handle a lack of these transitional elements. A leading film maker established the use of “special transi 5,684,514 11 12 numbers 0-220 are stored with a key identifying them as transition E1 to F2. In the next step. a content image as shown in FIG. 6 is TABLE III-continued generated based on the keys. 'I‘his content image is generated by signing each key a position on the content image as shown on Table II below. Thus, event El will be assigned X,Y position (0,160) on the XY scale. Table II also shows the number of frames between each event on the display. 'I'he iinal step. the video frames are compiled for address ing in response to the key corresponding to block 403 of FIG. 4. This step of compiling video frames results in an assembled database as shown below in Table IV. A given ñ'ame, e.g. frame 0 is compiled so it can be accessed in response to position (0,160) on the frame. In this embodiment, a sequence of frames is displayed in response to a user selecting the position which range from frame x B11 y Dx Dy(line map) s0 so 5 E10 10o 10o 3o 50 0 0 #Framcs 3011606100) 501160000) = s6 = 94 TABLE III 10 Record Database Recorded ` New Event ElE2 0-220 as shown in Table I1. In a more simple case as EZdescribed above, only a single frame may be displayed in E3 E3response to positioning of the cursor. E4 Once the content image of FIG. 6 is displayed and the E4assembled database of Table IV is computed, a user input E5 ESdevise may be used for accessing specific frames in response E6 to a position on the content image as described with refer E6ence to block 404 of FIG. 4. E7 25 E7These processing steps are thus executed by the processor E8 201 of FIG. 2 and interconnected by the databases and tables EScomputed by the processing steps. E9 E9TABLE I B10 E10- Search chtabnae for El-Ell Expressions Transition Frames Event Frame tt 0-60 60-360 3 S60-420 1500-1560 1560-1860 5 1860-1920 221-400 2lœ-2160 2160-2460 l 2460-2520 401-670 3000-3060 3060-3360 5 3360-3420 671-850 350D-3560 3560-3860 3 3860-3920 851-1070 40œ-4060 4060-4360 1 4360-4420 1071-1340 5000-5060 5060-5360 15 5360-5420 1341-1480 6KB-6060 6060-6360 l 6360-6420 1431-1750 70œ-7060 7060-7360 5 7360-7420 1751-1930 I‘l H Il-l 8060-3360 3 8360-8420 1931-2150 0-220 E11 Database Frame Location (arbitgg for this mie) Event Frames Transition Frames Event Frames 1. Cm to Cmtt’î 1-60 60-360 S60-420 2. Cmtfî to Cm7 3. Cm7 to P9 4. P9 to Cm 5. Cm to A b7 6. A b7 to G7 7. G7 to Cm 8. Cm to CmtH 9. Cm#'7 to Cm? 10. Cm? to F9 1500-1560 Z100-2160 3000-3060 350D-3560 400G-4060 5000-5060 6000-6060 7000-7060 1560-1860 2160-2460 3060-3360 3560-3860 4060-4360 5060-5360 6060-6360 7060-7360 0060-8360 1860-192) 2460-2520 3360-3420 3860-3920 4360-4420 5360-5420 6360-642) 7360-7420 8630-8420 Eqxessim Assembled Database Node Num 45 Determine location of all underlines in x, y screen coor dinates of content image. In this case, the words designate the map distance between events. In this example, the TABLE II x y Dx El E2 B3 B4 B5 ns 0 60 80 140 0 s0 160 160 160 160 130 130 60 20 80 30 60 E1 70 130 10 Bs E9 a0 160 130 130 1o 80 Dy(line map) 0 0 0 0 0 #Frames 0 50l160(300) 311/160000) 80160000) 301160600) 601160900) = = = = = 94 56 150 56 112 0 101160900) - 150 0 0 10/160(3o0) 80060600) = 19 = 150 Nodes Node Num Frame 1 2 In this exnnple, the: ditferential of the x, y coordinates between events provides the transition scale for the expressions. Total line length x=160. The special coordinates of the content image are defined below in Table II. Table IL TABLE IV 35 1 2 2 l 0 2m 3 4 5 6 7 8 9 10 11 2 2 2 2 2 2 2 2 1 2 3 4 5 6 7 8 9 10 41X) 670 850 1070 1340 1480 1750 1930 2150 Num Noœ Fratrie 3 4 5 6 7 8 9 l0 11 220 400 670 850 1070 1340 1480 1750 1930 X,Y Audio 0,160 60,160 Cm Cm#7 C1117 F9 Cm Ab7 G7 Cm Cif! Cm? Fb 80,160 140,160 0,130 60,130 70,130 80,130 160,130 30,100 80,130 In Table IV, the tìrst column corresponds to a given node, 55 e.g. node B1 in the database. The second column identities the number of nodes that are associated with the node in column 1. The third column identities one of the adjacent nodes. 'I‘he fourth column identifies the number of the frame associated with the iìrst adjacent node identified in column 3. The ñfth column identities a second adjacent node, if any. 'I'he sixth column identifies the frame number associated with the second adjacent node. The seventh column identi ñes the X, Y coordinates on the content image of the node of column l. The eighth column identities the audio which is to be produced in association with the node in column 1. E. Matrix Assembly Algorithms 1. Beginning, End. or flaw in frame data algorithm Key stamps of the video data are read and stored into a key database. This is particularly useful and essential for the 5,684,514 13 14 assembly of the video ñ'ame matrix. A number of algorithms may be processed during the read and store function from 3. An apparatus for genm‘ating content addressable video, comprising: tape to the key database, including the following two impor a content image display which displays a content video image representative of an organization of content tant components: l. Relational Frame Matrix Algorithm This process studies each frame and their keys to deter addressable video, the content video image having positions within the content video image corresponding to desired content of video images to be displayed; a controller, in communication with the content image mine their matrix locations. This process establishes com mon frames, nodes, and the spatial relationships for the content image and its relational virtual space. 2. Image Recognition Key 10 tions within the content video image; During the process of recording from tape to key database an algorithm is used to study the differential in pixel change from frame to frame in real time. A key is stored when the controllable video image generator, responsive to the control signals, which produces flames of video data, each frame determining a video image having the content indicated by the control signals corresponding differential is large enough from frame to frame to locate a ñaw or edit or cut between sequences. This will aid in to the respective position in the content video image; video storage which stores flames of video data generated reaflirming the relational frame matrix algorithm SUMMARY by the controllable video image generator in storage locations having addresses; and This technology automates the organization and assembly of video frame data such that the acquisition, assembly, and ultimate integration of images may be represented in a relational graphic space via a content image. These systems' data processing resources, the controllable video image generator and the controller, including resources that execute program steps which associate the addresses of the stored ñames of video data with respective posi tions in the content video image. 4. The apparatus of claim 3, wherein the controllable video image generator comprises a robot mounted video real time capability are a function of speed memory and memory burst rate and the platform will eñect the perfor mance. The display format of these large stores of archived image data, content images tiles and relational graphic spaces form a powerful interactive visual display language. cama'a. The foregoing description of preferred embodiments of the present invention has been provided for the purposes of illustration and description. Itis not intended to be exhaus» 5. The apparatus of claim 3, further including: 30 an input by which a usm' selects a position in the content 35 a video monitor, response to the input and the tag storage, which displays the frames of video data in the video storage in response to selected positions. 6. A method for assembling content addressable video, video image; and tive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be appar ent to practitioners skilled in this art. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby comprising: enabling others skilled in the art to understand the invention storing, in an addressable memory, a plurality of llames of for various embodiments and with various modiiications as are suited to the particular use contemplated. Itis intended that the scope of the invention be defined by the following claims and their equivalents. What is claimed is: 1. An apparatus for assembling content addressable video, video data in storage locations having addresses, each frame defining a video image having a content for 40 images defined by the associated flames; video storage which stores a plurality of frames of Video 45 data in storage locations having addresses, each frame defining a video image having a content for display; frames; of corresponding llames of video data in the plurality; and 50 the video storage, including resources that execute first program steps which assemble a content video image in 55 plurality; and executing program steps which associate the positions in the content video image with addresses of storage locations storing corresponding frames of video data. 7. The method of claim 6, further including: selecting, with a user input device, a position in the content video image; reading, with data processing resources, the frames of video data in the addressable memory in response to a selected position. the processing resources including resources that execute 8. The method of claim 6, further including: second program steps which associate positions in the content video image with addresses of storage locations storing corresponding flames of video data. 2. The apparatus of claim 1, further including: storing in a cache memory a subset of the plurality of frames, the subset including frames having content indicated by at least a portion of the content video image. an input by which a user selects a position in the content video image; a video monitor, responsive to the input and the tag storage, which displays the frames of video data in the video storage in response to selected posi tions. executing program steps which assemble and display a content video image in response to the tags, the content video image including positions indicating the content processing resources, connected with the tag storage and response to the tags, the content video image including positions for corresponding flames of video data in the display; storing tags in memory for llames of video data in the plurality, the tags indicating the contents of the video comprising: tag storage which stores tags for associated frames of video data in the plurality, the tags indicating the contents of the video images defined by the associated display, which generates control signals indicating con tent for video images in response to respective posi 9. A method for generating content addressable video, 65 comprising: displaying a content video image representative of an organization of content addressable video, the content 5,684,514 16 15 executing program steps with data processing resources video image having positions within the content video which associates the address of each frame of video image corresponding to desired content of video data with a position in the content video image. images to be displayed; 10. 'I‘he method of claim 9, wherein the step of generating selecting with data processing resources positions within 5 frames comprises: the content video image; controlling a robot mounted video camera in response to executing program steps with data processing resources the control signals. which generate control signals indicating a content for 11. The method of claim 9, further including: a video image in response to the selected positions within the content video image; generating frames of video data in response to the control signals, each frame defining a video image having the content indicated by the control signals; storing generated frames of video data in storage locations having addresses; and selecting with a user input device a position in the content video image; and accessing the frames of video data in the storage locations in response to selected positions. * * ik Ik ik UNITED STATES PATENT AND TRADEMARK oEEICE CERTIFICATE OF CORRECTION PATENT NO. : 5,684,514 Page 1 of 1 APPLICATION NO. : 08/243046 DATED INVENTOR(S) : November 4, 1997 : Hi11Branscornb |t is certified that error appears inthe above-identified patent and that said Letters Patent is hereby corrected as shown below: On Title Page should read, [63] Continuation of Ser. No. 08/ 146,400, Nov. 1, 1993, abandoned, which is a oontinuation-in-part of Ser. No. 08/000,927, Ian. 6, 1993, abandoned, which is a continuation of Ser. No. 07,640,489, Ian. 11, 1991, abandoned. Signed and Sealed this Sixth Day of November, 2007 JON W. DUDAS Director ofthe United States Patent and Trademark Oßìce UNITED sTATEs PATENT AND TRADEMARK oEEICE CERTIFICATE OF CORRECTION PATENT NO. : 5,684,514 Page 1 of 1 APPLICATION NO. : 08/243046 DATED INVENTOR(S) : November 4, 1997 : Hill Branscornb |t is certified that error appears inthe above-identified patent and that said Letters Patent is hereby corrected as shown below: In column 1, Lines 8 to 13: “This application is a continuation of application Ser. No. O8/ 146,400, tiled Nov. 1, 1993, now abandoned, Which is a continuation-in-part of application Ser. No. 08/000,927, tiled Ian. 6, 1993, noW abandoned, Which Was a continuation of application Ser. No. 07/460,849, tiled Dec. 8, 1989, noW abandoned.” Should read as: --This application is a continuation of application Ser. No. O8/ 146,400, tiled Nov. 1, 1993, now abandoned, Which is a continuation of application Ser. No. 08/000,927, tiled Ian. 6, 1993, noW abandoned, Which is a continuation-in-part of application Ser. No. 07/640,489, tiled Ian. 11, 1991, noW abandoned- Signed and Sealed this Third Day of June, 2008 JON W. DUDAS Director ofthe United States Patent and Trademark Oßìce US005684514C1 (12) EX PARTE REEXAMINATION CERTIFICATE (9613th) United States Patent (10) Number: US 5,684,514 C1 Branscomb (54) (45) Certificate Issued: (56) APPARATUS AND METHOD FOR ASSEMBLING CONTENT ADDRESSABLE VIDEO (75) Inventor: Apr. 29, 2013 References Cited To vieW the complete listing of prior art documents cited during the proceeding for Reexamination Control Number 90/012,188, please refer to the USPTO’S public Patent Application Information Retrieval (PAIR) system under the Display References tab. Hill Branscomb, San Francisco, CA (US) (73) Assignee: Patent Harbor, LLC, Tyler, TX (U S) Primary Examiner ? Henry N Tran Reexamination Request: No. 90/012,188, Jun. 13,2012 (57) Reexamination Certificate for: Patent No.: Issued: A system and method for assembling or generating content addressable video based on storing a plurality of frames of video data at addressable storage locations. Each frame of 5,684,514 Nov. 4, 1997 Appl. No.: Filed: 08/243,046 May 16, 1994 video data is stored With a tag Which indicates the contents of the video image defined by the associated frame. For assem bly, a processing unit assembles a content video image in response to the tags: the content video image, including posi tions for corresponding frames of video data. Finally, a means, such as a look up table, is provided for associating the Certificate of Correction issued Nov. 6, 2007 Certificate of Correction issued Jun. 3, 2008 Related U.S. Application Data (63) ABSTRACT Continuation of application No. 08/ 146,400, filed on Nov. 1, 1993, noW abandoned, Which is a continuation positions in the content video image With addresses ofstorage location storing the corresponding frames of video data. A of application No. 08/000,927, filed on Jan. 6, 1993, user input device is provided by Which the user selects a noW abandoned, Which is a continuation-in-part of particular frame of video data, by selecting a position in the application No. 07/640,489, filed on Jan. 11, 1991, content video image, such as by positioning a cursor on the noW abandoned. selected position. For generating content addressable video, the content video (51) (52) Int. Cl. G09G 5/08 G06F 3/038 U.S. Cl. image is first generated. Positions in the content video image (2006.01) (2006.01) are then translated by a control circuit into camera positioning signals. A controllable camera, such as a robot mounted cam era, then generates the frames of video in response to the USPC .......... .. 345/162; 345/157; 345/163; 345/184 (58) Field of Classification Search USPC ........................................ .. 345/157, 162, 184 See application file for complete search history. position control signals derived from the content video image. A processing unit then associates each frame of video data generated bythe controllable camera, With positions in the content video image. Content Image Wth Graphic Spaoe Arewereally Looking happy for words to with this lonely game weplay?... say...searchíng but not finding US 5,684,514 C1 1 EX PARTE REEXAMINATION CERTIFICATE ISSUED UNDER 35 U.S.C. 307 NO AMENDMENTS HAVE BEEN MADE TO THE PATENT AS A RESULT OF REEXAMINATION, IT HAS BEEN DETERMINED THAT: 10 The patentability of claim 6 is confirmed. Claims 1-5 and 7-11 Were not reexamined. * * * * *

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?