CA1321665C - Method and apparatus for identifying features of an image on a video display - Google Patents

Method and apparatus for identifying features of an image on a video display

Info

Publication number
CA1321665C
CA1321665C CA000590917A CA590917A CA1321665C CA 1321665 C CA1321665 C CA 1321665C CA 000590917 A CA000590917 A CA 000590917A CA 590917 A CA590917 A CA 590917A CA 1321665 C CA1321665 C CA 1321665C
Authority
CA
Canada
Prior art keywords
indices
features
image
data
specified
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 - Lifetime
Application number
CA000590917A
Other languages
French (fr)
Inventor
Michael D. Doyle
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.)
Individual
Original Assignee
Individual
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
Priority to US07/090,112 priority Critical patent/US4847604A/en
Priority to AU29715/89A priority patent/AU613150B2/en
Application filed by Individual filed Critical Individual
Priority to CA000590917A priority patent/CA1321665C/en
Priority to EP89302108A priority patent/EP0385008A1/en
Application granted granted Critical
Publication of CA1321665C publication Critical patent/CA1321665C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor

Abstract

ABSTRACT OF THE DISCLOSURE

A computer graphic interface allows a user to obtain descriptive information concerning a feature of a displayed image by pointing to the location of the feature.
Conversely, the user may enter descriptive textual information, and the locations of responsive features are indicated. The data processing and memory storage requirements are minimized by encoding information about the image as a pixel bit map, and a color map in which the addresses or indices of the color map are correlated with the addresses or pointers to strings of descriptive information. Each color map address corresponds to a predefined set of features and descriptive information about those features. Since the pixel bit map defines a color map address for each location on the image, suitable programming of the color map can insure proper correlation of descriptive information with corresponding locations on the image. The correlation between color map addresses and the descriptive information about the features is represented most compactly by arranging or sorting the entries in the color map so that there is a correspondence between each predefined feature and a continuous range of color map addresses. Therefore, for a specified color map address, the corresponding set of features and their pointers can be found by comparing the specified color map address to the limits of the color map address ranges for the various features.

Description

2 ~
METHOD AND APPARATUS FOR IDENTIFYING
FEATURES OF AN IMAGE ON A VIDEO DISPLAY

BACKGROUND OF THE INVENTION
1. Field Of The Invention.
The present invention relates generally to video displays, and more particularly to display systems in which an image is displayed to enable a user to recognize distinct features. Specifically, the present invention is directed to the problem of correlating the features of a displayed image with information which further identifies or describes the features.

2. Description Of The Related Art.
Systems for providing high-quality digital images on video display screens are well known. The most common is known as a bit mapped raster scan display system. Such a system includes a memory which stores a set of bits corresponding to each pixel location on the display screen, and the information in the memory is read out and displayed in synchronism with the raster scan. The memory including the set of bits for the pixels is known as the pixel bit map.
For displaying high quality images having a variety of gray shades or colors, the set of bits for each pixel may specify the gray shade or color of the pixel. About 24 bits of resolution -- eight bits for each of three primary colors -- are required for reproducing the entire spectrum of chromaticity and luminance within the resolving ability of the human visual system. In order to reduce the memory requirements for obtaining high color resolution, it is well known to provide a color look-up table or "color map"
which is indexed by the set of bits for each pixel. In this case the color map need store only once each color that is actually found in the image being displayed.
The use of a color map has many advantages in addition to the reduction of the memory requirements for the pixel bit map. As described in Hill U.S. Pat. 4,200,867, the 2 1 3 ~
color map can be used as a palette allowing the video display user to electronically compose or "paint" video images. For mass storage of d:igital images or band limited transmission between video systems, the color map can be used to reduce the required bit transmission rate and bit storage capacity. In this regard, the color map can also be used in connection with other data compression techniques, such as in the color block coding scheme disclosed in Campbell et al., U.S. Pat. 4,580,134.
The use of a color map further permits all pixels having the color identified by a single index to be modified simultaneously without disturbing the pixel bit map. The modification can be done for one color at a time by storing the color map in a read-write or random access memory, and writing a new color value to the memory address corresponding to the index of the color to be changed.
Fleming et al. U.S. Pat. 4,439,759, for example, describes the use of a data processor for providing color blinking by means of a linked list of multiple processes. For example, using this technique a ball may appear to bounce across an image, a river may appear to flow, or stars may appear to twinkle.
As described further in Brown et al. U.S. Pat.
4,484,187, it is possible to change all of the colors simultaneously by using a color map having a plurality of segments for the range of indices specified by the pixel bit map, and by using a data processor to select which segment is to be addressed by the pixel bit map. In other words, the data processor substitutes one color map segment for another color map segment in order to change simultaneously a plurality of colors. The memory capacity of the color map must be increased in this case, but in practice the substitution is easily performed by using a memory circuit having at least one additional address select line which receives an output of the data processor instead of the pixel bit map. Brown et al. also discloses that the substitution of one properly programmed color map segment for another can instantly provide different , :
~; :

, 3 1~2~ ~5 priority for various images stored in different planes of bit map memory.
In order to display moving objects which may obscure a background or obscure each other, it is common to provide a S bit map memory which has, for each pixel, a respective set of bits for each object or the background. Each set of respective bits is stored in a respective "bit plane" for the bit map memory. The respective sets of bits for each pixel are compared to each other in a priority decoder which has an output which controls the select input of a multiplexer which selects one of the sets of bits for display. The priority decoder, for example, operates the multiplexer to select the set of bits which represents the largest binary number, or selects the set of bits which represen*s a non-zero binary number from the bit plane assigned the highest priority. In the latter case, the binary number zero represents a transparent area in the bit plane. See, for example, Ciarcia, "High-Resolution Sprite-Oriented Color Graphics," Byte, August 1982, pp.
57-80.
The priority of an object can also be encoded as an attribute separate from the color map index. Peterson U.S.
Pat. 4,675,666, for example, describes a video display system in which a user can display "true" objects by individual pixels in a "bit-plane mode," or fixed objects in a "list mode." The fixed objects in a list mode are defined in "image tables" which contain their pixel-by-pixel description. A list mode screen memory is arranged as a "display list" of pointers to entries in the image tables, which include "attributes" of the images.
These attributes allow each individual occurrence of an image to be altered, for example, by underlining or flashing. By using a suitable attribute list and a suitable priority decoding circuit, Peterson says that the color of a "true" object overlapping a fixed object of lesser priority may be modified such that it appears that the true object has entered the shadow of the fixed object.
Brown et al. U.S. Pat. 4,484,187 discloses that the priority decoding function can be fully programmable by 4 13~ 6~
providing a unique color map address for each combination of bits from the respective sets of bits from the various bit map planes. Specifically, the output from the memory for one bit plane is used as one portion of the color map address and the output from the memory for another bit plane is used as another portion of the color map address.
Therefore, the collisions or overlap between objects in different bit planes provide unique color map addresses, and the color map can be programmed at these addresses to provide any desired color for the points of collisions or overlap. FIG. 6 in Brown et al. shows ranges of color map addresses assigned to respective objects in a specific example.
A color map display system allowing rapid shifting of subpictures and rapid changing of the subpictures or the overall picture (such as having invisible information suddenly appear on the display screen) is described in Allen et al. U.S. Pat. 4,570,217. As described in Col. 4, line 50 to Col. 5, line 17, the screen is broken down into a plurality of zones, each zone providing up to sixteen different colors selectable for each pixel in the zone.
The 16 colors from each zone are selected from one of four color palettes. Each color palette in turn selects its colors from up to 512 separate colors. Typically, a zone comprises eighty pixels of graphic information and thus each of those eighty pixels can be selected to have any one of the zone colors. It is said that by use of the color palette technique in association with each of the plurality of zones, the graphics can present complicated displays.
Also, a high level graphics language is described for facilitating the design and configuration of a process control system. The graphics language has static and dynamic commands for facilitating graphics display update on a real time basis.
The ability to recognize colors in a real-world digital video image is important for geological and agricultural assessments, military reconnaissance, city planning and land use, and coastal oceanography. Dalke et al. U.S. Pat. 4,488,245 discloses a computer and video : -' ..
,;, : ~: , ~. .
-: ' ~

1321~
display system which is said to be suitable for such color recognition applications. The color picture is digitized and represented as three eight-bit words for each pixel in a 1024 X 1024 pixel array image. The first value is an approximation of luminance, while the second and third values represent variations of chromaticity or chrominance.
Pattern recognition techniques are used to determine if a given color value lies within a specified three-dimensional color sub-space. A high-speed digital processing technique is said to enable the real time modification of any portion of the color image within the display. A weighting function is disclosed to enable the operator to modify or insert colors.
In Col. 15 lines 12-21, it is said that in operation a threshold circuit is used to generate a mask to enable the operator to determine if, in fact, a color selection circuit has correctly identified all of the objects having the targeted colors; the mask is automatically superimposed over all of the areas on the color display having the same color value as the pixels selected during the sampling process. In Col. 15, lines 55 to 58, it is said that if desired, additional circuitry may be incorporated in the data processing unit to enable the operator to identify certain areas by their physical coordinates using a cursor, and a light pen or stylus.
In simulation programs using the techniques of artificial intelligence, it has become common to provide a user interface which displays a schematic diagram of a system under consideration, and which permits the user to graphically select or modify components of the schematic diagram by manipulating a pointing device. Further, upon such selection or modification, certain textual attributes of the object will be automatically modified if necessary and displayed in a window area adjacent to the schematic diagram. In such programs, the coordinates of the cursor are compared to coordinates defined for the components of the schematic diagram, in order to determine whether the user has selected a component. See, for example, Borning, "Thinglab -- A Constraint-Oriented Simulation Laboratory", .
~ ~ .
:. : :

:: :~: :
., 6 ~ 3 ~
Chapter 2, Stanford Computer Science Department Report STAN-CS-79-746 pp. 14-37 (July 1979).

SUMMARY OF THE INVENTION
The primary object of the present invention is to provide an improved method of identifying predefined features of an image on a video display.
A specific object of the invention is to provide an improved method of operating a video display system for providing descriptive information responsive to user identification of the physical location of a perceived feature of a displayed image. A related object is to provide such a system with the capability of receiving a description from the user, and indicating the physical locations of predefined features which are responsive to the description.
Another object of the invention is to provide an efficient method of storing digitized video images along with descriptive information about various features of the images and information about the locations of the features in the images.
Briefly, the advantages of the present invention stem from encoding information about a video image as a pixel bit map and a color map in which the addresses or indices of the color map are correlated with the addresses or pointers to strings of descriptive information about predefined features of the video image. In other words, each color map address corresponds to a predefined set of features and descriptive information about those features.
Since the pixel bit map defines a color map address for each physical location on the image, suitable programming of the color map can insure proper correlation of descriptive information with corresponding physical locations on the image. The correlation between color map addresses and the descriptive information about the features is represented most compactly by arranging or sorting the entries in the color map so that there is a ;
correspondence between each predefined feature and a continuous range of color map addresses. Therefore, for a ~, , ; - : ~
'. ', ~ . :~ -: ' 7 132~6~
user specified physical location, the corresponding color map address can be found by addressing the pixel bit map, and the corresponding set of features and pointers can be found by comparing the corresponding color map address to the limits of the color map address ranges for the various features, for example, by a binary tree search or by a table look-up procedure.
Conversely, given a user specified description, the descriptive information for the various features can be searched to determine whether there is a correspondence with the user specified description, in order to find the features responsive to the user specified description.
Next the address limits of the color map memory are found which correspond to responsive features. The physical locations of the features on the displayed image are then indicated, for example, by temporary modification of the color map entries at each address within the address limits of the responsive features.
It should be apparent that separate pixel bit maps are not required for indexing both the color map and a pointer file in order to correlate each pixel with one or more strings of descriptive information. Moreover, in most real-world applications, the features of interest are highly correlated with ranges of color in the real-world images. Therefore, it is possible to use a single pixel bit map or pixel plane of common indices for representing the video image and also for correlating descriptive information with the pixels, without requiring the memory capacity of the color map to be substantially increased, and without loss of perceived image quality. By assigning or sorting the entries of the color map so that predefined features correspond to respective continuous ranges of color map addresses, the memory space for storing the pointers is reduced. Therefore, digitized video images are capable of being efficiently stored along with descriptive information about various features of the images and information about the locations of the features in the images.

,. ., , . .: .
,.,. , : ~ .:
: ~
: . :
::~ . : :

BRIEF DESCRIPTION OF THE DRAWINGS 1~ 21~ ~ ~
Other objects and advantages of the invention will become apparent upon reading the following detailed description and upon reference to the drawings in which:
FIG. 1 is a schematic diagram of a video display system incorporating the present invention;
FIG. 2 is a diagram illustrating the organization and contents of a color map, a text pointer table, and certain text strings used to represent and describe the image and various features of the image displayed as shown in FIG. l;
FIG. 3 is a flowchart of the procedure executed by a data processing unit in the system of FIG. l; and FIG. 4 is flowchart of the procedure executed by the data processing unit for encoding images and textual information describing their features in the format shown in FIG. 2.
While the invention is susceptible to various modifications and alternative forms, a specific embodiment thereof has been shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that it is not intended to limit the invention to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.

DESCRIPTION OF THE PREFERRED EMBODIMENT
Turning now to FIG. 1, there is shown a schematic diagram generally designated 10 of a video display system incorporating the present invention. As is conventional, the video display system includes a color video display 11 for displaying text and images. The video display preferably includes a raster-scanned color cathode ray tube as a display device, although the invention is applicable to other video display devices such as liquid crystal, plasma, and electro-luminescent displays, and the invention is also applicable to other kinds of scanning methods. A
most suitable display device is, for example, an RGB analog video monitor sold by Sony Corporation.

-- . : : ~

. ~
. .

9 13~6~
In addition to the cathode ray tube and its analog circuits, the video display 11 includes raster scanning circuits 12 which generate pixel addresses in synchronism with the scanning of the cathode ray tube, a pixel bit map or memory 13 which stores information about the image intensity to be generated by the cathode ray tube at each pixel, and a digital-to-analog converter 14 responsive to video data for generating analog signals which control the electron guns in the cathode ray tube. Conventionally, the raster-scan circuits 12, the pixel bit map 13, and the digital-to-analog converters 14 are included on circuits that are in close proximity to a data processing unit 15 such as a microprocessor, and a certain amount of random access memory 16 which is connected to the data processing unit via address and data buses. The pixel bit map 13 is typically included in a memory that is multiplexed or time shared between the raster-scanning circuits 12 and the data processing unit 15. Typically the data processing unit 15 changes the data in the pixel bit map 13 during the vertical retrace of the raster-scanning, so that the entire image displayed by the display 11 appears to change instantaneously.
For permanently storing large amounts of data, and also for providing input of large amounts of data, the video display system 10 includes disc memory 17 such as a floppy magnetic disc drive, a hard magnetic disc drive, or an optical disc such as a CD-ROM drive.
For receiving text input from a user, the video display system 10 has a keyboard 18 which is connected to the data processing unit 15 through an interface circuit 19 .
The video display system 10 further includes a manually-operated pointing device 20 for receiving an indication of a specified location on the image 21 displayed by the video display 11. As shown in FIG. 1, the pointing device is a "mouse" which the user manually rolls over a flat surface 22. The data processing unit 15 is conventionally programmed to display a cursor 23 at a particular pixel on the image 21, and the data processing :.: ..
~, :
..

lo 1 3 ~
unit is further programmed to move the cursor up and down or left and right in response to the user's movement of the mouse 20 forward and back or left to right. The user moves the mouse 20 until the cursor 23 is aligned with a desired pixel location, and the user then specifies the desired pixel location by depressing a push button switch 24 on the mouse 20. It should be understood, however, that the kind of pointing device used by the operator is of no consequence to the practicing of the present invention, since a wide variety of other kinds of pointing devices can be used, such as a "track ball," a "joy stick," or a "light pen." All of these devices enable the user to specify a desired location on the image 21 displayed by the video display 11.
As described above, the video display system uses components which are found in a wide variety of programmable video display terminals and microcomputers.
For practicing the invention, the video display system 10 further includes a color map 25 which is used in conjunction with the pixel bit map 13 to specify video data fed to the digital-to-analog converter 14 of the video display system. Color maps have provided a wide variety of advantages in video display terminals, as should be apparent from the detailed discussion above of the background of the present invention. In short, the color map 25 is used to represent the colors in the image independent of where those colors-appear in the image. ;
Specifically, the color map is a kind of memory which specifies the video data for each of a plurality of indices, and the pixel bit map 13 specifies one of these indices for each of the pixels in the image 21.
Suitable raster-scan circuits 12, pixel bit map 13, color map 25, and digital-to-analog converters 14 are found in commercially available video graphic circuit boards for personal computers. For practicing the invention, the invent~r has used a "#9 Revolution Board" manufactured and sold by the #9 Computer Corp., 725 Concord Avenue, Cambridge, Massachusetts. This video graphics circuit board was inserted in an IBM-XT personal computer. Such a -.
' ~

ll 1321~65 video graphics circuit board has a pixel bit map with 8 bit words for storing an index ranging from 0 to 255, and sufficient memory capacity for a pixel matrix array of 512 columns by 484 rows comprising the image 21. Moreover, the color map 25 specifies 24 bits of video data for each index, including 3 bytes of 8 bits each which specify the intensity of the red, green and blue primary colors.
The video display system of the present invention allows the user to obtain descriptive textual information concerning a feature of the displayed image 21 by using the pointing device 20 to point to a location of the feature.
Conversely, the user may use the keyboard 18 to enter descriptive textual information, and the locations of responsive features are indicated by the video display 11.
As shown in FIG. 1, the image 21 includes four distinct features which are recognized as a chair, a lamp, a sofa, and a table. It should be readily appreciated, however, that the present invention has great practical utility in connection with the identification of features occurring in complex real-world images such as the images that are analyzed for military reconnaissance or the remote satellite sensing of agricultural crops or land areas for mineral exploration. The inventor has found the present invention especially useful for identifying predetermined features of medical images and, in particular, tissue cross-sections. A collection of tissue cross-section images in the form of a "histology atlas" would be of great benefit to doctors and medical students as an aid in teaching and diagnosis.
Turning now to FIG. 2, there is shown a schematic diagram illustrating a specific organization of the color map 25 and certain data structures in the random access memory 16 which illustrate the method of the present invention.
In accordance with an important aspect of the invention, the color map 25 includes at least one entry for each different color included in the image 21, and includes additional entries for each color which occurs both inside and outside a predefined feature of the image. Therefore, - .
' ' ~""" .

,,~ , .:.:, :- , 12 13~
a unique entry in the color map is provided for each color included in a distinct combination of features. Therefore, each index has associated with it a predefined set of features and a certain color.
For the predefined features in the image 21 shown in FIG. 1, there is no overlap between the features.
Therefore, the above condition can be satisfied when the entries of the color map are preferably segmented into a continuous numerical range of indices for each of the predefined features. In general, this can be done so long as the features are either disjoint or related as sets and subsets.
Since each index corresponds to a particular combination of features as well as a color, the particular feature associated with a specified pixel location can be found by reading the index from the pixel bit map and then finding the particular combination of features associated with the index.
In accordance with an important aspect of the present invention, the memory of the video display system 10 further stores data describing the features associated with each index. Therefore, given the index of a user specified pixel location, the combination of features at that pixel location can be determined by reading from memory the descriptive data for the features associated with the index. In particular, as shown in FIG. 2 the random access memory 16 stores text strings 26 including a particular string for each feature. Also, the random access memory 16 stores a text pointer table 27 which specifies the text strings associated with each index. As further shown in FIG. 2, the text pointer table is very compact due to the fact that the text pointer table need merely store the numerical limits of each range of indices for the segment associated with each feature. Moreover, the text pointer ~5 table is relatively compact because the indices are associated with pointers to the text strings rather than the strings themselves.
By inspection of the contents of the color map 25, the text strings 26, and the text pointer table 27, it should :7 -:
:`
' ' 13 1~2~
be apparent that the first segment of the color map is addressed by indices ranging from o to 31 and it stores colors for the chair. The second segment of the color map stores colors at indices 32 to 63 for the lamp. Similarly, 5 the third segment stores colors at indices 64 to 95 for displaying the sofa.
As a specific example, the user may operate the mouse 20 to move the cursor to a pixel on the chair having a light blue color represented by the red-green-blue video 10 data triple of zero, zero, 31. The data processing unit 15 may operate the interface circuits 19 to receive the pixel address of that pixel. By addressing the pixel bit map with that pixel address, the data processing unit will read an index value of 1. Then, by comparing that index value 15 to the indices in the text pointer table 27, the data processing unit will decide that it falls within the range of 0 to 31 specified for the pointer "STRINGl." By addressing the text strings 26 starting at the pointer STRING1 and continuing up to but not including the next 20 string pointer STRING2, the computer may read and display the text "CHAIR" which describes the chair.
Conversely, the user may enter the word "CHAIR" via the keyboard. The data processing unit 15 may obtain the word chair from the interface circuits 19, and search the 25 text strings 27 for a match. The computer will then determine that the text entered by the user matches the text string starting at the address of "STRINGl" and continuing up to but not including the pointer "STRING2."
The computer may then search the text pointer table for the 30 occurrence of these pointers, and thereby determine that the feature associated with the first text string is specified for indices ranging from 0 to 31. Then, by temporarily changing the video data stored in the color map 25 at the indices 0 to 31, the video display 11 will 35 temporarily change the color of the chair to indicate to the user that the chair is a feature of the image responsive to the text that the user had entered on the keyboard 18.

:

14 13~G~
Turning now to FIG. 3, there is shown a flowchart ~enerally designated 30 of a control procedure for performing the operations just described. In the first step 31, the data processing unit 15 displays to the user a message requesting the user to select an image, it being understood that the disc memory 17 includes a plurality of images for selection by the user. In step 32 the data processing unit 15 operates the interface circuits 19 to input the user's image selection which is to be entered via the keyboard 18. If the user presses the "escape" key on the keyboard 18, then in step 33 the data processing unit recognizes that the user desires to terminate or exit from the control procedure. Otherwise, the user's response should be information identifying a particular image to be viewed. Therefore, in step 34, the data processing unit transfers the record of the selected image from the disc memory 17 to the pixel bit map 13, the color map 25, and preassigned memory locations in the random access memory 16 for the text pointer table 27 and the text strings 26.
To determine the specific identification operation desired by the user, in step 35 the data processing unit polls the keyboard by operating the interface circuits 19.
As tested in step 36, if the user hits the "escape" key, execution jumps to step 31 to enable the user to select a new image. Otherwise, if text is received from the user, as tested in step 37, then in step 38 the data processing unit searches the text strings 26 for a match with the user specified text. If a match does not occur, as tested in step 39, then in step 40 a message is displayed to the user to indicate that a responsive feature cannot be found.
Otherwise, the result of the match is a list of string pointers to the responsive text. In step 41, the data processing unit searches the text pointer table to determine the ranges of indices of the features corresponding to the string pointers. To display the responsive features to the user, the data processing unit temporarily changes the color in the color map for each index in the index range of the text pointer table specified for each matching string. This could be done a .

~2~
number of times to repetitively "flash" the responsive features.
If in step 37 it was found that the user had not entered text, then in step 42 the data processing unit operates the interface circuits 19 to poll the pointing device 20. In step 43, the data processing unit tests whether the user is pointing to an image location. If so, then in step 44 the pixel bit map 13 is read at the user specified pixel address to obtain a corresponding color index. Next, in step 45, the data processing unit searches the text pointer table for the text string pointer specified for the color index. One specific way of searching the text pointer table is to successively compare the index to each of the indices specified in the table.
Once the text string pointer is obtained, then in step 46 the data processing unit reads the text string indicated by the text string pointer, and finally in step 47 the data processing unit displays the text string to the user.
Execution then jumps back to step 35 to perform additional identification operations, if desired by the user.
Turning now to FIG. 4, there is shown a flowchart generally designated 50 of a control procedure for encoding an image to obtain the stored data in the format illustrated in FIG. 2. In the first step 51, the user is told to input image data. In order to terminate the program when desired by the user, in step 52 the keyboard is polled and in step 53 execution terminates if the user hits the "escape" key. Otherwise, the user hits the keyboard when the video data for an image is available.
The video data, for example, is provided by a video camera (not shown), an analog-to-digital converter (not shown), and a frame buffer (not shown). In step 55 this video data is stored in the random access memory 16 in a pixel array of color values.
In order to display the raw image, in step 56 the distinct colors of the video data are transferred to a secondary color map area in random access memory 16. Also, ., . ~

: , : : ~

in step 57 the secondary color map indices are loaded into a secondary pixel bit map set aside in the random access memory. In other words, the secondary pixel bit map and the secondary color map are set aside in order to construct a color mapped representation of the video image. In step 58, the color mapped video image is displayed by transferring the contents of the secondary color map and the secondary pixel bit map to the "primary" color map 25 and the "primary" pixel bit map 13.
In order to encode information about predefined features of the image, in step 59 a message is displayed telling the user to enter text describing a new feature.
In step 60, the keyboard is polled to either receive the text or to receive an escape which would indicate that no more features are to be defined. This condition is tested in step 61. If text is entered, then in step 62 the text string is stored at the next available text string addresses, and the associated string pointers at the beginning of the string and just after the end of the string are stored in the text pointer table 27. Then, in step 63, the user is told to trace the outline of a new feature. To do this, the user operates the mouse 20. In step 64, the data processing unit inputs the pixel coordinates of the outline, and in step 65 computes the pixel coordinates bounded by the outline; these pixel coordinates have the same row addresses as the pixel coordinates of the outline and for each row address they include all of the column addresses within the column addresses of the pixels in the outline. Therefore, the location of the new feature has been specified by all of the pixels included in that feature. It should be noted, however, that a single feature may be comprised of entirely separate regions of pixels, in which case the user should outline each region included in the feature.
Next, in step 66, the next available segment of the secondary color map indices is allocated or set aside to receive the colors of the new feature. In step 67, this new segment of the secondary color map is filled with the colors of the feature. Similarly, in step 68, the ~ ' ' . .

17 132~6~5 secondary pixel bit map at the pixel addresses of the feature are filled with the indices from the new segment of the secondary color map memory. Execution then jumps to step 59 in order to define a new feature. Alternatively, the user may hit the "escape" key on the keyboard, so that in step 69 the new image being built up in the secondary bit map and the secondary color map will be swapped with the contents of the primary memories and therefore displayed to the user. This interactive displaying could be useful for permitting the user to decide how many color map memory addresses should be allocated to each feature.
The user could, for example, be provided with the option of interrupting the control procedure and going back and allocating more color map memory addresses to the previously defined feature, or even for taking some color map memory addresses from some previously entered features and reallocating them to the feature that was just defined.
In these cases of scarce color map memory, the user could make available additional memory addresses by eliminating certain colors from the features.
In step 70 the data processing unit polls the keyboard to determine whether the user is ready to go on and define another feature or to terminate the program. In step 71 the data processing unit first responds by swapping the contents of the secondary pixel bit map and the secondary color map with the contents of the primary pixel bit map and the primary color map. Then, in step 72, execution jumps back to step 59 to define another feature unless the user has entered an "escape". If so, then all of the features have been defined for the image being encoded.
However, at this time the secondary pixel bit map and the -secondary color map do not include the information for defining the background areas of the image which do not include any defined features.
In order to provide information about the background of the image, in step 73 the pixel coordinates of the background are computed or identified so that in step 74 the background colors can be loaded into the remaining entries of the secondary color map. Also, the pixel : ~ ' 18 ~2~
coordinates of the background are computed or identified so that in step 75 the secondary pixel bit map is filled at the background pixel addresses with indices of the background colors in the secondary color map. After this is done, the secondary pixel bit map and the secondary color map include the entire encoded image. Therefore, in step 76, the secondary maps, text and pointers can be stored in the disc memory 17 for use by the identification procedure of FIG. 3.
One advantage of segmenting the color map memory is that the pixel bit map for a feature and the color map segment for the feature are severable from the composite encoded image. Therefore, it is possible to independently compose or remove, edit, and reinsert the video data for a feature of the composite encoded image.
In view of the above, there has been described a video display terminal that allows a user to obtain descriptive information concerning a feature of a displayed image by pointing to the location of the feature. Conversely, the user may enter descriptive textual information, and the locations of responsive features are visually indicated.
The digitized video images are efficiently stored along with textual information about various features of the images and information about the locations of the features in the images. In particular, the information about the video image is encoded as a pixel bit map and a color map in which the addresses or indices of the color map are correlated with the addresses or pointers to descriptive information about predefined features of the video image.
The correlation between color map addresses and the descriptive information about the features is represented most compactly by arranging or sorting the entries in the colored map so that there is a correspondence between each predefined feature and a continuous range of color map addresses. Due to the high correlation in real-world images between color and features of interest, the memory capacity of the color map need not be substantially increased to provide the correlation between the physical 19 132~
locations of the features and the descriptive information about the features.
Although the invention has been described in connection with a specific embodiment that correlates textual information with the features of an image, the present invention is applicable to correlating other kinds of information about the defined features such as additional pictorial information for showing the selected features in greater detail, or predefined computer programs or subroutines which relate to the defined features. It should be apparent to one of ordinary programming skill that the specific embodiment of FIGS. 2 and 3 could be readily modified to provide these capabilities by substituting for the text strings either strings of pixel information or strings of computer program steps.
To provide an "histology atlas," it would be desirable to use a pointer table (27 in FIG. 2) having a column of pixel string pointers as well as a column of text string pointers. When the user selects a feature of the displayed image, a magnified view of the selected feature could be displayed along with the textual information describing the selected feature. Alternatively, a mouse (20 in FIG. 1) could be used having a pair of push-button switches, and either a magnified view of the selected feature, or the textual information about the selected feature, could be displayed depending upon whether the user activates one or the other of the push-button switches.
Strings of computer program steps could be useful for providing the user with a menu of choices about the selected feature. These menu choices could select data input and control options as well as data display options.
Upon selection of a feature, the control procedure of FIG.
3 in step 46 would read the specified program string pointer from the string pointer table, transfer that pointer to the operand of an upcoming "jump" or "jump to subroutine" instruction, and then execute the "jump" or "jump to subroutine" instruction to thereby pass execution to the computer program steps specified for the selected feature.

.. . ~,.

:, :

~321~
In general, computer program steps specified for predefined features would permit the program flow to be altered in any desired fashion, including alteration of the original procedure for displaying the image, and execution of data input and control procedures related to the selected feature. This would be most useful for hierarchical operation of an interactive computer terminal in which the strings of computer program steps specified for certain high-level features would include steps to interrupt the display of an original image, recursively display a magnified image of the selected feature, and redisplay the original image upon returning from the interrupt. Therefore, a user could successively select more detailed features until reaching the highest available level of magnification representing a very specific feature or control function.

, . . : - :

,~ :

Claims (29)

1. A method of operating a video display system of the kind having memory for storing data, a data processor, and a video display including a video data input and means for displaying to a user an image having at certain image locations intensities responsive to video data received at said video data input, and a user operated input means for providing an indication of a location on said image, wherein said memory includes means for storing said video data in an indexed data structure having data elements associated with respective indices having different values, said method comprising the steps of:
storing in said memory a first map specifying video data for each of a plurality of indices, storing in said memory a second map specifying one of said indices for each of said image locations, storing in said memory respective additional data about predefined features of said image, said features occurring at certain of said image locations, said second map specifying for said features respective ones of said indices at said certain of said image locations, said respective additional data being specified for said respective ones of said indices, displaying said image to said user by reading said second map to obtain the indices specified for said image locations, reading said first map to obtain the video data specified for the indices read from the second map, and transmitting the specified video data to the video data input of said video display, operating said input means to receive an indication of a location on said image at which one of said features occur, reading said second map to obtain the index specified for the indicated location, and reading and displaying to said user the respective additional data for said index.
2. The method as claimed in claim 1, wherein said means for displaying also displays chromaticities responsive to the video data received at said video data input.
3. The method as claimed in claim 2, wherein said video display includes a raster-scanned color cathode ray tube.
4. The method as claimed in claim 1, wherein said input means includes a light pen sensitive to the intensity displayed by the video display at a location selected by manual positioning of the light pen.
5. The method as claimed in claim 1, wherein said input means includes means for manually commanding movement of a cursor displayed at a certain image location, and means for receiving a command for accepting the cursor location as the indicated location on said image.
6. The method as claimed in claim 5, wherein said input device is a mouse.
7. The method as claimed in claim 1, wherein said certain image locations are arranged as a matrix of pixels.
8. The method as claimed in claim 1, wherein said respective additional data are stored as respective lists, and a set of pointers to said lists, said pointers being indexed by said respective ones of said indices.
9. The method as claimed in claim 8, wherein said respective ones of said indices for each feature are included in continuous numerical ranges, said pointers are stored with respective numerical range limits, and the respective additional data are read for said index by comparing said index to the respective numerical ranges to determine the respective pointer.
10. The method as claimed in claim 1, wherein said respective additional data comprise descriptive text strings for the features.
11. The method as claimed in claim 1, wherein said respective additional data comprise video data for displaying the features with increased magnification.
12. The method as claimed in claim 1, wherein said step of reading and displaying comprises the step of executing respective computer programs predefined for the predefined features of said image.
13. A method of operating a video display system having a data processor, a color video display including means responsive to video data for specifying the color which is displayed at respective pixel locations on an image, a manually operated input means for specifying a pixel location, and a memory including means for storing data in an indexed data structure having data elements associated with respective indices having different values, said memory storing data including a color map specifying video data for each of a plurality of indices, a pixel bit map specifying one of said indices for each of said pixel locations thereby defining the content of said image, said image having a plurality of predefined features, said features occurring at certain of said pixel locations, said pixel bit map specifying for each of said features respective ones of said indices at said certain of said pixel locations, said memory also storing respective strings of descriptive text for said features, said text strings being specified for said respective ones of said indices, said method comprising the steps of:
operating said input means to receive an indication of a specified pixel location, reading said pixel bit map to obtain the index specified for the specified pixel location, reading the text string specified for said index specified for the specified pixel location, and displaying the text string specified for the index specified for the specified pixel location.
14. The method as claimed in claim 13 wherein said text strings are specified for said respective ones of said indices by respective text string pointers stored in said memory, and specified for said respective ones of said indices, and wherein said step of reading the text string comprises the steps of reading the pointer specified for the index specified for the specified pixel location, and reading the text string indicated by the pointer so read.
15. The method as claimed in claim 14, wherein said respective ones of said indices for each feature are included in continuous numerical ranges, said pointers are stored in said memory along with limits of the respective numerical ranges, and said step of reading the pointer includes the step of comparing the numerical range limits to the index specified for the specified pixel location.
16. A video display system for displaying an image to a user and permitting the user to point to predefined features of the image and obtain descriptive information about the specified features, said video display system comprising, in combination:
a color video display for displaying text and images, said video display including means responsive to video data for specifying the color which is displayed at respective pixel locations on said image, manually-operated input means for enabling the user to point to a specified pixel location, a memory including means for storing data in an indexed data structure having data elements associated with respective indices having different values, said memory storing data including a color map specifying video data for each of a plurality of indices, and a pixel bit map specifying one of said indices for each of said pixel locations thereby defining the content of said image, said image having a plurality of predefined features, said features occurring at certain of said pixel locations, said pixel bit map specifying for each of said features respective ones of said indices at said certain of said pixel locations, said memory also storing respective strings of descriptive information for said features, said strings being specified for said respective ones of said indices, means responsive to said input means for reading said pixel bit map to obtain the index specified for the specified pixel location, means for reading the string specified for said index specified for the specified pixel location, and means for operating the video display in response to the string so read.
17. The video display system as claimed in claim 16, wherein said respective ones of said indices for each feature are included in continuous numerical ranges, the limits of said numerical ranges are stored in said memory, and said means for reading the string includes means for comparing the limits to said index specified for the specified pixel location to determine the continuous numerical range including said index and thereby determine the feature indicated by the user, and means for reading the string which describes the indicated feature.
18. The video display system as claimed in claim 16, further comprising means for receiving descriptive information from the user, means for comparing the information received from the user to the descriptive strings to select at least one descriptive string which is responsive to the descriptive information received from the user, means for reading the memory to determine the set of indices for which the selected string is specified, and means for changing the video data in said color map that are specified for the indices in said set of indices, to thereby provide a means for visually indicating to the user the predefined features in the image which are responsive to the descriptive information received from the user.
19. The video display system as claimed in claim 16, wherein said strings are strings of text, and said means for operating the video display includes means for displaying the string so read.
20. The video display system as claimed in claim 16, wherein said strings are strings of pixel information defining their respective features with increased magnification and resolution, and said means for operating the video display includes means for displaying the string of pixel information so read.
21. The video display system as claimed in claim 16, wherein said strings are strings of computer program steps defining respective computer programs relating to the predefined features, and said means for operating the video display includes means for executing the string of computer program steps so read.
22. A method of operating a video display system having a data processor, a color video display including means responsive to video data for specifying the color displayed at respective pixel locations on an image, means for receiving descriptive text from a user, and a memory including means for storing data in an indexed data structure having data elements associated with respective indices having different values, said memory storing data including a color map specifying video data for each of a plurality of indices, a pixel bit map specifying one of said indices for each of said pixel locations thereby defining the content of said image, said image having a plurality of predefined features, said features occurring at certain of said pixel locations, said pixel bit map specifying for each of said features respective ones of said indices at said certain of said pixel locations, said memory also storing respective strings of descriptive information for said features, said strings being specified for said respective ones of said indices, said method comprising the steps of:
operating said means for receiving to receive descriptive text from the user, comparing the text received from the user to the descriptive strings to select at least one of the descriptive strings which is responsive to the descriptive text received from the user, reading the memory to determine the set of indices for which the selected string is specified, and changing the video data in said color map that are specified for the indices in said set of indices, to thereby visually indicate to the user the predefined features in the image which are responsive to the descriptive text received from the user.
23. A method of operating a data processor having a memory in order to encode and store in said memory video data representing a color image together with descriptive text about certain predefined features of said image and the locations of said features in the image, said image being subdivided into pixels at locations on said image, said features comprising certain predefined sets of said pixels, said memory including means for storing data in an indexed data structure having data elements associated with respective indices having different values, said method comprising the steps of:
storing in said memory a color map including at least one entry for each different color to be included in said image, and additional entries for each color occurring both inside and outside a predefined feature so that a unique entry is provided for each color included in a distinct combination of features, the color map entries being addressable by respective indices, each index thereby having associated with it a predefined set of features and a certain color, storing in said memory data describing the features associated with each index, and storing in said memory a pixel bit map specifying for each pixel the index for the combination of features including that pixel and addressing the image color at the pixel location.
24. The method as claimed in claim 23, wherein said data describing the features associated with each index comprises data indicating the set of features associated with each index, and data describing each feature.
25. The method as claimed in claim 24, wherein the data describing each feature includes a string of descriptive text.
26. The method as claimed in claim 24, wherein the indices for each feature form a consecutive numerical range of indices, and wherein the data indicating the set of features associated with each index include limits of the numerical range of the indices for each feature.
27. The method as claimed in claim 23, further comprising the steps of storing in memory the video data indicating the color of the image at each pixel location, and for each feature, storing in memory the set of pixel locations to be included in the feature and allocating a consecutive numerical range of indices to the feature.

27a
28. A method of operating a video display system, said video display system having a data processor, a color video display for displaying an image including means responsive to video data for specifying the color displayed at respective pixel locations on said image, means for receiving from a user data indicating a selected one of a plurality of predefined features of said image, and a memory including means for storing data in an indexed data structure having data elements associated with respective indices having different values, said memory storing data including a color map specifying video data for each of a plurality of indices, and a pixel bit map specifying one of said indices for each of said pixel locations thereby defining the content of said image, said features occurring at certain of said pixel locations, said pixel bit map specifying for each of said features respective ones of said indices at said certain of said pixel locations, said memory also storing information indicating the indices associated with said features, said method comprising the steps of:
operating said means for receiving to receive from the user data indicating a selected one of said features, using said data received from said user and the stored information indicating the indices associated with said features to determine the indices associated with said selected one of said features, and changing the video data in said color map that are specified for said indices associated with said selected one of said features.
29. The method as claimed in claim 28, wherein the indices associated with each of said features form a consecutive numerical range of indices, and wherein the stored information indicating the indices associated with said features specifies the limits of the numerical ranges of indices.
CA000590917A 1987-08-27 1989-02-13 Method and apparatus for identifying features of an image on a video display Expired - Lifetime CA1321665C (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US07/090,112 US4847604A (en) 1987-08-27 1987-08-27 Method and apparatus for identifying features of an image on a video display
AU29715/89A AU613150B2 (en) 1987-08-27 1989-02-07 Method and apparatus for identifying features of an image on a video display
CA000590917A CA1321665C (en) 1987-08-27 1989-02-13 Method and apparatus for identifying features of an image on a video display
EP89302108A EP0385008A1 (en) 1987-08-27 1989-03-02 Method and apparatus for identifying features of an image on a video display

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/090,112 US4847604A (en) 1987-08-27 1987-08-27 Method and apparatus for identifying features of an image on a video display
CA000590917A CA1321665C (en) 1987-08-27 1989-02-13 Method and apparatus for identifying features of an image on a video display

Publications (1)

Publication Number Publication Date
CA1321665C true CA1321665C (en) 1993-08-24

Family

ID=25672446

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000590917A Expired - Lifetime CA1321665C (en) 1987-08-27 1989-02-13 Method and apparatus for identifying features of an image on a video display

Country Status (4)

Country Link
US (1) US4847604A (en)
EP (1) EP0385008A1 (en)
AU (1) AU613150B2 (en)
CA (1) CA1321665C (en)

Families Citing this family (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146404A (en) * 1986-09-19 1992-09-08 Westinghouse Electric Corporation Electronic maintenance support work station
US4847604A (en) * 1987-08-27 1989-07-11 Doyle Michael D Method and apparatus for identifying features of an image on a video display
US5721959A (en) * 1988-07-01 1998-02-24 Canon Kabushiki Kaisha Information processing apparatus for pattern editing using logic relationship representative patterns
CA1326563C (en) * 1989-03-15 1994-01-25 Anthony Hoeber Method and apparatus for selecting and executing defaults in a window based display system
US5230063A (en) * 1989-03-15 1993-07-20 Sun Microsystems, Inc. Method and apparatus for selecting button function and retaining selected optics on a display
US5276795A (en) * 1989-03-15 1994-01-04 Sun Microsystems, Inc. Method and apparatus for selecting and executing defaults in a window based display system
US5243697A (en) * 1989-03-15 1993-09-07 Sun Microsystems, Inc. Method and apparatus for selecting button functions and retaining selected options on a display
US5155806A (en) * 1989-03-15 1992-10-13 Sun Microsystems, Inc. Method and apparatus for displaying context sensitive help information on a display
US5157768A (en) * 1989-03-15 1992-10-20 Sun Microsystems, Inc. Method and apparatus for displaying context sensitive help information on a display
US5235677A (en) * 1989-06-02 1993-08-10 Atari Corporation Raster graphics color palette architecture for multiple display objects
US6978277B2 (en) * 1989-10-26 2005-12-20 Encyclopaedia Britannica, Inc. Multimedia search system
US5241671C1 (en) 1989-10-26 2002-07-02 Encyclopaedia Britannica Educa Multimedia search system using a plurality of entry path means which indicate interrelatedness of information
JPH03282676A (en) * 1990-03-30 1991-12-12 Hitachi Ltd Information retrieving method
JPH0771187B2 (en) * 1990-05-15 1995-07-31 富士ゼロックス株式会社 Image recorder
JP3056514B2 (en) * 1990-08-27 2000-06-26 任天堂株式会社 Image display device and external storage device used therefor
US5347621A (en) * 1990-09-19 1994-09-13 Sony Corporation Method and apparatus for processing image data
US5148154A (en) * 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
US7095909B1 (en) * 1991-01-02 2006-08-22 Bruce Beasley Light pen system and method
US5546105A (en) * 1991-07-19 1996-08-13 Apple Computer, Inc. Graphic system for displaying images in gray-scale
US5241631A (en) * 1991-08-23 1993-08-31 Nec Technologies, Inc. Personal computer having a local bus interface to a video circuit
US5219226A (en) * 1991-10-25 1993-06-15 Quadtek, Inc. Imaging and temperature monitoring system
JP3050348B2 (en) * 1992-04-17 2000-06-12 インターナショナル・ビジネス・マシーンズ・コーポレイション Method and apparatus for user control in a process control system
US5553864A (en) 1992-05-22 1996-09-10 Sitrick; David H. User image integration into audiovisual presentation system and methodology
US8821276B2 (en) 1992-05-22 2014-09-02 Bassilic Technologies Llc Image integration, mapping and linking system and methodology
US5494041A (en) * 1992-08-19 1996-02-27 Wilk; Peter J. Method for use in surgical operation
US5428723A (en) * 1992-09-09 1995-06-27 International Business Machines Corporation Method and apparatus for capturing the motion of an object in motion video
US5838389A (en) * 1992-11-02 1998-11-17 The 3Do Company Apparatus and method for updating a CLUT during horizontal blanking
US5572235A (en) * 1992-11-02 1996-11-05 The 3Do Company Method and apparatus for processing image data
US5481275A (en) 1992-11-02 1996-01-02 The 3Do Company Resolution enhancement for video display using multi-line interpolation
US5596693A (en) * 1992-11-02 1997-01-21 The 3Do Company Method for controlling a spryte rendering processor
EP0605945B1 (en) * 1992-12-15 1997-12-29 Sun Microsystems, Inc. Method and apparatus for presenting information in a display system using transparent windows
US5752073A (en) * 1993-01-06 1998-05-12 Cagent Technologies, Inc. Digital signal processor architecture
DE69418908T2 (en) * 1993-01-26 2000-01-20 Sun Microsystems Inc Method and device for viewing information in a computer database
US5469540A (en) * 1993-01-27 1995-11-21 Apple Computer, Inc. Method and apparatus for generating and displaying multiple simultaneously-active windows
US5550967A (en) * 1993-01-27 1996-08-27 Apple Computer, Inc. Method and apparatus for generating and displaying visual cues on a graphic user interface
US5859638A (en) * 1993-01-27 1999-01-12 Apple Computer, Inc. Method and apparatus for displaying and scrolling data in a window-based graphic user interface
US5825355A (en) * 1993-01-27 1998-10-20 Apple Computer, Inc. Method and apparatus for providing a help based window system using multiple access methods
US5488685A (en) * 1993-01-27 1996-01-30 Apple Computer, Inc. Method and apparatus for providing visual cues in a graphic user interface
US5339393A (en) * 1993-04-15 1994-08-16 Sony Electronics, Inc. Graphical user interface for displaying available source material for editing
US5524195A (en) * 1993-05-24 1996-06-04 Sun Microsystems, Inc. Graphical user interface for interactive television with an animated agent
DE69432199T2 (en) 1993-05-24 2004-01-08 Sun Microsystems, Inc., Mountain View Graphical user interface with methods for interfacing with remote control devices
US6239794B1 (en) 1994-08-31 2001-05-29 E Guide, Inc. Method and system for simultaneously displaying a television program and information about the program
US5621456A (en) * 1993-06-22 1997-04-15 Apple Computer, Inc. Methods and apparatus for audio-visual interface for the display of multiple program categories
US5594509A (en) * 1993-06-22 1997-01-14 Apple Computer, Inc. Method and apparatus for audio-visual interface for the display of multiple levels of information on a display
US5583560A (en) * 1993-06-22 1996-12-10 Apple Computer, Inc. Method and apparatus for audio-visual interface for the selective display of listing information on a display
US5447153A (en) * 1993-07-02 1995-09-05 Eastman Kodak Company Real-time window/leveling on a radiographic workstation
US6418556B1 (en) 1993-09-09 2002-07-09 United Video Properties, Inc. Electronic television program guide schedule system and method
US5544300A (en) * 1993-11-12 1996-08-06 Intel Corporation User interface for dynamically converting between a single top level window and multiple top level windows
US5572649A (en) * 1993-11-12 1996-11-05 Intel Corporation Process for dynamically switching between a single top level window and multiple top level windows
US5991751A (en) * 1997-06-02 1999-11-23 Smartpatents, Inc. System, method, and computer program product for patent-centric and group-oriented data processing
US6339767B1 (en) * 1997-06-02 2002-01-15 Aurigin Systems, Inc. Using hyperbolic trees to visualize data generated by patent-centric and group-oriented data processing
US6963920B1 (en) * 1993-11-19 2005-11-08 Rose Blush Software Llc Intellectual asset protocol for defining data exchange rules and formats for universal intellectual asset documents, and systems, methods, and computer program products related to same
US5806079A (en) * 1993-11-19 1998-09-08 Smartpatents, Inc. System, method, and computer program product for using intelligent notes to organize, link, and manipulate disparate data objects
US5799325A (en) * 1993-11-19 1998-08-25 Smartpatents, Inc. System, method, and computer program product for generating equivalent text files
US5623679A (en) * 1993-11-19 1997-04-22 Waverley Holdings, Inc. System and method for creating and manipulating notes each containing multiple sub-notes, and linking the sub-notes to portions of data objects
US6877137B1 (en) 1998-04-09 2005-04-05 Rose Blush Software Llc System, method and computer program product for mediating notes and note sub-notes linked or otherwise associated with stored or networked web pages
US5696963A (en) * 1993-11-19 1997-12-09 Waverley Holdings, Inc. System, method and computer program product for searching through an individual document and a group of documents
US5623681A (en) * 1993-11-19 1997-04-22 Waverley Holdings, Inc. Method and apparatus for synchronizing, displaying and manipulating text and image documents
US5454721A (en) * 1993-12-30 1995-10-03 Kuch; Nina J. Application of multi-media technology to nutrition education and diet planning
US8793738B2 (en) 1994-05-04 2014-07-29 Starsight Telecast Incorporated Television system with downloadable features
US5838906A (en) 1994-10-17 1998-11-17 The Regents Of The University Of California Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document
US5838938A (en) 1995-02-15 1998-11-17 Sony Electronics, Inc. Multimedia user interface employing components of color to indicate the values of variables
US5703627A (en) * 1995-03-08 1997-12-30 Apple Computer, Inc. Method for colorflash reduction by copying color values between active and inactive window applications so as to minimize differing color cells between corresponding color maps
US5893130A (en) * 1995-04-28 1999-04-06 Sharp Kabushiki Kaisha Image output device
US7715642B1 (en) * 1995-06-06 2010-05-11 Hewlett-Packard Development Company, L.P. Bitmap image compressing
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
US5742845A (en) 1995-06-22 1998-04-21 Datascape, Inc. System for extending present open network communication protocols to communicate with non-standard I/O devices directly coupled to an open network
JP3649478B2 (en) * 1995-07-20 2005-05-18 株式会社ソニー・コンピュータエンタテインメント Image information processing apparatus and image information processing method
US6323911B1 (en) 1995-10-02 2001-11-27 Starsight Telecast, Inc. System and method for using television schedule information
US6002394A (en) 1995-10-02 1999-12-14 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6469753B1 (en) 1996-05-03 2002-10-22 Starsight Telecast, Inc. Information system
US5987345A (en) * 1996-11-29 1999-11-16 Arch Development Corporation Method and system for displaying medical images
US6687906B1 (en) 1996-12-19 2004-02-03 Index Systems, Inc. EPG with advertising inserts
US8635649B2 (en) 1996-12-19 2014-01-21 Gemstar Development Corporation System and method for modifying advertisement responsive to EPG information
MX355544B (en) 1997-07-21 2018-04-20 Gemstar Dev Corporation Systems and methods for displaying and recording control interfaces.
AU9298398A (en) 1997-09-05 1999-03-29 Prevue International, Inc. Program guide application interface system
US6208353B1 (en) 1997-09-05 2001-03-27 ECOLE POLYTECHNIQUE FEDéRALE DE LAUSANNE Automated cartographic annotation of digital images
US6775417B2 (en) 1997-10-02 2004-08-10 S3 Graphics Co., Ltd. Fixed-rate block-based image compression with inferred pixel values
US6604240B2 (en) 1997-10-06 2003-08-05 United Video Properties, Inc. Interactive television program guide system with operator showcase
US6211861B1 (en) * 1998-06-23 2001-04-03 Immersion Corporation Tactile mouse device
US7185355B1 (en) 1998-03-04 2007-02-27 United Video Properties, Inc. Program guide system with preference profiles
US7139970B2 (en) * 1998-04-10 2006-11-21 Adobe Systems Incorporated Assigning a hot spot in an electronic artwork
US6564379B1 (en) 1998-04-30 2003-05-13 United Video Properties, Inc. Program guide system with flip and browse advertisements
US20020095676A1 (en) 1998-05-15 2002-07-18 Robert A. Knee Interactive television program guide system for determining user values for demographic categories
US7603684B1 (en) 1998-05-19 2009-10-13 United Video Properties, Inc. Program guide system with video-on-demand browsing
AU4196299A (en) * 1998-05-23 1999-12-13 Eolas Technologies, Incorporated Identification of features of multi-dimensional image data in hypermedia systems
US6442755B1 (en) 1998-07-07 2002-08-27 United Video Properties, Inc. Electronic program guide using markup language
AR019458A1 (en) 1998-07-23 2002-02-20 United Video Properties Inc AN INTERACTIVE TELEVISION PROGRAMMING GUIDE PROVISION THAT SERVES AS AN ENTRY
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US6247545B1 (en) 1998-12-22 2001-06-19 Camco International Inc. Single energizer face seal for rocks bits with floating journal bearings
US7966328B2 (en) 1999-03-02 2011-06-21 Rose Blush Software Llc Patent-related tools and methodology for use in research and development projects
US7716060B2 (en) 1999-03-02 2010-05-11 Germeraad Paul B Patent-related tools and methodology for use in the merger and acquisition process
MXPA01013446A (en) 1999-06-28 2002-08-06 Index Systems Inc System and method for utilizing epg database for modifying advertisements.
WO2001001689A1 (en) 1999-06-29 2001-01-04 United Video Properties, Inc. Method and system for a video-on-demand-related interactive display within an interactive television application
US6404441B1 (en) 1999-07-16 2002-06-11 Jet Software, Inc. System for creating media presentations of computer software application programs
US20050177850A1 (en) 1999-10-29 2005-08-11 United Video Properties, Inc. Interactive television system with programming-related links
US6762770B1 (en) * 1999-10-29 2004-07-13 Apple Computer, Inc. Method and system for the representation of color and other attributes in bitmap fonts
CN101493919B (en) 2000-03-31 2019-01-04 乐威指南公司 The system and method for meta-data-linked advertisements
US20020069405A1 (en) * 2000-09-20 2002-06-06 Chapin Paul W. System and method for spokesperson interactive television advertisements
EP1346295A4 (en) 2000-11-15 2005-01-12 Mark Frigon Method and apparatus for processing objects in online images
US20030128219A1 (en) * 2002-01-07 2003-07-10 Xerox Corporation Pixel color map operator interface
US7107545B2 (en) * 2002-02-04 2006-09-12 Draeger Medical Systems, Inc. System and method for providing a graphical user interface display with a conspicuous image element
US7199804B2 (en) * 2002-05-14 2007-04-03 Microsoft Corporation Ink information in image files
US6897877B2 (en) * 2003-03-27 2005-05-24 International Business Machines Corporation Method and apparatus for managing dynamically sizeable color tables
US7969451B2 (en) * 2003-03-27 2011-06-28 International Business Machines Corporation Method and apparatus for dynamically sizing color tables
GB0316122D0 (en) * 2003-07-10 2003-08-13 Symbian Ltd Control area selection in a computing device with a graphical user interface
US20050024328A1 (en) * 2003-07-23 2005-02-03 Graham Oldfield Control area selection in a computing device with a graphical user interface
US20060010028A1 (en) * 2003-11-14 2006-01-12 Herb Sorensen Video shopper tracking system and method
US6980222B2 (en) * 2004-01-12 2005-12-27 International Business Machines Corporation Method and apparatus for implementing dynamically sizable color tables
US7506163B2 (en) * 2005-04-01 2009-03-17 Ve Networks Methods and apparatuses for security visualization
JP4587173B2 (en) * 2005-04-18 2010-11-24 キヤノン株式会社 Image display device, control method therefor, program, and recording medium
US20060259767A1 (en) * 2005-05-16 2006-11-16 Mansz Robert P Methods and apparatuses for information authentication and user interface feedback
US20070030965A1 (en) * 2005-07-19 2007-02-08 Mansz Robert P Methods and apparatuses for management of entitlement to digital security operations
US7788266B2 (en) 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US7796837B2 (en) * 2005-09-22 2010-09-14 Google Inc. Processing an image map for display on computing device
US9113107B2 (en) 2005-11-08 2015-08-18 Rovi Guides, Inc. Interactive advertising and program promotion in an interactive television system
US20070156521A1 (en) 2005-12-29 2007-07-05 United Video Properties, Inc. Systems and methods for commerce in media program related merchandise
US7529741B2 (en) 2006-03-06 2009-05-05 Veveo, Inc. Methods and systems for segmenting relative user preferences into fine-grain and coarse-grain collections
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
US20070292832A1 (en) * 2006-05-31 2007-12-20 Eolas Technologies Inc. System for visual creation of music
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
US7987111B1 (en) * 2006-10-30 2011-07-26 Videomining Corporation Method and system for characterizing physical retail spaces by determining the demographic composition of people in the physical retail spaces utilizing video image analysis
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8660895B1 (en) * 2007-06-14 2014-02-25 Videomining Corporation Method and system for rating of out-of-home digital media network based on automatic measurement
US20110238361A1 (en) * 2007-09-28 2011-09-29 Kazuya Ueki Tallying system, tallying apparatus and tallying method
US10943030B2 (en) 2008-12-15 2021-03-09 Ibailbonding.Com Securable independent electronic document
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8359616B2 (en) 2009-09-30 2013-01-22 United Video Properties, Inc. Systems and methods for automatically generating advertisements using a media guidance application
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
US8400453B2 (en) 2011-06-30 2013-03-19 Google Inc. Rendering a text image following a line
US8760451B2 (en) 2011-06-30 2014-06-24 Google Inc. Rendering a text image using texture map character center encoding with character reference encoding
KR102001191B1 (en) * 2011-06-30 2019-10-01 구글 엘엘씨 Rendering a text image following a line
US9147198B2 (en) 2013-01-10 2015-09-29 Rovi Technologies Corporation Systems and methods for providing an interface for data driven media placement
US9848276B2 (en) 2013-03-11 2017-12-19 Rovi Guides, Inc. Systems and methods for auto-configuring a user equipment device with content consumption material

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4074254A (en) * 1976-07-22 1978-02-14 International Business Machines Corporation Xy addressable and updateable compressed video refresh buffer for digital tv display
DE2754941A1 (en) * 1977-12-09 1979-06-13 Harris Corp METHOD AND DEVICE FOR ADJUSTING A PRINTING MACHINE
US4200867A (en) * 1978-04-03 1980-04-29 Hill Elmer D System and method for painting images by synthetic color signal generation and control
US4203107A (en) * 1978-11-08 1980-05-13 Zentec Corporation Microcomputer terminal system having a list mode operation for the video refresh circuit
US4471465A (en) * 1979-01-08 1984-09-11 Atari, Inc. Video display system with multicolor graphics selection
AT361608B (en) * 1979-01-31 1981-03-25 Kretztechnik Gmbh METHOD FOR MARKING OR. EVALUATING OR MEASURING SCREEN IMAGES, ESPECIALLY CUT IMAGES GENERATED BY THE ULTRASOUND IMPULSE ECHO PROCESS AND DEVICE FOR CARRYING OUT THIS PROCESS
US4249172A (en) * 1979-09-04 1981-02-03 Honeywell Information Systems Inc. Row address linking control system for video display terminal
JPS5694228A (en) * 1979-12-28 1981-07-30 Dainippon Screen Mfg Co Ltd Color separation simulation device
US4303912A (en) * 1980-05-19 1981-12-01 Burroughs Corporation Digitally controlled composite color video display system
US4439759A (en) * 1981-05-19 1984-03-27 Bell Telephone Laboratories, Incorporated Terminal independent color memory for a digital image display system
FR2506623A1 (en) * 1981-06-01 1982-12-03 Radiotechnique THREE-COLOR VIDEO SIGNAL GENERATOR, SUCH AS A VIDEO GAME, FOR USE WITH A MONOCHROME IMAGE REPRODUCER
DE3280338D1 (en) * 1981-06-29 1991-06-27 Sisvel Spa TELEVISION RECEIVER.
US4441104A (en) * 1981-12-31 1984-04-03 Mattel, Inc. Graphic effects generator
GB2116407B (en) * 1982-03-11 1986-04-23 Quantel Ltd Electonically synthesised video palette
US4570217A (en) * 1982-03-29 1986-02-11 Allen Bruce S Man machine interface
US4488245A (en) * 1982-04-06 1984-12-11 Loge/Interpretation Systems Inc. Method and means for color detection and modification
US4451824A (en) * 1982-06-21 1984-05-29 Motorola, Inc. Color convergence data processing in a CRT color display station
US4484187A (en) * 1982-06-25 1984-11-20 At&T Bell Laboratories Video overlay system having interactive color addressing
US4517654A (en) * 1982-08-09 1985-05-14 Igt Video processing architecture
US4521014A (en) * 1982-09-30 1985-06-04 Sitrick David H Video game including user visual image
US4580134A (en) * 1982-11-16 1986-04-01 Real Time Design, Inc. Color video system using data compression and decompression
US4586036A (en) * 1983-02-28 1986-04-29 Advanced Computer Concepts, Inc. Graphics display systems
FR2544898B1 (en) * 1983-04-25 1985-07-19 Texas Instruments France DEVICE FOR VIDEO DISPLAY ON SCREEN FOR SCANNING A FRAME LINE BY LINE AND POINT BY POINT
JPS6021092A (en) * 1983-07-15 1985-02-02 株式会社東芝 Color index conversion system
US4616220A (en) * 1983-08-22 1986-10-07 Burroughs Corporation Graphics display comparator for multiple bit plane graphics controller
US4574277A (en) * 1983-08-30 1986-03-04 Zenith Radio Corporation Selective page disable for a video display
US4675666A (en) * 1983-11-15 1987-06-23 Motorola Inc. System and method for altering an aspect of one of a plurality of coincident visual objects in a video display generator
US4583186A (en) * 1984-03-26 1986-04-15 Bremson Data Systems Computerized video imaging system
US4648028A (en) * 1984-08-31 1987-03-03 General Electric Co. Color enhanced display for a numerical control system
US4648046A (en) * 1984-10-24 1987-03-03 International Business Machines Corporation Editing and reflecting color display attributes of non-active profiles
US4673930A (en) * 1985-02-08 1987-06-16 Motorola, Inc. Improved memory control for a scanning CRT visual display system
JPS628193A (en) * 1985-07-04 1987-01-16 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Color image display system
JPS62174878A (en) * 1985-10-09 1987-07-31 Hitachi Ltd Design reference preparing method and its preparing device
US4754267A (en) * 1986-11-03 1988-06-28 International Business Machines Corporation Fast point/line correlations in graphic entities
JP2735187B2 (en) * 1987-03-17 1998-04-02 株式会社東芝 Information search method
US4847604A (en) * 1987-08-27 1989-07-11 Doyle Michael D Method and apparatus for identifying features of an image on a video display

Also Published As

Publication number Publication date
US4847604A (en) 1989-07-11
AU613150B2 (en) 1991-07-25
AU2971589A (en) 1990-08-16
EP0385008A1 (en) 1990-09-05

Similar Documents

Publication Publication Date Title
CA1321665C (en) Method and apparatus for identifying features of an image on a video display
US5249263A (en) Color palette display interface for a computer-based image editor
US5608423A (en) Video display processor with pixel by pixel hardware scrolling
US5321803A (en) Method of managing expression data to control the presentation of visual displays
US5754186A (en) Method and apparatus for blending images
US4794386A (en) Data integrator for video display including windows
KR890005295B1 (en) Method and apparatus for color selection and production
US4881067A (en) Image forming apparatus and method
US4521770A (en) Use of inversions in the near realtime control of selected functions in interactive buffered raster displays
US4933878A (en) Graphics data processing apparatus having non-linear saturating operations on multibit color data
CA1148285A (en) Raster display apparatus
EP0396956B1 (en) Display system for instruments
EP0278972A1 (en) Apparatus and method for monochrome/multicolor display and superimposed images
JPH0440719B2 (en)
US5254977A (en) Color display
JPH0426471B2 (en)
EP0043703B1 (en) Raster display generating system
EP0224940B1 (en) Emulation attribute mapping for a color video display
US6016137A (en) Method and apparatus for producing a semi-transparent cursor on a data processing display
US5309552A (en) Programmable multi-format display controller
JPH0325493A (en) Color display
JP3210312B2 (en) Method and apparatus for identifying image features of a video display
JPS63161489A (en) Multi-color display device
KR100401375B1 (en) Parallel mode on-screen display system
EP0159851B1 (en) Advanced video processor with hardware scrolling

Legal Events

Date Code Title Description
MKEX Expiry

Effective date: 20100824