Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20060152593 A1
Publication typeApplication
Application numberUS 11/347,764
Publication dateJul 13, 2006
Filing dateFeb 3, 2006
Priority dateMar 29, 2002
Also published asCA2478666A1, EP1493127A1, US8411151, US20030193570, US20140098251, WO2003085598A1
Publication number11347764, 347764, US 2006/0152593 A1, US 2006/152593 A1, US 20060152593 A1, US 20060152593A1, US 2006152593 A1, US 2006152593A1, US-A1-20060152593, US-A1-2006152593, US2006/0152593A1, US2006/152593A1, US20060152593 A1, US20060152593A1, US2006152593 A1, US2006152593A1
InventorsGregory Bone, Jonathan Walton
Original AssigneeBone Gregory A, Walton Jonathan M
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
System for processing video and audio information
US 20060152593 A1
Abstract
A software development kit prioritizes certain aspects of an acquired image and introduces the prioritized aspects to a main processor. Alternatively, a coprocessor, or the coprocessor and the development kit, manipulate(s) the acquired image and introduce(s) the manipulated image to the processor. The reprogramming of either one of the development kit and the coprocessor may be initiated by either one of them or by the processor and the programming may be provided by the main processor. A central station and a gate array may also be individually reprogrammable by the main processor which sets up, programs and controls an intelligent imaging platform in accordance with the individual reprogramming. A reprogramming of an audio acquisition stage may also be initiated by that stage and any of the other stages and the processor and may be provided by the processor. The audio information may be related to the acquired image.
Images(12)
Previous page
Next page
Claims(31)
1-73. (canceled)
74. In a combination for processing an image to provide a desired result,
a preprocessor for concentrating upon particular characteristics of an event,
an analyzer for analyzing the particular characteristics of the event to identify individual characteristics of the event,
an event generator for making decisions involving the individual characteristics upon the identification of the individual characteristics of the event,
an event responder for providing action with respect to the individual characteristics of the event in accordance with the decisions made by the event generator, and
main processor for providing a controlled operation of a camera in processing the image in accordance with the responses provided by the event responder.
75. In a combination as set forth in claim 74,
the preprocessor, the analyzer, the event generator and the event responder being reprogrammable to adjust the individual characteristics of the image provided by the camera.
76. In a combination as set forth in claim 74 wherein
the preprocessor, the analyzer, the event generator and the event responder are communicative with any other one of the preprocessor, the analyzer, the event generator, the event responder and the main processor to provide for an adjustment in the operation of any one of the preprocessor, the analyzer, the event generator and the event responder with which the main processor is communicating.
77. In a combination as set forth in claim 74,
a post-processor for modifying the signals representing the image based upon the operation of the analyzer, the event generator and the event responder and for introducing the modified signals to the main processor to facilitate the processing of the acquired image by the main processor.
78. In a combination as set forth in claim 77,
a camera responsive to the operation of teh main processor for providing the desired signals.
79. In a combination as set forth in claim 79,
each of the preprocessor, the analyzer, the event generator, the event responder and post-processor being reprogrammable and the reprogramming of each of the preprocessor, the analyzer, the event generator, the event responder and the post-processor being initiated by any one of the preprocessor, the analyzer, the event generator, the event responder and the post-processor and the main processor.
80. In a combination for processing an image,
an image acquirer fro acquiring the image and for converting the acquired image to signals representing the image,
an event generator responsive to the signals from the image acquirer for prioritizing individual ones of the signals in accordance with the results desired to be obtained in the processed image,
an event responder responsive to the prioritized signals for making decisions based upon the prioritized signals from the event generator and upon the desired results and for providing signals representing these decisions, and
a hardware processor for processing the signals representing the decisions from the event responder to obtain the desired results.
81. In a combination set forth in claim 80,
each of the event generator and the event responder being reprogrammable by the hardware processor in accordance with the results desired to be obtained in the acquired image.
82. In a combination as set forth in claim 81,
a video manipulator responsive to the signals from the image acquirer for modifying the signals representing the acquired image to clarify the image represented by the signals and for introducing the modified signals to the event generator,
the video manipulator being reprogrammable by the hardware processor in accordance with the results desired to be obtained in the acquired image.
83. In a combination as set forth in claim 80,
an audio acquirer for acquiring audio information related to the image and for converting the audio information to signals representing the audio information, and
an audio manipulator responsive to the audio signals for modifying the audio signals to clarify the audio information represented by the signals,
The audio manipulator being reprogrammable by the hardware processor in: accordance with the results desired to be obtained in the acquired image.
84. In a combination as set forth in claim 81,
a camera,
the image acquirer, the event generator, the event responder, the hardware processor and the video manipulator being disposed in the camera.
85. In a combination as set forth in claim 83,
camera
the image acquirer, the event generator, the event responder, the hardware processor, the audio acquirer and the audio manipulator being disposed in the camera.
86-111. (canceled)
112. In a combination as set forth in claim 83,
a camera
the image acquirer, the event generator, the event responder, the hardware processor the audio acquirer and the audio manipulator being disposed in the camera.
113. In a combination for processing an image to provide a desired result, a first stage for identifying individual characteristics of an event,
an intelligent imaging platform for indicating the individual characteristics of the event,
an event responder for changing the individual characteristics of the event,
a post processor for providing changes in the image in the intelligent imaging platform in accordance with the changes indicated in the event responder.
114. In a combination as set forth in claim 112 wherein
the first stage, the event responder, the intelligent imaging platform and the post processor are reprogrammable.
115. In a combination as set forth in claim 113 wherein
each of the first stage, the event responder, the intelligent imaging platform and the post processor is reprogrammable by any of the others or by itself.
116. In the combination set forth in claim 114,
a database for providing a desired image,
an event generator for providing a match between the individual characteristics of the event and the desired image in the database, and
the event responder providing a response depending upon the matching or lack of matching of the individual characteristics of the event from the first stage and the desired image in the database.
117. In combination for processing an image to produce a desired result,
a video manipulator for enhancing particular characteristics of the image,
an event generator for concentrating on at least an individual one of the particular characteristics of the image.
an intelligent imaging platform for indicating the image with the concentration on at least the individual one of the particular characteristics in the image, and
a main processor including the event generator, the intelligent imaging platform for providing an image concentrated on the at least individual one of the particular characteristics in the image.
118. In the combination recited in claim 116 wherein
video manipulator and the event generator are in the intelligent imaging platform.
119. In the combination recited in claim 116, including
a database for indicating the desired image, and
the event generator being operative to match the image in the video manipulator with the desired image in the database, and
an event responder for providing a response depending upon the matching or lack of matching of the image in the video manipulator with the desired image in the database.
120. In combination for processing an event to provide a desired result,
a first stage for identifying individual characteristics of the event,
an event responder for processing the individual characteristics of the event, and
an intelligent imaging platform for indicating the event as processed by the event responder.
121. In a combination as set forth in claim 119 wherein
the first stage, the event responder and the intelligent imaging platform are reprogrammable.
122. In a combination as set forth in claim 120 wherein
the first stage, the event responder and the intelligent imaging platform are self reprogrammable.
123. In a combination as set forth in claim 119 wherein
the image provided by the first stage is matched against images in a database and the event responder provides a response depending upon the matching or lack of matching of these images and wherein
a platform user interface processes the response from the event responder for introduction to a user.
124. In a combination as set forth in claim 120 wherein
the image provided by the first stage is matched against images in a database and the event responder provides a response depending upon the matching on lack of matching of these images and wherein
a platform user interface processes the response from the event responder for introduction to a user.
125. In a combination as set forth in claim 123 wherein
each of the first stage, the event responder, the intelligent imaging platform and the platform user interface is reprogrammable by anyone of the first stage, the event responder, the intelligent imaging platform and the platform user interface.
126. In combination for processing an image to provide a desired result to a user, including,
a preprocessor for manipulating the image to clarify the image,
an event generator for matching the manipulated image against images in a database,
an event responder for processing the output from the event generator, and
platform user interface for processing the information from the event generator and presenting the processed information to the user.
127. In a combination as set forth in claim 125 wherein
each of the preprocessor, the event generator, the event responder and the platform user interface is self reprogrammable and is programmable by the other ones of the preprocessor, the event generator, the event responder and the platform user interface.
128. In a combination as set forth in claim 125, including,
an intelligent imaging platform for displaying the image, and
a software development kit responsive to the output of the event generator for customizing the output of the intelligent imaging platform.
Description

This is a divisional application of 10/113,480 (attorney's file IQINV-58963) filed in the United States Patent and Trademark Office on Mar. 29, 2002.

BACKGROUND OF A PREFERRED EMBODIMENT OF THE INVENTION

This invention relates to a system for and method of processing an acquired image. More particularly, the invention relates to a system for, and method of, processing an image in a wide variety of ways, not previously capable of being accomplished in the prior art, to provide results which are enhanced compared to what has been able to be achieved in the prior art.

BACKGROUND OF THE INVENTION

Systems are now in use for processing an acquired image. For example, systems are now in use for processing an acquired image to determine the entrance into, and the departure of individuals from, a defined area such as an enclosure. Systems are also in use for determining the identity of individuals and objects in an enclosure. Systems are further in use for tracking the movement and variations in the positioning of individuals in an enclosure. These are only a few examples of different types of processing and uses of acquired images.

As of now, different processing and uses of acquired images require different types of systems to be constructed. For example, the same system cannot be used to identify an individual in a crowd and to track the movement of the identified individual in the crowd and particularly the movement of the individual in a defined area such as an enclosure or from one defined area to another defined area. The same system cannot also be used to magnify a particular portion of an acquired image and process that magnified portion. Since different systems are required to perform different functions, costs to individuals or organizations have increased, available space has become limited and complexities in operation have become magnified.

BRIEF DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

A software development kit prioritizes certain aspects of an acquired image and introduces the prioritized aspects to a main processor. Alternatively, a coprocessor, or the coprocessor and the development kit, manipulate(s) the acquired image and introduce(s) the manipulated image to the processor. The reprogramming of either one of the development kit and the coprocessor may be initiated by either one of them and by the processor and the programming may be provided by the main processor.

A central station and a gate array may also be individually reprogrammable by the main processor which sets up, programs and controls a camera in accordance with the individual reprogrammings.

A reprogramming of an audio acquisition stage may also be initiated by that stage and any of the other stages and the processor and may be provided by the processor. The audio information may be related to the acquired image.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings:

FIG. 1 is a diagram, primarily in block form, of a system (hardware and software) constituting a preferred embodiment of the invention for processing acquired images on a global basis where the system can be used to process the images in a wide variety of different ways;

FIG. 2 is an expanded diagram, primarily in block form, of the software portion of the system shown in FIG. 1;

FIG. 3 is an expanded diagram, partially in block form, showing how different portions of the hardware in FIG. 1 are interconnected by buses;

FIG. 4 is an expanded diagram, partially in block form, showing how different portions of the system shown in FIGS. 1-3 are reprogrammable, and how the different reprogrammable stages are connected to one another by interfaces;

FIG. 5 is a schematic view showing the relationship between a reprogrammable stage and a non-reprogrammable stage, the reprogrammable stage being capable of providing a plurality of generic operations and a plurality of custom defined operations and the non-reprogrammable stage being capable of providing only a plurality of generic operations;

FIG. 6 is a schematic diagram showing how different primary blocks in the system shown in FIGS. 1-5 can be combined in different patentable combinations depending upon the results desired to be obtained from the processing of the acquired image and also including a chart showing different combinations of the blocks shown in FIG. 6; and

FIG. 7 is a chart illustratively showing a number of individual functions that may be provided by the system shown in FIGS. 1-6 to accomplish different desired results in processing an acquired image.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

FIG. 1 is a circuit diagram, primarily in block form, of a system generally indicated at 10 and constituting a preferred embodiment of the invention. The system 10 is shown as being divided by broken lines 12 into a central station generally indicated at 14 and by broken lines 16 into an intelligent imaging platform generally indicated at 18. A communications arrangement formed by one or more communications channels and generally indicated at 20 is disposed in the intelligent imaging platform 18. The intelligent imaging platform 18 is in turn indicated by broken lines 22 as including a software section generally indicated at 24. Substantially everything within the broken lines 16 (except for the communications arrangement 20 and the software section 24) constitutes hardware generally indicated at 28 a, 28 b and 28 c. The hardware section 28 a may be considered to include software which interfaces with the hardware in the section.

The hardware section in FIG. 1 also includes an image acquirer 30 for receiving an image and converting the image to signals, preferably electrical, in a conventional manner. The hardware section also includes an audio codec or audio acquirer 32 for receiving audio information which may be related to the video information. The audio codec or acquirer 32 may include an audio coder decoder designated as a “codec”. Signals pass through a bus 31 between the image acquirer 30 and a field programmable gate array 34 which may be constructed in a conventional manner. Signals also pass through a bus 33 between the gate array 34 and a coprocessor 36. The gate array 34 and the coprocessor 36 are disposed in the hardware section 28 a.

The audio signals preferably pass through a bus 35 between the audio codec or acquirer 32 and the field reprogrammable gate array 34. However, the audio signals could pass through a bus between the audio codec or acquirer 32 and the coprocessor 36. The system is more flexible when the audio signals pass between the audio codec or acquirer 32 and the field reprogrammable gate array 34 than when the audio signals pass between the audio codec or acquirer 32 and the coprocessor 36. The ability of the signals from the audio acquirer 32 to pass to either the gate array 34 or the coprocessor 36 may be seen by the extension of the bus 35 to the audio/video interface for the hardware section 28 a.

Signals pass between the hardware section 28 a and the software section 24 through a bus 38. Signals also pass between a miscellaneous input/output stage 40 (considered as hardware) and the software section 24 through a bus 42. Signals also pass through the hardware section 28 b and the software section 24 through a bus 44. The hardware section 28 b includes a compact flash card interface 46, a PC card interface 48 and a PCI interface 50. The hardware section 28 b provides information storage and includes a capacity for providing information storage expansion and other (non-storage) expansion.

The software section 24 includes a video manipulator 52, an audio manipulator 54, an event generator 56, an event responder 58, a platform user interface 60 and a kernel operating system 62. Each of these stages has an arrow 64 disposed in an oblique direction at the bottom right corner of the stage. The oblique arrow 64 indicates that the stage is capable of being reprogrammed. The reprogramming of any stage with the arrow 64 can be initiated by any stage whether the other stage has the arrow 64 to indicate its capability of being reprogrammed. For example, the reprogramming of any of the stages 34, 36 and 52-62 (even numbers only) can be self initiated and can be initiated by any of the other stages 34, 36 and 52-62 and by any other stages such as the stages 70, 72 and 74. Thus, each of the stages 34, 36 and 52-62 (even numbers only) is illustratively able to be reprogrammed. Thus, the stages 34, 36, 52-62 and 65 (even numbers only) receiving such communications have an enhanced flexibility in operation in comparison to the stages which do not receive such reprogramming. Each reprogrammable stage including the stages 34, 36 and 52-62 (even numbers only) can also initiate reprogramming of itself. The reprogramming of each reprogrammable stage including the stages 34, 36 and 52-62 (even numbers only) can be initiated by almost any stage in the system, except for the image acquirer 30, the audio acquirer or codec 32, the miscellaneous input/output 40 and the storage and expansion stage 28 b.

A software development kit 65 is indicated by a cloud designated as “platform configuration” with an arrow 64 in the upper left corner. The output from the software development kit 65 is introduced to a main processor 66 to control the operation of the main processor. The software development kit may be considered to be within the main processor 66. The main processor 66 reprograms individual ones of the stages 34, 36 and 52-64 (even numbers only) and the software development kit 65 to control the image acquired by the stage 30 from the camera and the audio acquired by the stage 32 from the camera.

The field programmable gate array 34 provides reprogrammable arrays of gates to clarify and sharpen the video data acquired from the image acquisition stage 30 and introduces the clarified image to the coprocessor 36. The coprocessor 36 manipulates the audio and video data depending upon the results desired to be obtained from the system 10. For example, different manipulations may be provided by the coprocessor 36 when the image is targeted on a single person or a group of people or on an inanimate object. The miscellaneous input/output stage 40 provides such information as motion sensing to indicate to an alarm panel that the camera has observed and detected motion in a scene. The hardware section 40 can also indicate to the camera that some external device has detected motion and wishes to inform the camera that an event worth observing is taking place. In addition, the hardware section 40 may also indicate to a lens to change the size of the iris in the lens. It will be appreciated that the hardware section 40 may perform a considerable number of function other than motion detecting.

The video manipulate stage 52 may manipulate an image to clarify the image as by correcting for color or extracting facial features. This is especially important when faces are in the image and the faces are to be matched against a database identifying a particular face. A similar type of manipulation is provided by the stage 54 with respect to audio information such as when a person is speaking. The event generator 56 matches the image from the stage 52 against the images in the database. This is important when the images are faces. The event responder stage 58 provides a response depending on the matching or lack of matching of the acquired image from the stage 52 and the image in the database. Although the matching has been discussed with reference to faces, the matching can be with respect to any physical object or any perceived state independent of a physical object.

The event responder 58 acts upon the output from the event generator 56 in accordance with the processing which is provided to obtain the desired results. The platform user interface 60 provides a mechanism for taking the information that the camera intelligent imaging platform 18 sees and the platform 60 calculates that information and presents the calculated information to the user. It also allows for the user to adjust the setting of the camera. The platform configuration 65 allows the user of the system to write code for customizing the camera to provide the desired result. The kernel operating system 62 provides the basic operation of the camera. It is well known in the art.

Although the stages 52-62 (even numbers only) and 65 constitute software, they may be disposed in the hardware section 28 c, since they control the operation of the main processing hardware 66. The main processing hardware 66 is sometimes referred to in this application as a “main processor”. The main processor 66 is connected by the bus 25 to communication stages or channels in the intelligent imaging platform 18. The intelligent imaging platform 18 includes a subset of communication channels 70 (ethernet), 72 (serial) and 74 (firewire) in the communications arrangement 20. The channel 70 receives information from an Ethernet source. The channel 72 receives serial information from an external source. The channel 74 receives high speed information from software known as Firewire and communicates this information to hardware. The channels 70, 72 and 74 are representative of the different types of information that may be acquired by the currently active communication channels in the intelligent imaging platform 18. The representative channels such as the channels 70, 72 and 74 also receive information from the main processor 66 and supply information to the main processor.

The intelligent imaging platform 18 in turn communicates through the communications network 76 to the central station 14. As shown in FIG. 1, the central station 14 is reprogrammable and can initiate reprogramming of itself and any other reprogrammable stage. The central station 14 is shown as including a station user interface 80, a station configuration 82, storage 84 and a platform setup, programming and control 86. The platform setup 86 may include set up and configuration information for event generation, event response, platform configuration, platform user interface, field programmable gate array and coprocessor corresponding to what is shown in the intelligent imaging platform 18. The platform set up 86 is shown as being included in the central station 14 but it controls the state of the stages 34, 36, 52-62 (even numbers only) and the main processor 66 in the intelligent imaging platform 18.

The stage 30 acquires the image from the camera and introduces the acquired image to the field programmable gate array 34. The gate array 34 clarifies the image in accordance with the desired processing to be provided of the image and introduces the signals representing the clarified image to the coprocessor 36. The coprocessor 36 manipulates the clarified image dependent upon the desired result to be obtained from the system shown in FIG. 1. For example, the coprocessor 36 may manipulate the image to focus on an individual in a crowd and may track the movements of the individual. Alternatively, the coprocessor may manipulate the image to concentrate on what happens in a particular corner of a room. The coprocessor 36 is also able to manipulate the audio from the codec 32 to conform to the manipulation of the video. However, as indicated previously, the audio information may be clarified by the field reprogrammable gate array 34 before it is introduced to the coprocessor 36.

The signals from the coprocessor 36 are further manipulated by the stages 52 and 54. The video manipulator 52 further enhances the quality of the acquired image. For example, the video manipulator 52 may identify individual faces in a crowd and may extract facial features of an individual. The event generator 56 may match the facial features against a database to identify the individual on the basis of this matching against the database.

The system 10 shown in FIG. 1 has certain important advantages. It provides software (e.g. the stages 34, 36, 52-62 (even numbers only) and 65 ) in the camera to control the operation of the camera. In this way, the reprogramming of the software stages can occur instantaneously in the camera and the resultant changes in the output from the software stages can directly control the operation of the camera. This is in contrast to the prior art where output signals have been introduced to controls outside of the camera. In the prior art, the signals are then processed outside the camera and introduced to the controls outside of the camera. As will be appreciated, the passage of the signals outside of the camera and the subsequent processing of the signals outside of the camera produce a degradation in the camera performance.

The degradation of the signal resolution with increases in distance is particularly troublesome when analog signals are processed many of the camera systems of the prior art processed analog signals. In contrast, the system of this invention operates on a digital basis. Coupled with the disposition of the camera controls in the camera, the digital operation of the system of this invention enhances the sensitivity and the reliability of the operation of the system 10.

The system 10 also has other advantages. This results in part from the flexibility in the construction and operation of the system. For example, all of the stages 34, 36, 52-62 (even numbers only) and 65 are reprogrammable. Furthermore, each of the stages 34, 36, 52-62 and 65 can be reprogrammed on the basis of a decision from that stage or any of the other of these stages. This flexibility in reprogramming provides for an enhanced sensitivity and reliability in the adjustments that can be provided in the operation of the camera, thereby providing an enhanced performance of the camera.

FIG. 2 illustrates the software in additional detail. It includes the video manipulator 52, which is shown in broken lines 90 in FIG. 2. As shown in FIG. 2, the video manipulator 52 includes a preprocessor 92 and an analyzer 94. The preprocessor 92 converts the acquired image from the stage 30 in FIG. 1 to a format that the user wishes to provide. For example, the preprocessor 92 may correct, fix or establish colors in the acquired image or may select only a small portion of the image. The analyzer 94 may illustratively look for something specific in the image or in a portion of the image. For example, the analyzer 94 may look for an individual having a particular identity. Alternatively, the analyzer 94 may extract facial features or may detect motion of an image or an object. The operation of the event generator 56 and the event responder 58 have been indicated previously in connection with FIG. 1.

The output of the analyzer 92 is stored or archived as at 96 in FIG. 2 and the stored or archived output is introduced to a post processor 98. The post processor 98 illustratively provides for a modification of the image based upon the output of the analyzer 96 and the event responder 58. For example, the post processor 98 may emphasize image portions that have changed in position with time. The output of the post processor stage 98 is introduced to one of the stages 70, 72 and 74 in the communications network 20 in FIG. 1 and the output of the communications stage is provided to the communication network 76 also shown in FIG. 1.

The miscellaneous input/output stage 40 in FIG. 1 is also shown in additional detail in FIG. 2 within a block 106 in broken lines. The miscellaneous input/output stage 40 includes miscellaneous inputs 108 such as triggers and includes miscellaneous outputs 110 such as relays, light emitting diodes and an iris control port for the camera. The audio manipulator 54 in FIG. 1 is also shown in FIG. 2 within a box 100 formed from broken lines. The audio manipulator 100 in FIG. 2 includes a preprocessor 102 and an analyzer 104 which respectively operate on the audio in a manner similar to the operation of the preprocessor 92 and the analyzer 94 on the video in FIG. 2.

FIG. 2 also includes the platform user interface 60 and the kernel operating system 62 shown in FIG. 1. The platform user interface 60 includes commands and web pages and the kernel operating system 62 includes timer tasks and load control. The “load” refers to the work in performing the software tasks on the processor and the “load control” refers to the acts of organizing the tasks to make certain that all of the tasks are provided with an opportunity to occur. FIG. 2 also includes the platform configuration 65 also shown in FIG. 1. The platform configuration 65 includes code load, set-up, original equipment manufacturers (OEM) compiles and the software development kit (SDK). The platform configuration 65 and all of the other stages in FIG. 2 include the diagonal line 64 to indicate that each of the stages can talk to any of the other stages in FIG. 2 and can be reprogrammed by the main processor 66 on the basis of an initiation by any of the reprogrammable stages shown in FIG. 2.

FIG. 3 shows the acquisition of an image illustratively in either photonic (light) or analog form. FIG. 3 also indicates the flow of video and audio data through the hardware shown in FIG. 1. The video path includes the image acquisition of light illustratively in analog form as at 30 in FIGS. 1 and 3. The image is converted inside the image acquirer 30 into digital form either by using a combination of a lens and imager (for light) or by using an analog decoder—for example, an NTSC decoder—(for analog). The resultant signals flow through the video bus 31 to the field reprogrammable gate array 34 also shown in FIG. 1. The gate array 34 also receives audio signals flowing through a bus 122 from the audio codec or acquirer 32 also shown in FIG. 1.

The video and audio signals then flow through a bus 124 to the coprocessor 36. The output from the coprocessor 36 is provided to a bus 126. These signals then pass through the gate array 34 to PCI bus 38. The signals on the buses 120 and 122 may also be by-passed, through the field reprogrammable gate array 34 to the PCI bus 38 without passing through the coprocessor 36. The signals on the PCI bus 38 pass through the main processor 66 and through a communications bus 129 to the communications network 76 in FIG. 1. As can be seen, the audio/video data flows through as many as five (5) different buses but only once through each bus. This allows for a streamlined flow of data through the intelligent imaging platform 18.

FIG. 6 is a simplified block diagram of the system shown in the previous Figures. In this Figure, the stages discussed previously in connection with FIG. 1 and considered as primary are shown. The simplified system includes the image acquirer 30 (designated as A), the field programmable gate array 34 (designated as B), the main processor 66 (designated as C), the software development kit 65 (designated as F), the central station 14 (designated as D) and the coprocessor 36 (designated as E). The software development kit F may be considered as a part of the platform configuration 65 in FIGS. 1 and 2 and is included within the main processor 66.

FIG. 6 also includes a chart showing primary combinations of individual ones of the stages A-F in FIG. 6 and optional combinations of the primary stages with the other stages shown in FIG. 4. As will be seen, there are two (2) primary combinations—(1) a combination of A (the image acquirer), C (the main processor) and F (the software development kit) and (2) a combination of A (the image acquirer), C (the main processor) and E (the coprocessor). Certain optional combinations are also shown involving individual ones of B (the field reprogrammable gate array), D (the central station) and F (the software development kit) for the primary combination of A, C and E. They further include optional combinations of B (the field reprogramable gate array), D (the central station) and E (the coprocessor) for the primary combination of A, C and F. The combinations designated with a star in the first column may be considered as the most critical. It will be appreciated that the combinations shown in FIG. 6 are illustrative only and that a considerable number of other combinations (some even primary) may be provided without departing from the scope of the invention.

FIG. 4 illustrates the configurability of different ones of applicants' primary stages. The stages correspond to the primary stages shown in FIG. 6—namely, the image acquirer 30, the field programmable gate array 34, the coprocessor 36, the main processor 66, the software development kit 65 (within the main processor 66) and the central station 14. All of these stages (except for the image acquirer 30) are configurable or reprogrammable as indicated by a cloud like configuration within a rectangular block. Each cloud represents a configurable or reprogrammable entity which can be shaped to the task at hand. Each rectangular block represents the encompassing fixed body which is not unto itself configurable or reprogrammable.

The different blocks are defined and determined by the interfaces of applicants' assignee. These interfaces are as follows:

    • 1. The video interface 31 between the image acquirer 30 and the field reprogrammable gate array 34;
    • 2. A coprocessor interface 142 between the gate array 34 and the coprocessor 36;
    • 3. The hardware interface 38 between the gate array 34 and the main processor 66;
    • 4. A communications interface 146 between the main processor 66 and the central station 14; and
    • 5. A software interface 148 between the main processor 66 and the software development kit 65.
      The request to initiate reprogramming of a reprogrammable block can come from anywhere in the system with the exception of such stages as the image acquirer 30, the audio acquirer or codec 32 and the miscellaneous input/output stage 40. However, the reprogramming is provided by the main processor 66.

FIG. 5 schematically illustrates in some detail a customizable block, generally indicated at 150, which is also representative of other blocks. The customizable block 150 is reprogrammable as indicated by the diagonal arrow 64 in the lower right corner. The customizable block 150 includes a sub-block 152 capable of performing a plurality of available generic operations designated in the sub-block as tasks I to n. These operations are generic to the block 150 and other blocks. When the block 150 provides only available generic operations such as in the block 152, the block is not reprogrammable. The customizable block 150 may also include a sub-block 154 providing custom defined operations. These are operations individual to the block 150. The sub-block 154 may provide I to n custom operations. When the block 150 can provide one (1) or more custom defined operations, the block 150 is said to be reprogrammable and is demarcated or indicated by the arrow 64.

FIG. 7 is a chart showing examples of different functions capable of being performed by the system 10. It will be appreciated that FIG. 7 shows only a few of the multitudinous operations that can be performed by the system 10. The first (designated as “Main Function”) column in FIG. 7 indicates four (4) different functions which can be performed by the system 10. These four (4) functions are:

    • (a) “Remote Color Video Monitor with Archive”,
    • (b) “Face Print Generation and Upload to Server”,
    • (c) “Gun Shot Detection and Server Notification,” and
    • (d) “Subject Tracking with Realtime Video Monitor.”

The second column in FIG. 7 is designated as “Other/Combined Functions”. It indicates other functions which can be performed in addition to the “main function” specified in the first column. For example, another function or a sub-function such as “Audio Monitoring” can be performed in addition to the main function of “Remote Color Video Monitor with Archive.” As another example, other functions or sub-functions such as (a) “Generate Face Present Audio Alert”, (b) “Recognize Face and Alert Server of Match” and (c) “Recognize Multiple Faces Simultaneously” can be performed with the main function “Face Print Generation and Upload to Server”.

The third column in FIG. 7 indicates the function that is performed in the preprocessor 92 in FIG. 2. For example, the preprocessor 92 performs a color correction when the main function is “Remote Color Video Monitor with Archive”. As another example, the pre-processor 92 provides a “Facial Feature Extraction” when the main function is “Face Print Generation and Upload to Server”. The operation of the third (3rd) column in FIG. 7 is dependent on the operation of the first and second columns of FIG. 7. This is also true of the operation in the fourth (4th) through eleventh (11th) columns of FIG. 7.

FIG. 7 indicates the operation of the analyzer 94 in the fourth column of FIG. 7 for different ones of the main functions in column 1 of FIG. 7. For example, for the main function of “Face Print Generation and Upload to Server”, the analyzer 94 operates to provide Face Print Generation. As another example, for the main function of “Subject Tracking with Realtime Video Monitor,” the analyzer 94 operates to provide “Subject Detection/Motion Estimation.”

Column 5 in FIG. 7 indicates the operation of the event generator 56 in FIGS. 1 and 2 for the different main functions in column 1 of FIG. 7. In like manner, column 6 in FIG. 7 indicates the operation of the event responder 58 in FIGS. 1 and 2 for the different main functions in column 1 of FIG. 7. Similarly, column 7 in FIG. 7 indicates the operation of the storage member 96 in FIG. 2 for different main functions in column 1 of FIG. 7. The post processor 98 in FIG. 2 provides the operations shown in column 8 of FIG. 7 for the different main functions specified in column 1 of FIG. 7. The communication stages 70, 72 and 74 in FIG. 1 perform the operations shown in column 9 of FIG. 7 when the main function is as indicated in column 1 of FIG. 7 and the other combined functions are as indicated in column 2 of FIG. 7.

Column 10 of FIG. 7 indicates the miscellaneous output which is provided when the main function specified in column 1 of FIG. 7 is provided. The miscellaneous output is indicated at 40 in FIG. 1. The audio preprocessor 102 in FIG. 2 is shown in FIG. 2. The audio preprocessor 102 in FIG. 2 provides the operations shown in column 11 of FIG. 7 for the different main functions specified in column 1 of FIG. 7. In like manner, the audio analyzer 104 in FIG. 2 provides the operations shown in column 12 of FIG. 7 for the different main functions specified in column 1 of FIG. 7. The last column of FIG. 7 is designated as “Notes”. This column indicates that the field programmable gate array 34 and the coprocessor 36 are utilized for added processing power when “Recognize Multiple Faces Simultaneously” is provided as a sub-function in column 2 of FIG. 7. As another example, the gate array 34 and the coprocessor 36 are utilized when “Multiple Subject Tracking is Provided with Digital Pan, Tilt, Zoom” is provided in column 2 of FIG. 7.

Although this invention has been disclosed and illustrated with reference to particular embodiments, the principle involved are susceptible for use in numerous other embodiments which will be apparent to persons of ordinary skill in the art. The invention is, therefore, to be limited only as indicated by the scope of the claims.

Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US8417778Dec 17, 2009Apr 9, 2013International Business Machines CorporationCollective acceleration unit tree flow control and retransmit
US8751655Mar 29, 2010Jun 10, 2014International Business Machines CorporationCollective acceleration unit tree structure
US8756270Apr 24, 2012Jun 17, 2014International Business Machines CorporationCollective acceleration unit tree structure
Classifications
U.S. Classification348/211.3
International ClassificationH04N5/232, G06T1/00
Cooperative ClassificationG06T1/0007, H04N5/23203, G06T1/00
European ClassificationG06T1/00